{"_id":"@appzgatenz/label-print-topbridge-js","_rev":"9-5e4c0935e7e4747599dc5ca3ed50f481","name":"@appzgatenz/label-print-topbridge-js","dist-tags":{"latest":"0.6.2"},"versions":{"0.2.0":{"name":"@appzgatenz/label-print-topbridge-js","version":"0.2.0","keywords":["topbridge","label-print","printer","websocket","sdk","topsale"],"author":{"name":"Appzgate Solutions Limited"},"license":"MIT","_id":"@appzgatenz/label-print-topbridge-js@0.2.0","maintainers":[{"name":"varandrew","email":"leon@appzgate.co.nz"},{"name":"appzgate","email":"sam@appzgate.co.nz"}],"homepage":"https://github.com/youngming/label-print-topbridge-js-core#readme","bugs":{"url":"https://github.com/youngming/label-print-topbridge-js-core/issues"},"dist":{"shasum":"3217552b6b0eaca3aa66856f9097fe5f0b14b0f1","tarball":"https://registry.npmjs.org/@appzgatenz/label-print-topbridge-js/-/label-print-topbridge-js-0.2.0.tgz","fileCount":7,"integrity":"sha512-5O2bUflSqUDb72ol5ycDYev1SQPUdGwC0T01vSBTHKzqpuz37FPDe6LbWgcOYiC7i83GZM0XGHDIi6IAjXgMSg==","signatures":[{"sig":"MEUCICmHA2S6Kd4Yf5IMmPthf6fo8Ow0uya8F+pjuO25SBi2AiEAu43yAztZV4pTjfJEV6FLp/CMsl2pwZ630gP3Z7KLc5o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":50254},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"gitHead":"98c9f1cd1682fea2ea5e05073b40e1784953d8df","scripts":{"dev":"tsup --watch","lint":"tsc --noEmit","test":"vitest run","build":"tsup","clean":"rm -rf dist","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"const p=require('./package.json');const marker='TO'+'DO';const values=[p.repository?.url,p.bugs?.url,p.homepage];if(values.some((v)=>String(v).includes(marker)))throw new Error('Resolve package metadata placeholders before publishing');\" && npm run typecheck && npm test && npm run build"},"_npmUser":{"name":"varandrew","email":"leon@appzgate.co.nz"},"repository":{"url":"git+https://github.com/youngming/label-print-topbridge-js-core.git","type":"git"},"_npmVersion":"11.14.0","description":"Headless browser SDK for TopBridge label printing — WebSocket client, health, benefits, printers, templates, print","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","vitest":"^3.1.0","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/label-print-topbridge-js_0.2.0_1778199282667_0.504968487594099","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@appzgatenz/label-print-topbridge-js","version":"0.3.2","keywords":["topbridge","label-print","printer","websocket","sdk","topsale"],"author":{"name":"Appzgate Solutions Limited"},"license":"MIT","_id":"@appzgatenz/label-print-topbridge-js@0.3.2","maintainers":[{"name":"varandrew","email":"leon@appzgate.co.nz"},{"name":"appzgate","email":"sam@appzgate.co.nz"}],"homepage":"https://github.com/youngming/label-print-topbridge-js-core#readme","bugs":{"url":"https://github.com/youngming/label-print-topbridge-js-core/issues"},"dist":{"shasum":"3f2c436c01f0952eaf5268256be90339a750aa15","tarball":"https://registry.npmjs.org/@appzgatenz/label-print-topbridge-js/-/label-print-topbridge-js-0.3.2.tgz","fileCount":7,"integrity":"sha512-0NzL6NdrCxiqhymot9OdVj4saycMjrO31Gnl0qH6tWi8iTA/YG6bhR4qMHroftTsIc0dpDNKoFpnND/CR8ccsw==","signatures":[{"sig":"MEUCIQCcJXjR+WOY02Q+gM+K2sdvdo7zdio/exXbub/8XySHkAIgQa04AHaedrZFIGEyC/GxsY01MMR5lbqKq67JoEkqwxg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67537},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"gitHead":"d69c702fc1ee967628bb2757c868b8388a38f4ec","scripts":{"dev":"tsdown --watch","lint":"tsc --noEmit","test":"vitest run","build":"tsdown","clean":"rm -rf dist","predev":"node scripts/check-build-node.mjs","prebuild":"node scripts/check-build-node.mjs","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"const p=require('./package.json');const marker='TO'+'DO';const values=[p.repository?.url,p.bugs?.url,p.homepage];if(values.some((v)=>String(v).includes(marker)))throw new Error('Resolve package metadata placeholders before publishing');\" && tsc --noEmit && vitest run && node scripts/check-build-node.mjs && tsdown","publish:public":"node scripts/publish-package.mjs public","publish:private":"node scripts/publish-package.mjs private","check:build-node":"node scripts/check-build-node.mjs"},"_npmUser":{"name":"appzgate","email":"sam@appzgate.co.nz"},"repository":{"url":"git+https://github.com/youngming/label-print-topbridge-js-core.git","type":"git"},"_npmVersion":"11.6.1","description":"Headless browser SDK for TopBridge label printing — WebSocket client, health, benefits, printers, templates, print","directories":{},"sideEffects":false,"_nodeVersion":"24.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^29.1.1","tsdown":"^0.22.0","vitest":"^3.1.0","typescript":"^5.7.0","@vitest/coverage-v8":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/label-print-topbridge-js_0.3.2_1779772031742_0.5243568198096533","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@appzgatenz/label-print-topbridge-js","version":"0.3.3","keywords":["topbridge","label-print","printer","websocket","sdk","topsale"],"author":{"name":"Appzgate Solutions Limited"},"license":"MIT","_id":"@appzgatenz/label-print-topbridge-js@0.3.3","maintainers":[{"name":"varandrew","email":"leon@appzgate.co.nz"},{"name":"appzgate","email":"sam@appzgate.co.nz"}],"homepage":"https://github.com/youngming/label-print-topbridge-js-core#readme","bugs":{"url":"https://github.com/youngming/label-print-topbridge-js-core/issues"},"dist":{"shasum":"371a98bb348341965668b5a18927f785d61751f5","tarball":"https://registry.npmjs.org/@appzgatenz/label-print-topbridge-js/-/label-print-topbridge-js-0.3.3.tgz","fileCount":7,"integrity":"sha512-c8kNBl3dxJ5snGaDJMguqjqAWAfsht6RctERelkLmKhIYFBOp2ZPmizuGAgFKfKOZJem5xqSw16ITkyYBciAeg==","signatures":[{"sig":"MEQCIDQBZogrsjww4fmGMDt/Namtixt6LMXa84OIkFvDxm7fAiAdAap4/kY0ufylxQUiCkypZi+p+P32jlNBD1W7OHM6AQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67374},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"gitHead":"505a0ce1fd68cd08cf66dabe643a8958efceb8cb","scripts":{"dev":"tsdown --watch","lint":"tsc --noEmit","test":"vitest run","build":"tsdown","clean":"rm -rf dist","predev":"node scripts/check-build-node.mjs","prebuild":"node scripts/check-build-node.mjs","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"const p=require('./package.json');const marker='TO'+'DO';const values=[p.repository?.url,p.bugs?.url,p.homepage];if(values.some((v)=>String(v).includes(marker)))throw new Error('Resolve package metadata placeholders before publishing');\" && tsc --noEmit && vitest run && node scripts/check-build-node.mjs && tsdown","publish:public":"node scripts/publish-package.mjs public","publish:private":"node scripts/publish-package.mjs private","check:build-node":"node scripts/check-build-node.mjs"},"_npmUser":{"name":"varandrew","email":"leon@appzgate.co.nz"},"repository":{"url":"git+https://github.com/youngming/label-print-topbridge-js-core.git","type":"git"},"_npmVersion":"11.16.0","description":"Headless browser SDK for TopBridge label printing — WebSocket client, health, benefits, printers, templates, print","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^29.1.1","tsdown":"^0.22.0","vitest":"^3.1.0","typescript":"^5.7.0","@vitest/coverage-v8":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/label-print-topbridge-js_0.3.3_1780551360759_0.798810441241943","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@appzgatenz/label-print-topbridge-js","version":"0.3.4","keywords":["topbridge","label-print","printer","websocket","sdk","topsale"],"author":{"name":"Appzgate Solutions Limited"},"license":"MIT","_id":"@appzgatenz/label-print-topbridge-js@0.3.4","maintainers":[{"name":"varandrew","email":"leon@appzgate.co.nz"},{"name":"appzgate","email":"sam@appzgate.co.nz"}],"homepage":"https://github.com/youngming/label-print-topbridge-js-core#readme","bugs":{"url":"https://github.com/youngming/label-print-topbridge-js-core/issues"},"dist":{"shasum":"1dfe069cecb7f59736a22cdd0d1c1e0d3c5b744f","tarball":"https://registry.npmjs.org/@appzgatenz/label-print-topbridge-js/-/label-print-topbridge-js-0.3.4.tgz","fileCount":7,"integrity":"sha512-CRvL3tOUPaAjF9/J/U3GqMcUbxT/26R+ztQde12IxKoUl30YR3GHIarvZnT8OJlfSv9CgYB7wkTUkDRxywcIWQ==","signatures":[{"sig":"MEQCICHh+6Dyy5jmg+P/DzvjvprKaKNBsaIiiMRe9Q1pPtyyAiBvQ+ml8RIriKOB/OBYEEyKjIdQm+nNGGvtkI5bJyXxeQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67377},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"gitHead":"7abf129f609533f1c34e5df60efa161e688814a9","scripts":{"dev":"tsdown --watch","lint":"tsc --noEmit","test":"vitest run","build":"tsdown","clean":"rm -rf dist","predev":"node scripts/check-build-node.mjs","prebuild":"node scripts/check-build-node.mjs","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"const p=require('./package.json');const marker='TO'+'DO';const values=[p.repository?.url,p.bugs?.url,p.homepage];if(values.some((v)=>String(v).includes(marker)))throw new Error('Resolve package metadata placeholders before publishing');\" && tsc --noEmit && vitest run && node scripts/check-build-node.mjs && tsdown","publish:public":"node scripts/publish-package.mjs public","publish:private":"node scripts/publish-package.mjs private","check:build-node":"node scripts/check-build-node.mjs"},"_npmUser":{"name":"varandrew","email":"leon@appzgate.co.nz"},"repository":{"url":"git+https://github.com/youngming/label-print-topbridge-js-core.git","type":"git"},"_npmVersion":"10.9.0","description":"Headless browser SDK for TopBridge label printing — WebSocket client, health, benefits, printers, templates, print","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^29.1.1","tsdown":"^0.22.0","vitest":"^3.1.0","typescript":"^5.7.0","@vitest/coverage-v8":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/label-print-topbridge-js_0.3.4_1781148870056_0.3016212702686405","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@appzgatenz/label-print-topbridge-js","version":"0.4.0","keywords":["topbridge","label-print","printer","websocket","sdk","topsale"],"author":{"name":"Appzgate Solutions Limited"},"license":"MIT","_id":"@appzgatenz/label-print-topbridge-js@0.4.0","maintainers":[{"name":"varandrew","email":"leon@appzgate.co.nz"},{"name":"appzgate","email":"sam@appzgate.co.nz"}],"homepage":"https://github.com/youngming/label-print-topbridge-js-core#readme","bugs":{"url":"https://github.com/youngming/label-print-topbridge-js-core/issues"},"dist":{"shasum":"ff4b288a140cf4a56958baf34dc420b6d4179a43","tarball":"https://registry.npmjs.org/@appzgatenz/label-print-topbridge-js/-/label-print-topbridge-js-0.4.0.tgz","fileCount":7,"integrity":"sha512-I6O6FZkrNpYiLTUmqmEox4NGw2VfPPjiLp8ZiKJqrU75rYnu8WcW9GzO9zhI8ewNkwEgBoB0birmHi+0x+RWzg==","signatures":[{"sig":"MEUCIEQ9JBwVkLv3Ap2VGdY9dyM2tLzsVt829mefx7CtTWKgAiEAi2UPdgPH+8p2H336j9ZeG7ndw7BTbLxxamqXmdd2a4k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68870},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"gitHead":"30b8e022386a1e9855f6af02f3bdb779eb26f7ec","scripts":{"dev":"tsdown --watch","lint":"tsc --noEmit","test":"vitest run","build":"tsdown","clean":"rm -rf dist","predev":"node scripts/check-build-node.mjs","prebuild":"node scripts/check-build-node.mjs","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"const p=require('./package.json');const marker='TO'+'DO';const values=[p.repository?.url,p.bugs?.url,p.homepage];if(values.some((v)=>String(v).includes(marker)))throw new Error('Resolve package metadata placeholders before publishing');\" && tsc --noEmit && vitest run && node scripts/check-build-node.mjs && tsdown","publish:public":"node scripts/publish-package.mjs public","publish:private":"node scripts/publish-package.mjs private","check:build-node":"node scripts/check-build-node.mjs"},"_npmUser":{"name":"varandrew","email":"leon@appzgate.co.nz"},"repository":{"url":"git+https://github.com/youngming/label-print-topbridge-js-core.git","type":"git"},"_npmVersion":"10.9.0","description":"Headless browser SDK for TopBridge label printing — WebSocket client, health, benefits, printers, templates, print","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^29.1.1","tsdown":"^0.22.0","vitest":"^3.1.0","typescript":"^5.7.0","@vitest/coverage-v8":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/label-print-topbridge-js_0.4.0_1781586780986_0.16193503000232656","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"@appzgatenz/label-print-topbridge-js","version":"0.5.2","keywords":["topbridge","label-print","printer","websocket","sdk","topsale"],"author":{"name":"Appzgate Solutions Limited"},"license":"MIT","_id":"@appzgatenz/label-print-topbridge-js@0.5.2","maintainers":[{"name":"varandrew","email":"leon@appzgate.co.nz"},{"name":"appzgate","email":"sam@appzgate.co.nz"}],"homepage":"https://github.com/Appzgate-Solutions-Limited/label-print-topbridge-js-core#readme","bugs":{"url":"https://github.com/Appzgate-Solutions-Limited/label-print-topbridge-js-core/issues"},"dist":{"shasum":"01aa7d3adeeba52f045fa97f2bc507c976ee86c9","tarball":"https://registry.npmjs.org/@appzgatenz/label-print-topbridge-js/-/label-print-topbridge-js-0.5.2.tgz","fileCount":7,"integrity":"sha512-QFr5ymgTlG0C3vBxjXdHfK13x2n2/lD8qPntg39GqMWrM3Eslv32I4z0vG595AbxJZRG2SFqfW7gKGhPA/cVdw==","signatures":[{"sig":"MEQCIQCV3t7sSCr0QSQHjquLWNfG7ZV32ph8UwSqI/ekxVuy7gIfBXtYcH07ksPCsNQ6X64uPTkiocgqvRSmBfsuCTXx5Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125752},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"gitHead":"09ae1761d197c8a42ae2ee566953c1005d4a2f79","scripts":{"dev":"tsdown --watch","lint":"tsc --noEmit","test":"vitest run","build":"tsdown","clean":"rm -rf dist","predev":"node scripts/check-build-node.mjs","prebuild":"node scripts/check-build-node.mjs","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"const p=require('./package.json');const marker='TO'+'DO';const values=[p.repository?.url,p.bugs?.url,p.homepage];if(values.some((v)=>String(v).includes(marker)))throw new Error('Resolve package metadata placeholders before publishing');\" && tsc --noEmit && vitest run && node scripts/check-build-node.mjs && tsdown","publish:public":"node scripts/publish-package.mjs public","publish:private":"node scripts/publish-package.mjs private","check:build-node":"node scripts/check-build-node.mjs","publish:private-next":"node scripts/publish-package.mjs private-next"},"_npmUser":{"name":"varandrew","email":"leon@appzgate.co.nz"},"repository":{"url":"git+https://github.com/Appzgate-Solutions-Limited/label-print-topbridge-js-core.git","type":"git"},"_npmVersion":"10.9.0","description":"Headless browser SDK for TopBridge label printing — WebSocket client, health, benefits, printers, templates, print","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^29.1.1","tsdown":"^0.22.0","vitest":"^3.1.0","typescript":"^5.7.0","@vitest/coverage-v8":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/label-print-topbridge-js_0.5.2_1782465675320_0.3356705048384778","host":"s3://npm-registry-packages-npm-production"}},"0.5.3":{"name":"@appzgatenz/label-print-topbridge-js","version":"0.5.3","keywords":["topbridge","label-print","printer","websocket","sdk","topsale"],"author":{"name":"Appzgate Solutions Limited"},"license":"MIT","_id":"@appzgatenz/label-print-topbridge-js@0.5.3","maintainers":[{"name":"varandrew","email":"leon@appzgate.co.nz"},{"name":"appzgate","email":"sam@appzgate.co.nz"}],"homepage":"https://github.com/Appzgate-Solutions-Limited/label-print-topbridge-js-core#readme","bugs":{"url":"https://github.com/Appzgate-Solutions-Limited/label-print-topbridge-js-core/issues"},"dist":{"shasum":"73114c350d84e82b2731097df2949f13098b0c93","tarball":"https://registry.npmjs.org/@appzgatenz/label-print-topbridge-js/-/label-print-topbridge-js-0.5.3.tgz","fileCount":7,"integrity":"sha512-CV6dk4e1+z0d0f7Rr/cArm0/v0K0o5NPP4eBay5JY8CBwlRd/rBjeU/fJJnXezqZ0U/a1i6+/ZKx7TRSVg4Y0Q==","signatures":[{"sig":"MEQCIE1uwd+Xaz7lQ3B8hsp/vO4/7PjE++341iY0qZhm2zSvAiBx0GeZ6Kk1SDvfm2+Ji4nqq6W3v/o3CxPcY0vwnK6baw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":127478},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"gitHead":"09ae1761d197c8a42ae2ee566953c1005d4a2f79","scripts":{"dev":"tsdown --watch","lint":"tsc --noEmit","test":"vitest run","build":"tsdown","clean":"rm -rf dist","predev":"node scripts/check-build-node.mjs","prebuild":"node scripts/check-build-node.mjs","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"const p=require('./package.json');const marker='TO'+'DO';const values=[p.repository?.url,p.bugs?.url,p.homepage];if(values.some((v)=>String(v).includes(marker)))throw new Error('Resolve package metadata placeholders before publishing');\" && tsc --noEmit && vitest run && node scripts/check-build-node.mjs && tsdown","publish:public":"node scripts/publish-package.mjs public","publish:private":"node scripts/publish-package.mjs private","check:build-node":"node scripts/check-build-node.mjs","publish:private-next":"node scripts/publish-package.mjs private-next"},"_npmUser":{"name":"varandrew","email":"leon@appzgate.co.nz"},"repository":{"url":"git+https://github.com/Appzgate-Solutions-Limited/label-print-topbridge-js-core.git","type":"git"},"_npmVersion":"10.9.0","description":"Headless browser SDK for TopBridge label printing — WebSocket client, health, benefits, printers, templates, print","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^29.1.1","tsdown":"^0.22.0","vitest":"^3.1.0","typescript":"^5.7.0","@vitest/coverage-v8":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/label-print-topbridge-js_0.5.3_1782784290019_0.147614179234971","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@appzgatenz/label-print-topbridge-js","version":"0.6.1","keywords":["topbridge","label-print","printer","websocket","sdk","topsale"],"author":{"name":"Appzgate Solutions Limited"},"license":"MIT","_id":"@appzgatenz/label-print-topbridge-js@0.6.1","maintainers":[{"name":"varandrew","email":"leon@appzgate.co.nz"},{"name":"appzgate","email":"sam@appzgate.co.nz"}],"homepage":"https://github.com/Appzgate-Solutions-Limited/label-print-topbridge-js-core#readme","bugs":{"url":"https://github.com/Appzgate-Solutions-Limited/label-print-topbridge-js-core/issues"},"dist":{"shasum":"e46d6a598f272b1b9d0ba41093eadfec14ce7630","tarball":"https://registry.npmjs.org/@appzgatenz/label-print-topbridge-js/-/label-print-topbridge-js-0.6.1.tgz","fileCount":7,"integrity":"sha512-WsN3iYtxNzLQs9omX2oOB7yxNNDG49W5MKYsv5kndJlw/7djqrwnTsRP8TwIzzbM4V9a9STXWoMxChK5WvbbIw==","signatures":[{"sig":"MEUCIDaWJOTfr1Y8a7lJ48Bf/xezGU4KOR7rFDA6Z7/TzJ5rAiEAlolyR1z0BrIW2eE+DjvfZCVAtJ/Hve1zn3v+vaYb3Sc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":145092},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"gitHead":"3c4cf12a9d760d837c492be469a9dca7ef2d7812","scripts":{"dev":"tsdown --watch","lint":"tsc --noEmit && tsc -p tsconfig.public-api-tests.json","test":"vitest run","build":"tsdown","clean":"rm -rf dist","predev":"node scripts/check-build-node.mjs","prebuild":"node scripts/check-build-node.mjs","typecheck":"tsc --noEmit && tsc -p tsconfig.public-api-tests.json","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"const p=require('./package.json');const marker='TO'+'DO';const values=[p.repository?.url,p.bugs?.url,p.homepage];if(values.some((v)=>String(v).includes(marker)))throw new Error('Resolve package metadata placeholders before publishing');\" && tsc --noEmit && tsc -p tsconfig.public-api-tests.json && vitest run && node scripts/check-build-node.mjs && tsdown","publish:public":"node scripts/publish-package.mjs public","publish:private":"node scripts/publish-package.mjs private","check:build-node":"node scripts/check-build-node.mjs","publish:private-next":"node scripts/publish-package.mjs private-next"},"_npmUser":{"name":"varandrew","email":"leon@appzgate.co.nz"},"repository":{"url":"git+https://github.com/Appzgate-Solutions-Limited/label-print-topbridge-js-core.git","type":"git"},"_npmVersion":"10.9.0","description":"Headless browser SDK for TopBridge label printing — WebSocket client, health, benefits, printers, templates, print","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^29.1.1","tsdown":"^0.22.0","vitest":"^3.1.0","typescript":"^5.7.0","@vitest/coverage-v8":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/label-print-topbridge-js_0.6.1_1785199348524_0.36672096282068245","host":"s3://npm-registry-packages-npm-production"}},"0.6.2":{"name":"@appzgatenz/label-print-topbridge-js","version":"0.6.2","description":"Headless browser SDK for TopBridge label printing — WebSocket client, health, benefits, printers, templates, print","keywords":["topbridge","label-print","printer","websocket","sdk","topsale"],"author":{"name":"Appzgate Solutions Limited"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/Appzgate-Solutions-Limited/label-print-topbridge-js-core.git"},"bugs":{"url":"https://github.com/Appzgate-Solutions-Limited/label-print-topbridge-js-core/issues"},"homepage":"https://github.com/Appzgate-Solutions-Limited/label-print-topbridge-js-core#readme","main":"./dist/index.js","module":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"sideEffects":false,"publishConfig":{"access":"public"},"engines":{"node":">=18"},"scripts":{"dev":"tsdown --watch","predev":"node scripts/check-build-node.mjs","build":"tsdown","prebuild":"node scripts/check-build-node.mjs","test":"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage","typecheck":"tsc --noEmit && tsc -p tsconfig.public-api-tests.json","lint":"tsc --noEmit && tsc -p tsconfig.public-api-tests.json","clean":"rm -rf dist","check:build-node":"node scripts/check-build-node.mjs","check:changelog":"node scripts/check-changelog.mjs","changeset":"changeset","version:packages":"changeset version && npm install --package-lock-only --ignore-scripts","publish:private":"node scripts/publish-package.mjs private","publish:private-next":"node scripts/publish-package.mjs private-next","publish:public":"node scripts/publish-package.mjs public","prepublishOnly":"node -e \"const p=require('./package.json');const marker='TO'+'DO';const values=[p.repository?.url,p.bugs?.url,p.homepage];if(values.some((v)=>String(v).includes(marker)))throw new Error('Resolve package metadata placeholders before publishing');\" && node scripts/check-changelog.mjs && tsc --noEmit && tsc -p tsconfig.public-api-tests.json && vitest run && node scripts/check-build-node.mjs && tsdown"},"devDependencies":{"@changesets/cli":"^2.31.1","@vitest/coverage-v8":"^3.1.0","jsdom":"^29.1.1","tsdown":"^0.22.0","typescript":"^5.7.0","vitest":"^3.1.0"},"gitHead":"700dc760e4d1aafb629635e22047268c1fcfebbd","_id":"@appzgatenz/label-print-topbridge-js@0.6.2","_nodeVersion":"24.16.0","_npmVersion":"11.13.0","dist":{"integrity":"sha512-+8FU1BHgyjhoeNiQ4kECdVy9aNZ0H9VWpiUhclpnvDqkzCGXQ+8lIWSVBVC+4w1o7XirpVqpebUqf49llib8pg==","shasum":"a24efc2db39c0f3e00602a0c20015a67321e154e","tarball":"https://registry.npmjs.org/@appzgatenz/label-print-topbridge-js/-/label-print-topbridge-js-0.6.2.tgz","fileCount":7,"unpackedSize":145732,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIBCvjW8HVWuFs/8I1z8KaVWaKobEUPX9UwAPovdW4O85AiA6ioATjJxsjMEXyvNH546xohDSoxFQ9TMe9DObiJVTyw=="}]},"_npmUser":{"name":"varandrew","email":"leon@appzgate.co.nz"},"directories":{},"maintainers":[{"name":"varandrew","email":"leon@appzgate.co.nz"},{"name":"appzgate","email":"sam@appzgate.co.nz"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/label-print-topbridge-js_0.6.2_1786100601820_0.7471617819920251"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-08T00:14:42.605Z","modified":"2026-08-07T11:03:22.163Z","0.2.0":"2026-05-08T00:14:42.821Z","0.3.2":"2026-05-26T05:07:11.896Z","0.3.3":"2026-06-04T05:36:00.998Z","0.3.4":"2026-06-11T03:34:30.179Z","0.4.0":"2026-06-16T05:13:01.120Z","0.5.2":"2026-06-26T09:21:15.461Z","0.5.3":"2026-06-30T01:51:30.189Z","0.6.1":"2026-07-28T00:42:28.696Z","0.6.2":"2026-08-07T11:03:21.973Z"},"bugs":{"url":"https://github.com/Appzgate-Solutions-Limited/label-print-topbridge-js-core/issues"},"author":{"name":"Appzgate Solutions Limited"},"license":"MIT","homepage":"https://github.com/Appzgate-Solutions-Limited/label-print-topbridge-js-core#readme","keywords":["topbridge","label-print","printer","websocket","sdk","topsale"],"repository":{"type":"git","url":"git+https://github.com/Appzgate-Solutions-Limited/label-print-topbridge-js-core.git"},"description":"Headless browser SDK for TopBridge label printing — WebSocket client, health, benefits, printers, templates, print","maintainers":[{"name":"varandrew","email":"leon@appzgate.co.nz"},{"name":"appzgate","email":"sam@appzgate.co.nz"}],"readme":"# @appzgatenz/label-print-topbridge-js\n\nHeadless browser SDK for TopBridge label printing. WebSocket API V2 client, health check, login status, benefits, printers, template schema, and print execution — zero dependencies.\n\n## Install\n\n```bash\nnpm install @appzgatenz/label-print-topbridge-js\n```\n\n## Quick Start\n\n```typescript\nimport { TopBridgeClient } from '@appzgatenz/label-print-topbridge-js'\n\nconst client = new TopBridgeClient({ debug: true })\n\n// 1. Preflight (auto-launch Tray App if not running)\nconst { printers } = await client.launch.ensureRunning(() => client.preflight.run())\n\n// 2. Print\nconst result = await client.print.execute({\n  template: 'PRICE_LABEL',\n  printer: printers.data.defaultPrinter,\n  products: [\n    { name: 'Apple', examplePrice: { value: 3.99, currency: '$', unit: '/kg' }, copies: 2 },\n  ],\n})\n\nconsole.log(`Printed ${result.data.printedCopies} copies`)\n```\n\n## Documentation\n\n- [Getting Started](docs/getting-started.md)\n- [API Reference](docs/api-reference.md)\n- [Developer Guide](docs/developer-guide.md)\n- [WebSocket API V2](docs/websocket-api-v2.md)\n- [Session management & refresh](docs/specs/session-management-and-refresh.md)\n- [Changelog](CHANGELOG.md)\n\n## Architecture\n\n```\nTopBridgeClient\n├── health        Health check\n├── whoami        Login status\n├── benefits      Print quota verification (+ refreshBenefit)\n├── printers      Printer list\n├── templates     Template list + schema (+ refreshTemplates)\n├── print         Print execution with data transformation\n├── preflight     Orchestrated health → benefits → printers\n├── launch        Tray App launch + retry orchestration\n├── printerSetup  Printer config + BPAC setup\n├── session       Session-limit unblock (kickSession)\n└── events        Push events + connection lifecycle\n```\n\n## Features\n\n- **Zero dependencies** — pure TypeScript, browser-native APIs only\n- **~9 KB gzipped** — minimal bundle size\n- **TypeScript strict mode** — full type safety with exported types\n- **Headless** — no UI framework dependency, works with React/Vue/Svelte/vanilla\n- **Layered error model** — `instanceof` type narrowing for all error scenarios (incl. `TopBridgeSessionError`)\n- **ESM + CJS** — compatible with Vite, Next.js, webpack\n- **WebSocket API V2** — unified `/v2` endpoint with action-based requests\n- **Realtime events** — persistent connection with `printer`/`template`/`user` push events + connection lifecycle\n- **Session unblock** — `client.session.kickSession()` when authenticated APIs return `SESSION_LIMIT_EXCEEDED`\n\n## Security\n\n- Fixed SDK endpoints (`ws://localhost:8765` by default, optional `wss://topbridge.topsale.co.nz:8764` via `wssEnabled: true`) — no arbitrary URL configuration\n- SDK caller source whitelist (`Core-SDK` / `React-SDK` / `Nextjs-SDK`; `Excel` / `Odoo` are Tray App integration sources outside this core package)\n- Production build minification\n- URL safety validation\n- Input sanitization (formula injection prevention)\n\n## License\n\nMIT\n","readmeFilename":"README.md"}