{"_id":"@sythos/js_barcode_universal","_rev":"49-e72dbacf1818d36aad0e9d310f67c195","name":"@sythos/js_barcode_universal","dist-tags":{"latest":"1.6.3"},"versions":{"0.1.0":{"name":"@sythos/js_barcode_universal","version":"0.1.0","keywords":["barcode","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@0.1.0","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"445e6439a7521832c1ec4ff2a88b53551462bc68","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-0.1.0.tgz","fileCount":53,"integrity":"sha512-KoFcIgwD6rNK1s/NUXcbEQn/MQWiyaYAnKNUKJyudX9h9ifShneFnsWU5wuLbyU8G4PmB8Wfe2RNSfUpxxxRdA==","signatures":[{"sig":"MEUCIEVlozW5rPhhIbPJ0RnZP8XeSi1jkiYK7nvgRzsm/0DXAiEA6WO358t3ZDjSXP79qw0EV0kuvg4mw0XwXCYqberdCZ4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":953434},"main":"./src/index.js","type":"module","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=18"},"exports":{".":"./src/index.js","./qr":"./src/qr/index.js","./core":"./src/core/index.js","./oned":"./src/oned/index.js","./image":"./src/image/index.js","./bundle":"./bundle/sythos-barcode.esm.js","./render":"./src/render/index.js","./render/png":"./src/render/png.js","./render/svg":"./src/render/svg.js","./bundle/iife":"./bundle/sythos-barcode.js","./package.json":"./package.json","./render/image-data":"./src/render/image-data.js"},"gitHead":"0981e2af9c158df6db8c84425fcd92ec25f77025","_npmUser":{"name":"sythos","email":"sythos@gmail.com"},"jsdelivr":"./bundle/sythos-barcode.js","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.17.0","description":"Read and write barcodes in JavaScript. 100% original code, zero runtime dependencies. QR Code, EAN/UPC, ISBN, Code 128, Code 39, Code 93, ITF, Codabar, MSI, Code 11 and Pharmacode.","directories":{},"sideEffects":false,"_nodeVersion":"26.5.1","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_0.1.0_1785999180993_0.6949896795988479","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@sythos/js_barcode_universal","version":"1.0.0","keywords":["barcode","datamatrix","ecc200","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.0.0","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"e6a01b233d914db2a716d8d38b11527976f2803c","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.0.0.tgz","fileCount":59,"integrity":"sha512-BogRsoNq9hRk0w6Nmbbee8wY6VhkZY7dieffM0x96NkMsOJfSLh1tjj/0ZPYeK8r0xAsfbLTLIZ6Ci9Jo1qvUQ==","signatures":[{"sig":"MEYCIQDecN12Z+ZvLej8hZAIHSnJpDtUALHsCgzgEuonU6aVCwIhAKibASy6MUup/e5vrALgjHrLF+H2IyEkPcpdMAYk8xwu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1078929},"main":"./src/index.js","type":"module","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=18"},"exports":{".":"./src/index.js","./qr":"./src/qr/index.js","./core":"./src/core/index.js","./oned":"./src/oned/index.js","./image":"./src/image/index.js","./bundle":"./bundle/sythos-barcode.esm.js","./render":"./src/render/index.js","./datamatrix":"./src/datamatrix/index.js","./render/png":"./src/render/png.js","./render/svg":"./src/render/svg.js","./bundle/iife":"./bundle/sythos-barcode.js","./package.json":"./package.json","./render/image-data":"./src/render/image-data.js"},"gitHead":"bdb446ef6ce62f7b9061f9a4abcb2ad6655d10f8","_npmUser":{"name":"sythos","email":"sythos@gmail.com"},"jsdelivr":"./bundle/sythos-barcode.js","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.19.0","description":"Read and write barcodes in JavaScript. 100% original code, zero runtime dependencies. Data Matrix ECC 200, QR Code, EAN/UPC, ISBN, Code 128, Code 39, Code 93, ITF, Codabar, MSI, Code 11 and Pharmacode.","directories":{},"sideEffects":false,"_nodeVersion":"26.7.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.0.0_1786224612412_0.9441561377337109","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@sythos/js_barcode_universal","version":"1.1.0","keywords":["barcode","datamatrix","ecc200","aztec","aztec-code","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.1.0","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"1332a2b52932d5932fb99100e41f4bbf10492d7d","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.1.0.tgz","fileCount":66,"integrity":"sha512-jTytKiZ5l4lzhLaxvyHgGoXmEzLSDcZ4zu1kRt2OeJHSDEVW+HALKmGsmVxhRkvIN0S/Dm9xtNt6itD0z1phCw==","signatures":[{"sig":"MEQCIFxXXRfL5+hEcLMeCCRMOXktTIX1jzURrCuyOPB3c6yOAiBH48112k1kr3CBb98rmbOg359n9m0EQtPxwHdw3eRMTQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1234977},"main":"./src/index.js","type":"module","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=18"},"exports":{".":"./src/index.js","./qr":"./src/qr/index.js","./core":"./src/core/index.js","./oned":"./src/oned/index.js","./aztec":"./src/aztec/index.js","./image":"./src/image/index.js","./bundle":"./bundle/sythos-barcode.esm.js","./render":"./src/render/index.js","./datamatrix":"./src/datamatrix/index.js","./render/png":"./src/render/png.js","./render/svg":"./src/render/svg.js","./bundle/iife":"./bundle/sythos-barcode.js","./package.json":"./package.json","./render/image-data":"./src/render/image-data.js"},"gitHead":"1dca59b499d4c228ea69c0764627376b3a4bff01","_npmUser":{"name":"sythos","email":"sythos@gmail.com"},"jsdelivr":"./bundle/sythos-barcode.js","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.19.0","description":"Read and write barcodes in JavaScript. 100% original code, zero runtime dependencies. Aztec Code, Data Matrix ECC 200, QR Code, EAN/UPC, ISBN, Code 128, Code 39, Code 93, ITF, Codabar, MSI, Code 11 and Pharmacode.","directories":{},"sideEffects":false,"_nodeVersion":"26.7.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.1.0_1786438905798_0.99245682960704","host":"s3://npm-registry-packages-npm-production"}},"1.2.5":{"name":"@sythos/js_barcode_universal","version":"1.2.5","keywords":["barcode","datamatrix","ecc200","aztec","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","sdk","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.2.5","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"d9e77b726ee67ab3be6cae8898a63b0c4a928b9f","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.2.5.tgz","fileCount":82,"integrity":"sha512-Pehcjapa679ugPcYeNmbeF8lBDOfQhTgaeXohF4tQcgeP3BMgMs7zjJK3sejQS/xfSCmHn1nGFNfaGe3dA2UEg==","signatures":[{"sig":"MEYCIQCp5uG9NNAABkvf5vmq8NMmwjyPDK+HcNrPKVB3FB+yPwIhAIaeBja5RGcOyaUKhdRh8r+chXZO/KFZ3NPusMjR0aXs","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1586651},"main":"./src/index.js","type":"module","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=18"},"exports":{".":"./src/index.js","./qr":"./src/qr/index.js","./core":"./src/core/index.js","./oned":"./src/oned/index.js","./aztec":"./src/aztec/index.js","./image":"./src/image/index.js","./bundle":"./bundle/sythos-barcode.esm.js","./pdf417":"./src/pdf417/index.js","./render":"./src/render/index.js","./datamatrix":"./src/datamatrix/index.js","./render/png":"./src/render/png.js","./render/svg":"./src/render/svg.js","./bundle/iife":"./bundle/sythos-barcode.js","./micropdf417":"./src/micropdf417/index.js","./package.json":"./package.json","./render/image-data":"./src/render/image-data.js"},"gitHead":"e13cae44c3e212042c6d284e47a515d902fb4d4b","_npmUser":{"name":"sythos","email":"sythos@gmail.com"},"jsdelivr":"./bundle/sythos-barcode.js","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.19.0","description":"Read and write barcodes in JavaScript with zero runtime dependencies. Aztec Code, Data Matrix ECC 200, MicroPDF417, PDF417, QR Code, EAN/UPC, ISBN, Code 128, Code 39, Code 93, ITF, Codabar, MSI, Code 11 and Pharmacode.","directories":{},"sideEffects":false,"_nodeVersion":"26.7.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.2.5_1786483189619_0.4419182833570221","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@sythos/js_barcode_universal","version":"1.3.1","keywords":["barcode","datamatrix","ecc200","aztec","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.3.1","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"ef20bb49c90b760763f2fb73816f82d5cfdd5215","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.3.1.tgz","fileCount":100,"integrity":"sha512-9pG0Q/TyIENLEVVBBJVVG64gj1T8SWfS/f+xiOILJnwDXFpx47wbS4K1owBxynqDFSE/UktPRDlmcXggNpLHaw==","signatures":[{"sig":"MEUCIAvUjCn38TNNStI+0rH9a8WnRw/RnFDHwVc+1z/mndfRAiEA2cDf5StpDFiLD3dHxDyTDO4cXy3xCAVNyQyHaVsOoKE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1946529},"main":"./src/index.js","type":"module","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=18"},"exports":{".":"./src/index.js","./qr":"./src/qr/index.js","./core":"./src/core/index.js","./oned":"./src/oned/index.js","./rmqr":"./src/rmqr/index.js","./aztec":"./src/aztec/index.js","./image":"./src/image/index.js","./bundle":"./bundle/sythos-barcode.esm.js","./pdf417":"./src/pdf417/index.js","./render":"./src/render/index.js","./frameqr":"./src/frameqr/index.js","./microqr":"./src/microqr/index.js","./datamatrix":"./src/datamatrix/index.js","./render/png":"./src/render/png.js","./render/svg":"./src/render/svg.js","./bundle/iife":"./bundle/sythos-barcode.js","./micropdf417":"./src/micropdf417/index.js","./package.json":"./package.json","./render/image-data":"./src/render/image-data.js"},"gitHead":"106d7476c46c37a1278a165a07f9f75b99c31115","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.16.0","description":"Read and write barcodes in JavaScript with zero runtime dependencies. QR Code, Micro QR, rMQR, the non-certified Sythos Canvas QR profile, Aztec Code, Data Matrix ECC 200, MicroPDF417, PDF417 and one-dimensional formats.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.3.1_1786616517258_0.9919033611919663","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"@sythos/js_barcode_universal","version":"1.4.1","keywords":["barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.4.1","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"1030f39f3ee48e3f530e131cc616594104811099","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.4.1.tgz","fileCount":124,"integrity":"sha512-Wmh6ZfUVb6binKprLhPt8OHqIGc/kstkh3rHwBKJkTuqEiw1b96YjSA3Tv4gENdH6xaoSt1w07PHVrYmCH7dQg==","signatures":[{"sig":"MEUCIEUeoMBJBDoiZzsugUv6cXKbxMIES+pjQBn2g+322KB1AiEAoUEXWr+98tXqOQXXomxNtVKlRrEyMMV1LemM3wB1jcE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2258555},"main":"./src/index.js","type":"module","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=18"},"exports":{".":"./src/index.js","./qr":"./src/qr/index.js","./core":"./src/core/index.js","./oned":"./src/oned/index.js","./rmqr":"./src/rmqr/index.js","./aztec":"./src/aztec/index.js","./image":"./src/image/index.js","./bundle":"./bundle/sythos-barcode.esm.js","./pdf417":"./src/pdf417/index.js","./render":"./src/render/index.js","./databar":"./src/databar/index.js","./frameqr":"./src/frameqr/index.js","./microqr":"./src/microqr/index.js","./aztecrune":"./src/aztecrune/index.js","./datamatrix":"./src/datamatrix/index.js","./render/png":"./src/render/png.js","./render/svg":"./src/render/svg.js","./bundle/iife":"./bundle/sythos-barcode.js","./micropdf417":"./src/micropdf417/index.js","./package.json":"./package.json","./compactpdf417":"./src/compactpdf417/index.js","./render/image-data":"./src/render/image-data.js"},"gitHead":"20033a8840e44ad73f0443739d7602f7fda031a5","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.16.0","description":"Read and write barcodes in JavaScript with zero runtime dependencies. QR Code, Micro QR, rMQR, FrameQR Code, Aztec Code and Rune, PDF417 variants, GS1 DataBar Omnidirectional/Truncated, EAN supplements and one-dimensional formats.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.4.1_1786627026985_0.7503109775096064","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@sythos/js_barcode_universal","version":"1.5.0","keywords":["barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.5.0","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"0a3dae2d2da43d9f5e82444543f00dbfbb8db7b5","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.5.0.tgz","fileCount":124,"integrity":"sha512-XI3Z7fmnslaPwGEMQiJl3HceWxO3xl5Lyx1ZCzlbMW6FxsO8N+ugFQ7cFWUsMFQ7X3O6Cvj+/MmnbTZeNE5sfQ==","signatures":[{"sig":"MEYCIQDj0XDH6sswyk4T3ZtchRZ3QreIuVH4zzV7QKgL7QpflgIhAP++d4CzwFUkW0RWvJVIhvJuZkBiKGiX/cNtQi3QU0Fd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2308159},"main":"./src/index.js","type":"module","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=18"},"exports":{".":"./src/index.js","./qr":"./src/qr/index.js","./core":"./src/core/index.js","./oned":"./src/oned/index.js","./rmqr":"./src/rmqr/index.js","./aztec":"./src/aztec/index.js","./image":"./src/image/index.js","./bundle":"./bundle/sythos-barcode.esm.js","./pdf417":"./src/pdf417/index.js","./render":"./src/render/index.js","./databar":"./src/databar/index.js","./frameqr":"./src/frameqr/index.js","./microqr":"./src/microqr/index.js","./aztecrune":"./src/aztecrune/index.js","./datamatrix":"./src/datamatrix/index.js","./render/png":"./src/render/png.js","./render/svg":"./src/render/svg.js","./bundle/iife":"./bundle/sythos-barcode.js","./micropdf417":"./src/micropdf417/index.js","./package.json":"./package.json","./compactpdf417":"./src/compactpdf417/index.js","./render/image-data":"./src/render/image-data.js"},"gitHead":"77ac47d6d5abb8fded8c9c692824dc1c79cc1c3a","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.17.0","description":"Read and write barcodes in JavaScript with zero runtime dependencies. QR Code, Micro QR, rMQR, FrameQR Code, Aztec Code and Rune, PDF417 variants, GS1 DataBar Omnidirectional/Truncated, EAN supplements and one-dimensional formats.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.5.0_1786635431551_0.24759734849608184","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"@sythos/js_barcode_universal","version":"1.5.1","keywords":["barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.5.1","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"6aca487dfe062a5d8ad2203a2c76f1ce41f239b2","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.5.1.tgz","fileCount":124,"integrity":"sha512-XLhP4FR0EjHwiOdjDPN333VY06UlcUVNqowjRFNfBmGKDs0pvyJfgEF7oskPySnUBmyFhgMlvStuqjfQLCw+FA==","signatures":[{"sig":"MEYCIQDO7qyt+rlN2CErVM8pJn7VCLS13ka2S9Ls8t1cyyKFJwIhAKygd17j9dWAkc5BhPzpXYyiywohwxOXvRY2wnZ/QdUz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2308303},"main":"./src/index.js","type":"module","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=18"},"exports":{".":"./src/index.js","./qr":"./src/qr/index.js","./core":"./src/core/index.js","./oned":"./src/oned/index.js","./rmqr":"./src/rmqr/index.js","./aztec":"./src/aztec/index.js","./image":"./src/image/index.js","./bundle":"./bundle/sythos-barcode.esm.js","./pdf417":"./src/pdf417/index.js","./render":"./src/render/index.js","./databar":"./src/databar/index.js","./frameqr":"./src/frameqr/index.js","./microqr":"./src/microqr/index.js","./aztecrune":"./src/aztecrune/index.js","./datamatrix":"./src/datamatrix/index.js","./render/png":"./src/render/png.js","./render/svg":"./src/render/svg.js","./bundle/iife":"./bundle/sythos-barcode.js","./micropdf417":"./src/micropdf417/index.js","./package.json":"./package.json","./compactpdf417":"./src/compactpdf417/index.js","./render/image-data":"./src/render/image-data.js"},"gitHead":"47a83690e16e998fec825c30e6d10734af1d9dd8","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.17.0","description":"Read and write barcodes in JavaScript with zero runtime dependencies. QR Code, Micro QR, rMQR, FrameQR Code, Aztec Code and Rune, PDF417 variants, GS1 DataBar Omnidirectional/Truncated, EAN supplements and one-dimensional formats.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.5.1_1786637769199_0.6468191669096075","host":"s3://npm-registry-packages-npm-production"}},"1.5.2":{"name":"@sythos/js_barcode_universal","version":"1.5.2","keywords":["barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.5.2","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"94100d3850c67f8491047a1ce9c14ff7d7667958","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.5.2.tgz","fileCount":124,"integrity":"sha512-/ehyOJefsfq6p74r+KyxB3i9WgaApQIKXYun/MiYX+7TO7lHihtP0Rmn4tDEBkc9jQJOad/GanIs/zbGHSwXeA==","signatures":[{"sig":"MEQCIHMDIbAQWsT3OuPrEdLJSLZcbeZJE6hIMt4FDiLP8C08AiAtu90lICFmC/5APzPpzF6ZK1A7FWEmRfiiab5WfOvR+Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.5.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2308303},"main":"./src/index.js","type":"module","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=18"},"exports":{".":"./src/index.js","./qr":"./src/qr/index.js","./core":"./src/core/index.js","./oned":"./src/oned/index.js","./rmqr":"./src/rmqr/index.js","./aztec":"./src/aztec/index.js","./image":"./src/image/index.js","./bundle":"./bundle/sythos-barcode.esm.js","./pdf417":"./src/pdf417/index.js","./render":"./src/render/index.js","./databar":"./src/databar/index.js","./frameqr":"./src/frameqr/index.js","./microqr":"./src/microqr/index.js","./aztecrune":"./src/aztecrune/index.js","./datamatrix":"./src/datamatrix/index.js","./render/png":"./src/render/png.js","./render/svg":"./src/render/svg.js","./bundle/iife":"./bundle/sythos-barcode.js","./micropdf417":"./src/micropdf417/index.js","./package.json":"./package.json","./compactpdf417":"./src/compactpdf417/index.js","./render/image-data":"./src/render/image-data.js"},"gitHead":"9ac23e2772c7c2574d01e237f04d44e64cbe948e","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.16.0","description":"Read and write barcodes in JavaScript with zero runtime dependencies. QR Code, Micro QR, rMQR, FrameQR Code, Aztec Code and Rune, PDF417 variants, GS1 DataBar Omnidirectional/Truncated, EAN supplements and one-dimensional formats.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.5.2_1786638796661_0.1970137705065349","host":"s3://npm-registry-packages-npm-production"}},"1.5.3":{"name":"@sythos/js_barcode_universal","version":"1.5.3","keywords":["barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.5.3","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"2ab716d0284566c2545d5a881132c7bf437c6700","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.5.3.tgz","fileCount":124,"integrity":"sha512-bdUOcIZJ9nBIOMH82MH2mGmB+kHYvrAxINA4wQKLV6kMTa/ER86Pv0FrbLQYsw2van8S6dKl67HG9o0MmFSUNA==","signatures":[{"sig":"MEQCIA4ZALXc3SlAFhauy/RHkLz6l0gsm1F5BHWzLfDuqI6/AiA3m95bJqlCYYHhK+tUUtl+Kdw8Ibl77HvydQA0ZqlJxQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.5.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2312041},"main":"./src/index.js","type":"module","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=18"},"exports":{".":"./src/index.js","./qr":"./src/qr/index.js","./core":"./src/core/index.js","./oned":"./src/oned/index.js","./rmqr":"./src/rmqr/index.js","./aztec":"./src/aztec/index.js","./image":"./src/image/index.js","./bundle":"./bundle/sythos-barcode.esm.js","./pdf417":"./src/pdf417/index.js","./render":"./src/render/index.js","./databar":"./src/databar/index.js","./frameqr":"./src/frameqr/index.js","./microqr":"./src/microqr/index.js","./aztecrune":"./src/aztecrune/index.js","./datamatrix":"./src/datamatrix/index.js","./render/png":"./src/render/png.js","./render/svg":"./src/render/svg.js","./bundle/iife":"./bundle/sythos-barcode.js","./micropdf417":"./src/micropdf417/index.js","./package.json":"./package.json","./compactpdf417":"./src/compactpdf417/index.js","./render/image-data":"./src/render/image-data.js"},"gitHead":"085c5be88832aa5d8438b7e92b129b21e6ed4ad6","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.16.0","description":"Read and write barcodes in JavaScript with zero runtime dependencies. QR Code, Micro QR, rMQR, FrameQR Code, Aztec Code and Rune, PDF417 variants, GS1 DataBar Omnidirectional/Truncated, EAN supplements and one-dimensional formats.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.5.3_1786646019304_0.35146077950795607","host":"s3://npm-registry-packages-npm-production"}},"1.5.4":{"name":"@sythos/js_barcode_universal","version":"1.5.4","keywords":["barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.5.4","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"94e1b522865a99cac44807cf42827fd88c2c1f5d","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.5.4.tgz","fileCount":124,"integrity":"sha512-cvUGD/7ttGGemT+DLPSRklU7rzk6NMyWfIvLoOAwvOJtAEt+0yhSkZRM/0E+nHdQKzyJh0ROLgIHtOA5MAmPpQ==","signatures":[{"sig":"MEYCIQCalB1XyAMuDpwtS6WiDVIo19FnrScGIM+Zcb39d/i7iAIhAPXTpb8z2MGdQW2nxRRAPaUqI6Z73GDTPWlW3uhgDG5x","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.5.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2318362},"main":"./src/index.js","type":"module","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=18"},"exports":{".":"./src/index.js","./qr":"./src/qr/index.js","./core":"./src/core/index.js","./oned":"./src/oned/index.js","./rmqr":"./src/rmqr/index.js","./aztec":"./src/aztec/index.js","./image":"./src/image/index.js","./bundle":"./bundle/sythos-barcode.esm.js","./pdf417":"./src/pdf417/index.js","./render":"./src/render/index.js","./databar":"./src/databar/index.js","./frameqr":"./src/frameqr/index.js","./microqr":"./src/microqr/index.js","./aztecrune":"./src/aztecrune/index.js","./datamatrix":"./src/datamatrix/index.js","./render/png":"./src/render/png.js","./render/svg":"./src/render/svg.js","./bundle/iife":"./bundle/sythos-barcode.js","./micropdf417":"./src/micropdf417/index.js","./package.json":"./package.json","./compactpdf417":"./src/compactpdf417/index.js","./render/image-data":"./src/render/image-data.js"},"gitHead":"4c010ed7de6f053d7576efdead38cb15a3bb9c8f","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.16.0","description":"Read and write barcodes in JavaScript with zero runtime dependencies. QR Code, Micro QR, rMQR, FrameQR Code, Aztec Code and Rune, PDF417 variants, GS1 DataBar Omnidirectional/Truncated, EAN supplements and one-dimensional formats.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.5.4_1786649936831_0.058583599297122424","host":"s3://npm-registry-packages-npm-production"}},"1.5.5":{"name":"@sythos/js_barcode_universal","version":"1.5.5","keywords":["barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.5.5","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"acdd53ff56fd49fa6984f22192c921023e65b5d6","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.5.5.tgz","fileCount":124,"integrity":"sha512-9HWyWBgmhx2vWtFS8ZDupUrjE0ty9RDwzNr4zIlB1uubsIabcD6iu4rp6kLN/uRIgOvF85gh87nqM7fF2Pxxew==","signatures":[{"sig":"MEUCIGDqRXZ7UAgx0ovI17adAzdX4gx1xQ8MekqYvJwnC6V3AiEA4hyNMRmlCh6i3fWXOsHZOzN1X5iv20EDAgvZMQGE5Qk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.5.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2335637},"main":"./src/index.js","type":"module","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=18"},"exports":{".":"./src/index.js","./qr":"./src/qr/index.js","./core":"./src/core/index.js","./oned":"./src/oned/index.js","./rmqr":"./src/rmqr/index.js","./aztec":"./src/aztec/index.js","./image":"./src/image/index.js","./bundle":"./bundle/sythos-barcode.esm.js","./pdf417":"./src/pdf417/index.js","./render":"./src/render/index.js","./databar":"./src/databar/index.js","./frameqr":"./src/frameqr/index.js","./microqr":"./src/microqr/index.js","./aztecrune":"./src/aztecrune/index.js","./datamatrix":"./src/datamatrix/index.js","./render/png":"./src/render/png.js","./render/svg":"./src/render/svg.js","./bundle/iife":"./bundle/sythos-barcode.js","./micropdf417":"./src/micropdf417/index.js","./package.json":"./package.json","./compactpdf417":"./src/compactpdf417/index.js","./render/image-data":"./src/render/image-data.js"},"gitHead":"b83dd917c33f62fdc7aa52d7bdabf3b11bb24758","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.17.0","description":"Read and write barcodes in JavaScript with zero runtime dependencies. QR Code, Micro QR, rMQR, FrameQR Code, Aztec Code and Rune, PDF417 variants, GS1 DataBar Omnidirectional/Truncated, EAN supplements and one-dimensional formats.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.5.5_1786656026666_0.2646216292188992","host":"s3://npm-registry-packages-npm-production"}},"1.5.6":{"name":"@sythos/js_barcode_universal","version":"1.5.6","keywords":["barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.5.6","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"2c942436924b82bae1870c1a9e3b5aa4e7eb4d7c","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.5.6.tgz","fileCount":124,"integrity":"sha512-k8hxCX24junMWEXBzYAmDOOmPprj2dr+3jBFSPSwyiavEt1DtabYt/uM5TfbC6Z+Q7Yk5WsstsSg5zlZMjczBQ==","signatures":[{"sig":"MEUCIAjyxcQKL48IbRCA7JYgtb7t1HRgP+KMwFY7ifO4OVg+AiEAhyYa/UDEWftEcTGal1O4PSgwoA/3nHJqNDl8xBBW1hA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.5.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2335819},"main":"./src/index.js","type":"module","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=18"},"exports":{".":"./src/index.js","./qr":"./src/qr/index.js","./core":"./src/core/index.js","./oned":"./src/oned/index.js","./rmqr":"./src/rmqr/index.js","./aztec":"./src/aztec/index.js","./image":"./src/image/index.js","./bundle":"./bundle/sythos-barcode.esm.js","./pdf417":"./src/pdf417/index.js","./render":"./src/render/index.js","./databar":"./src/databar/index.js","./frameqr":"./src/frameqr/index.js","./microqr":"./src/microqr/index.js","./aztecrune":"./src/aztecrune/index.js","./datamatrix":"./src/datamatrix/index.js","./render/png":"./src/render/png.js","./render/svg":"./src/render/svg.js","./bundle/iife":"./bundle/sythos-barcode.js","./micropdf417":"./src/micropdf417/index.js","./package.json":"./package.json","./compactpdf417":"./src/compactpdf417/index.js","./render/image-data":"./src/render/image-data.js"},"gitHead":"8c21d3447833797fb01f21d72039d4ac4389083d","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.16.0","description":"Read and write barcodes in JavaScript with zero runtime dependencies. QR Code, Micro QR, rMQR, FrameQR Code, Aztec Code and Rune, PDF417 variants, GS1 DataBar Omnidirectional/Truncated, EAN supplements and one-dimensional formats.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.5.6_1786696229956_0.8534308614516593","host":"s3://npm-registry-packages-npm-production"}},"1.5.7":{"name":"@sythos/js_barcode_universal","version":"1.5.7","keywords":["barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.5.7","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"e008ba9d2d0e4c673b9e4b3f98cf52ae72b8989f","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.5.7.tgz","fileCount":212,"integrity":"sha512-v658Yk3GsN0eaRbtZSiUv2p52GPeivBsEMICkO8P/vD5E0mThEqWvIa1ggSIyaHjMzU8R/hn/9LuzlY4HPzp5w==","signatures":[{"sig":"MEUCIDKkygMCMzjARnxYf16QsOUV2N8hZ7IFzUwCvFi2QblJAiEAhfU/iIosAnc7AIGNRKxxKpI3yz3+4VH1LScloSiuPZ4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.5.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2606347},"main":"./src/index.js","type":"module","types":"./typings/index.d.ts","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=18"},"exports":{".":{"types":"./typings/index.d.ts","import":"./src/index.js"},"./qr":{"types":"./typings/qr/index.d.ts","import":"./src/qr/index.js"},"./core":{"types":"./typings/core/index.d.ts","import":"./src/core/index.js"},"./oned":{"types":"./typings/oned/index.d.ts","import":"./src/oned/index.js"},"./rmqr":{"types":"./typings/rmqr/index.d.ts","import":"./src/rmqr/index.js"},"./aztec":{"types":"./typings/aztec/index.d.ts","import":"./src/aztec/index.js"},"./image":{"types":"./typings/image/index.d.ts","import":"./src/image/index.js"},"./bundle":{"types":"./typings/bundle/sythos-barcode.esm.d.ts","import":"./bundle/sythos-barcode.esm.js"},"./pdf417":{"types":"./typings/pdf417/index.d.ts","import":"./src/pdf417/index.js"},"./render":{"types":"./typings/render/index.d.ts","import":"./src/render/index.js"},"./databar":{"types":"./typings/databar/index.d.ts","import":"./src/databar/index.js"},"./frameqr":{"types":"./typings/frameqr/index.d.ts","import":"./src/frameqr/index.js"},"./microqr":{"types":"./typings/microqr/index.d.ts","import":"./src/microqr/index.js"},"./aztecrune":{"types":"./typings/aztecrune/index.d.ts","import":"./src/aztecrune/index.js"},"./datamatrix":{"types":"./typings/datamatrix/index.d.ts","import":"./src/datamatrix/index.js"},"./render/png":{"types":"./typings/render/png.d.ts","import":"./src/render/png.js"},"./render/svg":{"types":"./typings/render/svg.d.ts","import":"./src/render/svg.js"},"./bundle/iife":{"types":"./typings/bundle/sythos-barcode.d.ts","import":"./bundle/sythos-barcode.js"},"./micropdf417":{"types":"./typings/micropdf417/index.d.ts","import":"./src/micropdf417/index.js"},"./package.json":"./package.json","./compactpdf417":{"types":"./typings/compactpdf417/index.d.ts","import":"./src/compactpdf417/index.js"},"./render/image-data":{"types":"./typings/render/image-data.d.ts","import":"./src/render/image-data.js"}},"gitHead":"16123d5e2d6cc0cd4a6b4a00dfb084a2bb1fbe44","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.17.0","description":"Read and write barcodes in JavaScript with zero runtime dependencies. QR Code, Micro QR, rMQR, FrameQR Code, Aztec Code and Rune, PDF417 variants, GS1 DataBar Omnidirectional/Truncated, EAN supplements and one-dimensional formats.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.5.7_1787080124354_0.06625737985682534","host":"s3://npm-registry-packages-npm-production"}},"1.5.8":{"name":"@sythos/js_barcode_universal","version":"1.5.8","keywords":["barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.5.8","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"d43fc3b32c8d8f676699cfb03e6e73fd2231c8e8","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.5.8.tgz","fileCount":213,"integrity":"sha512-uXxJ4+p8xb6XGS9Q68e5yamAZexa93NKZxm7CyHBwmWrzxFaJd2OUXBt7K+Gzqx+dt2XFa1szpc2HRZL2zvjSg==","signatures":[{"sig":"MEYCIQDDnIMpcgARI4yEPs4a31xxlw+GeF3v3735hVKH2ffyhwIhAJKDZj4XLlgP03n3P5UDmO0ZzBlVQ+LSo+sPtSFSK0N/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.5.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2640142},"main":"./src/index.js","type":"module","types":"./src/index.d.ts","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=18"},"exports":{".":{"types":"./src/index.d.ts","import":"./src/index.js"},"./qr":{"types":"./src/ts/qr/index.d.ts","import":"./src/js/qr/index.js"},"./core":{"types":"./src/ts/core/index.d.ts","import":"./src/js/core/index.js"},"./oned":{"types":"./src/ts/oned/index.d.ts","import":"./src/js/oned/index.js"},"./rmqr":{"types":"./src/ts/rmqr/index.d.ts","import":"./src/js/rmqr/index.js"},"./aztec":{"types":"./src/ts/aztec/index.d.ts","import":"./src/js/aztec/index.js"},"./image":{"types":"./src/ts/image/index.d.ts","import":"./src/js/image/index.js"},"./bundle":{"types":"./src/ts/bundle/sythos-barcode.esm.d.ts","import":"./bundle/sythos-barcode.esm.js"},"./pdf417":{"types":"./src/ts/pdf417/index.d.ts","import":"./src/js/pdf417/index.js"},"./render":{"types":"./src/ts/render/index.d.ts","import":"./src/js/render/index.js"},"./databar":{"types":"./src/ts/databar/index.d.ts","import":"./src/js/databar/index.js"},"./frameqr":{"types":"./src/ts/frameqr/index.d.ts","import":"./src/js/frameqr/index.js"},"./microqr":{"types":"./src/ts/microqr/index.d.ts","import":"./src/js/microqr/index.js"},"./aztecrune":{"types":"./src/ts/aztecrune/index.d.ts","import":"./src/js/aztecrune/index.js"},"./datamatrix":{"types":"./src/ts/datamatrix/index.d.ts","import":"./src/js/datamatrix/index.js"},"./render/png":{"types":"./src/ts/render/png.d.ts","import":"./src/js/render/png.js"},"./render/svg":{"types":"./src/ts/render/svg.d.ts","import":"./src/js/render/svg.js"},"./bundle/iife":{"types":"./src/ts/bundle/sythos-barcode.d.ts","import":"./bundle/sythos-barcode.js"},"./micropdf417":{"types":"./src/ts/micropdf417/index.d.ts","import":"./src/js/micropdf417/index.js"},"./package.json":"./package.json","./compactpdf417":{"types":"./src/ts/compactpdf417/index.d.ts","import":"./src/js/compactpdf417/index.js"},"./render/image-data":{"types":"./src/ts/render/image-data.d.ts","import":"./src/js/render/image-data.js"}},"gitHead":"cb1994590ebb024c72d46be0f9a290b1a9b5dd3f","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.17.0","description":"Read and write barcodes in JavaScript with zero runtime dependencies. QR Code, Micro QR, rMQR, FrameQR Code, Aztec Code and Rune, PDF417 variants, GS1 DataBar Omnidirectional/Truncated, EAN supplements and one-dimensional formats.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.5.8_1787218563849_0.18202944772858443","host":"s3://npm-registry-packages-npm-production"}},"1.5.9":{"name":"@sythos/js_barcode_universal","version":"1.5.9","keywords":["barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","typescript","javascript","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.5.9","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"6eed7ed67a40d111801c1738fdc950a0a0fa4373","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.5.9.tgz","fileCount":299,"integrity":"sha512-vXSLuz1JJUCMBZn4k9Udzb5vnNaNf9x+2Olp5Txx5tISYxZTNhumzLOx2/kDUu5rwtq/cyTqFqa6qFKsWUV1Kw==","signatures":[{"sig":"MEUCIAR5IrnQ3pW1WlLDNUZ566twEVBsCS0neS1RQG1NO5ywAiEAyApYcqM2+4lTCVvQ6xAed8oLz7lWll7KP2l0bMMIXvY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIHMTzrjfFDmdDGi/Fyh6+1xlxbkzsnoEUCauTNfhc6L3AiB+vrSgPGDqNz/mGVO58cEJoicSQrmlceyADhORp/wGiQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.5.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3574755},"main":"./src/index.js","type":"module","types":"./src/index.d.ts","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=24"},"exports":{".":{"types":"./src/index.d.ts","import":"./src/index.js"},"./qr":{"types":"./src/ts/qr/index.d.ts","import":"./src/js/qr/index.js"},"./core":{"types":"./src/ts/core/index.d.ts","import":"./src/js/core/index.js"},"./oned":{"types":"./src/ts/oned/index.d.ts","import":"./src/js/oned/index.js"},"./rmqr":{"types":"./src/ts/rmqr/index.d.ts","import":"./src/js/rmqr/index.js"},"./aztec":{"types":"./src/ts/aztec/index.d.ts","import":"./src/js/aztec/index.js"},"./image":{"types":"./src/ts/image/index.d.ts","import":"./src/js/image/index.js"},"./bundle":{"types":"./src/ts/bundle/sythos-barcode.esm.d.ts","import":"./bundle/sythos-barcode.esm.js"},"./pdf417":{"types":"./src/ts/pdf417/index.d.ts","import":"./src/js/pdf417/index.js"},"./render":{"types":"./src/ts/render/index.d.ts","import":"./src/js/render/index.js"},"./databar":{"types":"./src/ts/databar/index.d.ts","import":"./src/js/databar/index.js"},"./frameqr":{"types":"./src/ts/frameqr/index.d.ts","import":"./src/js/frameqr/index.js"},"./microqr":{"types":"./src/ts/microqr/index.d.ts","import":"./src/js/microqr/index.js"},"./aztecrune":{"types":"./src/ts/aztecrune/index.d.ts","import":"./src/js/aztecrune/index.js"},"./datamatrix":{"types":"./src/ts/datamatrix/index.d.ts","import":"./src/js/datamatrix/index.js"},"./render/png":{"types":"./src/ts/render/png.d.ts","import":"./src/js/render/png.js"},"./render/svg":{"types":"./src/ts/render/svg.d.ts","import":"./src/js/render/svg.js"},"./bundle/iife":{"types":"./src/ts/bundle/sythos-barcode.d.ts","import":"./bundle/sythos-barcode.js"},"./micropdf417":{"types":"./src/ts/micropdf417/index.d.ts","import":"./src/js/micropdf417/index.js"},"./package.json":"./package.json","./compactpdf417":{"types":"./src/ts/compactpdf417/index.d.ts","import":"./src/js/compactpdf417/index.js"},"./render/image-data":{"types":"./src/ts/render/image-data.d.ts","import":"./src/js/render/image-data.js"}},"gitHead":"0c26e92813f0ea5bcffed2fc3ef96dee6d63b3e1","scripts":{"types":"tsc -p tsconfig.json","build:ts":"node tools/compile-typescript.mjs","types:api":"node tools/check-public-types.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.17.0","description":"Read and write barcodes in JavaScript and TypeScript with zero runtime dependencies. TypeScript sources compile to the JavaScript runtime and bundles. QR Code, Micro QR, rMQR, FrameQR Code, Aztec Code and Rune, PDF417 variants, GS1 DataBar Omnidirectional","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.5.9_1787296607907_0.8158263306648741","host":"s3://npm-registry-packages-npm-production"}},"1.5.10":{"name":"@sythos/js_barcode_universal","version":"1.5.10","keywords":["barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","typescript","javascript","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.5.10","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"1fbf39016eba25250987f9b0ae2f9f951183e451","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.5.10.tgz","fileCount":299,"integrity":"sha512-lPHmZZRSmhfJTanNOZmSzjKvPK1MZArfGVPz9GGBh5iPPBME48Zk+rPhvLsb6qudEsdqJBqH1ouMlAX9EiiV4Q==","signatures":[{"sig":"MEUCIE/LFLtacvYY3aubWHewmLaKIxxj0d2f0CXrAia7oQudAiEA1jpPk08jkV6i2bzTa7fRCzRjLUVgQQB48kMUXTe7DAM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGBxgk0iGXoNCuuH23sA/IXniCNhp7j8fkv5ptsCMtZpAiEAjvGKlAWk3iNxiLHNSJdhE9y0sWaKTmllpZWxVGG77UI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.5.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3576952},"main":"./src/index.js","type":"module","_from":"file:release/sythos-js_barcode_universal-1.5.10.tgz","types":"./src/index.d.ts","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=24"},"exports":{".":{"types":"./src/index.d.ts","import":"./src/index.js"},"./qr":{"types":"./src/ts/qr/index.d.ts","import":"./src/js/qr/index.js"},"./core":{"types":"./src/ts/core/index.d.ts","import":"./src/js/core/index.js"},"./oned":{"types":"./src/ts/oned/index.d.ts","import":"./src/js/oned/index.js"},"./rmqr":{"types":"./src/ts/rmqr/index.d.ts","import":"./src/js/rmqr/index.js"},"./aztec":{"types":"./src/ts/aztec/index.d.ts","import":"./src/js/aztec/index.js"},"./image":{"types":"./src/ts/image/index.d.ts","import":"./src/js/image/index.js"},"./bundle":{"types":"./src/ts/bundle/sythos-barcode.esm.d.ts","import":"./bundle/sythos-barcode.esm.js"},"./pdf417":{"types":"./src/ts/pdf417/index.d.ts","import":"./src/js/pdf417/index.js"},"./render":{"types":"./src/ts/render/index.d.ts","import":"./src/js/render/index.js"},"./databar":{"types":"./src/ts/databar/index.d.ts","import":"./src/js/databar/index.js"},"./frameqr":{"types":"./src/ts/frameqr/index.d.ts","import":"./src/js/frameqr/index.js"},"./microqr":{"types":"./src/ts/microqr/index.d.ts","import":"./src/js/microqr/index.js"},"./aztecrune":{"types":"./src/ts/aztecrune/index.d.ts","import":"./src/js/aztecrune/index.js"},"./datamatrix":{"types":"./src/ts/datamatrix/index.d.ts","import":"./src/js/datamatrix/index.js"},"./render/png":{"types":"./src/ts/render/png.d.ts","import":"./src/js/render/png.js"},"./render/svg":{"types":"./src/ts/render/svg.d.ts","import":"./src/js/render/svg.js"},"./bundle/iife":{"types":"./src/ts/bundle/sythos-barcode.d.ts","import":"./bundle/sythos-barcode.js"},"./micropdf417":{"types":"./src/ts/micropdf417/index.d.ts","import":"./src/js/micropdf417/index.js"},"./package.json":"./package.json","./compactpdf417":{"types":"./src/ts/compactpdf417/index.d.ts","import":"./src/js/compactpdf417/index.js"},"./render/image-data":{"types":"./src/ts/render/image-data.d.ts","import":"./src/js/render/image-data.js"}},"scripts":{"types":"tsc -p tsconfig.json","build:ts":"node tools/compile-typescript.mjs","types:api":"node tools/check-public-types.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","_resolved":"/home/runner/work/JS_Barcode_Universal/JS_Barcode_Universal/release/sythos-js_barcode_universal-1.5.10.tgz","_integrity":"sha512-lPHmZZRSmhfJTanNOZmSzjKvPK1MZArfGVPz9GGBh5iPPBME48Zk+rPhvLsb6qudEsdqJBqH1ouMlAX9EiiV4Q==","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.17.0","description":"Read and write barcodes in JavaScript and TypeScript with zero runtime dependencies. TypeScript sources compile to the JavaScript runtime and bundles. QR Code, Micro QR, rMQR, FrameQR Code, Aztec Code and Rune, PDF417 variants, GS1 DataBar Omnidirectional","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.5.10_1787645441342_0.21189773640970921","host":"s3://npm-registry-packages-npm-production"}},"1.5.11":{"name":"@sythos/js_barcode_universal","version":"1.5.11","keywords":["barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","typescript","javascript","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.5.11","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"465c5def42524fea19a2fb4841361a3ff7c35105","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.5.11.tgz","fileCount":299,"integrity":"sha512-vCayYR120O/wxJcElTwwp+CRBcPILD/q2k/EKSMV5zEj8elcrjnwY6muGSAM5kUwBkxDeH6YuHKNBUwzBJYMmQ==","signatures":[{"sig":"MEUCIQDRKbsP5EIK3HzEOltWFEmUkKH8zNwnwSndRVD3nhh9qgIgRDXRjpwCIuUSEQku4LOrXxMVkDvT8H0HGC8Bjq9vHW0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIF+qbp9DH0NIO1PmB2KbbIAXdcJsrbzEn8mmhABIaG1zAiEAgNs3Tq7JWTcsoBQ6cvtJM2q32P17A3m0wB/zeYqXY64=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.5.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3585309},"main":"./src/index.js","type":"module","_from":"file:release/sythos-js_barcode_universal-1.5.11.tgz","types":"./src/index.d.ts","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=24"},"exports":{".":{"types":"./src/index.d.ts","import":"./src/index.js"},"./qr":{"types":"./src/ts/qr/index.d.ts","import":"./src/js/qr/index.js"},"./core":{"types":"./src/ts/core/index.d.ts","import":"./src/js/core/index.js"},"./oned":{"types":"./src/ts/oned/index.d.ts","import":"./src/js/oned/index.js"},"./rmqr":{"types":"./src/ts/rmqr/index.d.ts","import":"./src/js/rmqr/index.js"},"./aztec":{"types":"./src/ts/aztec/index.d.ts","import":"./src/js/aztec/index.js"},"./image":{"types":"./src/ts/image/index.d.ts","import":"./src/js/image/index.js"},"./bundle":{"types":"./src/ts/bundle/sythos-barcode.esm.d.ts","import":"./bundle/sythos-barcode.esm.js"},"./pdf417":{"types":"./src/ts/pdf417/index.d.ts","import":"./src/js/pdf417/index.js"},"./render":{"types":"./src/ts/render/index.d.ts","import":"./src/js/render/index.js"},"./databar":{"types":"./src/ts/databar/index.d.ts","import":"./src/js/databar/index.js"},"./frameqr":{"types":"./src/ts/frameqr/index.d.ts","import":"./src/js/frameqr/index.js"},"./microqr":{"types":"./src/ts/microqr/index.d.ts","import":"./src/js/microqr/index.js"},"./aztecrune":{"types":"./src/ts/aztecrune/index.d.ts","import":"./src/js/aztecrune/index.js"},"./datamatrix":{"types":"./src/ts/datamatrix/index.d.ts","import":"./src/js/datamatrix/index.js"},"./render/png":{"types":"./src/ts/render/png.d.ts","import":"./src/js/render/png.js"},"./render/svg":{"types":"./src/ts/render/svg.d.ts","import":"./src/js/render/svg.js"},"./bundle/iife":{"types":"./src/ts/bundle/sythos-barcode.d.ts","import":"./bundle/sythos-barcode.js"},"./micropdf417":{"types":"./src/ts/micropdf417/index.d.ts","import":"./src/js/micropdf417/index.js"},"./package.json":"./package.json","./compactpdf417":{"types":"./src/ts/compactpdf417/index.d.ts","import":"./src/js/compactpdf417/index.js"},"./render/image-data":{"types":"./src/ts/render/image-data.d.ts","import":"./src/js/render/image-data.js"}},"scripts":{"types":"tsc -p tsconfig.json","build:ts":"node tools/compile-typescript.mjs","types:api":"node tools/check-public-types.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","_resolved":"/home/runner/work/JS_Barcode_Universal/JS_Barcode_Universal/release/sythos-js_barcode_universal-1.5.11.tgz","_integrity":"sha512-vCayYR120O/wxJcElTwwp+CRBcPILD/q2k/EKSMV5zEj8elcrjnwY6muGSAM5kUwBkxDeH6YuHKNBUwzBJYMmQ==","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.17.0","description":"Read and write barcodes in JavaScript and TypeScript with zero runtime dependencies. TypeScript sources compile to the JavaScript runtime and bundles. QR Code, Micro QR, rMQR, FrameQR Code, Aztec Code and Rune, PDF417 variants, GS1 DataBar Omnidirectional","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.5.11_1787647811231_0.0593099662973231","host":"s3://npm-registry-packages-npm-production"}},"1.5.12":{"name":"@sythos/js_barcode_universal","version":"1.5.12","keywords":["barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","typescript","javascript","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","nodejs","esm"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.5.12","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"8cffa867a125859817bac39731539f681fedbda1","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.5.12.tgz","fileCount":299,"integrity":"sha512-jw9qqvhp5eOU41kB+7vBFPjx0bwvogNTajA5f1Xl/sPzlKQfbyJc6JLcGzDJRJlQ7PGexiDAQD/9tTFHz+kYYA==","signatures":[{"sig":"MEUCICB4FaHknyDsJzoR4jnuVxqq9N5dH/NMuVT3zh1AIyxWAiEAkwiboNfcWhooDtEhhkQI33i4VWZXdQYkqplieEBgnjY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDeV9QQuMdntg0liMt9Vt7mdskw+lKsMTfCab8Wi/55AQIga+c+gd7ZcCYJ36SBH70CAu4A8aJFqAXIuL/+j7LeHLk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.5.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3592323},"main":"./src/index.js","type":"module","_from":"file:release/sythos-js_barcode_universal-1.5.12.tgz","types":"./src/index.d.ts","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=24"},"exports":{".":{"types":"./src/index.d.ts","import":"./src/index.js"},"./qr":{"types":"./src/ts/qr/index.d.ts","import":"./src/js/qr/index.js"},"./core":{"types":"./src/ts/core/index.d.ts","import":"./src/js/core/index.js"},"./oned":{"types":"./src/ts/oned/index.d.ts","import":"./src/js/oned/index.js"},"./rmqr":{"types":"./src/ts/rmqr/index.d.ts","import":"./src/js/rmqr/index.js"},"./aztec":{"types":"./src/ts/aztec/index.d.ts","import":"./src/js/aztec/index.js"},"./image":{"types":"./src/ts/image/index.d.ts","import":"./src/js/image/index.js"},"./bundle":{"types":"./src/ts/bundle/sythos-barcode.esm.d.ts","import":"./bundle/sythos-barcode.esm.js"},"./pdf417":{"types":"./src/ts/pdf417/index.d.ts","import":"./src/js/pdf417/index.js"},"./render":{"types":"./src/ts/render/index.d.ts","import":"./src/js/render/index.js"},"./databar":{"types":"./src/ts/databar/index.d.ts","import":"./src/js/databar/index.js"},"./frameqr":{"types":"./src/ts/frameqr/index.d.ts","import":"./src/js/frameqr/index.js"},"./microqr":{"types":"./src/ts/microqr/index.d.ts","import":"./src/js/microqr/index.js"},"./aztecrune":{"types":"./src/ts/aztecrune/index.d.ts","import":"./src/js/aztecrune/index.js"},"./datamatrix":{"types":"./src/ts/datamatrix/index.d.ts","import":"./src/js/datamatrix/index.js"},"./render/png":{"types":"./src/ts/render/png.d.ts","import":"./src/js/render/png.js"},"./render/svg":{"types":"./src/ts/render/svg.d.ts","import":"./src/js/render/svg.js"},"./bundle/iife":{"types":"./src/ts/bundle/sythos-barcode.d.ts","import":"./bundle/sythos-barcode.js"},"./micropdf417":{"types":"./src/ts/micropdf417/index.d.ts","import":"./src/js/micropdf417/index.js"},"./package.json":"./package.json","./compactpdf417":{"types":"./src/ts/compactpdf417/index.d.ts","import":"./src/js/compactpdf417/index.js"},"./render/image-data":{"types":"./src/ts/render/image-data.d.ts","import":"./src/js/render/image-data.js"}},"scripts":{"types":"tsc -p tsconfig.json","build:ts":"node tools/compile-typescript.mjs","types:api":"node tools/check-public-types.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","_resolved":"/home/runner/work/JS_Barcode_Universal/JS_Barcode_Universal/release/sythos-js_barcode_universal-1.5.12.tgz","_integrity":"sha512-jw9qqvhp5eOU41kB+7vBFPjx0bwvogNTajA5f1Xl/sPzlKQfbyJc6JLcGzDJRJlQ7PGexiDAQD/9tTFHz+kYYA==","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.17.0","description":"Read and write barcodes in JavaScript and TypeScript with zero runtime dependencies. TypeScript sources compile to the JavaScript runtime and bundles. QR Code, Micro QR, rMQR, FrameQR Code, Aztec Code and Rune, PDF417 variants, GS1 DataBar Omnidirectional","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.5.12_1787657083476_0.9376552421230415","host":"s3://npm-registry-packages-npm-production"}},"1.5.13":{"name":"@sythos/js_barcode_universal","version":"1.5.13","keywords":["barcode","barcode-reader","barcode-writer","barcode-decoder","barcode-encoder","barcode-reading","barcode-writing","1d-barcode","2d-barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","gs1","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","typescript","javascript","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","web-worker","nodejs","esm","open-source","mit-license","zero-runtime-dependencies"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.5.13","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://github.com/Sythos/JS_Barcode_Universal#readme","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"38e52edb71fb46d406d0afc4eebc95f324605313","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.5.13.tgz","fileCount":300,"integrity":"sha512-iLT5H47n5+FT8i5zXluG7BZn9U589Ixl71ztFe7j26yP95AR6y3jVr28iG8a2l9jfa+qgzifLClpSJG2CcqDag==","signatures":[{"sig":"MEQCIAiShkiUG3Uu1BplI+YFz6Oa/tyR5kcJcFrJEI5AYvCXAiATZNPZzlailme8oeFkfBQH7RjPepC6peA5lOb/yU3u2g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIBEIFTHnLXo5jlRfeXXKxmGicn5zxe2C9az2z+Anzx3XAiEAjFVKqrASsZcoAmnh4rQdqp4fWFr9WRyt5yXnLkHN+nM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.5.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3600557},"main":"./src/index.js","type":"module","_from":"file:release/sythos-js_barcode_universal-1.5.13.tgz","types":"./src/index.d.ts","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=24"},"exports":{".":{"types":"./src/index.d.ts","import":"./src/index.js"},"./qr":{"types":"./src/ts/qr/index.d.ts","import":"./src/js/qr/index.js"},"./core":{"types":"./src/ts/core/index.d.ts","import":"./src/js/core/index.js"},"./oned":{"types":"./src/ts/oned/index.d.ts","import":"./src/js/oned/index.js"},"./rmqr":{"types":"./src/ts/rmqr/index.d.ts","import":"./src/js/rmqr/index.js"},"./aztec":{"types":"./src/ts/aztec/index.d.ts","import":"./src/js/aztec/index.js"},"./image":{"types":"./src/ts/image/index.d.ts","import":"./src/js/image/index.js"},"./bundle":{"types":"./src/ts/bundle/sythos-barcode.esm.d.ts","import":"./bundle/sythos-barcode.esm.js"},"./pdf417":{"types":"./src/ts/pdf417/index.d.ts","import":"./src/js/pdf417/index.js"},"./render":{"types":"./src/ts/render/index.d.ts","import":"./src/js/render/index.js"},"./databar":{"types":"./src/ts/databar/index.d.ts","import":"./src/js/databar/index.js"},"./frameqr":{"types":"./src/ts/frameqr/index.d.ts","import":"./src/js/frameqr/index.js"},"./microqr":{"types":"./src/ts/microqr/index.d.ts","import":"./src/js/microqr/index.js"},"./aztecrune":{"types":"./src/ts/aztecrune/index.d.ts","import":"./src/js/aztecrune/index.js"},"./datamatrix":{"types":"./src/ts/datamatrix/index.d.ts","import":"./src/js/datamatrix/index.js"},"./render/png":{"types":"./src/ts/render/png.d.ts","import":"./src/js/render/png.js"},"./render/svg":{"types":"./src/ts/render/svg.d.ts","import":"./src/js/render/svg.js"},"./bundle/iife":{"types":"./src/ts/bundle/sythos-barcode.d.ts","import":"./bundle/sythos-barcode.js"},"./micropdf417":{"types":"./src/ts/micropdf417/index.d.ts","import":"./src/js/micropdf417/index.js"},"./package.json":"./package.json","./compactpdf417":{"types":"./src/ts/compactpdf417/index.d.ts","import":"./src/js/compactpdf417/index.js"},"./render/image-data":{"types":"./src/ts/render/image-data.d.ts","import":"./src/js/render/image-data.js"}},"scripts":{"types":"tsc -p tsconfig.json","build:ts":"node tools/compile-typescript.mjs","types:api":"node tools/check-public-types.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","_resolved":"/home/runner/work/JS_Barcode_Universal/JS_Barcode_Universal/release/sythos-js_barcode_universal-1.5.13.tgz","_integrity":"sha512-iLT5H47n5+FT8i5zXluG7BZn9U589Ixl71ztFe7j26yP95AR6y3jVr28iG8a2l9jfa+qgzifLClpSJG2CcqDag==","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.17.0","description":"Open-source MIT-licensed JavaScript/TypeScript barcode generator and barcode reader SDK with zero runtime dependencies for 1D and 2D barcodes in browsers, Web Workers and Node.js: QR, Data Matrix, Aztec, PDF417, GS1, EAN and more.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.5.13_1787670803388_0.06966683091013293","host":"s3://npm-registry-packages-npm-production"}},"1.5.14":{"name":"@sythos/js_barcode_universal","version":"1.5.14","keywords":["barcode","barcode-reader","barcode-writer","barcode-decoder","barcode-encoder","barcode-reading","barcode-writing","1d-barcode","2d-barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","gs1","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","typescript","javascript","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","codabar","msi","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","web-worker","nodejs","esm","open-source","mit-license","zero-runtime-dependencies"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.5.14","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://sythos.github.io/JS_Barcode_Universal/","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"db0047908a7af5324b6f5603a036c6f60f6a93f4","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.5.14.tgz","fileCount":300,"integrity":"sha512-Gt7p7XzNmDzKDFUlFOjtX97YTPqDi8SxFIeyuAMTaWFgvrY6yHRQvaohHtwV6qkKlSVAfTpzSh8g8mJdUBmjww==","signatures":[{"sig":"MEUCIQC6CErGW3EfTYHW53IxwIn9FOyncGLcl8LKpJM8q04QYQIgWBzglxXNK7aIQgcOUxTil0jpXTQjpz8JkWCYDYp5zm4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIAQGJN6WmoqVX0c+aIeWfi/euRLI2uYp/Qn5K6wTtM2ZAiEA252ys2lW8+pDEBzsi4bejgFdnpW/egEFAW3IXxNDBT8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.5.14","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3604536},"main":"./src/index.js","type":"module","_from":"file:release/sythos-js_barcode_universal-1.5.14.tgz","types":"./src/index.d.ts","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=24"},"exports":{".":{"types":"./src/index.d.ts","import":"./src/index.js"},"./qr":{"types":"./src/ts/qr/index.d.ts","import":"./src/js/qr/index.js"},"./core":{"types":"./src/ts/core/index.d.ts","import":"./src/js/core/index.js"},"./oned":{"types":"./src/ts/oned/index.d.ts","import":"./src/js/oned/index.js"},"./rmqr":{"types":"./src/ts/rmqr/index.d.ts","import":"./src/js/rmqr/index.js"},"./aztec":{"types":"./src/ts/aztec/index.d.ts","import":"./src/js/aztec/index.js"},"./image":{"types":"./src/ts/image/index.d.ts","import":"./src/js/image/index.js"},"./bundle":{"types":"./src/ts/bundle/sythos-barcode.esm.d.ts","import":"./bundle/sythos-barcode.esm.js"},"./pdf417":{"types":"./src/ts/pdf417/index.d.ts","import":"./src/js/pdf417/index.js"},"./render":{"types":"./src/ts/render/index.d.ts","import":"./src/js/render/index.js"},"./databar":{"types":"./src/ts/databar/index.d.ts","import":"./src/js/databar/index.js"},"./frameqr":{"types":"./src/ts/frameqr/index.d.ts","import":"./src/js/frameqr/index.js"},"./microqr":{"types":"./src/ts/microqr/index.d.ts","import":"./src/js/microqr/index.js"},"./aztecrune":{"types":"./src/ts/aztecrune/index.d.ts","import":"./src/js/aztecrune/index.js"},"./datamatrix":{"types":"./src/ts/datamatrix/index.d.ts","import":"./src/js/datamatrix/index.js"},"./render/png":{"types":"./src/ts/render/png.d.ts","import":"./src/js/render/png.js"},"./render/svg":{"types":"./src/ts/render/svg.d.ts","import":"./src/js/render/svg.js"},"./bundle/iife":{"types":"./src/ts/bundle/sythos-barcode.d.ts","import":"./bundle/sythos-barcode.js"},"./micropdf417":{"types":"./src/ts/micropdf417/index.d.ts","import":"./src/js/micropdf417/index.js"},"./package.json":"./package.json","./compactpdf417":{"types":"./src/ts/compactpdf417/index.d.ts","import":"./src/js/compactpdf417/index.js"},"./render/image-data":{"types":"./src/ts/render/image-data.d.ts","import":"./src/js/render/image-data.js"}},"scripts":{"lint":"eslint --max-warnings=0 src/index.js src/js tools .github/ci","types":"tsc -p tsconfig.json","build:ts":"node tools/compile-typescript.mjs","test:docs":"node --test tools/exact-url.test.mjs","test:fuzz":"node --test test/fuzz/property.test.js","types:api":"node tools/check-public-types.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","_resolved":"/home/runner/work/JS_Barcode_Universal/JS_Barcode_Universal/release/sythos-js_barcode_universal-1.5.14.tgz","_integrity":"sha512-Gt7p7XzNmDzKDFUlFOjtX97YTPqDi8SxFIeyuAMTaWFgvrY6yHRQvaohHtwV6qkKlSVAfTpzSh8g8mJdUBmjww==","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.17.0","description":"Open-source MIT-licensed JavaScript/TypeScript barcode generator and barcode reader SDK with zero runtime dependencies for 1D and 2D barcodes in browsers, Web Workers and Node.js: QR, Data Matrix, Aztec, PDF417, GS1, EAN and more.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"10.9.1","@eslint/js":"10.0.1","fast-check":"4.9.0","typescript":"7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.5.14_1787923561311_0.36898967558433693","host":"s3://npm-registry-packages-npm-production"}},"1.5.15":{"name":"@sythos/js_barcode_universal","version":"1.5.15","keywords":["barcode","barcode-reader","barcode-writer","barcode-decoder","barcode-encoder","barcode-reading","barcode-writing","1d-barcode","2d-barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","gs1","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","typescript","javascript","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","code-25","code2of5","standard-2-of-5","industrial-2-of-5","iata-2-of-5","codabar","msi","code32","italian-pharmacode","pzn","pzn7","pzn8","telepen","telepen-numeric","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","web-worker","nodejs","esm","open-source","mit-license","zero-runtime-dependencies"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.5.15","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://sythos.github.io/JS_Barcode_Universal/","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"563742a1ba8646cd6b4fca07d32ec73605f99848","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.5.15.tgz","fileCount":412,"integrity":"sha512-tAjF/XYybpVD6tn1edrzor708EjiH6WPSyjIf31LEkyJ5G4JoICeCzTeZfgQ0VLnurD1Vy1LXzlN8NjpH+Vvmg==","signatures":[{"sig":"MEUCIFb9W6ttcdgRSfS1IEw1rzUVQPlL3+AcnydHaLbvKwcxAiEAzNkA0uDzHJPpa4LB98AOdXPfC1xTKBc24YImVMeC8Zg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBuHMJJzk1aeVlcgEyTdjf1F7jA5IPDyy8PyXuWd6TD7AiBBhVLFN12Az0BUAcAqGDcjiSLshwaOvVDio2EM6CrFZA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.5.15","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5556739},"main":"./src/index.js","type":"module","_from":"file:release/sythos-js_barcode_universal-1.5.15.tgz","types":"./src/index.d.ts","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=24"},"exports":{".":{"types":"./src/index.d.ts","import":"./src/index.js"},"./qr":{"types":"./src/ts/qr/index.d.ts","import":"./src/js/qr/index.js"},"./core":{"types":"./src/ts/core/index.d.ts","import":"./src/js/core/index.js"},"./oned":{"types":"./src/ts/oned/index.d.ts","import":"./src/js/oned/index.js"},"./rmqr":{"types":"./src/ts/rmqr/index.d.ts","import":"./src/js/rmqr/index.js"},"./aztec":{"types":"./src/ts/aztec/index.d.ts","import":"./src/js/aztec/index.js"},"./image":{"types":"./src/ts/image/index.d.ts","import":"./src/js/image/index.js"},"./bundle":{"types":"./src/ts/bundle/sythos-barcode.esm.d.ts","import":"./bundle/sythos-barcode.esm.js"},"./hanxin":{"types":"./src/ts/hanxin/index.d.ts","import":"./src/js/hanxin/index.js"},"./pdf417":{"types":"./src/ts/pdf417/index.d.ts","import":"./src/js/pdf417/index.js"},"./render":{"types":"./src/ts/render/index.d.ts","import":"./src/js/render/index.js"},"./code16k":{"types":"./src/ts/code16k/index.d.ts","import":"./src/js/code16k/index.js"},"./databar":{"types":"./src/ts/databar/index.d.ts","import":"./src/js/databar/index.js"},"./dotcode":{"types":"./src/ts/dotcode/index.d.ts","import":"./src/js/dotcode/index.js"},"./frameqr":{"types":"./src/ts/frameqr/index.d.ts","import":"./src/js/frameqr/index.js"},"./microqr":{"types":"./src/ts/microqr/index.d.ts","import":"./src/js/microqr/index.js"},"./maxicode":{"types":"./src/ts/maxicode/index.d.ts","import":"./src/js/maxicode/index.js"},"./aztecrune":{"types":"./src/ts/aztecrune/index.d.ts","import":"./src/js/aztecrune/index.js"},"./composite":{"types":"./src/ts/composite/index.d.ts","import":"./src/js/composite/index.js"},"./codablockf":{"types":"./src/ts/codablockf/index.d.ts","import":"./src/js/codablockf/index.js"},"./datamatrix":{"types":"./src/ts/datamatrix/index.d.ts","import":"./src/js/datamatrix/index.js"},"./render/png":{"types":"./src/ts/render/png.d.ts","import":"./src/js/render/png.js"},"./render/svg":{"types":"./src/ts/render/svg.d.ts","import":"./src/js/render/svg.js"},"./bundle/iife":{"types":"./src/ts/bundle/sythos-barcode.d.ts","import":"./bundle/sythos-barcode.js"},"./micropdf417":{"types":"./src/ts/micropdf417/index.d.ts","import":"./src/js/micropdf417/index.js"},"./package.json":"./package.json","./compactpdf417":{"types":"./src/ts/compactpdf417/index.d.ts","import":"./src/js/compactpdf417/index.js"},"./render/image-data":{"types":"./src/ts/render/image-data.d.ts","import":"./src/js/render/image-data.js"}},"scripts":{"lint":"eslint --max-warnings=0 src/index.js src/js tools .github/ci","types":"node node_modules/typescript/bin/tsc -p tsconfig.json","build:ts":"node tools/compile-typescript.mjs","test:docs":"node --test tools/exact-url.test.mjs","test:fuzz":"node --test test/fuzz/property.test.js","types:api":"node tools/check-public-types.mjs","test:formats":"node --test test/maxicode.test.js test/databar-stacked.test.js test/databar-stacked-omnidirectional.test.js test/databar-limited.test.js test/databar-expanded.test.js test/telepen.test.js test/code25-code32.test.js test/postal.test.js test/codablockf.test.js test/code16k.test.js test/dotcode.test.js test/hanxin.test.js test/gs1-composite.test.js","test:foundations":"node --test test/foundation.test.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","_resolved":"/home/runner/work/JS_Barcode_Universal/JS_Barcode_Universal/release/sythos-js_barcode_universal-1.5.15.tgz","_integrity":"sha512-tAjF/XYybpVD6tn1edrzor708EjiH6WPSyjIf31LEkyJ5G4JoICeCzTeZfgQ0VLnurD1Vy1LXzlN8NjpH+Vvmg==","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.17.0","description":"Open-source MIT-licensed JavaScript/TypeScript barcode generator and barcode reader SDK with zero runtime dependencies for 1D and 2D barcodes in browsers, Web Workers and Node.js: QR, Data Matrix, Aztec, PDF417, GS1, EAN and more.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"10.9.1","@eslint/js":"10.0.1","fast-check":"4.9.0","typescript":"7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.5.15_1788182924782_0.5513442099929087","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@sythos/js_barcode_universal","version":"1.6.0","keywords":["barcode","barcode-reader","barcode-writer","barcode-decoder","barcode-encoder","barcode-reading","barcode-writing","1d-barcode","2d-barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","gs1","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","typescript","javascript","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","code-25","code2of5","standard-2-of-5","industrial-2-of-5","iata-2-of-5","codabar","msi","code32","italian-pharmacode","pzn","pzn7","pzn8","telepen","telepen-numeric","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","web-worker","nodejs","esm","open-source","mit-license","zero-runtime-dependencies"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.6.0","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://sythos.github.io/JS_Barcode_Universal/","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"882ce64eb15d14ebb10f6993f4ce56bbeae913ea","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.6.0.tgz","fileCount":462,"integrity":"sha512-H2B0eLgwVUrIKeTz2WaPUcCT5znJVuGt00vpdRn0dZo/DdSt2+6TwG87+3PX/cWL3/a+co+OfnLYryq9uM3oew==","signatures":[{"sig":"MEYCIQCRe/zhNyW0ulbCOVCMN63kknk7Mag/C258YFnEsDS8UgIhAMHUWwBuqL+vbFoPHhzcP4PSl6HlxvjzhSz8vWB6GPlT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFf8lCaiLL6oKGYX5oySZ/AVbsKzMNQT7DEXwC1UBwPfAiEAkLyBsT4LFSqBa+c9b/x8qsaqSOgfNMlr3VcEoispyn0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5970352},"main":"./src/index.js","type":"module","_from":"file:release/sythos-js_barcode_universal-1.6.0.tgz","types":"./src/index.d.ts","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=24"},"exports":{".":{"types":"./src/index.d.ts","import":"./src/index.js"},"./qr":{"types":"./src/ts/qr/index.d.ts","import":"./src/js/qr/index.js"},"./core":{"types":"./src/ts/core/index.d.ts","import":"./src/js/core/index.js"},"./oned":{"types":"./src/ts/oned/index.d.ts","import":"./src/js/oned/index.js"},"./rmqr":{"types":"./src/ts/rmqr/index.d.ts","import":"./src/js/rmqr/index.js"},"./aztec":{"types":"./src/ts/aztec/index.d.ts","import":"./src/js/aztec/index.js"},"./color":{"types":"./src/ts/color/index.d.ts","import":"./src/js/color/index.js"},"./image":{"types":"./src/ts/image/index.d.ts","import":"./src/js/image/index.js"},"./bundle":{"types":"./src/ts/bundle/sythos-barcode.esm.d.ts","import":"./bundle/sythos-barcode.esm.js"},"./hanxin":{"types":"./src/ts/hanxin/index.d.ts","import":"./src/js/hanxin/index.js"},"./pdf417":{"types":"./src/ts/pdf417/index.d.ts","import":"./src/js/pdf417/index.js"},"./render":{"types":"./src/ts/render/index.d.ts","import":"./src/js/render/index.js"},"./code16k":{"types":"./src/ts/code16k/index.d.ts","import":"./src/js/code16k/index.js"},"./databar":{"types":"./src/ts/databar/index.d.ts","import":"./src/js/databar/index.js"},"./dotcode":{"types":"./src/ts/dotcode/index.d.ts","import":"./src/js/dotcode/index.js"},"./frameqr":{"types":"./src/ts/frameqr/index.d.ts","import":"./src/js/frameqr/index.js"},"./jabcode":{"types":"./src/ts/jabcode/index.d.ts","import":"./src/js/jabcode/index.js"},"./kartrak":{"types":"./src/ts/kartrak/index.d.ts","import":"./src/js/kartrak/index.js"},"./microqr":{"types":"./src/ts/microqr/index.d.ts","import":"./src/js/microqr/index.js"},"./maxicode":{"types":"./src/ts/maxicode/index.d.ts","import":"./src/js/maxicode/index.js"},"./aztecrune":{"types":"./src/ts/aztecrune/index.d.ts","import":"./src/js/aztecrune/index.js"},"./composite":{"types":"./src/ts/composite/index.d.ts","import":"./src/js/composite/index.js"},"./codablockf":{"types":"./src/ts/codablockf/index.d.ts","import":"./src/js/codablockf/index.js"},"./datamatrix":{"types":"./src/ts/datamatrix/index.d.ts","import":"./src/js/datamatrix/index.js"},"./render/png":{"types":"./src/ts/render/png.d.ts","import":"./src/js/render/png.js"},"./render/svg":{"types":"./src/ts/render/svg.d.ts","import":"./src/js/render/svg.js"},"./bundle/iife":{"types":"./src/ts/bundle/sythos-barcode.d.ts","import":"./bundle/sythos-barcode.js"},"./micropdf417":{"types":"./src/ts/micropdf417/index.d.ts","import":"./src/js/micropdf417/index.js"},"./package.json":"./package.json","./compactpdf417":{"types":"./src/ts/compactpdf417/index.d.ts","import":"./src/js/compactpdf417/index.js"},"./render/image-data":{"types":"./src/ts/render/image-data.d.ts","import":"./src/js/render/image-data.js"}},"scripts":{"lint":"eslint --max-warnings=0 src/index.js src/js tools .github/ci","types":"node node_modules/typescript/bin/tsc -p tsconfig.json","build:ts":"node tools/compile-typescript.mjs","test:core":"node --test test/core.test.js test/image.test.js test/render.test.js test/oned.test.js test/oned-image-completion.test.js test/ean-addons.test.js test/binarizer-fallback.test.js test/camera-profile.test.js test/databar.tables.test.js test/databar.encoder.test.js test/databar.codec.test.js test/databar.gs1.test.js test/qr.test.js test/qr-family.integration.test.js test/datamatrix.test.js test/aztec-tables.test.js test/aztec-decoder.test.js test/aztecrune.tables.test.js test/aztecrune.encoder.test.js test/aztecrune.decoder.test.js test/aztecrune.detector.test.js test/aztecrune.blackbox.test.js test/pdf417.tables.test.js test/pdf417.encoder.test.js test/pdf417.compaction.test.js test/pdf417.binary-readiness.test.js test/pdf417.blackbox.test.js test/pdf417.detector.photo.test.js test/pdf417.device-evidence.test.js test/compactpdf417.test.js test/micropdf417.tables.test.js test/micropdf417.encoder.test.js test/micropdf417.compaction.test.js test/micropdf417.decoder.test.js test/micropdf417.detector.test.js test/micropdf417-api.test.js test/microqr.tables.test.js test/microqr.encoder.test.js test/microqr.decoder.test.js test/microqr.detector.test.js test/rmqr.test.js test/frameqr.tables.test.js test/frameqr.encoder.test.js test/frameqr.decoder.test.js test/frameqr.detector.test.js","test:docs":"node --test tools/exact-url.test.mjs","test:fuzz":"node --test test/fuzz/property.test.js","types:api":"node tools/check-public-types.mjs","test:formats":"node --test test/maxicode.test.js test/databar-stacked.test.js test/databar-stacked-omnidirectional.test.js test/databar-limited.test.js test/databar-expanded.test.js test/telepen.test.js test/code25-code32.test.js test/fim.test.js test/plessey.test.js test/postal.test.js test/codablockf.test.js test/code16k.test.js test/dotcode.test.js test/hanxin.test.js test/gs1-composite.test.js test/kartrak.test.js test/postbar.test.js test/dxfilmedge.test.js test/jabcode.test.js","test:foundations":"node --test test/foundation.test.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","_resolved":"/home/runner/work/JS_Barcode_Universal/JS_Barcode_Universal/release/sythos-js_barcode_universal-1.6.0.tgz","_integrity":"sha512-H2B0eLgwVUrIKeTz2WaPUcCT5znJVuGt00vpdRn0dZo/DdSt2+6TwG87+3PX/cWL3/a+co+OfnLYryq9uM3oew==","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.17.0","description":"Open-source MIT-licensed JavaScript/TypeScript barcode generator and barcode reader SDK with zero runtime dependencies for 1D and 2D barcodes in browsers, Web Workers and Node.js: QR, Data Matrix, Aztec, PDF417, GS1, EAN and more.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"10.9.1","@eslint/js":"10.0.1","fast-check":"4.9.0","typescript":"7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.6.0_1788334274859_0.637863342005609","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"@sythos/js_barcode_universal","version":"1.6.1","keywords":["barcode","barcode-reader","barcode-writer","barcode-decoder","barcode-encoder","barcode-reading","barcode-writing","1d-barcode","2d-barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","gs1","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","typescript","javascript","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","code-25","code2of5","standard-2-of-5","industrial-2-of-5","iata-2-of-5","codabar","msi","code32","italian-pharmacode","pzn","pzn7","pzn8","telepen","telepen-numeric","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","web-worker","nodejs","esm","open-source","mit-license","zero-runtime-dependencies"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.6.1","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://sythos.github.io/JS_Barcode_Universal/","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"4694dacba081d5ee0c3bf119ad7a2b2a7fafd889","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.6.1.tgz","fileCount":478,"integrity":"sha512-Wh6Fe++Y0q/vEkr6b/Xgd1WenxQ07iD8FPQZ5ULkycnDkvXsLwi650lciZnS6S7YcH4RjF88jsai1MHbAAaHxA==","signatures":[{"sig":"MEUCIQCwQwe0ee+Pi1D+1HykSZRQ0fSAfmmVNoBTHUTGCbQwzwIgLH0RVdwfJxaop6uNzfOOg5K6wzpLU9tLtyQ8tRj5qrE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCID0Z4vs7N+iWoV8wLwL1CuKCNaKK6zjaKmj2OGl3OvUEAiEA1y+zKVNaOKchBui8vyQ32IOsqb0v7Ce0wlEjZTcVWXY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6096389},"main":"./src/index.js","type":"module","_from":"file:release/sythos-js_barcode_universal-1.6.1.tgz","types":"./src/index.d.ts","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=24"},"exports":{".":{"types":"./src/index.d.ts","import":"./src/index.js"},"./qr":{"types":"./src/ts/qr/index.d.ts","import":"./src/js/qr/index.js"},"./core":{"types":"./src/ts/core/index.d.ts","import":"./src/js/core/index.js"},"./oned":{"types":"./src/ts/oned/index.d.ts","import":"./src/js/oned/index.js"},"./rmqr":{"types":"./src/ts/rmqr/index.d.ts","import":"./src/js/rmqr/index.js"},"./aztec":{"types":"./src/ts/aztec/index.d.ts","import":"./src/js/aztec/index.js"},"./color":{"types":"./src/ts/color/index.d.ts","import":"./src/js/color/index.js"},"./image":{"types":"./src/ts/image/index.d.ts","import":"./src/js/image/index.js"},"./bundle":{"types":"./src/ts/bundle/sythos-barcode.esm.d.ts","import":"./bundle/sythos-barcode.esm.js"},"./hanxin":{"types":"./src/ts/hanxin/index.d.ts","import":"./src/js/hanxin/index.js"},"./pdf417":{"types":"./src/ts/pdf417/index.d.ts","import":"./src/js/pdf417/index.js"},"./render":{"types":"./src/ts/render/index.d.ts","import":"./src/js/render/index.js"},"./code16k":{"types":"./src/ts/code16k/index.d.ts","import":"./src/js/code16k/index.js"},"./databar":{"types":"./src/ts/databar/index.d.ts","import":"./src/js/databar/index.js"},"./dotcode":{"types":"./src/ts/dotcode/index.d.ts","import":"./src/js/dotcode/index.js"},"./frameqr":{"types":"./src/ts/frameqr/index.d.ts","import":"./src/js/frameqr/index.js"},"./jabcode":{"types":"./src/ts/jabcode/index.d.ts","import":"./src/js/jabcode/index.js"},"./kartrak":{"types":"./src/ts/kartrak/index.d.ts","import":"./src/js/kartrak/index.js"},"./microqr":{"types":"./src/ts/microqr/index.d.ts","import":"./src/js/microqr/index.js"},"./maxicode":{"types":"./src/ts/maxicode/index.d.ts","import":"./src/js/maxicode/index.js"},"./payloads":{"types":"./src/ts/payloads/index.d.ts","import":"./src/js/payloads/index.js"},"./aztecrune":{"types":"./src/ts/aztecrune/index.d.ts","import":"./src/js/aztecrune/index.js"},"./composite":{"types":"./src/ts/composite/index.d.ts","import":"./src/js/composite/index.js"},"./codablockf":{"types":"./src/ts/codablockf/index.d.ts","import":"./src/js/codablockf/index.js"},"./datamatrix":{"types":"./src/ts/datamatrix/index.d.ts","import":"./src/js/datamatrix/index.js"},"./render/png":{"types":"./src/ts/render/png.d.ts","import":"./src/js/render/png.js"},"./render/svg":{"types":"./src/ts/render/svg.d.ts","import":"./src/js/render/svg.js"},"./bundle/iife":{"types":"./src/ts/bundle/sythos-barcode.d.ts","import":"./bundle/sythos-barcode.js"},"./micropdf417":{"types":"./src/ts/micropdf417/index.d.ts","import":"./src/js/micropdf417/index.js"},"./package.json":"./package.json","./compactpdf417":{"types":"./src/ts/compactpdf417/index.d.ts","import":"./src/js/compactpdf417/index.js"},"./render/image-data":{"types":"./src/ts/render/image-data.d.ts","import":"./src/js/render/image-data.js"}},"scripts":{"lint":"eslint --max-warnings=0 src/index.js src/js tools .github/ci","types":"node node_modules/typescript/bin/tsc -p tsconfig.json","build:ts":"node tools/compile-typescript.mjs","test:core":"node --test test/core.test.js test/image.test.js test/render.test.js test/oned.test.js test/oned-image-completion.test.js test/ean-addons.test.js test/binarizer-fallback.test.js test/camera-profile.test.js test/databar.tables.test.js test/databar.encoder.test.js test/databar.codec.test.js test/databar.gs1.test.js test/qr.test.js test/qr-family.integration.test.js test/datamatrix.test.js test/aztec-tables.test.js test/aztec-decoder.test.js test/aztecrune.tables.test.js test/aztecrune.encoder.test.js test/aztecrune.decoder.test.js test/aztecrune.detector.test.js test/aztecrune.blackbox.test.js test/pdf417.tables.test.js test/pdf417.encoder.test.js test/pdf417.compaction.test.js test/pdf417.binary-readiness.test.js test/pdf417.blackbox.test.js test/pdf417.detector.photo.test.js test/pdf417.device-evidence.test.js test/compactpdf417.test.js test/micropdf417.tables.test.js test/micropdf417.encoder.test.js test/micropdf417.compaction.test.js test/micropdf417.decoder.test.js test/micropdf417.detector.test.js test/micropdf417-api.test.js test/microqr.tables.test.js test/microqr.encoder.test.js test/microqr.decoder.test.js test/microqr.detector.test.js test/rmqr.test.js test/frameqr.tables.test.js test/frameqr.encoder.test.js test/frameqr.decoder.test.js test/frameqr.detector.test.js","test:docs":"node --test tools/exact-url.test.mjs","test:fuzz":"node --test test/fuzz/property.test.js","types:api":"node tools/check-public-types.mjs","test:formats":"node --test test/maxicode.test.js test/databar-stacked.test.js test/databar-stacked-omnidirectional.test.js test/databar-limited.test.js test/databar-expanded.test.js test/telepen.test.js test/code25-code32.test.js test/fim.test.js test/plessey.test.js test/postal.test.js test/codablockf.test.js test/code16k.test.js test/dotcode.test.js test/hanxin.test.js test/gs1-composite.test.js test/kartrak.test.js test/postbar.test.js test/dxfilmedge.test.js test/jabcode.test.js test/payloads.test.js","test:foundations":"node --test test/foundation.test.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","_resolved":"/home/runner/work/JS_Barcode_Universal/JS_Barcode_Universal/release/sythos-js_barcode_universal-1.6.1.tgz","_integrity":"sha512-Wh6Fe++Y0q/vEkr6b/Xgd1WenxQ07iD8FPQZ5ULkycnDkvXsLwi650lciZnS6S7YcH4RjF88jsai1MHbAAaHxA==","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.17.0","description":"Open-source MIT-licensed JavaScript/TypeScript barcode generator and barcode reader SDK with zero runtime dependencies for 1D and 2D barcodes in browsers, Web Workers and Node.js: QR, Data Matrix, Aztec, PDF417, GS1, EAN and more.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"10.9.1","@eslint/js":"10.0.1","fast-check":"4.9.0","typescript":"7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.6.1_1788359539560_0.8889269860255806","host":"s3://npm-registry-packages-npm-production"}},"1.6.2":{"name":"@sythos/js_barcode_universal","version":"1.6.2","keywords":["barcode","barcode-reader","barcode-writer","barcode-decoder","barcode-encoder","barcode-reading","barcode-writing","1d-barcode","2d-barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","gs1","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","typescript","javascript","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","code-25","code2of5","standard-2-of-5","industrial-2-of-5","iata-2-of-5","codabar","msi","code32","italian-pharmacode","pzn","pzn7","pzn8","telepen","telepen-numeric","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","web-worker","nodejs","esm","open-source","mit-license","zero-runtime-dependencies"],"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","_id":"@sythos/js_barcode_universal@1.6.2","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"homepage":"https://sythos.github.io/JS_Barcode_Universal/","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"19d1bb3edb6b535f8a007e2a539ec81c80981473","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.6.2.tgz","fileCount":478,"integrity":"sha512-7sljLey6H6qiaK72JrTBEgWCmlv8/3V6dULg6TPYONHYYtaKkWYVV3fYV4Gwo3UAVdP7S5JlnxhjdqDb7sbp1w==","signatures":[{"sig":"MEUCIQDVk/BPop8/VqjqeQ0CWQidyodMkIaQ+kEjmJZqX7zlmQIgEcENmKDsvdbBk+5hVXJitsOVTrK8vLATpk/YN30upvM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQD5QFgqk2iAWIcIgQV3KjgGF7IaIRSDsOnpvVR+GGRqCwIgfkI5TgWvjzLAwgJgtuwfdxFGvXFXshC9lr+23cy6YaI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.6.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6150043},"main":"./src/index.js","type":"module","_from":"file:release/sythos-js_barcode_universal-1.6.2.tgz","types":"./src/index.d.ts","unpkg":"./bundle/sythos-barcode.js","module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=24"},"exports":{".":{"types":"./src/index.d.ts","import":"./src/index.js"},"./qr":{"types":"./src/ts/qr/index.d.ts","import":"./src/js/qr/index.js"},"./core":{"types":"./src/ts/core/index.d.ts","import":"./src/js/core/index.js"},"./oned":{"types":"./src/ts/oned/index.d.ts","import":"./src/js/oned/index.js"},"./rmqr":{"types":"./src/ts/rmqr/index.d.ts","import":"./src/js/rmqr/index.js"},"./aztec":{"types":"./src/ts/aztec/index.d.ts","import":"./src/js/aztec/index.js"},"./color":{"types":"./src/ts/color/index.d.ts","import":"./src/js/color/index.js"},"./image":{"types":"./src/ts/image/index.d.ts","import":"./src/js/image/index.js"},"./bundle":{"types":"./src/ts/bundle/sythos-barcode.esm.d.ts","import":"./bundle/sythos-barcode.esm.js"},"./hanxin":{"types":"./src/ts/hanxin/index.d.ts","import":"./src/js/hanxin/index.js"},"./pdf417":{"types":"./src/ts/pdf417/index.d.ts","import":"./src/js/pdf417/index.js"},"./render":{"types":"./src/ts/render/index.d.ts","import":"./src/js/render/index.js"},"./code16k":{"types":"./src/ts/code16k/index.d.ts","import":"./src/js/code16k/index.js"},"./databar":{"types":"./src/ts/databar/index.d.ts","import":"./src/js/databar/index.js"},"./dotcode":{"types":"./src/ts/dotcode/index.d.ts","import":"./src/js/dotcode/index.js"},"./frameqr":{"types":"./src/ts/frameqr/index.d.ts","import":"./src/js/frameqr/index.js"},"./jabcode":{"types":"./src/ts/jabcode/index.d.ts","import":"./src/js/jabcode/index.js"},"./kartrak":{"types":"./src/ts/kartrak/index.d.ts","import":"./src/js/kartrak/index.js"},"./microqr":{"types":"./src/ts/microqr/index.d.ts","import":"./src/js/microqr/index.js"},"./maxicode":{"types":"./src/ts/maxicode/index.d.ts","import":"./src/js/maxicode/index.js"},"./payloads":{"types":"./src/ts/payloads/index.d.ts","import":"./src/js/payloads/index.js"},"./aztecrune":{"types":"./src/ts/aztecrune/index.d.ts","import":"./src/js/aztecrune/index.js"},"./composite":{"types":"./src/ts/composite/index.d.ts","import":"./src/js/composite/index.js"},"./codablockf":{"types":"./src/ts/codablockf/index.d.ts","import":"./src/js/codablockf/index.js"},"./datamatrix":{"types":"./src/ts/datamatrix/index.d.ts","import":"./src/js/datamatrix/index.js"},"./render/png":{"types":"./src/ts/render/png.d.ts","import":"./src/js/render/png.js"},"./render/svg":{"types":"./src/ts/render/svg.d.ts","import":"./src/js/render/svg.js"},"./bundle/iife":{"types":"./src/ts/bundle/sythos-barcode.d.ts","import":"./bundle/sythos-barcode.js"},"./micropdf417":{"types":"./src/ts/micropdf417/index.d.ts","import":"./src/js/micropdf417/index.js"},"./package.json":"./package.json","./compactpdf417":{"types":"./src/ts/compactpdf417/index.d.ts","import":"./src/js/compactpdf417/index.js"},"./render/image-data":{"types":"./src/ts/render/image-data.d.ts","import":"./src/js/render/image-data.js"}},"scripts":{"lint":"eslint --max-warnings=0 src/index.js src/js tools .github/ci","types":"node node_modules/typescript/bin/tsc -p tsconfig.json","build:ts":"node tools/compile-typescript.mjs","test:core":"node --test test/core.test.js test/image.test.js test/render.test.js test/oned.test.js test/oned-image-completion.test.js test/ean-addons.test.js test/binarizer-fallback.test.js test/camera-profile.test.js test/databar.tables.test.js test/databar.encoder.test.js test/databar.codec.test.js test/databar.gs1.test.js test/qr.test.js test/qr-family.integration.test.js test/datamatrix.test.js test/aztec-tables.test.js test/aztec-decoder.test.js test/aztecrune.tables.test.js test/aztecrune.encoder.test.js test/aztecrune.decoder.test.js test/aztecrune.detector.test.js test/aztecrune.blackbox.test.js test/pdf417.tables.test.js test/pdf417.encoder.test.js test/pdf417.compaction.test.js test/pdf417.binary-readiness.test.js test/pdf417.blackbox.test.js test/pdf417.detector.photo.test.js test/pdf417.device-evidence.test.js test/compactpdf417.test.js test/micropdf417.tables.test.js test/micropdf417.encoder.test.js test/micropdf417.compaction.test.js test/micropdf417.decoder.test.js test/micropdf417.detector.test.js test/micropdf417-api.test.js test/microqr.tables.test.js test/microqr.encoder.test.js test/microqr.decoder.test.js test/microqr.detector.test.js test/rmqr.test.js test/frameqr.tables.test.js test/frameqr.encoder.test.js test/frameqr.decoder.test.js test/frameqr.detector.test.js","test:docs":"node --test tools/exact-url.test.mjs","test:fuzz":"node --test test/fuzz/property.test.js","types:api":"node tools/check-public-types.mjs","build:bundle":"node tools/build-bundle.mjs","test:formats":"node --test test/maxicode.test.js test/databar-stacked.test.js test/databar-stacked-omnidirectional.test.js test/databar-limited.test.js test/databar-expanded.test.js test/telepen.test.js test/code25-code32.test.js test/fim.test.js test/plessey.test.js test/postal.test.js test/codablockf.test.js test/code16k.test.js test/dotcode.test.js test/hanxin.test.js test/gs1-composite.test.js test/kartrak.test.js test/postbar.test.js test/dxfilmedge.test.js test/jabcode.test.js test/payloads.test.js test/bundle.test.js","test:foundations":"node --test test/foundation.test.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"jsdelivr":"./bundle/sythos-barcode.js","_resolved":"/home/runner/work/JS_Barcode_Universal/JS_Barcode_Universal/release/sythos-js_barcode_universal-1.6.2.tgz","_integrity":"sha512-7sljLey6H6qiaK72JrTBEgWCmlv8/3V6dULg6TPYONHYYtaKkWYVV3fYV4Gwo3UAVdP7S5JlnxhjdqDb7sbp1w==","deprecated":"Outdated release — upgrade to the latest @sythos/js_barcode_universal version.","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.17.0","description":"Open-source MIT-licensed JavaScript/TypeScript barcode generator and barcode reader SDK with zero runtime dependencies for 1D and 2D barcodes in browsers, Web Workers and Node.js: QR, Data Matrix, Aztec, PDF417, GS1, EAN and more.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"acorn":"^8.18.0","eslint":"10.9.1","@eslint/js":"10.0.1","fast-check":"4.9.0","typescript":"7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/js_barcode_universal_1.6.2_1788366495599_0.3141348360484344","host":"s3://npm-registry-packages-npm-production"}},"1.6.3":{"_id":"@sythos/js_barcode_universal@1.6.3","bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"dist":{"shasum":"17526bbf2b8a873ab07c5ff806c6a8ae052d7755","tarball":"https://registry.npmjs.org/@sythos/js_barcode_universal/-/js_barcode_universal-1.6.3.tgz","fileCount":478,"integrity":"sha512-aqRroYY2UunDyie5nLwLFZVwrov2oqt+AjkAnEl8ccrzujTzvKsc3J/JRsHVWJnfcYZdN21tMR2ZIwq6bO9LgQ==","signatures":[{"sig":"MEUCIQCM7RaIBMwHwiWg7ZuVs0wNAtWMOroJnxLc1gJW+yeJYgIgV5FcXPwawSdjXKvoHAhqUDdKbMMpriHaj781r4JcoqI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCICQE3MPewI6J7+QlahGi7cOoxivYxq0SHfNaQwiAzaIKAiANa200EHzmJTwpRG0G+GYtwZZAH/N3S28ni5AYPzMgZA=="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sythos%2fjs_barcode_universal@1.6.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6150526},"main":"./src/index.js","name":"@sythos/js_barcode_universal","type":"module","_from":"file:release/sythos-js_barcode_universal-1.6.3.tgz","types":"./src/index.d.ts","unpkg":"./bundle/sythos-barcode.js","author":{"url":"https://www.sythos.net","name":"Sythos"},"module":"./src/index.js","browser":"./bundle/sythos-barcode.js","engines":{"node":">=24"},"exports":{".":{"types":"./src/index.d.ts","import":"./src/index.js"},"./qr":{"types":"./src/ts/qr/index.d.ts","import":"./src/js/qr/index.js"},"./core":{"types":"./src/ts/core/index.d.ts","import":"./src/js/core/index.js"},"./oned":{"types":"./src/ts/oned/index.d.ts","import":"./src/js/oned/index.js"},"./rmqr":{"types":"./src/ts/rmqr/index.d.ts","import":"./src/js/rmqr/index.js"},"./aztec":{"types":"./src/ts/aztec/index.d.ts","import":"./src/js/aztec/index.js"},"./color":{"types":"./src/ts/color/index.d.ts","import":"./src/js/color/index.js"},"./image":{"types":"./src/ts/image/index.d.ts","import":"./src/js/image/index.js"},"./bundle":{"types":"./src/ts/bundle/sythos-barcode.esm.d.ts","import":"./bundle/sythos-barcode.esm.js"},"./hanxin":{"types":"./src/ts/hanxin/index.d.ts","import":"./src/js/hanxin/index.js"},"./pdf417":{"types":"./src/ts/pdf417/index.d.ts","import":"./src/js/pdf417/index.js"},"./render":{"types":"./src/ts/render/index.d.ts","import":"./src/js/render/index.js"},"./code16k":{"types":"./src/ts/code16k/index.d.ts","import":"./src/js/code16k/index.js"},"./databar":{"types":"./src/ts/databar/index.d.ts","import":"./src/js/databar/index.js"},"./dotcode":{"types":"./src/ts/dotcode/index.d.ts","import":"./src/js/dotcode/index.js"},"./frameqr":{"types":"./src/ts/frameqr/index.d.ts","import":"./src/js/frameqr/index.js"},"./jabcode":{"types":"./src/ts/jabcode/index.d.ts","import":"./src/js/jabcode/index.js"},"./kartrak":{"types":"./src/ts/kartrak/index.d.ts","import":"./src/js/kartrak/index.js"},"./microqr":{"types":"./src/ts/microqr/index.d.ts","import":"./src/js/microqr/index.js"},"./maxicode":{"types":"./src/ts/maxicode/index.d.ts","import":"./src/js/maxicode/index.js"},"./payloads":{"types":"./src/ts/payloads/index.d.ts","import":"./src/js/payloads/index.js"},"./aztecrune":{"types":"./src/ts/aztecrune/index.d.ts","import":"./src/js/aztecrune/index.js"},"./composite":{"types":"./src/ts/composite/index.d.ts","import":"./src/js/composite/index.js"},"./codablockf":{"types":"./src/ts/codablockf/index.d.ts","import":"./src/js/codablockf/index.js"},"./datamatrix":{"types":"./src/ts/datamatrix/index.d.ts","import":"./src/js/datamatrix/index.js"},"./render/png":{"types":"./src/ts/render/png.d.ts","import":"./src/js/render/png.js"},"./render/svg":{"types":"./src/ts/render/svg.d.ts","import":"./src/js/render/svg.js"},"./bundle/iife":{"types":"./src/ts/bundle/sythos-barcode.d.ts","import":"./bundle/sythos-barcode.js"},"./micropdf417":{"types":"./src/ts/micropdf417/index.d.ts","import":"./src/js/micropdf417/index.js"},"./package.json":"./package.json","./compactpdf417":{"types":"./src/ts/compactpdf417/index.d.ts","import":"./src/js/compactpdf417/index.js"},"./render/image-data":{"types":"./src/ts/render/image-data.d.ts","import":"./src/js/render/image-data.js"}},"license":"MIT","scripts":{"lint":"eslint --max-warnings=0 src/index.js src/js tools .github/ci","types":"node node_modules/typescript/bin/tsc -p tsconfig.json","build:ts":"node tools/compile-typescript.mjs","test:core":"node --test test/core.test.js test/image.test.js test/render.test.js test/oned.test.js test/oned-image-completion.test.js test/ean-addons.test.js test/binarizer-fallback.test.js test/camera-profile.test.js test/databar.tables.test.js test/databar.encoder.test.js test/databar.codec.test.js test/databar.gs1.test.js test/qr.test.js test/qr-family.integration.test.js test/datamatrix.test.js test/aztec-tables.test.js test/aztec-decoder.test.js test/aztecrune.tables.test.js test/aztecrune.encoder.test.js test/aztecrune.decoder.test.js test/aztecrune.detector.test.js test/aztecrune.blackbox.test.js test/pdf417.tables.test.js test/pdf417.encoder.test.js test/pdf417.compaction.test.js test/pdf417.binary-readiness.test.js test/pdf417.blackbox.test.js test/pdf417.detector.photo.test.js test/pdf417.device-evidence.test.js test/compactpdf417.test.js test/micropdf417.tables.test.js test/micropdf417.encoder.test.js test/micropdf417.compaction.test.js test/micropdf417.decoder.test.js test/micropdf417.detector.test.js test/micropdf417-api.test.js test/microqr.tables.test.js test/microqr.encoder.test.js test/microqr.decoder.test.js test/microqr.detector.test.js test/rmqr.test.js test/frameqr.tables.test.js test/frameqr.encoder.test.js test/frameqr.decoder.test.js test/frameqr.detector.test.js","test:docs":"node --test tools/exact-url.test.mjs","test:fuzz":"node --test test/fuzz/property.test.js","types:api":"node tools/check-public-types.mjs","build:bundle":"node tools/build-bundle.mjs","test:formats":"node --test test/maxicode.test.js test/databar-stacked.test.js test/databar-stacked-omnidirectional.test.js test/databar-limited.test.js test/databar-expanded.test.js test/telepen.test.js test/code25-code32.test.js test/fim.test.js test/plessey.test.js test/postal.test.js test/codablockf.test.js test/code16k.test.js test/dotcode.test.js test/hanxin.test.js test/gs1-composite.test.js test/kartrak.test.js test/postbar.test.js test/dxfilmedge.test.js test/jabcode.test.js test/payloads.test.js test/bundle.test.js","test:foundations":"node --test test/foundation.test.js"},"version":"1.6.3","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:b933ef18-df7f-4798-a8d2-c5da03889f5f"}},"homepage":"https://sythos.github.io/JS_Barcode_Universal/","jsdelivr":"./bundle/sythos-barcode.js","keywords":["barcode","barcode-reader","barcode-writer","barcode-decoder","barcode-encoder","barcode-reading","barcode-writing","1d-barcode","2d-barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","gs1","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","typescript","javascript","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","code-25","code2of5","standard-2-of-5","industrial-2-of-5","iata-2-of-5","codabar","msi","code32","italian-pharmacode","pzn","pzn7","pzn8","telepen","telepen-numeric","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","web-worker","nodejs","esm","open-source","mit-license","zero-runtime-dependencies"],"_resolved":"/home/runner/work/JS_Barcode_Universal/JS_Barcode_Universal/release/sythos-js_barcode_universal-1.6.3.tgz","_integrity":"sha512-aqRroYY2UunDyie5nLwLFZVwrov2oqt+AjkAnEl8ccrzujTzvKsc3J/JRsHVWJnfcYZdN21tMR2ZIwq6bO9LgQ==","repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"_npmVersion":"11.19.0","description":"Open-source MIT-licensed JavaScript/TypeScript barcode generator and barcode reader SDK with zero runtime dependencies for 1D and 2D barcodes in browsers, Web Workers and Node.js: QR, Data Matrix, Aztec, PDF417, GS1, EAN and more.","directories":{},"maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"sideEffects":false,"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"acorn":"^8.18.0","eslint":"10.9.1","@eslint/js":"10.0.1","fast-check":"4.9.0","typescript":"7.0.2"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/js_barcode_universal_1.6.3_1788597299387_0.0658347260949832"}}},"time":{"created":"2026-08-06T06:53:00.849Z","modified":"2026-09-05T08:34:59.800Z","0.1.0":"2026-08-06T06:53:01.206Z","1.0.0":"2026-08-08T21:30:12.579Z","1.1.0":"2026-08-11T09:01:45.982Z","1.2.5":"2026-08-11T21:19:49.783Z","1.3.1":"2026-08-13T10:21:57.480Z","1.4.1":"2026-08-13T13:17:07.198Z","1.5.0":"2026-08-13T15:37:11.759Z","1.5.1":"2026-08-13T16:16:09.355Z","1.5.2":"2026-08-13T16:33:16.852Z","1.5.3":"2026-08-13T18:33:39.484Z","1.5.4":"2026-08-13T19:38:56.994Z","1.5.5":"2026-08-13T21:20:26.848Z","1.5.6":"2026-08-14T08:30:30.122Z","1.5.7":"2026-08-18T19:08:44.545Z","1.5.8":"2026-08-20T09:36:04.019Z","1.5.9":"2026-08-21T07:16:48.056Z","1.5.10":"2026-08-25T08:10:41.479Z","1.5.11":"2026-08-25T08:50:11.360Z","1.5.12":"2026-08-25T11:24:43.576Z","1.5.13":"2026-08-25T15:13:23.599Z","1.5.14":"2026-08-28T13:26:01.497Z","1.5.15":"2026-08-31T13:28:44.913Z","1.6.0":"2026-09-02T07:31:15.028Z","1.6.1":"2026-09-02T14:32:19.733Z","1.6.2":"2026-09-02T16:28:15.854Z","1.6.3":"2026-09-05T08:34:59.496Z"},"bugs":{"url":"https://github.com/Sythos/JS_Barcode_Universal/issues"},"author":{"url":"https://www.sythos.net","name":"Sythos"},"license":"MIT","homepage":"https://sythos.github.io/JS_Barcode_Universal/","keywords":["barcode","barcode-reader","barcode-writer","barcode-decoder","barcode-encoder","barcode-reading","barcode-writing","1d-barcode","2d-barcode","datamatrix","ecc200","aztec","aztec-rune","compact-pdf417","gs1-databar","gs1","ean2","ean5","aztec-code","pdf417","pdf-417","micropdf417","micro-pdf417","microqr","micro-qr","rmqr","rectangular-micro-qr","frameqr","canvas-qr","sdk","typescript","javascript","barcode-generator","barcode-scanner","qrcode","qr","qr-code","ean","ean13","ean8","upc","upca","upce","isbn","code128","gs1-128","code39","code93","itf","itf14","code-25","code2of5","standard-2-of-5","industrial-2-of-5","iata-2-of-5","codabar","msi","code32","italian-pharmacode","pzn","pzn7","pzn8","telepen","telepen-numeric","code11","pharmacode","scanner","decoder","encoder","generator","reader","writer","zero-dependencies","no-dependencies","browser","web-worker","nodejs","esm","open-source","mit-license","zero-runtime-dependencies"],"repository":{"url":"git+https://github.com/Sythos/JS_Barcode_Universal.git","type":"git"},"description":"Open-source MIT-licensed JavaScript/TypeScript barcode generator and barcode reader SDK with zero runtime dependencies for 1D and 2D barcodes in browsers, Web Workers and Node.js: QR, Data Matrix, Aztec, PDF417, GS1, EAN and more.","maintainers":[{"name":"sythos","email":"sythos@gmail.com"}],"readme":"![JS Barcode Universal SDK](https://raw.githubusercontent.com/Sythos/JS_Barcode_Universal/main/docs/assets/branding/barcode_banner_sythos.png)\n\n# Sythos Barcode Universal — MIT 1D/2D Barcode SDK\n\nOpen-source MIT-licensed JavaScript/TypeScript barcode generator and barcode reader SDK for encoding and decoding 1D linear and 2D matrix barcodes. It has zero runtime dependencies and runs in browsers, Web Workers and Node.js, or Bun as an alternative.\n\n[![npm](https://img.shields.io/npm/v/@sythos/js_barcode_universal.svg)](https://www.npmjs.com/package/@sythos/js_barcode_universal) [![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) [![Runtime dependencies: 0](https://img.shields.io/badge/runtime%20dependencies-0-brightgreen.svg)](package.json) [![ESM](https://img.shields.io/badge/ESM-supported-3178C6.svg?logo=javascript&logoColor=white)](https://nodejs.org/api/esm.html) ![TypeScript](https://img.shields.io/badge/TypeScript-3178C6?logo=typescript&logoColor=white)\n\n[![npm downloads](https://img.shields.io/npm/dm/%40sythos%2Fjs_barcode_universal.svg?label=npm%20downloads)](https://www.npmjs.com/package/@sythos/js_barcode_universal) [![Node](https://img.shields.io/node/v/%40sythos%2Fjs_barcode_universal.svg)](https://www.npmjs.com/package/@sythos/js_barcode_universal) [![Bun](https://img.shields.io/badge/Bun-compatible-000000.svg?logo=bun&logoColor=white)](https://github.com/Sythos/JS_Barcode_Universal/blob/main/.github/workflows/bun-compat.yml)\n\nOriginal Sythos implementation, zero runtime dependencies, MIT. It runs unmodified in Node, in Bun as an alternative runtime, in browsers\n(including Safari on iOS) and in web workers. The core requires no canvas, no filesystem and no\nDOM — images go in and come out as plain `{ data, width, height }` RGBA objects, which is exactly\nwhat an `ImageData` is.\n\nBun is a lighter, faster alternative to Node.js for running this SDK: it executes the TypeScript\nsources under `src/ts/` natively, with no separate compile step, and its JavaScriptCore-based\nruntime generally uses less memory and starts faster than Node's V8. See the\n[Node.js (or Bun) guide](docs/guides/node.md) and the\n[`bun-compat.yml`](.github/workflows/bun-compat.yml) workflow that verifies this on every push.\n\n**The code is complete and entirely human-readable.** The full source ships. There is no\nWebAssembly, no native addon, no compiled artefact, no binary blob and no minified file anywhere\nin this repository — every tracked file is text you can open and read.\n\nThat includes the prebuilt bundles. They are *generated*, concatenated and wrapped from `src/` by\nthe project's own bundler, but nothing is stripped in the process:\n[`bundle/sythos-barcode.js`](bundle/sythos-barcode.js) runs to roughly 7,900 lines, about a third\nof them comments, averaging a little over 30 characters a line. Open it anywhere and you are\nreading the same annotated code as the source, in the same order — a convenience, not a black box.\n\nDon't take that on trust either; it takes one command:\n\n```sh\nawk '{ n += length($0) } END { print \"lines:\", NR, \" avg length:\", int(n/NR) }' bundle/sythos-barcode.js\n```\n\nA minified bundle gives you a handful of lines averaging thousands of characters. This one does\nnot, and that is the whole point.\n\nThis is deliberate. A barcode library decides what a scanner believes a label says, so it belongs\nin the category of code you can audit rather than have to trust. Every constant table, every\ncheck digit and every error-correction step is here in full, with the reasoning next to it.\n\n```js\nimport { encode, decode, toSVG, toImageData } from './src/index.js';\n\nconst matrix = encode('https://example.com', { format: 'qr', ecc: 'M' });\nconst svg    = toSVG(matrix, { scale: 8 });\n\nconst found = decode(toImageData(matrix, { scale: 4 }), { formats: ['qr'] });\nconsole.log(found[0].text);   // 'https://example.com'\n```\n\n---\n\n## Quick start\n\nThere are four ways in, and none of them needs a build step.\n\n> Full documentation lives at [sythos.github.io/JS_Barcode_Universal](https://sythos.github.io/JS_Barcode_Universal/).\n\n### 1. npm\n\n```sh\nnpm install @sythos/js_barcode_universal\n```\n\n`yarn add @sythos/js_barcode_universal` and `pnpm add @sythos/js_barcode_universal` do the same thing. Nothing is installed\nalongside it — there are no runtime dependencies, no postinstall script and no native build. The\npackage is plain ESM (`\"type\": \"module\"`) and asks for Node 24 or newer, or Bun as an alternative.\n\n```js\nimport { encode, decode, toSVG, toImageData } from '@sythos/js_barcode_universal';\n\nconst code = encode('SYT-2026-0042', { format: 'code128' });\n\nconst svg = toSVG(code, { scale: 2, margin: 10, barHeight: 60 });\n// '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"374\" height=\"100\" …'\n\nconst found = decode(toImageData(code, { scale: 4, margin: 10 }), { formats: ['code128'] });\nconsole.log(found[0].text);   // 'SYT-2026-0042'\n```\n\n**Subpath exports** hand you one layer instead of the whole surface, which is what lets a\ntree-shaking bundler drop everything you did not ask for. Importing only the QR writer and only\nthe SVG renderer never pulls in the 1D formats, the PNG encoder or the read pipeline:\n\n```js\nimport { encodeQR } from '@sythos/js_barcode_universal/qr';\nimport { toSVG }    from '@sythos/js_barcode_universal/render/svg';\n\nconst svg = toSVG(encodeQR('https://example.com', { ecc: 'M' }), { scale: 8 });\n// a 25×25 module symbol — 264×264 px at scale 8 with the default 4-module quiet zone\n```\n\n| Subpath | What it exports |\n|---|---|\n| `@sythos/js_barcode_universal` | The whole surface: `encode`, `decode`, every renderer, every error type |\n| `@sythos/js_barcode_universal/core` | `BitMatrix`, `GaloisField`, Reed–Solomon, the error classes |\n| `@sythos/js_barcode_universal/image` | `LuminanceSource`, the binarizers, grid sampling, `PerspectiveTransform` |\n| `@sythos/js_barcode_universal/oned` | The per-format 1D writers (`encodeEAN13`, `encodeCode128`, `encodeCode32`, `encodePZN`, `encodeTelepen`, `encodePostnet`, `encodePlanet`, `encodeRM4SCC`, `encodeKIX`, `encodeAustraliaPost`, `encodeJapanPost`, `encodeIMB`, …), Code 25 variants and `decodeOneD` |\n| `@sythos/js_barcode_universal/qr` | `encodeQR`, `decodeQR`, `detectQR`, `detectAndDecodeQR` |\n| `@sythos/js_barcode_universal/datamatrix` | `encodeDataMatrix`, `decodeDataMatrix`, `detectDataMatrix`, `detectAndDecodeDataMatrix` |\n| `@sythos/js_barcode_universal/aztec` | `encodeAztec`, `decodeAztec`, `detectAztec`, `detectAndDecodeAztec` |\n| `@sythos/js_barcode_universal/aztecrune` | `encodeAztecRune`, `decodeAztecRune`, `detectAztecRune`, `detectAndDecodeAztecRune` |\n| `@sythos/js_barcode_universal/pdf417` | `encodePDF417`, `decodePDF417`, `detectPDF417`, `detectAndDecodePDF417` |\n| `@sythos/js_barcode_universal/compactpdf417` | `encodeCompactPDF417`, `decodeCompactPDF417`, `detectCompactPDF417`, `detectAndDecodeCompactPDF417` |\n| `@sythos/js_barcode_universal/databar` | GS1 DataBar GTIN/AI codecs plus Omnidirectional/Truncated, Limited, Stacked, Stacked Omnidirectional and Expanded physical helpers |\n| `@sythos/js_barcode_universal/micropdf417` | `encodeMicroPDF417`, `decodeMicroPDF417`, `detectMicroPDF417`, `detectAndDecodeMicroPDF417` |\n| `@sythos/js_barcode_universal/microqr` | `encodeMicroQR`, `decodeMicroQR`, `detectMicroQR`, `detectAndDecodeMicroQR` |\n| `@sythos/js_barcode_universal/rmqr` | `encodeRMQR`, `decodeRMQR`, `detectRMQR`, `detectAndDecodeRMQR` |\n| `@sythos/js_barcode_universal/frameqr` | `encodeFrameQR`, `decodeFrameQR`, `detectFrameQR`, `detectAndDecodeFrameQR` |\n| `@sythos/js_barcode_universal/maxicode` | `encodeMaxiCode`, `decodeMaxiCode`, `detectMaxiCode`, `detectAndDecodeMaxiCode` |\n| `@sythos/js_barcode_universal/dotcode` | `encodeDotCode`, `decodeDotCode`, `detectDotCode`, `detectAndDecodeDotCode` |\n| `@sythos/js_barcode_universal/hanxin` | `encodeHanXin`, `encodeHanXinBytes`, `decodeHanXin`, `detectHanXin`, `detectAndDecodeHanXin` |\n| `@sythos/js_barcode_universal/composite` | `encodeGS1Composite`, `decodeGS1Composite`, `detectGS1Composite`, `detectAndDecodeGS1Composite` |\n| `@sythos/js_barcode_universal/kartrak` | `encodeKarTrak`, `decodeKarTrak`, `decodeKarTrakMatrix`, `detectKarTrak` — experimental, colour-coded, not part of `encode()`/`decode()` |\n| `@sythos/js_barcode_universal/jabcode` | `encodeJABCode`, `decodeJABCode`, `decodeJABCodeMatrix` — experimental, colour-coded, not part of `encode()`/`decode()` |\n| `@sythos/js_barcode_universal/color` | `PolychromeMatrix`, `toColorImageData`, `classifyGrid` — the experimental colour primitives KarTrak and JAB Code are built on; not registered in `listFormats()`, no stability guarantee yet |\n| `@sythos/js_barcode_universal/payloads` | `encodeVCard`, `encodeVIN`, `encodeSPARQCode`, `encodeSwissQR`, `encodeSEPAQR`, `encodeAAMVA` (plus each `build*` counterpart) — structured payload conventions on top of `qr`, `code39` and `pdf417`, not separate symbologies, not part of `encode()`/`decode()` |\n| `@sythos/js_barcode_universal/render` | Every renderer plus `isWebGL2Available` / `isWebGPUAvailable` |\n| `@sythos/js_barcode_universal/render/svg` | `toSVG`, `toSVGDataURI` |\n| `@sythos/js_barcode_universal/render/png` | `toPNG`, `toPNGDataURI` |\n| `@sythos/js_barcode_universal/render/image-data` | `toImageData`, `toCanvas` |\n| `@sythos/js_barcode_universal/bundle` | The prebuilt ESM bundle, as one file |\n| `@sythos/js_barcode_universal/bundle/iife` | The prebuilt IIFE bundle, for a `<script>` tag |\n\nThe `unpkg` and `jsdelivr` fields point at the IIFE bundle, so a CDN needs no install at all:\n\n```html\n<script src=\"https://unpkg.com/@sythos/js_barcode_universal\"></script>\n<script src=\"https://unpkg.com/@sythos/js_barcode_universal@1.6.3\"></script>\n<script src=\"https://cdn.jsdelivr.net/npm/@sythos/js_barcode_universal@1.6.3\"></script>\n```\n\nPin the version for anything you ship; the unpinned form resolves to `latest` and will move under\nyou.\n\nBoth CDNs serve the same file the repository ships in\n[`bundle/sythos-barcode.js`](bundle/sythos-barcode.js) — byte for byte, since that is exactly what\nnpm publishes.\n\n### 2. A `<script>` tag\n\n[`bundle/sythos-barcode.js`](bundle/sythos-barcode.js) is a self-contained IIFE that exposes a\nsingle global, `SythosBarcode`. It works straight from `file://` — open an HTML file off your\ndisk and it runs.\n\n```html\n<script src=\"bundle/sythos-barcode.js\"></script>\n<script>\n  var encode = SythosBarcode.encode;\n  var toSVGDataURI = SythosBarcode.toSVGDataURI;\n\n  var img = new Image();\n  img.src = toSVGDataURI(encode('https://example.com', { format: 'qr' }), { scale: 8 });\n  document.body.appendChild(img);\n</script>\n```\n\n### 3. ESM bundle\n\n[`bundle/sythos-barcode.esm.js`](bundle/sythos-barcode.esm.js) is the same code as a single ES\nmodule, for `<script type=\"module\">`, a bundler, or Node.js or Bun as alternatives.\n\n```js\nimport { encode, toSVG, toPNG } from './bundle/sythos-barcode.esm.js';\n\nconst ean = encode('5901234123457', { format: 'ean13' });\n\nconst svg = toSVG(ean, { scale: 3, margin: 10, barHeight: 80 });\n// '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"345\" height=\"141\" …'\n\ntoPNG(ean, { scale: 3, barHeight: 80 }).then((bytes) => {\n  // Uint8Array — a 1-bit palette PNG\n});\n```\n\n### 4. The source directly\n\n[`src/index.js`](src/index.js) is the generated ESM facade emitted from the TypeScript source\ntree. The source layout is deliberately explicit:\n\n- `src/ts/` contains the TypeScript runtime sources and their adjacent machine-readable `.d.ts`\n  declarations, including `src/ts/index.ts` and `src/ts/index.d.ts`.\n- `src/js/` contains the compiled JavaScript runtime modules used by Node.js or Bun as alternatives,\n  browsers and the CDN bundles.\n- `src/index.js` and `src/index.d.ts` are the stable package-root facades.\n\nFrom the development workspace, `npm run build:ts` compiles `src/ts/` into `src/js/` and the\nroot JavaScript facade; `npm run build` then regenerates both bundles. The published package\nkeeps both source languages visible while retaining zero runtime dependencies.\n\nThe package subpath exports therefore pair compiled runtime modules under `src/js/` with their\nTypeScript sources and declarations under `src/ts/`; direct source imports should continue to use\nthe JavaScript facade above.\n\n```js\nimport { encode, decode, toImageData, listFormats } from './src/index.js';\n\nconst matrix = encode('https://example.com', { format: 'qr', ecc: 'M' });\nconst image  = toImageData(matrix, { scale: 4, margin: 4 });\n\nconst found = decode(image, { formats: ['qr'] });\n// [ { text: 'https://example.com', format: 'qr', version: 2, ecc: 'M', … } ]\n```\n\nDecoding takes anything `ImageData`-shaped, so a canvas, an `OffscreenCanvas`,\n`createImageBitmap`, or an image library's raw buffer all satisfy it without an adapter:\n\n```js\nconst ctx = canvas.getContext('2d');\nctx.drawImage(video, 0, 0, canvas.width, canvas.height);\n\nfor (const hit of decode(ctx.getImageData(0, 0, canvas.width, canvas.height))) {\n  console.log(hit.format, hit.text);\n}\n```\n\n`decode` returns an array, empty when nothing is found. A frame with no barcode is an ordinary\noutcome for a camera loop, not an error, so the common case needs no `try`/`catch`. Use\n`decodeStrict` when absence really is a failure.\n\n### Strict camera profile\n\nFor a live camera loop, opt into the stricter 1D policy:\n\n```js\ndecode(frame, { formats, profile: 'camera', tryHarder: true })\n```\n\nThe profile requires a compatible quiet zone and the same complete 1D symbol on at least two\nscan samples. It evaluates the eight fixed in-plane orientations `0°`, `45°`, `90°`, `135°`,\n`180°`, `225°`, `270°` and `315°` when the native orientation has no validated read. The same\norientation set is available to the supported 2D detector passes in the strict camera profile.\nCode 11 and MSI require a verified check digit in this profile; other formats retain their own\nstructural and checksum validation. A frame without a validated barcode still returns `[]`. No\npartial, structurally inconsistent or low-confidence value is emitted to the caller. This is a\nfinite in-plane retry policy, not a guarantee for arbitrary perspective, curved media, severe\nocclusion or multi-symbol scenes.\n\nCamera-profile 1D results add `confidence` (0–1), `bounds`, `rotation`, and\n`quality: { quietZone, checksum, rows, consistency }`. `bounds` is reported in the raster\norientation that was scanned; unavailable quality data is represented by `null` where applicable.\n\n---\n\n## Supported barcode formats\n\nGenerated from `listFormats()`, which reports writing and reading as separate capabilities.\nWriting a symbology is a table lookup; reading one needs a detector that finds it in a\nphotograph. The two lists legitimately differ, and saying so here is better than failing at call\ntime.\n\n`Kind` is the literal `'1D' | '2D'` value `format.kind` returns from the API — it never changes.\n`Structure` is a descriptive grouping only, not part of the API: **Linear** (a single row),\n**Stacked** (multiple linear-derived rows, including PDF417-style and stacked GS1 DataBar\nvariants), or **Matrix** (a true two-dimensional grid, e.g. QR or Data Matrix). A few formats are\n`2D` by Kind but row-stacked rather than gridded (Codablock-F, Code 16K), and two are `1D` by Kind\nbut physically stacked (GS1 DataBar Stacked and Stacked Omnidirectional) — Structure exists to\nmake that distinction visible.\n\n| Format | `id` | Kind | Structure | Write | Read |\n|---|---|:---:|:---:|:---:|:---:|\n| AAMVA DL/ID data (payload convention on PDF417) | variant of `pdf417` | 2D | Stacked | ✅ | ✅ [^9] |\n| Australia Post 4-State | `auspost` | 1D | Linear | ✅ | ✅ |\n| Aztec Code | `aztec` | 2D | Matrix | ✅ | ✅ |\n| Aztec Rune | `aztecrune` | 2D | Matrix | ✅ | ✅ |\n| Codabar | `codabar` | 1D | Linear | ✅ | ✅ |\n| Codablock-F | `codablockf` | 2D | Stacked | ✅ | ✅ |\n| Code 11 | `code11` | 1D | Linear | ✅ | ✅ |\n| Code 128 | `code128` | 1D | Linear | ✅ | ✅ |\n| Code 16K | `code16k` | 2D | Stacked | ✅ | ✅ |\n| Code 2 of 5 Data Logic (China Post) | `datalogic2of5` | 1D | Linear | ✅ | ✅ |\n| Code 25 / Standard 2 of 5 | `standard2of5` | 1D | Linear | ✅ | ✅ [^4] |\n| Code 32 (Italian Pharmacode) | `code32` | 1D | Linear | ✅ | ✅ |\n| Code 39 | `code39` | 1D | Linear | ✅ | ✅ |\n| Code 93 | `code93` | 1D | Linear | ✅ | ✅ |\n| Compact PDF417 | `compactpdf417` | 2D | Stacked | ✅ | ✅ |\n| Data Matrix ECC 200 | `datamatrix` | 2D | Matrix | ✅ | ✅ |\n| DotCode | `dotcode` | 2D | Matrix | ✅ | ✅ |\n| DX Film Edge Barcode | `dxfilmedge` | 1D | Linear | ✅ | ✅ |\n| EAN-13 | `ean13` | 1D | Linear | ✅ | ✅ |\n| EAN-2 supplement | `ean2` | 1D | Linear | ✅ | ✅ [^2] |\n| EAN-5 supplement | `ean5` | 1D | Linear | ✅ | ✅ [^2] |\n| EAN-8 | `ean8` | 1D | Linear | ✅ | ✅ |\n| Facing Identification Mark (FIM) | `fim` | 1D | Linear | ✅ | ✅ |\n| GS1 DataBar Composite (bounded Sythos profile) | `gs1composite` | 2D | Stacked | ✅ | ✅ |\n| GS1 DataBar Expanded | `gs1databar-expanded` | 1D | Linear | ✅ | ✅ |\n| GS1 DataBar Limited | `gs1databar-limited` | 1D | Linear | ✅ | ✅ |\n| GS1 DataBar Omnidirectional / Truncated | `gs1databar14` | 1D | Linear | ✅ | ✅ |\n| GS1 DataBar Stacked | `gs1databar-stacked` | 1D | Stacked | ✅ | ✅ |\n| GS1 DataBar Stacked Omnidirectional | `gs1databar-stacked-omnidirectional` | 1D | Stacked | ✅ | ✅ |\n| GS1-128 | `gs1128` | 1D | Linear | ✅ | ✅ [^1] |\n| Han Xin Code | `hanxin` | 2D | Matrix | ✅ | ✅ |\n| IATA 2 of 5 | `iata2of5` | 1D | Linear | ✅ | ✅ [^4] |\n| Industrial 2 of 5 | `industrial2of5` | 1D | Linear | ✅ | ✅ [^4] |\n| ISBN (Bookland) | `isbn` | 1D | Linear | ✅ | ✅ [^1] |\n| ITF (Interleaved 2 of 5) | `itf` | 1D | Linear | ✅ | ✅ |\n| ITF-14 | `itf14` | 1D | Linear | ✅ | ✅ [^1] |\n| ITF-6 | `itf6` | 1D | Linear | ✅ | ✅ [^5] |\n| JAB Code (colour, experimental — default mode profile) | `jabcode` | 2D | Matrix | ✅ | ✅ [^8] |\n| JAN (Japanese Article Number) | `jan` | 1D | Linear | ✅ | ✅ [^1] |\n| Japan Post 4-State | `japanpost` | 1D | Linear | ✅ | ✅ |\n| KarTrak ACI (colour, experimental — bounded Sythos profile) | `kartrak` | 1D | Linear | ✅ | ✅ [^6] |\n| KIX postal code | `kix` | 1D | Linear | ✅ | ✅ |\n| Matrix 2 of 5 | `matrix2of5` | 1D | Linear | ✅ | ✅ |\n| MaxiCode | `maxicode` | 2D | Matrix | ✅ | ✅ |\n| Micro QR Code | `microqr` | 2D | Matrix | ✅ | ✅ |\n| MicroPDF417 | `micropdf417` | 2D | Stacked | ✅ | ✅ |\n| MSI Plessey | `msi` | 1D | Linear | ✅ | ✅ |\n| PDF417 | `pdf417` | 2D | Stacked | ✅ | ✅ |\n| Pharmacode | `pharmacode` | 1D | Linear | ✅ | — |\n| Plessey Code | `plessey` | 1D | Linear | ✅ | ✅ |\n| PostBar.C10 (Canada Post, internal) | `postbarc10` | 1D | Linear | ✅ | ✅ [^7] |\n| PostBar.D22 (Canada Post, domestic) | `postbard22` | 1D | Linear | ✅ | ✅ [^7] |\n| PostBar.G12 (Canada Post, international) | `postbarg12` | 1D | Linear | ✅ | ✅ [^7] |\n| PZN-7 / PZN-8 | `pzn` | 1D | Linear | ✅ | ✅ |\n| QR Code | `qr` | 2D | Matrix | ✅ | ✅ |\n| rMQR Code | `rmqr` | 2D | Matrix | ✅ | ✅ |\n| Royal Mail 4-State (RM4SCC) | `rm4scc` | 1D | Linear | ✅ | ✅ |\n| SEPA / EPC QR Code (payload convention on QR) | variant of `qr` | 2D | Matrix | ✅ | ✅ [^9] |\n| SPARQCode (payload convention on QR) | variant of `qr` | 2D | Matrix | ✅ | ✅ [^9] |\n| Swiss QR-bill (payload convention on QR) | variant of `qr` | 2D | Matrix | ✅ | ✅ [^9] |\n| Sythos Canvas QR profile — not DENSO FrameQR® compatible | `frameqr` | 2D | Matrix | ✅ | ✅ |\n| Telepen (ASCII and Numeric) | `telepen` | 1D | Linear | ✅ | ✅ [^3] |\n| UPC-A | `upca` | 1D | Linear | ✅ | ✅ |\n| UPC-E | `upce` | 1D | Linear | ✅ | ✅ |\n| USPS Intelligent Mail (IMb / OneCode) | `imb` | 1D | Linear | ✅ | ✅ |\n| USPS PLANET | `planet` | 1D | Linear | ✅ | ✅ |\n| USPS POSTNET | `postnet` | 1D | Linear | ✅ | ✅ |\n| vCard (payload convention on QR) | variant of `qr` | 2D | Matrix | ✅ | ✅ [^9] |\n| VIN (Vehicle Identification Number, payload convention on Code 39) | variant of `code39` | 1D | Linear | ✅ | ✅ [^9] |\n\nThis table lists sixty-nine formats and variants: sixty-nine are writable and sixty-eight are\nreadable. Sixty-one of those go through the counted `listFormats()` registry and the top-level\n`encode()`/`decode()` dispatcher — sixty-one writable, sixty readable there specifically (EAN-2\nand EAN-5 are parent-bound supplements). The remaining eight rows reach that same total two\ndifferent ways. **KarTrak ACI and JAB Code** are colour-coded, not black/white, so neither can go\nthrough `BitMatrix`-based `encode()`/`decode()` at all — each ships only as its own subpath\n(`@sythos/js_barcode_universal/kartrak`, `@sythos/js_barcode_universal/jabcode`). **The six rows\nmarked \"variant of `qr`/`code39`/`pdf417`\" (AAMVA, SEPA/EPC QR, SPARQCode, Swiss QR-bill, vCard\nand VIN)** are not symbologies at all, so none has an `id` of its own to register — each is a\npayload-convention helper that builds a structured payload string and hands it to the named\nparent format's own encoder, from `@sythos/js_barcode_universal/payloads`, see footnote 9. Neither\ngroup goes through `listFormats()`, which is why the registry's own count stays sixty-one/sixty\neven as this table grows. **Pharmacode remains intentionally\nwrite-only in the generic image pipeline.** Code 11 and MSI Plessey use the scanline reader. Telepen supports both its full\nseven-bit ASCII mode and explicit Numeric pair mode; Numeric reads must request\n`formats: ['telepennumeric']` so digit pairs are never guessed as ASCII control characters. The\nCode 25 family shares one numeric digit grammar while exposing explicit Standard/Industrial and\nIATA guard profiles; Code 2 of 5 Data Logic (China Post) and Matrix 2 of 5 share a different,\nwidth-modulated digit grammar and both reject the 2:1 wide:narrow ratio, which collides with a\ndifferent valid reading once the symbol is mirrored — they differ only in their guard frame. Code\n32 and PZN validate their pharmaceutical check digits before a read is returned. Plessey Code\n(`plessey`), the format MSI Plessey descends from, encodes hexadecimal payloads and always\nvalidates a mandatory two-nibble CRC-8 check — unlike MSI's optional check digit, an unchecked\nPlessey read does not exist. Facing Identification Mark (`fim`) is not a general data carrier: it selects one of five\nfixed USPS-defined nine-position patterns (`A`-`E`), each a palindrome, so there is no reversed-read\nambiguity between them. Postal formats use operator-specific four-state alphabets with strict\nframing and checksum validation; KIX deliberately has no check character, while Australia Post\nsupports explicit character or numeric customer-data groups and IMb accepts its four legal payload\nlengths.\nThe\nGS1 DataBar physical variants use\nstrict clean-raster readers and variant-specific detectors over the verified GTIN/GS1 element-string\ndecoder. Expanded also accepts the common compressed GTIN-14 method on the read path. MaxiCode\nuses a fixed 30×33 matrix and a clean binary-raster detector for one prominent symbol. PDF417 exposes direct matrix decoding, automatic\ncamera localization and an assisted quadrilateral sampler through its subpath. Its detector is\nvalidated on degraded synthetic photographs and real Pixel 10/Chrome and iPhone 17/Safari camera\ntests; external black-box vectors from ZXing 3.5.3 and bwip-js also pass in both directions.\nText and Numeric vectors are covered bidirectionally; binary byte-for-byte interop remains\nexplicitly unclaimed until a dedicated external byte corpus is added.\n\nCodablock-F uses stacked Code 128 rows with per-row modulo-103 checks and two\noverall modulo-86 checks. The writer chooses a compact 2–44 row layout (or\naccepts explicit `rows` and `columns`), while the detector returns a result only\nwhen every expected row and check agrees:\n\n```js\nimport { encodeCodablockF, detectAndDecodeCodablockF } from '@sythos/js_barcode_universal/codablockf';\n\nconst matrix = encodeCodablockF('STACKED ORDER 12345', { rows: 3, columns: 12 });\nconst hit = detectAndDecodeCodablockF(matrix);\nconsole.log(hit?.text, hit?.rows, hit?.columns);\n```\n\nThe clean integer-scale detector is designed to reject incomplete or damaged\nrows. It does not promise arbitrary perspective, severe occlusion or\nmulti-symbol camera scenes. See [`docs/formats/codablockf.md`](docs/formats/codablockf.md)\nand [`licenses/codablockf.license`](licenses/codablockf.license).\n\nCode 16K keeps the Code 128 A/B/C data sets in a compact stacked symbol. The\nwriter supports 2–16 rows, five Code 128 symbols per row, optional GS1 modes\nand explicit row or separator heights. The reader validates every row, both\nmodulo-107 check characters and the complete geometry before returning text:\n\n```js\nimport { encodeCode16K, detectAndDecodeCode16K } from '@sythos/js_barcode_universal/code16k';\n\nconst matrix = encodeCode16K('INVENTORY 123456', { mode: 'B', rows: 3 });\nconst hit = detectAndDecodeCode16K(matrix);\nconsole.log(hit?.text, hit?.rows, hit?.mode);\n```\n\nThe detector accepts clean integer-scale rasters and orthogonal rotations. It\nrejects missing rows, altered modules, invalid checks and ambiguous geometry;\narbitrary perspective and multi-symbol camera scenes remain outside the\nvalidated envelope. See [`docs/formats/code16k.md`](docs/formats/code16k.md)\nand [`licenses/code16k.license`](licenses/code16k.license).\n\nDotCode uses an alternating dot grid rather than a solid finder pattern. The\nwriter and reader cover the bounded five-of-nine pattern set, four masks,\nprime-field Reed–Solomon correction, UTF-8 and byte payloads, with optional\nGS1/FNC1 handling:\n\n```js\nimport { encodeDotCode, detectAndDecodeDotCode } from '@sythos/js_barcode_universal/dotcode';\n\nconst matrix = encodeDotCode('DOTCODE ORDER 123', { width: 29, height: 30, mask: 1 });\nconst hits = detectAndDecodeDotCode(matrix.withMargin(3).scale(2), { moduleSize: 2 });\nconsole.log(hits[0]?.text, hits[0]?.moduleSize);\n```\n\nThe detector is intentionally strict: it accepts complete clean binary rasters\nat integer scale, quarter-turn orientations and either polarity, then returns\nonly a checksum-validated symbol. Perspective, curved media, severe blur and\nmulti-symbol scenes remain outside the supported profile. See\n[`docs/formats/dotcode.md`](docs/formats/dotcode.md) and\n[`licenses/dotcode.license`](licenses/dotcode.license).\n\nHan Xin Code is available as a bounded compact profile covering versions 1–3,\nthe four `L1`–`L4` error-correction levels, numeric/text/byte modes, four masks\nand strict Reed–Solomon validation. The root dispatcher accepts both\n`format: 'hanxin'` and the compatibility alias `format: 'han-xin'`; the focused\nsubpath is useful when byte payloads or format metadata are needed:\n\n```js\nimport {\n  encodeHanXin,\n  detectAndDecodeHanXin,\n} from '@sythos/js_barcode_universal/hanxin';\n\nconst matrix = encodeHanXin('HAN XIN 2026', { mode: 'text', ecc: 'L2' });\nconst hit = detectAndDecodeHanXin(matrix.withMargin(3).scale(2));\nconsole.log(hit?.text, hit?.version, hit?.moduleSize);\n```\n\nThe Han Xin detector accepts one complete, axis-aligned symbol at an integer\nmodule scale and either polarity. Versions 4–84, Chinese/GB18030 compaction,\nECI, perspective correction and multi-symbol camera scenes remain outside this\nprofile. See [`docs/formats/hanxin.md`](docs/formats/hanxin.md) and\n[`licenses/hanxin.license`](licenses/hanxin.license).\n\nGS1 DataBar Composite is available as the bounded `gs1composite` profile. It\nlinks one validated DataBar host to one strict CC-A or CC-B component and\nrequires the complete geometry, linkage flag, private profile marker and\nshared integer module scale to validate before returning data:\n\n```js\nimport {\n  encodeGS1Composite,\n  detectAndDecodeGS1Composite,\n} from '@sythos/js_barcode_universal/composite';\n\nconst matrix = encodeGS1Composite({\n  linear: { format: 'databar14', value: '00012345678905' },\n  data: '(01)09506000134352(17)260101',\n});\nconst hit = detectAndDecodeGS1Composite(matrix.withMargin(3).scale(2));\nconsole.log(hit?.text, hit?.linearFormat, hit?.component);\n```\n\nThis is an original Sythos engineering profile, not a claim of complete\nISO/IEC 24723 certification or universal scanner interoperability. Its full\nlimits and legal boundary are in [`docs/formats/gs1-composite.md`](docs/formats/gs1-composite.md)\nand [`licenses/gs1-composite.license`](licenses/gs1-composite.license).\n\n[^1]: `itf14`, `isbn` and `jan` share a decoder with their base format, so an ITF-14 comes back as\n`itf`, an ISBN as `ean13`, and a JAN as `ean13`. GS1-128 is classified separately as `gs1128` when\nits leading FNC1 is present and exposes `gs1`, `symbologyIdentifier` and parsed `elements`\nmetadata. The payload is intact either way — an ITF-14 is an ITF fixed at fourteen digits, an ISBN\nbarcode is an EAN-13 with a 978/979 prefix, and a JAN barcode is an EAN-13 with a 45/49 prefix.\n\n[^2]: EAN-2 and EAN-5 are recognized only when attached to a validated EAN-13, EAN-8, UPC-A or\nUPC-E parent; they are not independent generic retail-symbol readers.\n\n[^3]: Telepen Numeric is an explicit mode because its compact digit-pair glyphs share the same\nguards as Telepen Alpha. Use `format: 'telepennumeric'` when encoding or\n`formats: ['telepennumeric']` when reading.\n\n[^4]: Code 25/Standard 2 of 5 and Industrial 2 of 5 use the canonical Industrial frame in this\nSDK, so — as with footnote 1 — a Standard 2 of 5 read comes back reported as `industrial2of5`;\nthe payload is intact, only the reported id differs. IATA 2 of 5 uses its shorter guard frame and\nis reported under its own `iata2of5` id. Check digits are optional for ordinary reads and are\nrequired by the strict camera profile.\n\n[^5]: `itf6` is not a separate symbology — it is the same ITF grammar validated as exactly six\ndigits with a mandatory check digit. Unlike footnote 1's formats, it keeps its own `itf6` id rather\nthan folding into `itf`: requesting `formats: ['itf', 'itf6']` (or leaving `formats` unset) on a\nvalid ITF-6 symbol legitimately returns both an `itf` result and a validated `itf6` result for the\nsame payload, the same way a Code 32 symbol returns both `code32` and its Code 39 carrier.\nRequesting `itf6` alone returns nothing for a six-digit ITF fragment whose check digit does not\nvalidate.\n\n[^6]: KarTrak ACI (AAR Automatic Car Identification, 1967-1977) encodes each of 13 stacked label\nlines as which of four *colours* (blue, checkerboard/white, red, black) appears in its two\nstripes, not by bar width — so it needs `PolychromeMatrix`, not `BitMatrix`, and is not reachable\nthrough `encode()`/`decode()`, `listFormats()` or the `formats:` allow-list. Use\n`encodeKarTrak`/`decodeKarTrak`/`detectKarTrak` from `@sythos/js_barcode_universal/kartrak`\ndirectly. Reading is scoped honestly: `detectKarTrak` locates one axis-aligned plate against a\nroughly uniform background — no rotation or perspective search, the same \"clean single-symbol\"\nboundary already documented for MaxiCode. See `docs/formats/kartrak.md` and\n`docs/COLOR_PIPELINE_NOTES.md` for the full picture, including what real-world validation is\nstill outstanding.\n\n[^7]: Canada Post's own PostBar engineering specification is not published; this SDK implements\nthe C10 (internal), D22 (customer-applied domestic) and G12 (international) profiles from the\ntechnical disclosure in US Patent 5,602,382A (expired), verified against the patent's own fully\nworked examples. `postbard07`/`postbard12`/`postbarg22`/`postbars06`/`postbars11`/`postbars21`\nare documented by the same patent but not implemented — see `docs/formats/postbar.md`. Reading\ncorrects errors via the format's own Reed-Solomon check (over GF(64)) before returning a result.\n\n[^8]: JAB Code (ISO/IEC 23634:2022, Fraunhofer SIT) encodes several bits per module as one of\nseveral module *colours* rather than bar width, so — like KarTrak — it needs `PolychromeMatrix`,\nnot `BitMatrix`, and is not reachable through `encode()`/`decode()`, `listFormats()` or the\n`formats:` allow-list. Use `encodeJABCode`/`decodeJABCode`/`decodeJABCodeMatrix` from\n`@sythos/js_barcode_universal/jabcode` directly. This is the reference encoder's own \"default\nmode\" profile (8 colours, ECC level 3, mask type 7, no metadata Part I/II, byte-mode-only data\nencoding, single symbol) — not the full ISO specification, and reading requires the symbol's\ncorners to already be known, the same \"known geometry\" boundary as KarTrak (no detector exists\nfor this format yet). See `docs/formats/jabcode.md` and `docs/JABCODE_NOTES.md` for the full\nscope, including the PRNG bit-exactness limitation and what real-world validation is still\noutstanding.\n\n[^9]: None of these six rows is a barcode symbology of its own, and none has a registry `id` or\ngoes through `encode()`/`decode()`/`listFormats()` — each is a structured text/data convention\nwritten as the payload of an already-listed symbology (`qr`, `code39` or `pdf417`) and read back\nthrough that symbology's own decoder. Use them from `@sythos/js_barcode_universal/payloads`:\n`encodeVCard`/`encodeSwissQR`/`encodeSEPAQR`/`encodeSPARQCode` build a QR payload (with\n`decodeVCard`/`decodeSwissQR`/`decodeSEPAQR`/`decodeSPARQCode` reading each back into the same\nstructured fields), `encodeVIN` a Code 39 payload (read back with `validateVIN` plus the existing\nCode 39 decoder — there is no separate `decodeVIN`), `encodeAAMVA` a PDF417 payload (with\n`decodeAAMVA` reading it back). \"SPARQCode\" (a MSKYNET/Yahoo-era\nproduct name) named a curated set of already-public conventions (structured URLs, phone numbers,\nWiFi config, vCard-style contacts, and similar), not a bit-level format of its own — `encodeSPARQCode`\nimplements those same public conventions directly. See `docs/formats/qr-family.md`,\n`docs/formats/oned.md` and `docs/formats/pdf417-family.md` for each convention's own documentation,\nand [`licenses/payload-conventions.license`](licenses/payload-conventions.license) for provenance\nand what was verified for each (including a real worked-example cross-check for the Swiss QR-bill\nand AAMVA check-digit/offset algorithms, whose reference tables are undocumented as text in their\nown source PDFs). AADHAAR was investigated for the same treatment and deliberately left out — see\n[`docs/guides/legal-exclusions.md`](https://sythos.github.io/JS_Barcode_Universal/guides/legal-exclusions/).\n\n### Code 11 and MSI Plessey image reading\n\nThe generic image pipeline now recognizes Code 11 and MSI Plessey through the existing\nscanline reader. Check-digit validation is opt-in with `decode(image, { checkDigit: true })`;\nwithout that option the physical grammar is still required, while the literal check character is\npreserved for MSI and reliably stripped for Code 11 when its C/K grammar is unambiguous. The\nreader keeps Pharmacode write-only because its unframed narrow/wide grammar is not safe for\nunrestricted image autodetection.\n\n### Telepen\n\nTelepen is available from the `oned` subpath and the root dispatcher. The default\n`telepen` format carries full seven-bit ASCII with an even parity bit and a modulo-127\ncheck value. The explicit `telepennumeric` format compacts digit pairs and allows `X`\nonly as the second character of a pair. Both writers enforce the format grammar, a\n500-character input limit and complete start/check/stop structure.\n\n```js\nimport { encodeTelepen, encodeTelepenNumeric } from '@sythos/js_barcode_universal/oned';\nimport { decode, toImageData } from '@sythos/js_barcode_universal';\n\nconst alpha = encodeTelepen('TELEPEN-ASCII');\nconst numeric = encodeTelepenNumeric('00112738999X');\nconst image = toImageData(alpha, { scale: 3, margin: 30, barHeight: 64 });\nconst [hit] = decode(image, { formats: ['telepen'] });\nconsole.log(hit?.text); // TELEPEN-ASCII\n```\n\nFor Numeric symbols, select the numeric identifier explicitly:\n\n```js\nconst numericImage = toImageData(numeric, { scale: 3, margin: 30, barHeight: 64 });\nconst [numericHit] = decode(numericImage, { formats: ['telepennumeric'] });\nconsole.log(numericHit?.text); // 00112738999X\n```\n\nThe scanline reader measures the complete symbol at scale-independent run widths,\nrejects ambiguous candidates, verifies parity and the modulo-127 check value, and\nreturns no partial result. A camera-profile read additionally requires a coherent\nquiet-zone-qualified symbol across repeated scan samples.\n\n### Code 25, Industrial 2 of 5, IATA 2 of 5, Data Logic 2 of 5 and Matrix 2 of 5\n\nThe Code 25 family is available from both the root dispatcher and the `oned`\nsubpath. `standard2of5` (also `code2of5`) and `industrial2of5` use the same\ncanonical two-wide-bar frame here; `iata2of5` uses the shorter IATA guard. The\noptional modulo-10 check digit is appended by the writer and can be required by\nthe reader or by the strict camera profile:\n\n```js\nimport { decode, encode, toImageData } from '@sythos/js_barcode_universal';\n\nconst matrix = encode('01234567', {\n  format: 'industrial2of5',\n  checkDigit: true,\n  wideRatio: 3,\n});\nconst [hit] = decode(toImageData(matrix, {\n  scale: 3,\n  margin: 30,\n  barHeight: 64,\n}), {\n  formats: ['industrial2of5'],\n  checkDigit: true,\n});\nconsole.log(hit?.text); // 01234567\n```\n\nUse `format: 'iata2of5'` for IATA framing. The reader validates the complete\nstart/data/stop structure and rejects clipped or ambiguous candidates; a camera\nread additionally requires a quiet zone and a valid check digit.\n\n`format: 'datalogic2of5'` (aliases: `data-logic-2-of-5`, `chinapost`,\n`china-post`) uses a different, width-modulated digit grammar and the shorter\nIATA-style guard. Its `wideRatio` accepts `3..8`, not `2..8`: a 2:1 wide:narrow\nratio makes this specific digit table's mirrored reading collide with a\ndifferent valid full-length reading, so both the writer and reader reject it.\nReads shorter than five digits without a check digit are rejected as not\ndistinctive enough to trust.\n\n`format: 'matrix2of5'` (alias: `matrix-2-of-5`) shares that exact\nwidth-modulated digit grammar with Data Logic 2 of 5 but uses its own,\nlonger guard frame — the same `wideRatio: 3..8` restriction and five-digit\nminimum apply, for the same reason (the digit table, not the guard, is what\ncreates the mirrored-reading collision at 2:1).\n\n### Code 32 and PZN\n\nCode 32 (the Italian pharmaceutical code) and PZN-7/PZN-8 are explicit,\ncheck-digit-validated pharmaceutical formats. Code 32 accepts an eight-digit\nbody (or the same body with its validated check digit) and renders the compact\nbase-32 payload through the Code 39 carrier. PZN accepts six digits for PZN-7 or\nseven digits with `{ pzn8: true }` for PZN-8; the decoder exposes `pznVariant`.\n\n```js\nimport { decode, encode, toImageData } from '@sythos/js_barcode_universal';\n\nconst code32 = encode('01234567', { format: 'code32' });\nconst pzn8 = encode('1234567', { format: 'pzn8' });\nconst image = toImageData(pzn8, { scale: 3, margin: 30, barHeight: 64 });\nconst [result] = decode(image, { formats: ['pzn8'] });\nconsole.log(result?.format, result?.pznVariant, result?.text);\n// pzn pzn8 1234567\n```\n\nBoth readers return no value when the carrier or pharmaceutical check digit is\nnot valid. The format-specific engineering notes and the independent\nblack-box validation boundary are recorded in [`licenses/`](licenses/).\n\n### Facing Identification Mark (FIM)\n\nFIM is not a general-purpose data carrier. It selects one of five fixed,\nUSPS-defined nine-position patterns (`A` through `E`) printed near the upper\nedge of a mailpiece to tell automated facing equipment the mail class. Every\npattern is a palindrome and always starts and ends with a bar, so a mirrored\nread never resolves to a different type:\n\n```js\nimport { decode, encode, toImageData } from '@sythos/js_barcode_universal';\n\nconst matrix = encode('C', { format: 'fim' });\nconst [result] = decode(toImageData(matrix, {\n  scale: 3,\n  margin: 20,\n  barHeight: 40,\n}), {\n  formats: ['fim'],\n});\nconsole.log(result?.text); // C\n```\n\n`encodeFIM`/`decodeFIM` are also exported from the `oned` subpath. The reader\nrequires a substantial leading and trailing quiet zone before promoting a\nmatch; this was tuned against an adversarial sweep of random noise and\nrepeating textures during implementation, since a nine-module pattern is\nshort enough that a naive scale-invariant matcher would otherwise false-match\nunrelated camera content.\n\n### ITF-6\n\nITF-6 is not a separate symbology: it is the existing ITF grammar\nconstrained to exactly six digits (five significant digits plus a\nmandatory modulo-10 check digit), the JIS X 0502 add-on printed alongside\nITF-14/ITF-16 for item quantity or container weight. It reuses the same\ncheck digit routine already used for ITF-14 and EAN:\n\n```js\nimport { decode, encode, toImageData } from '@sythos/js_barcode_universal';\n\nconst matrix = encode('12345', { format: 'itf6' }); // check digit appended\nconst [result] = decode(toImageData(matrix, {\n  scale: 3,\n  margin: 20,\n  barHeight: 40,\n}), {\n  formats: ['itf6'],\n});\nconsole.log(result?.text); // 123457\n```\n\nBecause ITF-6 shares its grammar with plain ITF, an unrestricted or\n`['itf', 'itf6']` read of a valid ITF-6 symbol legitimately returns both an\n`itf` result and a validated `itf6` result — see footnote 5. Requesting\n`itf6` alone returns nothing unless the check digit is valid, which is the\nonly thing distinguishing a genuine ITF-6 read from an ordinary six-digit\nITF fragment.\n\n### Plessey Code\n\nPlessey Code (1971, Plessey Company) is the original format that Modified\nPlessey/MSI Plessey (already shipped here as `msi`) is a variant of. It\nencodes hexadecimal payloads (`0`-`9`, `A`-`F`) and always appends a\nmandatory two-nibble CRC-8 check — there is no unchecked mode, unlike MSI's\noptional check digit:\n\n```js\nimport { decode, encode, plesseyCheckDigits, toImageData } from '@sythos/js_barcode_universal';\n\nconsole.log(plesseyCheckDigits([1, 2, 3, 4, 5])); // [6, 14] -> \"6E\"\n\nconst matrix = encode('12345', { format: 'plessey' });\nconst [result] = decode(toImageData(matrix, {\n  scale: 3,\n  margin: 20,\n  barHeight: 40,\n}), {\n  formats: ['plessey'],\n});\nconsole.log(result?.text); // 12345\n```\n\nThe reader validates the CRC before returning a value; a damaged symbol or\none with an incorrect check simply does not decode as Plessey.\n\n### Postal 4-state formats\n\nThe postal family shares a strict height-coded raster classifier while keeping\neach operator's alphabet and checksum separate. The root dispatcher and the\n`oned` subpath expose USPS POSTNET and PLANET, Royal Mail RM4SCC, Dutch KIX,\nAustralia Post, Japan Post and USPS Intelligent Mail (IMb/OneCode):\n\n```js\nimport { decode, encode, toImageData } from '@sythos/js_barcode_universal';\n\nconst matrix = encode('5956439111ABC', {\n  format: 'auspost',\n  customerEncoding: 'character',\n});\nconst image = toImageData(matrix, { scale: 3, margin: 24, barHeight: 72 });\nconst [result] = decode(image, {\n  formats: ['auspost'],\n  customerEncoding: 'character',\n});\nconsole.log(result?.format, result?.text, result?.checkDigit);\n// auspost 5956439111ABC true\n```\n\nPOSTNET accepts 5/9/11 body digits and PLANET 11/13; both append and verify a\nMod-10 check digit. RM4SCC generates and verifies its row/column check\ncharacter, while KIX has no check character. Japan Post expands its public\nalphabet into fixed groups and verifies a Mod-19 check. Australia Post starts\nwith an FCC and eight-digit DPID, supports `customerEncoding: 'character'` or\n`'numeric'` (also `custinfoenc`) and verifies GF(64) parity. IMb accepts exactly\n20, 25, 29 or 31 digits and verifies its frame check sequence. Convenience\naliases such as `onecode`, `usps-postnet` and `royal-mail` resolve to the\ncanonical ids shown in the format table.\n\nThe generic image reader returns an empty array for a clipped, ambiguous or\nchecksum-invalid symbol. `profile: 'camera'` additionally requires a measurable\nquiet zone on both sides of the bars; it is intentionally conservative for\nblurred, curved, heavily occluded or multi-symbol photographs. See the\n[postal format guide](https://sythos.github.io/JS_Barcode_Universal/formats/postal/)\nfor payload limits, direct subpath functions and the complete provenance note.\n\n### Data Matrix ECC 200\n\n`datamatrix` writes and reads the 30 classic ECC 200 square and rectangular symbol sizes. The\nencoder supports ASCII compaction (including numeric pairs), Base256 binary payloads, automatic\nor forced square/rectangular shape, Reed–Solomon error correction and GS1 FNC1 in the first\nposition. DMRE is not included.\n\n```js\nimport { encodeDataMatrix, decodeDataMatrix } from '@sythos/js_barcode_universal/datamatrix';\n\nconst symbol = encodeDataMatrix('0101234567890128', { gs1: true, shape: 'square' });\nconst result = decodeDataMatrix(symbol);\nconsole.log(result.text, result.gs1); // 0101234567890128 true\n```\n\nBinary content is accepted as a `Uint8Array` with `encoding: 'base256'`. The current high-level\ndecoder handles ASCII and Base256 codewords; C40, Text, X12 and EDIFACT input symbols are not yet\ndecoded. The current detector accepts axis-aligned square or rectangular symbols; with\n`profile: 'camera'`, the decode pipeline evaluates the eight fixed in-plane orientations at 45°\nsteps. Arbitrary perspective and perspective-skewed Data Matrix photographs are not yet guaranteed.\n\n### Aztec Code\n\n`aztec` writes Compact layers 1–4 and Full layers 1–32, selecting a fitting symbol automatically\nunless `layers` and `compact` are forced. It supports the five Aztec text tables and UTF-8 byte\npayloads through Binary Shift, with `eccPercent` (default 23) controlling the requested\nerror-correction level.\nECI is not yet a configurable public option.\n\n```js\nimport { encodeAztec, decodeAztec } from '@sythos/js_barcode_universal/aztec';\n\nconst symbol = encodeAztec('Greetings My Lord Sythos  👋', { eccPercent: 23 });\nconst result = decodeAztec(symbol);\nconsole.log(result.text); // Greetings My Lord Sythos  👋\n```\n\nThe image detector handles the eight fixed camera-profile orientations, inverted polarity and\nquadrilateral sampling around the central bull’s-eye. Severe photographic perspective remains an\ninteroperability and robustness gate rather than a guaranteed capability.\n\n### PDF417 (writer, matrix decoder and camera reader)\n\n`pdf417` supports PDF417 Text, Byte and Numeric compaction, ECI 3 (ISO-8859-1) and ECI 26\n(UTF-8), ECC levels 0–8, row-height inference and Reed–Solomon erasure correction. The direct\nmatrix decoder is available from `@sythos/js_barcode_universal/pdf417`.\n\nThe image helper handles clean module-aligned raster symbols, integer scale, fixed 45°-step\ncamera orientations, automatic perspective estimation, mild blur/noise and an application-supplied\nquadrilateral. Results expose `bytes` and ordered `segments` for byte-preserving payloads. Real\ndevice validation covers Pixel 10/Chrome and iPhone 17/Safari with printed symbols and continuous\ncamera capture. Extreme glare, severe occlusion, curved media and multi-symbol scenes remain\noutside the validated robustness envelope.\n\n```js\nimport { encodePDF417, decodePDF417 } from '@sythos/js_barcode_universal/pdf417';\n\nconst symbol = encodePDF417('AAMVA SAMPLE', { eccLevel: 3 });\nconsole.log(decodePDF417(symbol).text);\n```\n\n### MicroPDF417\n\n`micropdf417` writes and reads the 34 fixed MicroPDF417 variants. It supports Text, Byte and\nNumeric compaction, plus Byte-compaction ECI 3 (ISO-8859-1) and 26 (UTF-8). `columns`,\n`rowHeight` and `aspectRatio` let callers constrain automatic variant selection.\n\n```js\nimport { encodeMicroPDF417, decodeMicroPDF417 } from '@sythos/js_barcode_universal/micropdf417';\n\nconst symbol = encodeMicroPDF417('MICRO PDF417', { compaction: 'text' });\nconsole.log(decodeMicroPDF417(symbol).text);\n```\n\nThe detector accepts clean, integer-scaled raster symbols and the eight fixed camera-profile\norientations. Arbitrary perspective, severe photographic degradation and multi-symbol scenes are\nnot yet claimed as robust capabilities.\n\n### Micro QR Code\n\n`microqr` implements the M1–M4 family with Numeric, Alphanumeric, ISO-8859-1 Byte and Kanji\npayloads, BCH format protection, the four Micro QR masks and Reed–Solomon correction. M1 is\ndetection-only. ECI, FNC1/GS1 and Structured Append are intentionally outside the current API.\nThe detector accepts clean scaled rasters, the eight fixed camera-profile orientations, inverted\npolarity and mild projective sampling, and rejects normal QR Model 2 symbols. Arbitrary perspective\nand curved-media robustness are not claimed.\n\n```js\nimport { encodeMicroQR, decodeMicroQR } from '@sythos/js_barcode_universal/microqr';\n\nconst symbol = encodeMicroQR('12345', { version: 'M2', ecc: 'L' });\nconsole.log(decodeMicroQR(symbol).text);\n```\n\n### rMQR Code\n\n`rmqr` implements all 32 standard rectangular geometries, M/H ECC, Numeric, Alphanumeric, Byte,\nKanji and ECI payloads. The detector accepts clean integer-scaled rasters, quiet zones and the\neight fixed camera-profile orientations; arbitrary photographic perspective and multi-symbol\nscenes are not claimed.\n\n```js\nimport { encodeRMQR, decodeRMQR } from '@sythos/js_barcode_universal/rmqr';\n\nconst symbol = encodeRMQR('rMQR SAMPLE', { ecc: 'M' });\nconsole.log(decodeRMQR(symbol).text);\n```\n\n### Sythos Canvas QR profile\n\n`frameqr` is an explicitly scoped, non-certified Sythos Canvas QR profile — not DENSO FrameQR® compatible. It reserves a bounded\nsquare, circle or diamond artwork canvas inside an ECC-H QR Model 2 symbol. It is **not** a native\nDENSO FrameQR encoder or decoder, and the package makes no DENSO interoperability claim. The\nprofile can be read from clean rendered rasters and is exposed through the normal `encode`/`decode`\nAPI and the `frameqr` subpath.\n\n```js\nimport { encodeFrameQR, decodeFrameQR } from '@sythos/js_barcode_universal/frameqr';\n\nconst symbol = encodeFrameQR('https://www.sythos.net/', {\n  canvas: { shape: 'square', size: 5 },\n});\nconsole.log(decodeFrameQR(symbol).text);\n```\n\nThe canonical `examples/create.html` preview loads `https://www.sythos.net/favicon.ico` and\nfalls back to `https://www.sythos.net/apple-touch-icon.png`. The image is never copied into the\nrepository; if browser CORS prevents safe compositing, the page keeps a preview overlay and\nexports the QR symbol without embedding the remote artwork.\n\n### Aztec Rune, Compact PDF417 and EAN supplements\n\n`aztecrune` implements the fixed 11×11 Rune values 0–255 with clean raster\ndetection, inversion and the eight fixed camera-profile orientations. Its matrices were compared\nexhaustively with ZXing-C++ as an independent black-box runtime; no ZXing\nsource or table is shipped.\n\n`compactpdf417` implements the truncated PDF417 geometry with Text, Byte and\nNumeric compaction. It has a clean raster detector and direct matrix decoder.\n\nEAN-2 and EAN-5 are writable supplements exposed by the `oned` subpath and by\nthe generic `ean2` and `ean5` format IDs. The image reader recognizes them only\nwhen attached to a validated EAN/UPC parent; use the composition helpers with\nan EAN/UPC base symbol.\n\nEAN-2 and EAN-5 are parent-bound supplements, never standalone image results. They may be\nlisted with EAN-13, EAN-8, UPC-A, UPC-E or Bookland ISBN in `formats`: the parent remains valid\nwithout a supplement, and a valid requested supplement is exposed only through `result.addon`.\nIf only `ean2` or `ean5` is requested, a validated EAN/UPC parent is still required and remains\nthe returned `format`; an absent, malformed or unrequested supplement never rejects the parent.\n\n### GS1 DataBar\n\nThe `databar` subpath exposes original GS1 GTIN/AI codecs and five physical\nvariants: Omnidirectional and Truncated through `encodeDataBar14`, Limited through\n`encodeDataBarLimited`, Stacked through `encodeDataBar14Stacked`, Stacked\nOmnidirectional through `encodeDataBarStackedOmnidirectional`, and linear Expanded\nthrough `encodeDataBarExpanded`. The physical paths encode the fixed GS1 `(01)`\nGTIN element and can carry the standard composite linkage flag. The complete\nbounded composition is exposed separately through the `composite` subpath.\n\nThe clean readers require a complete dark-on-light or inverted binary raster,\ninteger module scaling and valid checksum/guard structure. The Limited and\nStacked readers accept quarter turns; the Stacked Omnidirectional reader accepts\nthe same clean integer-scaled geometry. Their detectors intentionally reject\npartial symbols, arbitrary perspective and grayscale input. Use a binarized\nimage or call the matrix decoder after an application-owned perspective sample.\n\nThe Stacked variant uses a 50-module row with a five-module top row, one-module\nseparator and seven-module bottom row. Stacked Omnidirectional uses two 50-module\nrows, a three-module separator and a minimum 33-module row height. Limited uses\na 79-module row and a minimum 10-module output height; its accepted GTIN\nindicator is 0 or 1. Expanded uses the linear finder sequence and constrained\n17-module data characters defined by GS1 DataBar; its writer emits the general-\npurpose method and its reader also accepts the common compressed GTIN-14 method.\nThese geometry constraints are part of the format API, not an interoperability\nclaim for arbitrary photographs.\n\n```js\nimport {\n  encodeDataBarLimited,\n  encodeDataBar14Stacked,\n  encodeDataBarStackedOmnidirectional,\n} from '@sythos/js_barcode_universal/databar';\n\nconst limited = encodeDataBarLimited('01234567890128', { moduleScale: 2 });\nconst stacked = encodeDataBar14Stacked('01234567890128');\nconst stackedOmni = encodeDataBarStackedOmnidirectional('01234567890128');\n```\n\nFor a GS1 element string, use the Expanded helper. It returns a clean linear\nsymbol without a quiet zone, just like the other DataBar writers:\n\n```js\nimport {\n  decodeDataBarExpanded,\n  encodeDataBarExpanded,\n} from '@sythos/js_barcode_universal/databar';\n\nconst expanded = encodeDataBarExpanded('(01)09506000134352(10)ABC-123');\nconst decoded = decodeDataBarExpanded(expanded);\nconsole.log(decoded.elements, decoded.linkage);\n```\n\nExpanded reading accepts a complete dark-on-light or inverted binary raster,\ninteger module scaling and a valid finder/checksum structure. The detector is\ndeliberately conservative: it handles a single clean linear symbol (including\nquarter turns) and rejects partial, ambiguous, grayscale or arbitrary-perspective\ninput instead of returning a guessed GS1 payload.\n\n### MaxiCode\n\nThe `maxicode` subpath exposes `encodeMaxiCode`, `decodeMaxiCode`,\n`detectMaxiCode` and `detectAndDecodeMaxiCode`. The implementation uses the\nfixed 30×33-module MaxiCode geometry and supports modes 2–5. Modes 2 and 3\nrequire structured `primary` data (`postalCode`, `countryCode` and\n`serviceClass`); modes 4 and 5 carry an unstructured secondary message. Text\nand byte input are restricted to ISO-8859-1 (`charset: 'latin1'`).\n\n```js\nimport { encodeMaxiCode, decodeMaxiCode } from '@sythos/js_barcode_universal/maxicode';\n\nconst symbol = encodeMaxiCode('HELLO FROM SYTHOS', { mode: 4 });\nconst result = decodeMaxiCode(symbol);\nconsole.log(result.text, result.mode);\n```\n\n`decodeMaxiCode` works on a canonical 30×33 matrix and can validate its\n180-degree and inverted forms. `detectMaxiCode` is deliberately a clean binary\ndetector for one prominent symbol at integer or near-integer scale. It does not\npromise arbitrary perspective, grayscale thresholding, severe occlusion or\nmulti-symbol scene handling.\n\n### Remaining out of scope\n\nData Matrix ECC 200 is implemented for its classic square and rectangular symbols;\nDMRE remains outside the current scope. See [`PLAN.md`](PLAN.md) for the remaining\nsymbologies.\n\n---\n\n## Live examples\n\nTwo self-contained pages, each loading the IIFE bundle with a plain `<script>` tag. **Both open\ndirectly from disk** — double-click the file, no server and no build. This `examples/` directory is\nthe single canonical source; the development workspace references these files instead of keeping\na second copy.\n\n### [`examples/create.html`](examples/create.html)\n\nPick any writable format, type a payload, and watch the symbol redraw as you type; download it as\nPNG or SVG. For QR it adds a **content-type builder** that assembles the payload for you across\nURL, email, phone, SMS, Wi-Fi network, contact card (both vCard and MeCard), geo location and\ncalendar event — with correct escaping for each — and shows you the exact string it produced, so\nyou can see what a Wi-Fi or vCard QR actually contains. ECC level, version, scale, margin and both\ncolours are exposed.\n\n### [`examples/read.html`](examples/read.html)\n\nDecode from an image: drop one onto the page, or click to choose a file. It then offers a live\ncamera loop that decodes continuously from the video stream.\n\n> The file and drag-drop path works anywhere, `file://` included. **The camera needs http(s)**,\n> because `getUserMedia` requires a secure context and refuses to run from `file://`. Serve the\n> folder over localhost for that half; the page detects the situation and says so rather than\n> failing silently.\n\n---\n\n## Documentation\n\nThe full, searchable documentation lives on [GitHub Pages](https://sythos.github.io/JS_Barcode_Universal/)\nand is built from the checked-in [`docs/`](docs/) tree with MkDocs Material. It includes the\n[API reference](https://sythos.github.io/JS_Barcode_Universal/api/overview/),\n[format catalogue](https://sythos.github.io/JS_Barcode_Universal/formats/overview/),\n[camera and image guides](https://sythos.github.io/JS_Barcode_Universal/guides/camera-reading/),\n[practical recipes](https://sythos.github.io/JS_Barcode_Universal/examples/create-barcode/),\n[FAQ](https://sythos.github.io/JS_Barcode_Universal/faq/) and\n[troubleshooting](https://sythos.github.io/JS_Barcode_Universal/troubleshooting/).\n\nEvery documentation change is checked for local links, navigation coverage and registry drift in\nCI before the Pages build is published. The compact README remains the versioned project\noverview; the Pages site is the place for the longer explanations and copy-ready examples.\n\n---\n\n## API summary\n\nTwo functions carry the whole surface. Everything else is a renderer or a format-specific escape\nhatch.\n\n### Encoding and decoding\n\n```js\nencode(text, options?) → BitMatrix\n```\n\n`options`: `format` (default `'qr'`), `ecc` (`'L'|'M'|'Q'|'H'`), `version` (QR 1–40, auto if\nomitted), `checkDigit`, `fullAscii` (Code 39 extended), `gs1` (emit a leading FNC1). Data Matrix\nECC 200 accepts `shape: 'any' | 'square' | 'rectangular'` and `encoding: 'ascii' | 'base256'`.\nAztec accepts `layers`, `compact` and `eccPercent`; it transports UTF-8 byte payloads through\nBinary Shift, and it does not expose configurable ECI yet.\nMicroPDF417 accepts `compaction: 'auto' | 'text' | 'byte' | 'numeric'`, ECI 3 or 26 for Byte\ncompaction, and optional `columns`, `rowHeight` and `aspectRatio` constraints.\nMicro QR accepts `version: 'M1' | 'M2' | 'M3' | 'M4'`, its legal ECC level and mask; its\nunsupported ECI, FNC1/GS1 and Structured Append features are rejected explicitly. rMQR accepts\n`ecc: 'M' | 'H'`, optional geometry/version constraints and ECI for byte payloads. The FrameQR\nCode profile accepts `canvas: { shape: 'square' | 'circle' | 'diamond', size, width, height,\ncenterX, centerY, angle }`; it is non-certified and separate from DENSO FrameQR.\n\n```js\nencode('5901234123457', { format: 'ean13' })\nencode('ABC-123', { format: 'code39', fullAscii: true, checkDigit: true })\nencode('https://example.com', { format: 'qr', ecc: 'H', version: 7 })\nencode('0101234567890128', { format: 'datamatrix', gs1: true })\nencode('Greetings My Lord Sythos  👋', { format: 'aztec', eccPercent: 23 })\nencode('MICRO PDF417', { format: 'micropdf417', compaction: 'text' })\nencode('12345', { format: 'microqr', version: 'M2', ecc: 'L' })\nencode('rMQR SAMPLE', { format: 'rmqr', ecc: 'M' })\nencode('https://www.sythos.net/', {\n  format: 'frameqr',\n  canvas: { shape: 'square', size: 5 },\n})\n```\n\n```js\ndecode(image, options?) → Result[]\ndecodeStrict(image, options?) → Result        // throws NotFoundError instead of returning []\n```\n\n`image` is `{ data, width, height }` with RGBA bytes. `options`: `formats` (restrict the search,\nand go faster), `tryHarder` (retry inverted, default `true`), `binarizer`\n(`'global' | 'hybrid' | 'auto'`). A `Result` carries at least `text` and `format`; QR results also\ncarry `bytes`, `version` and `ecc`.\n\nFor larger clean QR Code, PDF417 and MaxiCode rasters, `auto` and `hybrid` retain their primary local-threshold pass and retry once with the global threshold only when that pass finds no result. An explicit `binarizer: 'global'` request remains single-pass.\n\n```js\nlistFormats() → { id, label, canWrite, canRead, kind }[]\n```\n\nThe table above is this function's output. Read it at runtime rather than hard-coding a format\nlist — that is how the demo pages build their dropdowns.\n\n### Renderers\n\n```js\ntoSVG(matrix, options?) → string                       // one merged <path>, not a rect per module\ntoSVGDataURI(matrix, options?) → string                // data: URI for an <img src>\ntoImageData(matrix, options?) → { data, width, height }\ntoPNG(matrix, options?) → Promise<Uint8Array>          // 1-bit palette PNG\ntoPNGDataURI(matrix, options?) → Promise<string>\ntoCanvas(matrix, canvas, options?) → boolean           // 2D context\nrenderToCanvasAuto(matrix, canvas, options?) → { backend: 'webgl2' | '2d' | 'none' }\nrenderToCanvasAutoAsync(matrix, canvas, options?) → Promise<{ backend: 'webgpu' | 'webgl2' | '2d' | 'none' }>\n```\n\nThe two PNG functions are async because they use the platform's deflate — `node:zlib` or\n`CompressionStream` — and fall back to stored blocks where neither exists.\n\n`renderToCanvasAuto` is synchronous and therefore cannot reach WebGPU: acquiring an adapter is\nasynchronous, and a synchronous function can never wait for one. Use `renderToCanvasAutoAsync`\nwhen you want WebGPU in the chain. Both fall through to the 2D context, which always exists.\n\nAll renderers share the same options:\n\n| Option | Default | Meaning |\n|---|---|---|\n| `scale` | `8` | Pixels per module |\n| `margin` | `4` | Quiet-zone modules on every side |\n| `dark` | `'#000000'` | Colour of set modules |\n| `light` | `'#ffffff'` | Colour of clear modules; `'none'` for transparent |\n| `barHeight` | auto | 1D only: total bar height in pixels |\n\nAlso exported: `BitMatrix`, the error types (`BarcodeError`, `EncodeError`, `NotFoundError`,\n`FormatError`, `ChecksumError`), the per-format writers (`encodeEAN13`, `encodeCode128`, …), the\nQR entry points (`encodeQR`, `decodeQR`, `detectQR`, `detectAndDecodeQR`), the image primitives\n(`LuminanceSource`, `binarize`, `binarizeGlobal`, `binarizeHybrid`), and the capability probes\n`isWebGL2Available` / `isWebGPUAvailable`.\n\n---\n\n## How it works\n\n**`BitMatrix` is the interchange type.** Every writer produces one, every reader consumes one,\nevery renderer draws one. That single currency is what keeps symbologies and output targets\nindependent of each other — adding a format touches no renderer, and adding a renderer touches no\nformat. Storage is row-packed into a `Uint32Array`: one allocation, cache-friendly row scans, and\ncheap whole-row operations for the 1D readers.\n\n**A set bit is a dark module.** This matches how every specification describes its symbols;\nrenderers invert where their medium needs it.\n\n**`encode` returns no quiet zone.** The margin is a rendering decision, not an encoding one — how\nmuch white space a symbol needs depends on where it is going — so the renderers add it and the\nmatrix stays the pure symbol. For the same reason, **linear symbols come back exactly one module\ntall**: height carries no information in a 1D barcode, so encoding one would be inventing data.\nThe renderer stretches the single row to `barHeight` *before* applying the quiet zone, so the\nmargin ends up uniform on all four sides.\n\n**The read pipeline** is a straight line, each stage a separate module:\n\n```\nRGBA bytes → luminance → binarize → detect → sample → error-correct → decode\n```\n\nLuminance conversion flattens the image to greyscale. Binarization turns that into a `BitMatrix`,\neither globally or with a hybrid local threshold that survives uneven lighting. Detection locates\na symbol and its corners in that bit plane. Detectors that recover four perspective-aware corners\n(currently QR) sample the symbol back through a perspective transform. Data Matrix currently uses\nan axis-aligned bounding box; the strict camera profile evaluates the eight fixed in-plane\norientations before error correction repairs what the camera lost. Only then is the payload decoded.\n\n**Reed–Solomon is generic over the finite field.** The `GaloisField` class is constructed with a\nfield order and a primitive polynomial rather than hard-coding GF(256), which is what lets one\nimplementation serve QR, and the prime field GF(929) that PDF417 needs. Prime fields are the\nsubtle case: in a binary field addition and subtraction are both XOR, so a decoder that inlines\n`^` for field addition passes every binary field and fails only the prime one.\n\n---\n\n## About the GPU path\n\nThe WebGL2 and WebGPU backends accelerate **drawing** a barcode, not **computing** one. That is\nworth stating plainly, because \"GPU barcode generation\" naturally suggests the latter.\n\nEncoding is sequential integer work: Reed–Solomon polynomial division, mask penalty scoring, bit\nplacement along a zig-zag path. Each step depends on the one before it, which is precisely the\nshape a GPU cannot exploit. A complete QR encode takes well under a millisecond on the CPU — less\ntime than dispatching a compute shader and reading the result back would cost. Moving it to the\nGPU would make it slower.\n\nSo encoding stays on the CPU because that is the correct engineering answer, not because\nsomething is missing. Where the GPU genuinely earns its place is drawing large symbols, or many\nsymbols per frame, straigh","readmeFilename":"README.md"}