@hexpro/qr-code-studio 0.0.0-stage → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +53 -0
- package/LICENSE +21 -0
- package/README.md +62 -2
- package/dist/app/bulk.d.ts +21 -0
- package/dist/app/bulk.d.ts.map +1 -0
- package/dist/app/bulk.js +564 -0
- package/dist/app/bulk.js.map +1 -0
- package/dist/app/check.d.ts +23 -0
- package/dist/app/check.d.ts.map +1 -0
- package/dist/app/check.js +306 -0
- package/dist/app/check.js.map +1 -0
- package/dist/app/content.d.ts +19 -0
- package/dist/app/content.d.ts.map +1 -0
- package/dist/app/content.js +634 -0
- package/dist/app/content.js.map +1 -0
- package/dist/app/context.d.ts +25 -0
- package/dist/app/context.d.ts.map +1 -0
- package/dist/app/context.js +11 -0
- package/dist/app/context.js.map +1 -0
- package/dist/app/controls.d.ts +95 -0
- package/dist/app/controls.d.ts.map +1 -0
- package/dist/app/controls.js +278 -0
- package/dist/app/controls.js.map +1 -0
- package/dist/app/design-panels.d.ts +27 -0
- package/dist/app/design-panels.d.ts.map +1 -0
- package/dist/app/design-panels.js +1196 -0
- package/dist/app/design-panels.js.map +1 -0
- package/dist/app/dom.d.ts +74 -0
- package/dist/app/dom.d.ts.map +1 -0
- package/dist/app/dom.js +129 -0
- package/dist/app/dom.js.map +1 -0
- package/dist/app/images.d.ts +22 -0
- package/dist/app/images.d.ts.map +1 -0
- package/dist/app/images.js +50 -0
- package/dist/app/images.js.map +1 -0
- package/dist/app/library-view.d.ts +24 -0
- package/dist/app/library-view.d.ts.map +1 -0
- package/dist/app/library-view.js +260 -0
- package/dist/app/library-view.js.map +1 -0
- package/dist/app/main.d.ts +17 -0
- package/dist/app/main.d.ts.map +1 -0
- package/dist/app/main.js +518 -0
- package/dist/app/main.js.map +1 -0
- package/dist/app/measure.d.ts +26 -0
- package/dist/app/measure.d.ts.map +1 -0
- package/dist/app/measure.js +53 -0
- package/dist/app/measure.js.map +1 -0
- package/dist/app/proof.d.ts +30 -0
- package/dist/app/proof.d.ts.map +1 -0
- package/dist/app/proof.js +378 -0
- package/dist/app/proof.js.map +1 -0
- package/dist/app/save.d.ts +27 -0
- package/dist/app/save.d.ts.map +1 -0
- package/dist/app/save.js +331 -0
- package/dist/app/save.js.map +1 -0
- package/dist/app/scan.d.ts +25 -0
- package/dist/app/scan.d.ts.map +1 -0
- package/dist/app/scan.js +421 -0
- package/dist/app/scan.js.map +1 -0
- package/dist/app/shortcuts.d.ts +12 -0
- package/dist/app/shortcuts.d.ts.map +1 -0
- package/dist/app/shortcuts.js +17 -0
- package/dist/app/shortcuts.js.map +1 -0
- package/dist/app/text.d.ts +22 -0
- package/dist/app/text.d.ts.map +1 -0
- package/dist/app/text.js +50 -0
- package/dist/app/text.js.map +1 -0
- package/dist/batch/csv.d.ts +56 -0
- package/dist/batch/csv.d.ts.map +1 -0
- package/dist/batch/csv.js +327 -0
- package/dist/batch/csv.js.map +1 -0
- package/dist/batch/errors.d.ts +60 -0
- package/dist/batch/errors.d.ts.map +1 -0
- package/dist/batch/errors.js +60 -0
- package/dist/batch/errors.js.map +1 -0
- package/dist/batch/filename.d.ts +65 -0
- package/dist/batch/filename.d.ts.map +1 -0
- package/dist/batch/filename.js +205 -0
- package/dist/batch/filename.js.map +1 -0
- package/dist/batch/index.d.ts +17 -0
- package/dist/batch/index.d.ts.map +1 -0
- package/dist/batch/index.js +11 -0
- package/dist/batch/index.js.map +1 -0
- package/dist/batch/issues.d.ts +45 -0
- package/dist/batch/issues.d.ts.map +1 -0
- package/dist/batch/issues.js +47 -0
- package/dist/batch/issues.js.map +1 -0
- package/dist/batch/manifest.d.ts +43 -0
- package/dist/batch/manifest.d.ts.map +1 -0
- package/dist/batch/manifest.js +82 -0
- package/dist/batch/manifest.js.map +1 -0
- package/dist/batch/plan.d.ts +33 -0
- package/dist/batch/plan.d.ts.map +1 -0
- package/dist/batch/plan.js +254 -0
- package/dist/batch/plan.js.map +1 -0
- package/dist/batch/run.d.ts +68 -0
- package/dist/batch/run.d.ts.map +1 -0
- package/dist/batch/run.js +548 -0
- package/dist/batch/run.js.map +1 -0
- package/dist/batch/template.d.ts +54 -0
- package/dist/batch/template.d.ts.map +1 -0
- package/dist/batch/template.js +119 -0
- package/dist/batch/template.js.map +1 -0
- package/dist/batch/text-decoding.d.ts +49 -0
- package/dist/batch/text-decoding.d.ts.map +1 -0
- package/dist/batch/text-decoding.js +160 -0
- package/dist/batch/text-decoding.js.map +1 -0
- package/dist/batch/types.d.ts +240 -0
- package/dist/batch/types.d.ts.map +1 -0
- package/dist/batch/types.js +35 -0
- package/dist/batch/types.js.map +1 -0
- package/dist/batch/verify.d.ts +45 -0
- package/dist/batch/verify.d.ts.map +1 -0
- package/dist/batch/verify.js +72 -0
- package/dist/batch/verify.js.map +1 -0
- package/dist/batch/zip.d.ts +39 -0
- package/dist/batch/zip.d.ts.map +1 -0
- package/dist/batch/zip.js +201 -0
- package/dist/batch/zip.js.map +1 -0
- package/dist/conformance/finder.d.ts +67 -0
- package/dist/conformance/finder.d.ts.map +1 -0
- package/dist/conformance/finder.js +125 -0
- package/dist/conformance/finder.js.map +1 -0
- package/dist/conformance/frame.d.ts +28 -0
- package/dist/conformance/frame.d.ts.map +1 -0
- package/dist/conformance/frame.js +134 -0
- package/dist/conformance/frame.js.map +1 -0
- package/dist/conformance/index.d.ts +15 -0
- package/dist/conformance/index.d.ts.map +1 -0
- package/dist/conformance/index.js +8 -0
- package/dist/conformance/index.js.map +1 -0
- package/dist/conformance/module-shape.d.ts +35 -0
- package/dist/conformance/module-shape.d.ts.map +1 -0
- package/dist/conformance/module-shape.js +139 -0
- package/dist/conformance/module-shape.js.map +1 -0
- package/dist/conformance/payload-type.d.ts +48 -0
- package/dist/conformance/payload-type.d.ts.map +1 -0
- package/dist/conformance/payload-type.js +113 -0
- package/dist/conformance/payload-type.js.map +1 -0
- package/dist/conformance/preset.d.ts +37 -0
- package/dist/conformance/preset.d.ts.map +1 -0
- package/dist/conformance/preset.js +171 -0
- package/dist/conformance/preset.js.map +1 -0
- package/dist/conformance/region-captures.d.ts +41 -0
- package/dist/conformance/region-captures.d.ts.map +1 -0
- package/dist/conformance/region-captures.js +69 -0
- package/dist/conformance/region-captures.js.map +1 -0
- package/dist/conformance/region-shape.d.ts +43 -0
- package/dist/conformance/region-shape.d.ts.map +1 -0
- package/dist/conformance/region-shape.js +214 -0
- package/dist/conformance/region-shape.js.map +1 -0
- package/dist/conformance/sample.d.ts +13 -0
- package/dist/conformance/sample.d.ts.map +1 -0
- package/dist/conformance/sample.js +75 -0
- package/dist/conformance/sample.js.map +1 -0
- package/dist/conformance/types.d.ts +16 -0
- package/dist/conformance/types.d.ts.map +1 -0
- package/dist/conformance/types.js +10 -0
- package/dist/conformance/types.js.map +1 -0
- package/dist/core/bch.d.ts +36 -0
- package/dist/core/bch.d.ts.map +1 -0
- package/dist/core/bch.js +92 -0
- package/dist/core/bch.js.map +1 -0
- package/dist/core/bit-matrix.d.ts +56 -0
- package/dist/core/bit-matrix.d.ts.map +1 -0
- package/dist/core/bit-matrix.js +150 -0
- package/dist/core/bit-matrix.js.map +1 -0
- package/dist/core/bits.d.ts +53 -0
- package/dist/core/bits.d.ts.map +1 -0
- package/dist/core/bits.js +128 -0
- package/dist/core/bits.js.map +1 -0
- package/dist/core/checksums.d.ts +22 -0
- package/dist/core/checksums.d.ts.map +1 -0
- package/dist/core/checksums.js +64 -0
- package/dist/core/checksums.js.map +1 -0
- package/dist/core/deflate.d.ts +51 -0
- package/dist/core/deflate.d.ts.map +1 -0
- package/dist/core/deflate.js +851 -0
- package/dist/core/deflate.js.map +1 -0
- package/dist/core/errors.d.ts +123 -0
- package/dist/core/errors.d.ts.map +1 -0
- package/dist/core/errors.js +168 -0
- package/dist/core/errors.js.map +1 -0
- package/dist/core/field.d.ts +58 -0
- package/dist/core/field.d.ts.map +1 -0
- package/dist/core/field.js +184 -0
- package/dist/core/field.js.map +1 -0
- package/dist/core/huffman.d.ts +31 -0
- package/dist/core/huffman.d.ts.map +1 -0
- package/dist/core/huffman.js +131 -0
- package/dist/core/huffman.js.map +1 -0
- package/dist/core/image.d.ts +18 -0
- package/dist/core/image.d.ts.map +1 -0
- package/dist/core/image.js +2 -0
- package/dist/core/image.js.map +1 -0
- package/dist/core/index.d.ts +25 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +15 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/issue.d.ts +39 -0
- package/dist/core/issue.d.ts.map +1 -0
- package/dist/core/issue.js +24 -0
- package/dist/core/issue.js.map +1 -0
- package/dist/core/math.d.ts +56 -0
- package/dist/core/math.d.ts.map +1 -0
- package/dist/core/math.js +609 -0
- package/dist/core/math.js.map +1 -0
- package/dist/core/prng.d.ts +27 -0
- package/dist/core/prng.d.ts.map +1 -0
- package/dist/core/prng.js +111 -0
- package/dist/core/prng.js.map +1 -0
- package/dist/core/reed-solomon.d.ts +69 -0
- package/dist/core/reed-solomon.d.ts.map +1 -0
- package/dist/core/reed-solomon.js +308 -0
- package/dist/core/reed-solomon.js.map +1 -0
- package/dist/core/registry.d.ts +45 -0
- package/dist/core/registry.d.ts.map +1 -0
- package/dist/core/registry.js +80 -0
- package/dist/core/registry.js.map +1 -0
- package/dist/core/result.d.ts +33 -0
- package/dist/core/result.d.ts.map +1 -0
- package/dist/core/result.js +52 -0
- package/dist/core/result.js.map +1 -0
- package/dist/core/zip.d.ts +36 -0
- package/dist/core/zip.d.ts.map +1 -0
- package/dist/core/zip.js +234 -0
- package/dist/core/zip.js.map +1 -0
- package/dist/decode/alignment.d.ts +34 -0
- package/dist/decode/alignment.d.ts.map +1 -0
- package/dist/decode/alignment.js +179 -0
- package/dist/decode/alignment.js.map +1 -0
- package/dist/decode/binarise.d.ts +95 -0
- package/dist/decode/binarise.d.ts.map +1 -0
- package/dist/decode/binarise.js +399 -0
- package/dist/decode/binarise.js.map +1 -0
- package/dist/decode/decoder.d.ts +75 -0
- package/dist/decode/decoder.d.ts.map +1 -0
- package/dist/decode/decoder.js +773 -0
- package/dist/decode/decoder.js.map +1 -0
- package/dist/decode/erasures.d.ts +26 -0
- package/dist/decode/erasures.d.ts.map +1 -0
- package/dist/decode/erasures.js +34 -0
- package/dist/decode/erasures.js.map +1 -0
- package/dist/decode/failure.d.ts +15 -0
- package/dist/decode/failure.d.ts.map +1 -0
- package/dist/decode/failure.js +22 -0
- package/dist/decode/failure.js.map +1 -0
- package/dist/decode/finder.d.ts +114 -0
- package/dist/decode/finder.d.ts.map +1 -0
- package/dist/decode/finder.js +441 -0
- package/dist/decode/finder.js.map +1 -0
- package/dist/decode/frame.d.ts +49 -0
- package/dist/decode/frame.d.ts.map +1 -0
- package/dist/decode/frame.js +228 -0
- package/dist/decode/frame.js.map +1 -0
- package/dist/decode/grey.d.ts +87 -0
- package/dist/decode/grey.d.ts.map +1 -0
- package/dist/decode/grey.js +226 -0
- package/dist/decode/grey.js.map +1 -0
- package/dist/decode/index.d.ts +4 -0
- package/dist/decode/index.d.ts.map +1 -0
- package/dist/decode/index.js +3 -0
- package/dist/decode/index.js.map +1 -0
- package/dist/decode/locate-qr.d.ts +80 -0
- package/dist/decode/locate-qr.d.ts.map +1 -0
- package/dist/decode/locate-qr.js +295 -0
- package/dist/decode/locate-qr.js.map +1 -0
- package/dist/decode/locate-single.d.ts +47 -0
- package/dist/decode/locate-single.d.ts.map +1 -0
- package/dist/decode/locate-single.js +169 -0
- package/dist/decode/locate-single.js.map +1 -0
- package/dist/decode/plain.d.ts +70 -0
- package/dist/decode/plain.d.ts.map +1 -0
- package/dist/decode/plain.js +460 -0
- package/dist/decode/plain.js.map +1 -0
- package/dist/decode/sample.d.ts +56 -0
- package/dist/decode/sample.d.ts.map +1 -0
- package/dist/decode/sample.js +154 -0
- package/dist/decode/sample.js.map +1 -0
- package/dist/decode/strict.d.ts +255 -0
- package/dist/decode/strict.d.ts.map +1 -0
- package/dist/decode/strict.js +597 -0
- package/dist/decode/strict.js.map +1 -0
- package/dist/decode/tiled.d.ts +137 -0
- package/dist/decode/tiled.d.ts.map +1 -0
- package/dist/decode/tiled.js +452 -0
- package/dist/decode/tiled.js.map +1 -0
- package/dist/decode/transform.d.ts +48 -0
- package/dist/decode/transform.d.ts.map +1 -0
- package/dist/decode/transform.js +180 -0
- package/dist/decode/transform.js.map +1 -0
- package/dist/decode/types.d.ts +163 -0
- package/dist/decode/types.d.ts.map +1 -0
- package/dist/decode/types.js +10 -0
- package/dist/decode/types.js.map +1 -0
- package/dist/design/base64.d.ts +16 -0
- package/dist/design/base64.d.ts.map +1 -0
- package/dist/design/base64.js +97 -0
- package/dist/design/base64.js.map +1 -0
- package/dist/design/canonical.d.ts +13 -0
- package/dist/design/canonical.d.ts.map +1 -0
- package/dist/design/canonical.js +100 -0
- package/dist/design/canonical.js.map +1 -0
- package/dist/design/caption.d.ts +54 -0
- package/dist/design/caption.d.ts.map +1 -0
- package/dist/design/caption.js +175 -0
- package/dist/design/caption.js.map +1 -0
- package/dist/design/catalogue/draw.d.ts +77 -0
- package/dist/design/catalogue/draw.d.ts.map +1 -0
- package/dist/design/catalogue/draw.js +260 -0
- package/dist/design/catalogue/draw.js.map +1 -0
- package/dist/design/catalogue/fills.d.ts +9 -0
- package/dist/design/catalogue/fills.d.ts.map +1 -0
- package/dist/design/catalogue/fills.js +64 -0
- package/dist/design/catalogue/fills.js.map +1 -0
- package/dist/design/catalogue/frames.d.ts +18 -0
- package/dist/design/catalogue/frames.d.ts.map +1 -0
- package/dist/design/catalogue/frames.js +451 -0
- package/dist/design/catalogue/frames.js.map +1 -0
- package/dist/design/catalogue/icons.d.ts +21 -0
- package/dist/design/catalogue/icons.d.ts.map +1 -0
- package/dist/design/catalogue/icons.js +293 -0
- package/dist/design/catalogue/icons.js.map +1 -0
- package/dist/design/catalogue/module-shapes.d.ts +21 -0
- package/dist/design/catalogue/module-shapes.d.ts.map +1 -0
- package/dist/design/catalogue/module-shapes.js +266 -0
- package/dist/design/catalogue/module-shapes.js.map +1 -0
- package/dist/design/catalogue/presets.d.ts +31 -0
- package/dist/design/catalogue/presets.d.ts.map +1 -0
- package/dist/design/catalogue/presets.js +696 -0
- package/dist/design/catalogue/presets.js.map +1 -0
- package/dist/design/catalogue/region-shapes.d.ts +41 -0
- package/dist/design/catalogue/region-shapes.d.ts.map +1 -0
- package/dist/design/catalogue/region-shapes.js +399 -0
- package/dist/design/catalogue/region-shapes.js.map +1 -0
- package/dist/design/catalogue/schema.d.ts +14 -0
- package/dist/design/catalogue/schema.d.ts.map +1 -0
- package/dist/design/catalogue/schema.js +58 -0
- package/dist/design/catalogue/schema.js.map +1 -0
- package/dist/design/constraints.d.ts +25 -0
- package/dist/design/constraints.d.ts.map +1 -0
- package/dist/design/constraints.js +194 -0
- package/dist/design/constraints.js.map +1 -0
- package/dist/design/document.d.ts +64 -0
- package/dist/design/document.d.ts.map +1 -0
- package/dist/design/document.js +66 -0
- package/dist/design/document.js.map +1 -0
- package/dist/design/finder.d.ts +79 -0
- package/dist/design/finder.d.ts.map +1 -0
- package/dist/design/finder.js +270 -0
- package/dist/design/finder.js.map +1 -0
- package/dist/design/index.d.ts +18 -0
- package/dist/design/index.d.ts.map +1 -0
- package/dist/design/index.js +15 -0
- package/dist/design/index.js.map +1 -0
- package/dist/design/link.d.ts +41 -0
- package/dist/design/link.d.ts.map +1 -0
- package/dist/design/link.js +131 -0
- package/dist/design/link.js.map +1 -0
- package/dist/design/logo.d.ts +57 -0
- package/dist/design/logo.d.ts.map +1 -0
- package/dist/design/logo.js +376 -0
- package/dist/design/logo.js.map +1 -0
- package/dist/design/migrate.d.ts +31 -0
- package/dist/design/migrate.d.ts.map +1 -0
- package/dist/design/migrate.js +87 -0
- package/dist/design/migrate.js.map +1 -0
- package/dist/design/neighbours.d.ts +24 -0
- package/dist/design/neighbours.d.ts.map +1 -0
- package/dist/design/neighbours.js +50 -0
- package/dist/design/neighbours.js.map +1 -0
- package/dist/design/paint.d.ts +47 -0
- package/dist/design/paint.d.ts.map +1 -0
- package/dist/design/paint.js +115 -0
- package/dist/design/paint.js.map +1 -0
- package/dist/design/params.d.ts +30 -0
- package/dist/design/params.d.ts.map +1 -0
- package/dist/design/params.js +85 -0
- package/dist/design/params.js.map +1 -0
- package/dist/design/preset-size.d.ts +14 -0
- package/dist/design/preset-size.d.ts.map +1 -0
- package/dist/design/preset-size.js +14 -0
- package/dist/design/preset-size.js.map +1 -0
- package/dist/design/registries.d.ts +9 -0
- package/dist/design/registries.d.ts.map +1 -0
- package/dist/design/registries.js +24 -0
- package/dist/design/registries.js.map +1 -0
- package/dist/design/scene.d.ts +38 -0
- package/dist/design/scene.d.ts.map +1 -0
- package/dist/design/scene.js +694 -0
- package/dist/design/scene.js.map +1 -0
- package/dist/design/swiss-cross.d.ts +54 -0
- package/dist/design/swiss-cross.d.ts.map +1 -0
- package/dist/design/swiss-cross.js +95 -0
- package/dist/design/swiss-cross.js.map +1 -0
- package/dist/design/types.d.ts +389 -0
- package/dist/design/types.d.ts.map +1 -0
- package/dist/design/types.js +29 -0
- package/dist/design/types.js.map +1 -0
- package/dist/design/validate.d.ts +48 -0
- package/dist/design/validate.d.ts.map +1 -0
- package/dist/design/validate.js +986 -0
- package/dist/design/validate.js.map +1 -0
- package/dist/dom/camera.d.ts +94 -0
- package/dist/dom/camera.d.ts.map +1 -0
- package/dist/dom/camera.js +288 -0
- package/dist/dom/camera.js.map +1 -0
- package/dist/dom/file-library.d.ts +297 -0
- package/dist/dom/file-library.d.ts.map +1 -0
- package/dist/dom/file-library.js +703 -0
- package/dist/dom/file-library.js.map +1 -0
- package/dist/dom/image.d.ts +77 -0
- package/dist/dom/image.d.ts.map +1 -0
- package/dist/dom/image.js +253 -0
- package/dist/dom/image.js.map +1 -0
- package/dist/dom/index.d.ts +19 -0
- package/dist/dom/index.d.ts.map +1 -0
- package/dist/dom/index.js +10 -0
- package/dist/dom/index.js.map +1 -0
- package/dist/dom/library/index.d.ts +4 -0
- package/dist/dom/library/index.d.ts.map +1 -0
- package/dist/dom/library/index.js +2 -0
- package/dist/dom/library/index.js.map +1 -0
- package/dist/dom/library/indexeddb.d.ts +71 -0
- package/dist/dom/library/indexeddb.d.ts.map +1 -0
- package/dist/dom/library/indexeddb.js +365 -0
- package/dist/dom/library/indexeddb.js.map +1 -0
- package/dist/dom/logo.d.ts +36 -0
- package/dist/dom/logo.d.ts.map +1 -0
- package/dist/dom/logo.js +99 -0
- package/dist/dom/logo.js.map +1 -0
- package/dist/dom/orientation.d.ts +32 -0
- package/dist/dom/orientation.d.ts.map +1 -0
- package/dist/dom/orientation.js +152 -0
- package/dist/dom/orientation.js.map +1 -0
- package/dist/dom/output.d.ts +58 -0
- package/dist/dom/output.d.ts.map +1 -0
- package/dist/dom/output.js +93 -0
- package/dist/dom/output.js.map +1 -0
- package/dist/dom/print.d.ts +52 -0
- package/dist/dom/print.d.ts.map +1 -0
- package/dist/dom/print.js +101 -0
- package/dist/dom/print.js.map +1 -0
- package/dist/dom/raster-encoder.d.ts +43 -0
- package/dist/dom/raster-encoder.d.ts.map +1 -0
- package/dist/dom/raster-encoder.js +102 -0
- package/dist/dom/raster-encoder.js.map +1 -0
- package/dist/dom/resample.d.ts +20 -0
- package/dist/dom/resample.d.ts.map +1 -0
- package/dist/dom/resample.js +107 -0
- package/dist/dom/resample.js.map +1 -0
- package/dist/dom/types.d.ts +54 -0
- package/dist/dom/types.d.ts.map +1 -0
- package/dist/dom/types.js +13 -0
- package/dist/dom/types.js.map +1 -0
- package/dist/encode/bitstream.d.ts +14 -0
- package/dist/encode/bitstream.d.ts.map +1 -0
- package/dist/encode/bitstream.js +31 -0
- package/dist/encode/bitstream.js.map +1 -0
- package/dist/encode/encode.d.ts +21 -0
- package/dist/encode/encode.d.ts.map +1 -0
- package/dist/encode/encode.js +65 -0
- package/dist/encode/encode.js.map +1 -0
- package/dist/encode/index.d.ts +5 -0
- package/dist/encode/index.d.ts.map +1 -0
- package/dist/encode/index.js +4 -0
- package/dist/encode/index.js.map +1 -0
- package/dist/encode/plan.d.ts +61 -0
- package/dist/encode/plan.d.ts.map +1 -0
- package/dist/encode/plan.js +177 -0
- package/dist/encode/plan.js.map +1 -0
- package/dist/encode/structured-append.d.ts +35 -0
- package/dist/encode/structured-append.d.ts.map +1 -0
- package/dist/encode/structured-append.js +153 -0
- package/dist/encode/structured-append.js.map +1 -0
- package/dist/fonts/latin.d.ts +118 -0
- package/dist/fonts/latin.d.ts.map +1 -0
- package/dist/fonts/latin.js +137 -0
- package/dist/fonts/latin.js.map +1 -0
- package/dist/geometry/flatten.d.ts +60 -0
- package/dist/geometry/flatten.d.ts.map +1 -0
- package/dist/geometry/flatten.js +177 -0
- package/dist/geometry/flatten.js.map +1 -0
- package/dist/geometry/index.d.ts +10 -0
- package/dist/geometry/index.d.ts.map +1 -0
- package/dist/geometry/index.js +6 -0
- package/dist/geometry/index.js.map +1 -0
- package/dist/geometry/matrix.d.ts +50 -0
- package/dist/geometry/matrix.d.ts.map +1 -0
- package/dist/geometry/matrix.js +113 -0
- package/dist/geometry/matrix.js.map +1 -0
- package/dist/geometry/measure.d.ts +35 -0
- package/dist/geometry/measure.d.ts.map +1 -0
- package/dist/geometry/measure.js +206 -0
- package/dist/geometry/measure.js.map +1 -0
- package/dist/geometry/path.d.ts +137 -0
- package/dist/geometry/path.d.ts.map +1 -0
- package/dist/geometry/path.js +401 -0
- package/dist/geometry/path.js.map +1 -0
- package/dist/geometry/trace.d.ts +29 -0
- package/dist/geometry/trace.d.ts.map +1 -0
- package/dist/geometry/trace.js +166 -0
- package/dist/geometry/trace.js.map +1 -0
- package/dist/index.d.ts +20 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -0
- package/dist/inspect/explain.d.ts +32 -0
- package/dist/inspect/explain.d.ts.map +1 -0
- package/dist/inspect/explain.js +99 -0
- package/dist/inspect/explain.js.map +1 -0
- package/dist/inspect/gs1.d.ts +38 -0
- package/dist/inspect/gs1.d.ts.map +1 -0
- package/dist/inspect/gs1.js +130 -0
- package/dist/inspect/gs1.js.map +1 -0
- package/dist/inspect/index.d.ts +9 -0
- package/dist/inspect/index.d.ts.map +1 -0
- package/dist/inspect/index.js +6 -0
- package/dist/inspect/index.js.map +1 -0
- package/dist/inspect/inspect.d.ts +29 -0
- package/dist/inspect/inspect.d.ts.map +1 -0
- package/dist/inspect/inspect.js +98 -0
- package/dist/inspect/inspect.js.map +1 -0
- package/dist/inspect/keys.d.ts +54 -0
- package/dist/inspect/keys.d.ts.map +1 -0
- package/dist/inspect/keys.js +63 -0
- package/dist/inspect/keys.js.map +1 -0
- package/dist/inspect/sets.d.ts +27 -0
- package/dist/inspect/sets.d.ts.map +1 -0
- package/dist/inspect/sets.js +67 -0
- package/dist/inspect/sets.js.map +1 -0
- package/dist/inspect/types.d.ts +81 -0
- package/dist/inspect/types.d.ts.map +1 -0
- package/dist/inspect/types.js +16 -0
- package/dist/inspect/types.js.map +1 -0
- package/dist/messages/en/app.d.ts +11 -0
- package/dist/messages/en/app.d.ts.map +1 -0
- package/dist/messages/en/app.js +395 -0
- package/dist/messages/en/app.js.map +1 -0
- package/dist/messages/en/batch.d.ts +18 -0
- package/dist/messages/en/batch.d.ts.map +1 -0
- package/dist/messages/en/batch.js +42 -0
- package/dist/messages/en/batch.js.map +1 -0
- package/dist/messages/en/decode.d.ts +9 -0
- package/dist/messages/en/decode.d.ts.map +1 -0
- package/dist/messages/en/decode.js +21 -0
- package/dist/messages/en/decode.js.map +1 -0
- package/dist/messages/en/design.d.ts +13 -0
- package/dist/messages/en/design.d.ts.map +1 -0
- package/dist/messages/en/design.js +228 -0
- package/dist/messages/en/design.js.map +1 -0
- package/dist/messages/en/dom.d.ts +11 -0
- package/dist/messages/en/dom.d.ts.map +1 -0
- package/dist/messages/en/dom.js +14 -0
- package/dist/messages/en/dom.js.map +1 -0
- package/dist/messages/en/encode.d.ts +13 -0
- package/dist/messages/en/encode.d.ts.map +1 -0
- package/dist/messages/en/encode.js +20 -0
- package/dist/messages/en/encode.js.map +1 -0
- package/dist/messages/en/index.d.ts +48 -0
- package/dist/messages/en/index.d.ts.map +1 -0
- package/dist/messages/en/index.js +73 -0
- package/dist/messages/en/index.js.map +1 -0
- package/dist/messages/en/inspect.d.ts +13 -0
- package/dist/messages/en/inspect.d.ts.map +1 -0
- package/dist/messages/en/inspect.js +84 -0
- package/dist/messages/en/inspect.js.map +1 -0
- package/dist/messages/en/library.d.ts +12 -0
- package/dist/messages/en/library.d.ts.map +1 -0
- package/dist/messages/en/library.js +27 -0
- package/dist/messages/en/library.js.map +1 -0
- package/dist/messages/en/micro.d.ts +9 -0
- package/dist/messages/en/micro.d.ts.map +1 -0
- package/dist/messages/en/micro.js +13 -0
- package/dist/messages/en/micro.js.map +1 -0
- package/dist/messages/en/own-link.d.ts +7 -0
- package/dist/messages/en/own-link.d.ts.map +1 -0
- package/dist/messages/en/own-link.js +29 -0
- package/dist/messages/en/own-link.js.map +1 -0
- package/dist/messages/en/payload.d.ts +13 -0
- package/dist/messages/en/payload.d.ts.map +1 -0
- package/dist/messages/en/payload.js +427 -0
- package/dist/messages/en/payload.js.map +1 -0
- package/dist/messages/en/rmqr.d.ts +9 -0
- package/dist/messages/en/rmqr.d.ts.map +1 -0
- package/dist/messages/en/rmqr.js +12 -0
- package/dist/messages/en/rmqr.js.map +1 -0
- package/dist/messages/en/studio.d.ts +18 -0
- package/dist/messages/en/studio.d.ts.map +1 -0
- package/dist/messages/en/studio.js +117 -0
- package/dist/messages/en/studio.js.map +1 -0
- package/dist/messages/en/symbology.d.ts +13 -0
- package/dist/messages/en/symbology.d.ts.map +1 -0
- package/dist/messages/en/symbology.js +21 -0
- package/dist/messages/en/symbology.js.map +1 -0
- package/dist/messages/en/text.d.ts +23 -0
- package/dist/messages/en/text.d.ts.map +1 -0
- package/dist/messages/en/text.js +47 -0
- package/dist/messages/en/text.js.map +1 -0
- package/dist/messages/en/verify.d.ts +13 -0
- package/dist/messages/en/verify.d.ts.map +1 -0
- package/dist/messages/en/verify.js +117 -0
- package/dist/messages/en/verify.js.map +1 -0
- package/dist/messages/format.d.ts +30 -0
- package/dist/messages/format.d.ts.map +1 -0
- package/dist/messages/format.js +170 -0
- package/dist/messages/format.js.map +1 -0
- package/dist/own-link/index.d.ts +5 -0
- package/dist/own-link/index.d.ts.map +1 -0
- package/dist/own-link/index.js +3 -0
- package/dist/own-link/index.js.map +1 -0
- package/dist/own-link/query.d.ts +10 -0
- package/dist/own-link/query.d.ts.map +1 -0
- package/dist/own-link/query.js +33 -0
- package/dist/own-link/query.js.map +1 -0
- package/dist/own-link/redirects.d.ts +54 -0
- package/dist/own-link/redirects.d.ts.map +1 -0
- package/dist/own-link/redirects.js +271 -0
- package/dist/own-link/redirects.js.map +1 -0
- package/dist/own-link/utm.d.ts +24 -0
- package/dist/own-link/utm.d.ts.map +1 -0
- package/dist/own-link/utm.js +82 -0
- package/dist/own-link/utm.js.map +1 -0
- package/dist/payload/banking.d.ts +39 -0
- package/dist/payload/banking.d.ts.map +1 -0
- package/dist/payload/banking.js +87 -0
- package/dist/payload/banking.js.map +1 -0
- package/dist/payload/base58.d.ts +21 -0
- package/dist/payload/base58.d.ts.map +1 -0
- package/dist/payload/base58.js +75 -0
- package/dist/payload/base58.js.map +1 -0
- package/dist/payload/bech32.d.ts +59 -0
- package/dist/payload/bech32.d.ts.map +1 -0
- package/dist/payload/bech32.js +137 -0
- package/dist/payload/bech32.js.map +1 -0
- package/dist/payload/check-digits.d.ts +49 -0
- package/dist/payload/check-digits.d.ts.map +1 -0
- package/dist/payload/check-digits.js +101 -0
- package/dist/payload/check-digits.js.map +1 -0
- package/dist/payload/content/bitcoin.d.ts +34 -0
- package/dist/payload/content/bitcoin.d.ts.map +1 -0
- package/dist/payload/content/bitcoin.js +137 -0
- package/dist/payload/content/bitcoin.js.map +1 -0
- package/dist/payload/content/email.d.ts +19 -0
- package/dist/payload/content/email.d.ts.map +1 -0
- package/dist/payload/content/email.js +137 -0
- package/dist/payload/content/email.js.map +1 -0
- package/dist/payload/content/epc.d.ts +32 -0
- package/dist/payload/content/epc.d.ts.map +1 -0
- package/dist/payload/content/epc.js +160 -0
- package/dist/payload/content/epc.js.map +1 -0
- package/dist/payload/content/event.d.ts +35 -0
- package/dist/payload/content/event.d.ts.map +1 -0
- package/dist/payload/content/event.js +242 -0
- package/dist/payload/content/event.js.map +1 -0
- package/dist/payload/content/facetime.d.ts +14 -0
- package/dist/payload/content/facetime.d.ts.map +1 -0
- package/dist/payload/content/facetime.js +56 -0
- package/dist/payload/content/facetime.js.map +1 -0
- package/dist/payload/content/geo.d.ts +24 -0
- package/dist/payload/content/geo.d.ts.map +1 -0
- package/dist/payload/content/geo.js +139 -0
- package/dist/payload/content/geo.js.map +1 -0
- package/dist/payload/content/gs1-digital-link.d.ts +34 -0
- package/dist/payload/content/gs1-digital-link.d.ts.map +1 -0
- package/dist/payload/content/gs1-digital-link.js +171 -0
- package/dist/payload/content/gs1-digital-link.js.map +1 -0
- package/dist/payload/content/lightning.d.ts +22 -0
- package/dist/payload/content/lightning.d.ts.map +1 -0
- package/dist/payload/content/lightning.js +90 -0
- package/dist/payload/content/lightning.js.map +1 -0
- package/dist/payload/content/mecard.d.ts +23 -0
- package/dist/payload/content/mecard.d.ts.map +1 -0
- package/dist/payload/content/mecard.js +111 -0
- package/dist/payload/content/mecard.js.map +1 -0
- package/dist/payload/content/phone.d.ts +17 -0
- package/dist/payload/content/phone.d.ts.map +1 -0
- package/dist/payload/content/phone.js +39 -0
- package/dist/payload/content/phone.js.map +1 -0
- package/dist/payload/content/pix.d.ts +36 -0
- package/dist/payload/content/pix.d.ts.map +1 -0
- package/dist/payload/content/pix.js +191 -0
- package/dist/payload/content/pix.js.map +1 -0
- package/dist/payload/content/signal.d.ts +17 -0
- package/dist/payload/content/signal.d.ts.map +1 -0
- package/dist/payload/content/signal.js +43 -0
- package/dist/payload/content/signal.js.map +1 -0
- package/dist/payload/content/sms.d.ts +18 -0
- package/dist/payload/content/sms.d.ts.map +1 -0
- package/dist/payload/content/sms.js +64 -0
- package/dist/payload/content/sms.js.map +1 -0
- package/dist/payload/content/swiss-qr-bill.d.ts +61 -0
- package/dist/payload/content/swiss-qr-bill.d.ts.map +1 -0
- package/dist/payload/content/swiss-qr-bill.js +325 -0
- package/dist/payload/content/swiss-qr-bill.js.map +1 -0
- package/dist/payload/content/telegram.d.ts +18 -0
- package/dist/payload/content/telegram.d.ts.map +1 -0
- package/dist/payload/content/telegram.js +105 -0
- package/dist/payload/content/telegram.js.map +1 -0
- package/dist/payload/content/text.d.ts +9 -0
- package/dist/payload/content/text.d.ts.map +1 -0
- package/dist/payload/content/text.js +18 -0
- package/dist/payload/content/text.js.map +1 -0
- package/dist/payload/content/upi.d.ts +21 -0
- package/dist/payload/content/upi.d.ts.map +1 -0
- package/dist/payload/content/upi.js +89 -0
- package/dist/payload/content/upi.js.map +1 -0
- package/dist/payload/content/url.d.ts +31 -0
- package/dist/payload/content/url.d.ts.map +1 -0
- package/dist/payload/content/url.js +120 -0
- package/dist/payload/content/url.js.map +1 -0
- package/dist/payload/content/vcard.d.ts +42 -0
- package/dist/payload/content/vcard.d.ts.map +1 -0
- package/dist/payload/content/vcard.js +302 -0
- package/dist/payload/content/vcard.js.map +1 -0
- package/dist/payload/content/whatsapp.d.ts +17 -0
- package/dist/payload/content/whatsapp.d.ts.map +1 -0
- package/dist/payload/content/whatsapp.js +72 -0
- package/dist/payload/content/whatsapp.js.map +1 -0
- package/dist/payload/content/wifi.d.ts +48 -0
- package/dist/payload/content/wifi.d.ts.map +1 -0
- package/dist/payload/content/wifi.js +240 -0
- package/dist/payload/content/wifi.js.map +1 -0
- package/dist/payload/content/zatca.d.ts +35 -0
- package/dist/payload/content/zatca.d.ts.map +1 -0
- package/dist/payload/content/zatca.js +156 -0
- package/dist/payload/content/zatca.js.map +1 -0
- package/dist/payload/data/hosts.d.ts +39 -0
- package/dist/payload/data/hosts.d.ts.map +1 -0
- package/dist/payload/data/hosts.js +74 -0
- package/dist/payload/data/hosts.js.map +1 -0
- package/dist/payload/define.d.ts +57 -0
- package/dist/payload/define.d.ts.map +1 -0
- package/dist/payload/define.js +87 -0
- package/dist/payload/define.js.map +1 -0
- package/dist/payload/detect.d.ts +13 -0
- package/dist/payload/detect.d.ts.map +1 -0
- package/dist/payload/detect.js +32 -0
- package/dist/payload/detect.js.map +1 -0
- package/dist/payload/emv.d.ts +41 -0
- package/dist/payload/emv.d.ts.map +1 -0
- package/dist/payload/emv.js +73 -0
- package/dist/payload/emv.js.map +1 -0
- package/dist/payload/escape.d.ts +66 -0
- package/dist/payload/escape.d.ts.map +1 -0
- package/dist/payload/escape.js +225 -0
- package/dist/payload/escape.js.map +1 -0
- package/dist/payload/fields.d.ts +86 -0
- package/dist/payload/fields.d.ts.map +1 -0
- package/dist/payload/fields.js +368 -0
- package/dist/payload/fields.js.map +1 -0
- package/dist/payload/hash.d.ts +11 -0
- package/dist/payload/hash.d.ts.map +1 -0
- package/dist/payload/hash.js +82 -0
- package/dist/payload/hash.js.map +1 -0
- package/dist/payload/index.d.ts +58 -0
- package/dist/payload/index.d.ts.map +1 -0
- package/dist/payload/index.js +32 -0
- package/dist/payload/index.js.map +1 -0
- package/dist/payload/punycode.d.ts +18 -0
- package/dist/payload/punycode.d.ts.map +1 -0
- package/dist/payload/punycode.js +99 -0
- package/dist/payload/punycode.js.map +1 -0
- package/dist/payload/registry.d.ts +20 -0
- package/dist/payload/registry.d.ts.map +1 -0
- package/dist/payload/registry.js +64 -0
- package/dist/payload/registry.js.map +1 -0
- package/dist/payload/safety.d.ts +13 -0
- package/dist/payload/safety.d.ts.map +1 -0
- package/dist/payload/safety.js +30 -0
- package/dist/payload/safety.js.map +1 -0
- package/dist/payload/scripts.d.ts +25 -0
- package/dist/payload/scripts.d.ts.map +1 -0
- package/dist/payload/scripts.js +90 -0
- package/dist/payload/scripts.js.map +1 -0
- package/dist/payload/types.d.ts +138 -0
- package/dist/payload/types.d.ts.map +1 -0
- package/dist/payload/types.js +28 -0
- package/dist/payload/types.js.map +1 -0
- package/dist/payload/uri.d.ts +24 -0
- package/dist/payload/uri.d.ts.map +1 -0
- package/dist/payload/uri.js +69 -0
- package/dist/payload/uri.js.map +1 -0
- package/dist/payload/url-safety.d.ts +31 -0
- package/dist/payload/url-safety.d.ts.map +1 -0
- package/dist/payload/url-safety.js +221 -0
- package/dist/payload/url-safety.js.map +1 -0
- package/dist/payload/vectors/bitcoin.d.ts +13 -0
- package/dist/payload/vectors/bitcoin.d.ts.map +1 -0
- package/dist/payload/vectors/bitcoin.js +83 -0
- package/dist/payload/vectors/bitcoin.js.map +1 -0
- package/dist/payload/vectors/built-in.d.ts +15 -0
- package/dist/payload/vectors/built-in.d.ts.map +1 -0
- package/dist/payload/vectors/built-in.js +59 -0
- package/dist/payload/vectors/built-in.js.map +1 -0
- package/dist/payload/vectors/email.d.ts +8 -0
- package/dist/payload/vectors/email.d.ts.map +1 -0
- package/dist/payload/vectors/email.js +60 -0
- package/dist/payload/vectors/email.js.map +1 -0
- package/dist/payload/vectors/epc.d.ts +9 -0
- package/dist/payload/vectors/epc.d.ts.map +1 -0
- package/dist/payload/vectors/epc.js +38 -0
- package/dist/payload/vectors/epc.js.map +1 -0
- package/dist/payload/vectors/event.d.ts +9 -0
- package/dist/payload/vectors/event.d.ts.map +1 -0
- package/dist/payload/vectors/event.js +57 -0
- package/dist/payload/vectors/event.js.map +1 -0
- package/dist/payload/vectors/facetime.d.ts +9 -0
- package/dist/payload/vectors/facetime.d.ts.map +1 -0
- package/dist/payload/vectors/facetime.js +19 -0
- package/dist/payload/vectors/facetime.js.map +1 -0
- package/dist/payload/vectors/geo.d.ts +8 -0
- package/dist/payload/vectors/geo.d.ts.map +1 -0
- package/dist/payload/vectors/geo.js +22 -0
- package/dist/payload/vectors/geo.js.map +1 -0
- package/dist/payload/vectors/gs1-digital-link.d.ts +9 -0
- package/dist/payload/vectors/gs1-digital-link.d.ts.map +1 -0
- package/dist/payload/vectors/gs1-digital-link.js +21 -0
- package/dist/payload/vectors/gs1-digital-link.js.map +1 -0
- package/dist/payload/vectors/hosts.d.ts +12 -0
- package/dist/payload/vectors/hosts.d.ts.map +1 -0
- package/dist/payload/vectors/hosts.js +50 -0
- package/dist/payload/vectors/hosts.js.map +1 -0
- package/dist/payload/vectors/index.d.ts +10 -0
- package/dist/payload/vectors/index.d.ts.map +1 -0
- package/dist/payload/vectors/index.js +9 -0
- package/dist/payload/vectors/index.js.map +1 -0
- package/dist/payload/vectors/lightning.d.ts +9 -0
- package/dist/payload/vectors/lightning.d.ts.map +1 -0
- package/dist/payload/vectors/lightning.js +23 -0
- package/dist/payload/vectors/lightning.js.map +1 -0
- package/dist/payload/vectors/mecard.d.ts +9 -0
- package/dist/payload/vectors/mecard.d.ts.map +1 -0
- package/dist/payload/vectors/mecard.js +25 -0
- package/dist/payload/vectors/mecard.js.map +1 -0
- package/dist/payload/vectors/phone.d.ts +9 -0
- package/dist/payload/vectors/phone.d.ts.map +1 -0
- package/dist/payload/vectors/phone.js +13 -0
- package/dist/payload/vectors/phone.js.map +1 -0
- package/dist/payload/vectors/pix.d.ts +9 -0
- package/dist/payload/vectors/pix.d.ts.map +1 -0
- package/dist/payload/vectors/pix.js +21 -0
- package/dist/payload/vectors/pix.js.map +1 -0
- package/dist/payload/vectors/signal.d.ts +9 -0
- package/dist/payload/vectors/signal.d.ts.map +1 -0
- package/dist/payload/vectors/signal.js +14 -0
- package/dist/payload/vectors/signal.js.map +1 -0
- package/dist/payload/vectors/sms.d.ts +9 -0
- package/dist/payload/vectors/sms.d.ts.map +1 -0
- package/dist/payload/vectors/sms.js +18 -0
- package/dist/payload/vectors/sms.js.map +1 -0
- package/dist/payload/vectors/swiss-qr-bill.d.ts +9 -0
- package/dist/payload/vectors/swiss-qr-bill.d.ts.map +1 -0
- package/dist/payload/vectors/swiss-qr-bill.js +72 -0
- package/dist/payload/vectors/swiss-qr-bill.js.map +1 -0
- package/dist/payload/vectors/telegram.d.ts +9 -0
- package/dist/payload/vectors/telegram.d.ts.map +1 -0
- package/dist/payload/vectors/telegram.js +19 -0
- package/dist/payload/vectors/telegram.js.map +1 -0
- package/dist/payload/vectors/text.d.ts +9 -0
- package/dist/payload/vectors/text.d.ts.map +1 -0
- package/dist/payload/vectors/text.js +13 -0
- package/dist/payload/vectors/text.js.map +1 -0
- package/dist/payload/vectors/upi.d.ts +9 -0
- package/dist/payload/vectors/upi.d.ts.map +1 -0
- package/dist/payload/vectors/upi.js +14 -0
- package/dist/payload/vectors/upi.js.map +1 -0
- package/dist/payload/vectors/url.d.ts +8 -0
- package/dist/payload/vectors/url.d.ts.map +1 -0
- package/dist/payload/vectors/url.js +30 -0
- package/dist/payload/vectors/url.js.map +1 -0
- package/dist/payload/vectors/vcard.d.ts +9 -0
- package/dist/payload/vectors/vcard.d.ts.map +1 -0
- package/dist/payload/vectors/vcard.js +47 -0
- package/dist/payload/vectors/vcard.js.map +1 -0
- package/dist/payload/vectors/whatsapp.d.ts +9 -0
- package/dist/payload/vectors/whatsapp.d.ts.map +1 -0
- package/dist/payload/vectors/whatsapp.js +19 -0
- package/dist/payload/vectors/whatsapp.js.map +1 -0
- package/dist/payload/vectors/wifi.d.ts +13 -0
- package/dist/payload/vectors/wifi.d.ts.map +1 -0
- package/dist/payload/vectors/wifi.js +40 -0
- package/dist/payload/vectors/wifi.js.map +1 -0
- package/dist/payload/vectors/zatca.d.ts +12 -0
- package/dist/payload/vectors/zatca.d.ts.map +1 -0
- package/dist/payload/vectors/zatca.js +28 -0
- package/dist/payload/vectors/zatca.js.map +1 -0
- package/dist/qr-code-studio.html +190 -0
- package/dist/registries.d.ts +24 -0
- package/dist/registries.d.ts.map +1 -0
- package/dist/registries.js +23 -0
- package/dist/registries.js.map +1 -0
- package/dist/render/base64.d.ts +11 -0
- package/dist/render/base64.d.ts.map +1 -0
- package/dist/render/base64.js +40 -0
- package/dist/render/base64.js.map +1 -0
- package/dist/render/colour.d.ts +28 -0
- package/dist/render/colour.d.ts.map +1 -0
- package/dist/render/colour.js +72 -0
- package/dist/render/colour.js.map +1 -0
- package/dist/render/conic.d.ts +68 -0
- package/dist/render/conic.d.ts.map +1 -0
- package/dist/render/conic.js +205 -0
- package/dist/render/conic.js.map +1 -0
- package/dist/render/coverage.d.ts +154 -0
- package/dist/render/coverage.d.ts.map +1 -0
- package/dist/render/coverage.js +613 -0
- package/dist/render/coverage.js.map +1 -0
- package/dist/render/eps.d.ts +41 -0
- package/dist/render/eps.d.ts.map +1 -0
- package/dist/render/eps.js +377 -0
- package/dist/render/eps.js.map +1 -0
- package/dist/render/impose.d.ts +130 -0
- package/dist/render/impose.d.ts.map +1 -0
- package/dist/render/impose.js +288 -0
- package/dist/render/impose.js.map +1 -0
- package/dist/render/index.d.ts +22 -0
- package/dist/render/index.d.ts.map +1 -0
- package/dist/render/index.js +13 -0
- package/dist/render/index.js.map +1 -0
- package/dist/render/paint.d.ts +62 -0
- package/dist/render/paint.d.ts.map +1 -0
- package/dist/render/paint.js +169 -0
- package/dist/render/paint.js.map +1 -0
- package/dist/render/pdf-colour.d.ts +34 -0
- package/dist/render/pdf-colour.d.ts.map +1 -0
- package/dist/render/pdf-colour.js +64 -0
- package/dist/render/pdf-colour.js.map +1 -0
- package/dist/render/pdf-content.d.ts +90 -0
- package/dist/render/pdf-content.d.ts.map +1 -0
- package/dist/render/pdf-content.js +367 -0
- package/dist/render/pdf-content.js.map +1 -0
- package/dist/render/pdf-document.d.ts +38 -0
- package/dist/render/pdf-document.d.ts.map +1 -0
- package/dist/render/pdf-document.js +110 -0
- package/dist/render/pdf-document.js.map +1 -0
- package/dist/render/pdf-hash.d.ts +14 -0
- package/dist/render/pdf-hash.d.ts.map +1 -0
- package/dist/render/pdf-hash.js +71 -0
- package/dist/render/pdf-hash.js.map +1 -0
- package/dist/render/pdf-syntax.d.ts +45 -0
- package/dist/render/pdf-syntax.d.ts.map +1 -0
- package/dist/render/pdf-syntax.js +100 -0
- package/dist/render/pdf-syntax.js.map +1 -0
- package/dist/render/pdf.d.ts +59 -0
- package/dist/render/pdf.d.ts.map +1 -0
- package/dist/render/pdf.js +267 -0
- package/dist/render/pdf.js.map +1 -0
- package/dist/render/png-decode.d.ts +33 -0
- package/dist/render/png-decode.d.ts.map +1 -0
- package/dist/render/png-decode.js +345 -0
- package/dist/render/png-decode.js.map +1 -0
- package/dist/render/png.d.ts +37 -0
- package/dist/render/png.d.ts.map +1 -0
- package/dist/render/png.js +350 -0
- package/dist/render/png.js.map +1 -0
- package/dist/render/raster.d.ts +40 -0
- package/dist/render/raster.d.ts.map +1 -0
- package/dist/render/raster.js +245 -0
- package/dist/render/raster.js.map +1 -0
- package/dist/render/scene.d.ts +84 -0
- package/dist/render/scene.d.ts.map +1 -0
- package/dist/render/scene.js +216 -0
- package/dist/render/scene.js.map +1 -0
- package/dist/render/sheets.d.ts +26 -0
- package/dist/render/sheets.d.ts.map +1 -0
- package/dist/render/sheets.js +83 -0
- package/dist/render/sheets.js.map +1 -0
- package/dist/render/svg.d.ts +54 -0
- package/dist/render/svg.d.ts.map +1 -0
- package/dist/render/svg.js +324 -0
- package/dist/render/svg.js.map +1 -0
- package/dist/render/types.d.ts +95 -0
- package/dist/render/types.d.ts.map +1 -0
- package/dist/render/types.js +9 -0
- package/dist/render/types.js.map +1 -0
- package/dist/segment/alphanumeric.d.ts +15 -0
- package/dist/segment/alphanumeric.d.ts.map +1 -0
- package/dist/segment/alphanumeric.js +23 -0
- package/dist/segment/alphanumeric.js.map +1 -0
- package/dist/segment/eci.d.ts +41 -0
- package/dist/segment/eci.d.ts.map +1 -0
- package/dist/segment/eci.js +194 -0
- package/dist/segment/eci.js.map +1 -0
- package/dist/segment/index.d.ts +10 -0
- package/dist/segment/index.d.ts.map +1 -0
- package/dist/segment/index.js +8 -0
- package/dist/segment/index.js.map +1 -0
- package/dist/segment/kanji.d.ts +57 -0
- package/dist/segment/kanji.d.ts.map +1 -0
- package/dist/segment/kanji.js +135 -0
- package/dist/segment/kanji.js.map +1 -0
- package/dist/segment/profile.d.ts +21 -0
- package/dist/segment/profile.d.ts.map +1 -0
- package/dist/segment/profile.js +66 -0
- package/dist/segment/profile.js.map +1 -0
- package/dist/segment/read.d.ts +29 -0
- package/dist/segment/read.d.ts.map +1 -0
- package/dist/segment/read.js +360 -0
- package/dist/segment/read.js.map +1 -0
- package/dist/segment/segment-text.d.ts +88 -0
- package/dist/segment/segment-text.d.ts.map +1 -0
- package/dist/segment/segment-text.js +422 -0
- package/dist/segment/segment-text.js.map +1 -0
- package/dist/segment/types.d.ts +89 -0
- package/dist/segment/types.d.ts.map +1 -0
- package/dist/segment/types.js +13 -0
- package/dist/segment/types.js.map +1 -0
- package/dist/segment/write.d.ts +36 -0
- package/dist/segment/write.d.ts.map +1 -0
- package/dist/segment/write.js +226 -0
- package/dist/segment/write.js.map +1 -0
- package/dist/studio/assets.d.ts +22 -0
- package/dist/studio/assets.d.ts.map +1 -0
- package/dist/studio/assets.js +66 -0
- package/dist/studio/assets.js.map +1 -0
- package/dist/studio/catalogue.d.ts +34 -0
- package/dist/studio/catalogue.d.ts.map +1 -0
- package/dist/studio/catalogue.js +359 -0
- package/dist/studio/catalogue.js.map +1 -0
- package/dist/studio/contrast.d.ts +16 -0
- package/dist/studio/contrast.d.ts.map +1 -0
- package/dist/studio/contrast.js +28 -0
- package/dist/studio/contrast.js.map +1 -0
- package/dist/studio/document.d.ts +61 -0
- package/dist/studio/document.d.ts.map +1 -0
- package/dist/studio/document.js +208 -0
- package/dist/studio/document.js.map +1 -0
- package/dist/studio/export.d.ts +52 -0
- package/dist/studio/export.d.ts.map +1 -0
- package/dist/studio/export.js +269 -0
- package/dist/studio/export.js.map +1 -0
- package/dist/studio/form.d.ts +15 -0
- package/dist/studio/form.d.ts.map +1 -0
- package/dist/studio/form.js +91 -0
- package/dist/studio/form.js.map +1 -0
- package/dist/studio/history.d.ts +66 -0
- package/dist/studio/history.d.ts.map +1 -0
- package/dist/studio/history.js +109 -0
- package/dist/studio/history.js.map +1 -0
- package/dist/studio/index.d.ts +16 -0
- package/dist/studio/index.d.ts.map +1 -0
- package/dist/studio/index.js +12 -0
- package/dist/studio/index.js.map +1 -0
- package/dist/studio/keys.d.ts +86 -0
- package/dist/studio/keys.d.ts.map +1 -0
- package/dist/studio/keys.js +165 -0
- package/dist/studio/keys.js.map +1 -0
- package/dist/studio/kit.d.ts +44 -0
- package/dist/studio/kit.d.ts.map +1 -0
- package/dist/studio/kit.js +114 -0
- package/dist/studio/kit.js.map +1 -0
- package/dist/studio/logo.d.ts +25 -0
- package/dist/studio/logo.d.ts.map +1 -0
- package/dist/studio/logo.js +49 -0
- package/dist/studio/logo.js.map +1 -0
- package/dist/studio/names.d.ts +18 -0
- package/dist/studio/names.d.ts.map +1 -0
- package/dist/studio/names.js +36 -0
- package/dist/studio/names.js.map +1 -0
- package/dist/studio/patch.d.ts +17 -0
- package/dist/studio/patch.d.ts.map +1 -0
- package/dist/studio/patch.js +64 -0
- package/dist/studio/patch.js.map +1 -0
- package/dist/studio/seams.d.ts +44 -0
- package/dist/studio/seams.d.ts.map +1 -0
- package/dist/studio/seams.js +36 -0
- package/dist/studio/seams.js.map +1 -0
- package/dist/studio/share.d.ts +16 -0
- package/dist/studio/share.d.ts.map +1 -0
- package/dist/studio/share.js +57 -0
- package/dist/studio/share.js.map +1 -0
- package/dist/studio/shuffle.d.ts +38 -0
- package/dist/studio/shuffle.d.ts.map +1 -0
- package/dist/studio/shuffle.js +181 -0
- package/dist/studio/shuffle.js.map +1 -0
- package/dist/studio/slices.d.ts +29 -0
- package/dist/studio/slices.d.ts.map +1 -0
- package/dist/studio/slices.js +84 -0
- package/dist/studio/slices.js.map +1 -0
- package/dist/studio/studio.d.ts +29 -0
- package/dist/studio/studio.d.ts.map +1 -0
- package/dist/studio/studio.js +1298 -0
- package/dist/studio/studio.js.map +1 -0
- package/dist/studio/symbol.d.ts +47 -0
- package/dist/studio/symbol.d.ts.map +1 -0
- package/dist/studio/symbol.js +159 -0
- package/dist/studio/symbol.js.map +1 -0
- package/dist/studio/timers.d.ts +18 -0
- package/dist/studio/timers.d.ts.map +1 -0
- package/dist/studio/timers.js +36 -0
- package/dist/studio/timers.js.map +1 -0
- package/dist/studio/types.d.ts +693 -0
- package/dist/studio/types.d.ts.map +1 -0
- package/dist/studio/types.js +26 -0
- package/dist/studio/types.js.map +1 -0
- package/dist/studio/verify.d.ts +47 -0
- package/dist/studio/verify.d.ts.map +1 -0
- package/dist/studio/verify.js +63 -0
- package/dist/studio/verify.js.map +1 -0
- package/dist/symbology/index.d.ts +8 -0
- package/dist/symbology/index.d.ts.map +1 -0
- package/dist/symbology/index.js +6 -0
- package/dist/symbology/index.js.map +1 -0
- package/dist/symbology/micro/blocks.d.ts +34 -0
- package/dist/symbology/micro/blocks.d.ts.map +1 -0
- package/dist/symbology/micro/blocks.js +63 -0
- package/dist/symbology/micro/blocks.js.map +1 -0
- package/dist/symbology/micro/entry.d.ts +70 -0
- package/dist/symbology/micro/entry.d.ts.map +1 -0
- package/dist/symbology/micro/entry.js +181 -0
- package/dist/symbology/micro/entry.js.map +1 -0
- package/dist/symbology/micro/format.d.ts +31 -0
- package/dist/symbology/micro/format.d.ts.map +1 -0
- package/dist/symbology/micro/format.js +48 -0
- package/dist/symbology/micro/format.js.map +1 -0
- package/dist/symbology/micro/index.d.ts +7 -0
- package/dist/symbology/micro/index.d.ts.map +1 -0
- package/dist/symbology/micro/index.js +5 -0
- package/dist/symbology/micro/index.js.map +1 -0
- package/dist/symbology/micro/layout.d.ts +40 -0
- package/dist/symbology/micro/layout.d.ts.map +1 -0
- package/dist/symbology/micro/layout.js +106 -0
- package/dist/symbology/micro/layout.js.map +1 -0
- package/dist/symbology/micro/mask.d.ts +25 -0
- package/dist/symbology/micro/mask.d.ts.map +1 -0
- package/dist/symbology/micro/mask.js +41 -0
- package/dist/symbology/micro/mask.js.map +1 -0
- package/dist/symbology/micro/modules.d.ts +76 -0
- package/dist/symbology/micro/modules.d.ts.map +1 -0
- package/dist/symbology/micro/modules.js +156 -0
- package/dist/symbology/micro/modules.js.map +1 -0
- package/dist/symbology/micro/profile.d.ts +16 -0
- package/dist/symbology/micro/profile.d.ts.map +1 -0
- package/dist/symbology/micro/profile.js +45 -0
- package/dist/symbology/micro/profile.js.map +1 -0
- package/dist/symbology/micro/read-helpers.d.ts +31 -0
- package/dist/symbology/micro/read-helpers.d.ts.map +1 -0
- package/dist/symbology/micro/read-helpers.js +66 -0
- package/dist/symbology/micro/read-helpers.js.map +1 -0
- package/dist/symbology/micro/tables.d.ts +63 -0
- package/dist/symbology/micro/tables.d.ts.map +1 -0
- package/dist/symbology/micro/tables.js +163 -0
- package/dist/symbology/micro/tables.js.map +1 -0
- package/dist/symbology/qr/blocks.d.ts +58 -0
- package/dist/symbology/qr/blocks.d.ts.map +1 -0
- package/dist/symbology/qr/blocks.js +176 -0
- package/dist/symbology/qr/blocks.js.map +1 -0
- package/dist/symbology/qr/build.d.ts +20 -0
- package/dist/symbology/qr/build.d.ts.map +1 -0
- package/dist/symbology/qr/build.js +91 -0
- package/dist/symbology/qr/build.js.map +1 -0
- package/dist/symbology/qr/entry.d.ts +13 -0
- package/dist/symbology/qr/entry.d.ts.map +1 -0
- package/dist/symbology/qr/entry.js +56 -0
- package/dist/symbology/qr/entry.js.map +1 -0
- package/dist/symbology/qr/index.d.ts +13 -0
- package/dist/symbology/qr/index.d.ts.map +1 -0
- package/dist/symbology/qr/index.js +9 -0
- package/dist/symbology/qr/index.js.map +1 -0
- package/dist/symbology/qr/info.d.ts +29 -0
- package/dist/symbology/qr/info.d.ts.map +1 -0
- package/dist/symbology/qr/info.js +53 -0
- package/dist/symbology/qr/info.js.map +1 -0
- package/dist/symbology/qr/layout.d.ts +37 -0
- package/dist/symbology/qr/layout.d.ts.map +1 -0
- package/dist/symbology/qr/layout.js +174 -0
- package/dist/symbology/qr/layout.js.map +1 -0
- package/dist/symbology/qr/mask.d.ts +35 -0
- package/dist/symbology/qr/mask.d.ts.map +1 -0
- package/dist/symbology/qr/mask.js +113 -0
- package/dist/symbology/qr/mask.js.map +1 -0
- package/dist/symbology/qr/read.d.ts +43 -0
- package/dist/symbology/qr/read.d.ts.map +1 -0
- package/dist/symbology/qr/read.js +219 -0
- package/dist/symbology/qr/read.js.map +1 -0
- package/dist/symbology/qr/tables.d.ts +62 -0
- package/dist/symbology/qr/tables.d.ts.map +1 -0
- package/dist/symbology/qr/tables.js +337 -0
- package/dist/symbology/qr/tables.js.map +1 -0
- package/dist/symbology/registry.d.ts +11 -0
- package/dist/symbology/registry.d.ts.map +1 -0
- package/dist/symbology/registry.js +19 -0
- package/dist/symbology/registry.js.map +1 -0
- package/dist/symbology/rmqr/entry.d.ts +56 -0
- package/dist/symbology/rmqr/entry.d.ts.map +1 -0
- package/dist/symbology/rmqr/entry.js +165 -0
- package/dist/symbology/rmqr/entry.js.map +1 -0
- package/dist/symbology/rmqr/format.d.ts +45 -0
- package/dist/symbology/rmqr/format.d.ts.map +1 -0
- package/dist/symbology/rmqr/format.js +72 -0
- package/dist/symbology/rmqr/format.js.map +1 -0
- package/dist/symbology/rmqr/index.d.ts +5 -0
- package/dist/symbology/rmqr/index.d.ts.map +1 -0
- package/dist/symbology/rmqr/index.js +5 -0
- package/dist/symbology/rmqr/index.js.map +1 -0
- package/dist/symbology/rmqr/layout.d.ts +46 -0
- package/dist/symbology/rmqr/layout.d.ts.map +1 -0
- package/dist/symbology/rmqr/layout.js +196 -0
- package/dist/symbology/rmqr/layout.js.map +1 -0
- package/dist/symbology/rmqr/profile.d.ts +15 -0
- package/dist/symbology/rmqr/profile.d.ts.map +1 -0
- package/dist/symbology/rmqr/profile.js +52 -0
- package/dist/symbology/rmqr/profile.js.map +1 -0
- package/dist/symbology/rmqr/tables.d.ts +62 -0
- package/dist/symbology/rmqr/tables.d.ts.map +1 -0
- package/dist/symbology/rmqr/tables.js +194 -0
- package/dist/symbology/rmqr/tables.js.map +1 -0
- package/dist/symbology/roles.d.ts +19 -0
- package/dist/symbology/roles.d.ts.map +1 -0
- package/dist/symbology/roles.js +35 -0
- package/dist/symbology/roles.js.map +1 -0
- package/dist/symbology/types.d.ts +126 -0
- package/dist/symbology/types.d.ts.map +1 -0
- package/dist/symbology/types.js +11 -0
- package/dist/symbology/types.js.map +1 -0
- package/dist/text/base64.d.ts +11 -0
- package/dist/text/base64.d.ts.map +1 -0
- package/dist/text/base64.js +49 -0
- package/dist/text/base64.js.map +1 -0
- package/dist/text/cmap.d.ts +17 -0
- package/dist/text/cmap.d.ts.map +1 -0
- package/dist/text/cmap.js +161 -0
- package/dist/text/cmap.js.map +1 -0
- package/dist/text/compiled.d.ts +52 -0
- package/dist/text/compiled.d.ts.map +1 -0
- package/dist/text/compiled.js +220 -0
- package/dist/text/compiled.js.map +1 -0
- package/dist/text/errors.d.ts +34 -0
- package/dist/text/errors.d.ts.map +1 -0
- package/dist/text/errors.js +26 -0
- package/dist/text/errors.js.map +1 -0
- package/dist/text/font.d.ts +29 -0
- package/dist/text/font.d.ts.map +1 -0
- package/dist/text/font.js +67 -0
- package/dist/text/font.js.map +1 -0
- package/dist/text/glyf.d.ts +62 -0
- package/dist/text/glyf.d.ts.map +1 -0
- package/dist/text/glyf.js +276 -0
- package/dist/text/glyf.js.map +1 -0
- package/dist/text/index.d.ts +13 -0
- package/dist/text/index.d.ts.map +1 -0
- package/dist/text/index.js +9 -0
- package/dist/text/index.js.map +1 -0
- package/dist/text/kerning.d.ts +36 -0
- package/dist/text/kerning.d.ts.map +1 -0
- package/dist/text/kerning.js +382 -0
- package/dist/text/kerning.js.map +1 -0
- package/dist/text/layout.d.ts +35 -0
- package/dist/text/layout.d.ts.map +1 -0
- package/dist/text/layout.js +287 -0
- package/dist/text/layout.js.map +1 -0
- package/dist/text/outline.d.ts +22 -0
- package/dist/text/outline.d.ts.map +1 -0
- package/dist/text/outline.js +79 -0
- package/dist/text/outline.js.map +1 -0
- package/dist/text/reader.d.ts +43 -0
- package/dist/text/reader.d.ts.map +1 -0
- package/dist/text/reader.js +83 -0
- package/dist/text/reader.js.map +1 -0
- package/dist/text/registry.d.ts +21 -0
- package/dist/text/registry.d.ts.map +1 -0
- package/dist/text/registry.js +32 -0
- package/dist/text/registry.js.map +1 -0
- package/dist/text/truetype.d.ts +44 -0
- package/dist/text/truetype.d.ts.map +1 -0
- package/dist/text/truetype.js +127 -0
- package/dist/text/truetype.js.map +1 -0
- package/dist/text/types.d.ts +106 -0
- package/dist/text/types.d.ts.map +1 -0
- package/dist/text/types.js +11 -0
- package/dist/text/types.js.map +1 -0
- package/dist/verify/camera.d.ts +59 -0
- package/dist/verify/camera.d.ts.map +1 -0
- package/dist/verify/camera.js +76 -0
- package/dist/verify/camera.js.map +1 -0
- package/dist/verify/capture.d.ts +40 -0
- package/dist/verify/capture.d.ts.map +1 -0
- package/dist/verify/capture.js +118 -0
- package/dist/verify/capture.js.map +1 -0
- package/dist/verify/coverage.d.ts +61 -0
- package/dist/verify/coverage.d.ts.map +1 -0
- package/dist/verify/coverage.js +90 -0
- package/dist/verify/coverage.js.map +1 -0
- package/dist/verify/degrade.d.ts +143 -0
- package/dist/verify/degrade.d.ts.map +1 -0
- package/dist/verify/degrade.js +503 -0
- package/dist/verify/degrade.js.map +1 -0
- package/dist/verify/fixes.d.ts +28 -0
- package/dist/verify/fixes.d.ts.map +1 -0
- package/dist/verify/fixes.js +277 -0
- package/dist/verify/fixes.js.map +1 -0
- package/dist/verify/homography.d.ts +32 -0
- package/dist/verify/homography.d.ts.map +1 -0
- package/dist/verify/homography.js +79 -0
- package/dist/verify/homography.js.map +1 -0
- package/dist/verify/index.d.ts +17 -0
- package/dist/verify/index.d.ts.map +1 -0
- package/dist/verify/index.js +11 -0
- package/dist/verify/index.js.map +1 -0
- package/dist/verify/inks.d.ts +39 -0
- package/dist/verify/inks.d.ts.map +1 -0
- package/dist/verify/inks.js +101 -0
- package/dist/verify/inks.js.map +1 -0
- package/dist/verify/job.d.ts +89 -0
- package/dist/verify/job.d.ts.map +1 -0
- package/dist/verify/job.js +314 -0
- package/dist/verify/job.js.map +1 -0
- package/dist/verify/keys.d.ts +92 -0
- package/dist/verify/keys.d.ts.map +1 -0
- package/dist/verify/keys.js +95 -0
- package/dist/verify/keys.js.map +1 -0
- package/dist/verify/ladders.d.ts +68 -0
- package/dist/verify/ladders.d.ts.map +1 -0
- package/dist/verify/ladders.js +154 -0
- package/dist/verify/ladders.js.map +1 -0
- package/dist/verify/prepare.d.ts +78 -0
- package/dist/verify/prepare.d.ts.map +1 -0
- package/dist/verify/prepare.js +307 -0
- package/dist/verify/prepare.js.map +1 -0
- package/dist/verify/preset.d.ts +111 -0
- package/dist/verify/preset.d.ts.map +1 -0
- package/dist/verify/preset.js +200 -0
- package/dist/verify/preset.js.map +1 -0
- package/dist/verify/read.d.ts +23 -0
- package/dist/verify/read.d.ts.map +1 -0
- package/dist/verify/read.js +55 -0
- package/dist/verify/read.js.map +1 -0
- package/dist/verify/region.d.ts +37 -0
- package/dist/verify/region.d.ts.map +1 -0
- package/dist/verify/region.js +80 -0
- package/dist/verify/region.js.map +1 -0
- package/dist/verify/static.d.ts +56 -0
- package/dist/verify/static.d.ts.map +1 -0
- package/dist/verify/static.js +277 -0
- package/dist/verify/static.js.map +1 -0
- package/dist/verify/types.d.ts +173 -0
- package/dist/verify/types.d.ts.map +1 -0
- package/dist/verify/types.js +36 -0
- package/dist/verify/types.js.map +1 -0
- package/package.json +191 -5
|
@@ -0,0 +1,327 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reading a spreadsheet export: RFC 4180, with what spreadsheets really
|
|
3
|
+
* write.
|
|
4
|
+
*
|
|
5
|
+
* RFC 4180 (section 2) is the grammar: cells separated by a delimiter,
|
|
6
|
+
* records by line breaks, a cell that holds a delimiter, a quote or a line
|
|
7
|
+
* break wrapped in double quotes, and a quote inside one written twice. On top
|
|
8
|
+
* of that, the things Excel, Google Sheets and Numbers do that the RFC does
|
|
9
|
+
* not mention:
|
|
10
|
+
*
|
|
11
|
+
* - A UTF-8 byte order mark at the start, which Excel writes so that it can
|
|
12
|
+
* read its own file back. It is not part of the first header.
|
|
13
|
+
* - Line breaks of any kind: CRLF from Windows, LF from everything else, CR
|
|
14
|
+
* alone from old Macs. Inside a quoted cell they are all read as LF, which
|
|
15
|
+
* is what a multi-line content field takes and what Excel writes for Alt
|
|
16
|
+
* and Enter.
|
|
17
|
+
* - A semicolon or a tab as the delimiter. Excel writes semicolons wherever
|
|
18
|
+
* the decimal separator is a comma (most of Europe and South America), and
|
|
19
|
+
* "Unicode text" is tab separated. 'auto' sniffs which, and honours the
|
|
20
|
+
* `sep=;` first line Excel reads and writes as a hint.
|
|
21
|
+
* - Rows of nothing but delimiters at the end, which Excel exports for rows
|
|
22
|
+
* that were formatted but never filled, and blank lines anywhere. Neither
|
|
23
|
+
* is a row. A blank line still counts towards row numbers, because a
|
|
24
|
+
* spreadsheet shows it as a row, and numbers here are the ones a person
|
|
25
|
+
* finds their cell by.
|
|
26
|
+
* - Ragged rows. A short row is padded with empty cells and a long one cut
|
|
27
|
+
* to the header, each with a warning rather than a refusal, because one
|
|
28
|
+
* bad line should not stop five hundred good ones.
|
|
29
|
+
*
|
|
30
|
+
* What is refused is what cannot be read without guessing: a quoted cell
|
|
31
|
+
* that never closes, a quote in the middle of an unquoted cell, and text
|
|
32
|
+
* straight after a closing quote. A guess there shifts every later cell into
|
|
33
|
+
* the wrong column, so the file is refused with the row and column it went
|
|
34
|
+
* wrong at, and never the text of the cell.
|
|
35
|
+
*/
|
|
36
|
+
import { issue } from '../core/issue.js';
|
|
37
|
+
import { MalformedCsvError, TooManyRowsError } from './errors.js';
|
|
38
|
+
import { BATCH_ISSUES } from './issues.js';
|
|
39
|
+
/** The most data rows read by default: a large print run, and a ZIP's entry count leaves room for it. */
|
|
40
|
+
export const DEFAULT_MAX_ROWS = 10_000;
|
|
41
|
+
/** The highest `maxRows` a caller may ask for. A ZIP holds 65,535 entries without ZIP64. */
|
|
42
|
+
export const MAX_ROWS_LIMIT = 65_000;
|
|
43
|
+
const QUOTE = 0x22;
|
|
44
|
+
const CR = 0x0d;
|
|
45
|
+
const LF = 0x0a;
|
|
46
|
+
const BOM = 0xfeff;
|
|
47
|
+
const DELIMITERS = [',', ';', '\t'];
|
|
48
|
+
/** Records looked at to sniff the delimiter, and the most text that takes. */
|
|
49
|
+
const SNIFF_RECORDS = 20;
|
|
50
|
+
const SNIFF_CHARS = 65_536;
|
|
51
|
+
/**
|
|
52
|
+
* Which delimiter the text uses, from up to its first 20 records.
|
|
53
|
+
*
|
|
54
|
+
* A delimiter that appears the same number of times, outside quotes, in
|
|
55
|
+
* every record is the answer; among several, the one that appears most, then
|
|
56
|
+
* tab, semicolon and comma in that order, because a tab inside text is rare
|
|
57
|
+
* and a semicolon file has commas in its numbers. When none is consistent,
|
|
58
|
+
* the one the header uses most, and a comma when the header uses none (a file
|
|
59
|
+
* with one column).
|
|
60
|
+
*/
|
|
61
|
+
export function sniffDelimiter(text) {
|
|
62
|
+
if (typeof text !== 'string')
|
|
63
|
+
throw new TypeError('sniffDelimiter: text is a string.');
|
|
64
|
+
return sniffFrom(text, text.charCodeAt(0) === BOM ? 1 : 0);
|
|
65
|
+
}
|
|
66
|
+
function sniffFrom(text, start) {
|
|
67
|
+
const end = Math.min(text.length, start + SNIFF_CHARS);
|
|
68
|
+
const counts = [];
|
|
69
|
+
let current = [0, 0, 0];
|
|
70
|
+
let inQuote = false;
|
|
71
|
+
let blank = true;
|
|
72
|
+
for (let i = start; i < end; i += 1) {
|
|
73
|
+
const c = text.charCodeAt(i);
|
|
74
|
+
if (c === QUOTE) {
|
|
75
|
+
inQuote = !inQuote;
|
|
76
|
+
blank = false;
|
|
77
|
+
continue;
|
|
78
|
+
}
|
|
79
|
+
if (inQuote)
|
|
80
|
+
continue;
|
|
81
|
+
if (c === CR || c === LF) {
|
|
82
|
+
if (c === CR && text.charCodeAt(i + 1) === LF)
|
|
83
|
+
i += 1;
|
|
84
|
+
if (!blank)
|
|
85
|
+
counts.push(current);
|
|
86
|
+
current = [0, 0, 0];
|
|
87
|
+
blank = true;
|
|
88
|
+
if (counts.length === SNIFF_RECORDS)
|
|
89
|
+
break;
|
|
90
|
+
continue;
|
|
91
|
+
}
|
|
92
|
+
blank = false;
|
|
93
|
+
const which = c === 0x2c ? 0 : c === 0x3b ? 1 : c === 0x09 ? 2 : -1;
|
|
94
|
+
if (which >= 0)
|
|
95
|
+
current[which] = current[which] + 1;
|
|
96
|
+
}
|
|
97
|
+
if (!blank) {
|
|
98
|
+
// A record cut off by the sample's end is not a fair count, unless it is
|
|
99
|
+
// the end of the file or the only record there is.
|
|
100
|
+
if ((end === text.length && !inQuote) || counts.length === 0)
|
|
101
|
+
counts.push(current);
|
|
102
|
+
}
|
|
103
|
+
if (counts.length === 0)
|
|
104
|
+
return ',';
|
|
105
|
+
let best = null;
|
|
106
|
+
let bestCount = 0;
|
|
107
|
+
// Tab, then semicolon, then comma, so an equal count goes to the earlier.
|
|
108
|
+
for (const which of [2, 1, 0]) {
|
|
109
|
+
const first = counts[0][which];
|
|
110
|
+
if (first === 0 || !counts.every((record) => record[which] === first))
|
|
111
|
+
continue;
|
|
112
|
+
if (first > bestCount) {
|
|
113
|
+
best = DELIMITERS[which];
|
|
114
|
+
bestCount = first;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
if (best !== null)
|
|
118
|
+
return best;
|
|
119
|
+
const header = counts[0];
|
|
120
|
+
let chosen = 0;
|
|
121
|
+
for (const which of [2, 1, 0])
|
|
122
|
+
if (header[which] > header[chosen])
|
|
123
|
+
chosen = which;
|
|
124
|
+
return DELIMITERS[chosen];
|
|
125
|
+
}
|
|
126
|
+
/** An Excel `sep=` first line: the delimiter it names and where the data starts. */
|
|
127
|
+
function sepLine(text, start) {
|
|
128
|
+
if (text.slice(start, start + 4).toLowerCase() !== 'sep=')
|
|
129
|
+
return null;
|
|
130
|
+
const delimiter = text[start + 4];
|
|
131
|
+
if (delimiter !== ',' && delimiter !== ';' && delimiter !== '\t')
|
|
132
|
+
return null;
|
|
133
|
+
const after = start + 5;
|
|
134
|
+
if (after === text.length)
|
|
135
|
+
return { delimiter, next: after };
|
|
136
|
+
const c = text.charCodeAt(after);
|
|
137
|
+
if (c === LF)
|
|
138
|
+
return { delimiter, next: after + 1 };
|
|
139
|
+
if (c === CR)
|
|
140
|
+
return { delimiter, next: text.charCodeAt(after + 1) === LF ? after + 2 : after + 1 };
|
|
141
|
+
return null;
|
|
142
|
+
}
|
|
143
|
+
function checkOptions(options) {
|
|
144
|
+
if (typeof options !== 'object' || options === null) {
|
|
145
|
+
throw new TypeError('parseCsv: options is an object.');
|
|
146
|
+
}
|
|
147
|
+
const delimiter = options.delimiter ?? 'auto';
|
|
148
|
+
if (delimiter !== 'auto' && !DELIMITERS.includes(delimiter)) {
|
|
149
|
+
throw new TypeError("parseCsv: delimiter is ',', ';', a tab or 'auto'.");
|
|
150
|
+
}
|
|
151
|
+
const max = options.maxRows ?? DEFAULT_MAX_ROWS;
|
|
152
|
+
if (!Number.isInteger(max) || max < 1 || max > MAX_ROWS_LIMIT) {
|
|
153
|
+
throw new TypeError(`parseCsv: maxRows is a whole number from 1 to ${MAX_ROWS_LIMIT}.`);
|
|
154
|
+
}
|
|
155
|
+
return { delimiter, max };
|
|
156
|
+
}
|
|
157
|
+
/** The folding a header is matched by when no header is exactly the name asked for. */
|
|
158
|
+
export function foldHeader(name) {
|
|
159
|
+
return name.trim().toLowerCase();
|
|
160
|
+
}
|
|
161
|
+
/** A spreadsheet export as headers and rows. Throws 'batch/malformed-csv' and 'batch/too-many-rows'. */
|
|
162
|
+
export function parseCsv(text, options = {}) {
|
|
163
|
+
if (typeof text !== 'string')
|
|
164
|
+
throw new TypeError('parseCsv: text is a string.');
|
|
165
|
+
const checked = checkOptions(options);
|
|
166
|
+
let at = text.charCodeAt(0) === BOM ? 1 : 0;
|
|
167
|
+
let line = 1;
|
|
168
|
+
const sep = sepLine(text, at);
|
|
169
|
+
if (sep !== null) {
|
|
170
|
+
at = sep.next;
|
|
171
|
+
line = 2;
|
|
172
|
+
}
|
|
173
|
+
const delimiter = checked.delimiter !== 'auto' ? checked.delimiter : (sep?.delimiter ?? sniffFrom(text, at));
|
|
174
|
+
const delim = delimiter.charCodeAt(0);
|
|
175
|
+
const n = text.length;
|
|
176
|
+
let headers = null;
|
|
177
|
+
const rows = [];
|
|
178
|
+
const rowNumbers = [];
|
|
179
|
+
const issues = [];
|
|
180
|
+
// Rows of nothing but empty cells, held back until a row with something in
|
|
181
|
+
// it shows they were not the end of the file. Kept as their row numbers
|
|
182
|
+
// only: every cell in them is empty.
|
|
183
|
+
const pending = [];
|
|
184
|
+
let record = 0;
|
|
185
|
+
const accept = (cells, rowNumber, empty) => {
|
|
186
|
+
const width = headers.length;
|
|
187
|
+
const index = rows.length;
|
|
188
|
+
if (empty) {
|
|
189
|
+
cells = new Array(width).fill('');
|
|
190
|
+
}
|
|
191
|
+
else if (cells.length < width) {
|
|
192
|
+
issues.push(issue(BATCH_ISSUES.shortRow, ['rows', index], 'warning', {
|
|
193
|
+
row: rowNumber,
|
|
194
|
+
cells: cells.length,
|
|
195
|
+
expected: width,
|
|
196
|
+
}));
|
|
197
|
+
while (cells.length < width)
|
|
198
|
+
cells.push('');
|
|
199
|
+
}
|
|
200
|
+
else if (cells.length > width) {
|
|
201
|
+
if (cells.slice(width).some((cell) => cell !== '')) {
|
|
202
|
+
issues.push(issue(BATCH_ISSUES.longRow, ['rows', index], 'warning', {
|
|
203
|
+
row: rowNumber,
|
|
204
|
+
cells: cells.length,
|
|
205
|
+
expected: width,
|
|
206
|
+
}));
|
|
207
|
+
}
|
|
208
|
+
cells.length = width;
|
|
209
|
+
}
|
|
210
|
+
rows.push(Object.freeze(cells));
|
|
211
|
+
rowNumbers.push(rowNumber);
|
|
212
|
+
if (rows.length > checked.max)
|
|
213
|
+
throw new TooManyRowsError(checked.max);
|
|
214
|
+
};
|
|
215
|
+
while (at < n) {
|
|
216
|
+
const first = text.charCodeAt(at);
|
|
217
|
+
if (first === LF || first === CR) {
|
|
218
|
+
// A blank line: a row in a spreadsheet's numbering, nothing here.
|
|
219
|
+
record += 1;
|
|
220
|
+
line += 1;
|
|
221
|
+
at += first === CR && text.charCodeAt(at + 1) === LF ? 2 : 1;
|
|
222
|
+
continue;
|
|
223
|
+
}
|
|
224
|
+
record += 1;
|
|
225
|
+
const cells = [];
|
|
226
|
+
for (;;) {
|
|
227
|
+
const column = cells.length + 1;
|
|
228
|
+
if (at < n && text.charCodeAt(at) === QUOTE) {
|
|
229
|
+
const opened = { row: record, column, line };
|
|
230
|
+
at += 1;
|
|
231
|
+
let value = '';
|
|
232
|
+
for (;;) {
|
|
233
|
+
const close = text.indexOf('"', at);
|
|
234
|
+
if (close === -1)
|
|
235
|
+
throw new MalformedCsvError('unterminated-quote', opened);
|
|
236
|
+
const part = text.slice(at, close);
|
|
237
|
+
if (part.includes('\r') || part.includes('\n')) {
|
|
238
|
+
const normal = part.replace(/\r\n?/g, '\n');
|
|
239
|
+
for (let i = 0; i < normal.length; i += 1)
|
|
240
|
+
if (normal.charCodeAt(i) === LF)
|
|
241
|
+
line += 1;
|
|
242
|
+
value += normal;
|
|
243
|
+
}
|
|
244
|
+
else
|
|
245
|
+
value += part;
|
|
246
|
+
if (text.charCodeAt(close + 1) === QUOTE) {
|
|
247
|
+
value += '"';
|
|
248
|
+
at = close + 2;
|
|
249
|
+
continue;
|
|
250
|
+
}
|
|
251
|
+
at = close + 1;
|
|
252
|
+
break;
|
|
253
|
+
}
|
|
254
|
+
if (at < n) {
|
|
255
|
+
const next = text.charCodeAt(at);
|
|
256
|
+
if (next !== delim && next !== CR && next !== LF) {
|
|
257
|
+
throw new MalformedCsvError('text-after-quote', { row: record, column, line });
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
cells.push(value);
|
|
261
|
+
}
|
|
262
|
+
else {
|
|
263
|
+
let end = at;
|
|
264
|
+
while (end < n) {
|
|
265
|
+
const c = text.charCodeAt(end);
|
|
266
|
+
if (c === delim || c === CR || c === LF)
|
|
267
|
+
break;
|
|
268
|
+
if (c === QUOTE)
|
|
269
|
+
throw new MalformedCsvError('stray-quote', { row: record, column, line });
|
|
270
|
+
end += 1;
|
|
271
|
+
}
|
|
272
|
+
cells.push(text.slice(at, end));
|
|
273
|
+
at = end;
|
|
274
|
+
}
|
|
275
|
+
if (at >= n)
|
|
276
|
+
break;
|
|
277
|
+
const c = text.charCodeAt(at);
|
|
278
|
+
if (c === delim) {
|
|
279
|
+
at += 1;
|
|
280
|
+
continue;
|
|
281
|
+
}
|
|
282
|
+
at += c === CR && text.charCodeAt(at + 1) === LF ? 2 : 1;
|
|
283
|
+
line += 1;
|
|
284
|
+
break;
|
|
285
|
+
}
|
|
286
|
+
if (headers === null) {
|
|
287
|
+
// Excel exports columns that were formatted and never named as empty
|
|
288
|
+
// headers at the end; they cannot be mapped, so they are dropped.
|
|
289
|
+
while (cells.length > 1 && cells[cells.length - 1] === '')
|
|
290
|
+
cells.pop();
|
|
291
|
+
headers = cells;
|
|
292
|
+
const seen = new Map();
|
|
293
|
+
headers.forEach((name, index) => {
|
|
294
|
+
if (name === '')
|
|
295
|
+
return;
|
|
296
|
+
const folded = foldHeader(name);
|
|
297
|
+
if (seen.has(folded)) {
|
|
298
|
+
issues.push(issue(BATCH_ISSUES.duplicateHeader, ['headers', index], 'warning', {
|
|
299
|
+
column: index + 1,
|
|
300
|
+
first: seen.get(folded) + 1,
|
|
301
|
+
}));
|
|
302
|
+
}
|
|
303
|
+
else
|
|
304
|
+
seen.set(folded, index);
|
|
305
|
+
});
|
|
306
|
+
continue;
|
|
307
|
+
}
|
|
308
|
+
if (cells.every((cell) => cell === '')) {
|
|
309
|
+
pending.push(record);
|
|
310
|
+
continue;
|
|
311
|
+
}
|
|
312
|
+
for (const held of pending)
|
|
313
|
+
accept([], held, true);
|
|
314
|
+
pending.length = 0;
|
|
315
|
+
accept(cells, record, false);
|
|
316
|
+
}
|
|
317
|
+
if (headers === null)
|
|
318
|
+
throw new MalformedCsvError('empty', { row: 1, column: 1, line });
|
|
319
|
+
return Object.freeze({
|
|
320
|
+
headers: Object.freeze(headers),
|
|
321
|
+
rows: Object.freeze(rows),
|
|
322
|
+
delimiter,
|
|
323
|
+
rowNumbers: Object.freeze(rowNumbers),
|
|
324
|
+
issues: Object.freeze(issues),
|
|
325
|
+
});
|
|
326
|
+
}
|
|
327
|
+
//# sourceMappingURL=csv.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"csv.js","sourceRoot":"","sources":["../../src/batch/csv.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The batch layer's errors.
|
|
3
|
+
*
|
|
4
|
+
* A spreadsheet is somebody's product list, guest list or customer list, so
|
|
5
|
+
* none of these carries a cell's text, a header's text or a file name, in the
|
|
6
|
+
* message or in params. They carry where: the row and column of the problem in
|
|
7
|
+
* the numbering a spreadsheet shows (the header is row 1, the first column is
|
|
8
|
+
* column 1), and the physical line for somebody looking at the file in an
|
|
9
|
+
* editor. That is enough to find the cell and nothing more.
|
|
10
|
+
*/
|
|
11
|
+
import { QrStudioError } from '../core/errors.js';
|
|
12
|
+
import type { CsvFallbackEncoding } from './types.js';
|
|
13
|
+
/** Why a CSV file could not be read. Each is a message key under `batch.malformed-csv.`. */
|
|
14
|
+
export type CsvFailure =
|
|
15
|
+
/** A quoted cell is still open at the end of the file. */
|
|
16
|
+
'unterminated-quote'
|
|
17
|
+
/** A quote inside a cell that does not start with one. RFC 4180 section 2.5. */
|
|
18
|
+
| 'stray-quote'
|
|
19
|
+
/** Something other than a delimiter or a line break straight after a closing quote. */
|
|
20
|
+
| 'text-after-quote'
|
|
21
|
+
/** No header row: the file is empty, or holds nothing but blank lines. */
|
|
22
|
+
| 'empty';
|
|
23
|
+
/** A CSV file that does not follow RFC 4180 closely enough to read without guessing. */
|
|
24
|
+
export declare class MalformedCsvError extends QrStudioError {
|
|
25
|
+
readonly reason: CsvFailure;
|
|
26
|
+
constructor(reason: CsvFailure, where: {
|
|
27
|
+
row: number;
|
|
28
|
+
column: number;
|
|
29
|
+
line: number;
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* This engine's `TextDecoder` cannot read the encoding a CSV was to be read
|
|
34
|
+
* in. Refused rather than read as something else, which would give the person
|
|
35
|
+
* wrong letters and no word about why. Code 'platform/unavailable', with the
|
|
36
|
+
* encoding's WHATWG label as a param.
|
|
37
|
+
*/
|
|
38
|
+
export declare class EncodingUnavailableError extends QrStudioError {
|
|
39
|
+
constructor(encoding: CsvFallbackEncoding);
|
|
40
|
+
}
|
|
41
|
+
/** More data rows than the caller allowed. Refused while reading, so a huge file costs no more than the limit. */
|
|
42
|
+
export declare class TooManyRowsError extends QrStudioError {
|
|
43
|
+
constructor(max: number);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* A mapping names a column the file does not have.
|
|
47
|
+
*
|
|
48
|
+
* The params say which part of the mapping did it (a content field, by its
|
|
49
|
+
* key, or the file name template), never the column name that was asked for:
|
|
50
|
+
* that was typed by a person and may be a word from their data.
|
|
51
|
+
*/
|
|
52
|
+
export declare class UnknownColumnError extends QrStudioError {
|
|
53
|
+
constructor(where: {
|
|
54
|
+
part: 'field';
|
|
55
|
+
field: string;
|
|
56
|
+
} | {
|
|
57
|
+
part: 'filename';
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/batch/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD,4FAA4F;AAC5F,MAAM,MAAM,UAAU;AACrB,0DAA0D;AACxD,oBAAoB;AACtB,gFAAgF;GAC9E,aAAa;AACf,uFAAuF;GACrF,kBAAkB;AACpB,0EAA0E;GACxE,OAAO,CAAC;AAYX,wFAAwF;AACxF,qBAAa,iBAAkB,SAAQ,aAAa;IACnD,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;gBAEhB,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE;CASpF;AAED;;;;;GAKG;AACH,qBAAa,wBAAyB,SAAQ,aAAa;gBAC9C,QAAQ,EAAE,mBAAmB;CAOzC;AAED,kHAAkH;AAClH,qBAAa,gBAAiB,SAAQ,aAAa;gBACtC,GAAG,EAAE,MAAM;CAOvB;AAED;;;;;;GAMG;AACH,qBAAa,kBAAmB,SAAQ,aAAa;gBACxC,KAAK,EAAE;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,UAAU,CAAA;KAAE;CAO1E"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The batch layer's errors.
|
|
3
|
+
*
|
|
4
|
+
* A spreadsheet is somebody's product list, guest list or customer list, so
|
|
5
|
+
* none of these carries a cell's text, a header's text or a file name, in the
|
|
6
|
+
* message or in params. They carry where: the row and column of the problem in
|
|
7
|
+
* the numbering a spreadsheet shows (the header is row 1, the first column is
|
|
8
|
+
* column 1), and the physical line for somebody looking at the file in an
|
|
9
|
+
* editor. That is enough to find the cell and nothing more.
|
|
10
|
+
*/
|
|
11
|
+
import { QrStudioError } from '../core/errors.js';
|
|
12
|
+
const CSV_MESSAGES = Object.freeze({
|
|
13
|
+
'unterminated-quote': 'This file has a quoted cell that never ends, so it cannot be read. Check the row it starts on.',
|
|
14
|
+
'stray-quote': 'This file has a quote mark in the middle of a cell. Save it again from your spreadsheet, or put the cell in quotes.',
|
|
15
|
+
'text-after-quote': 'This file has text straight after the end of a quoted cell. Save it again from your spreadsheet.',
|
|
16
|
+
empty: 'This file has no rows in it.',
|
|
17
|
+
});
|
|
18
|
+
/** A CSV file that does not follow RFC 4180 closely enough to read without guessing. */
|
|
19
|
+
export class MalformedCsvError extends QrStudioError {
|
|
20
|
+
reason;
|
|
21
|
+
constructor(reason, where) {
|
|
22
|
+
super('batch/malformed-csv', CSV_MESSAGES[reason], {
|
|
23
|
+
reason,
|
|
24
|
+
row: where.row,
|
|
25
|
+
column: where.column,
|
|
26
|
+
line: where.line,
|
|
27
|
+
});
|
|
28
|
+
this.reason = reason;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* This engine's `TextDecoder` cannot read the encoding a CSV was to be read
|
|
33
|
+
* in. Refused rather than read as something else, which would give the person
|
|
34
|
+
* wrong letters and no word about why. Code 'platform/unavailable', with the
|
|
35
|
+
* encoding's WHATWG label as a param.
|
|
36
|
+
*/
|
|
37
|
+
export class EncodingUnavailableError extends QrStudioError {
|
|
38
|
+
constructor(encoding) {
|
|
39
|
+
super('platform/unavailable', 'This browser cannot read text in the encoding chosen for this file. Choose another, or save the file from your spreadsheet as CSV UTF-8.', { feature: 'text-encoding', encoding });
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/** More data rows than the caller allowed. Refused while reading, so a huge file costs no more than the limit. */
|
|
43
|
+
export class TooManyRowsError extends QrStudioError {
|
|
44
|
+
constructor(max) {
|
|
45
|
+
super('batch/too-many-rows', 'This file has more rows than this tool makes codes for in one go. Split it into smaller files.', { max });
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* A mapping names a column the file does not have.
|
|
50
|
+
*
|
|
51
|
+
* The params say which part of the mapping did it (a content field, by its
|
|
52
|
+
* key, or the file name template), never the column name that was asked for:
|
|
53
|
+
* that was typed by a person and may be a word from their data.
|
|
54
|
+
*/
|
|
55
|
+
export class UnknownColumnError extends QrStudioError {
|
|
56
|
+
constructor(where) {
|
|
57
|
+
super('batch/unknown-column', 'This refers to a column the file does not have. Choose one of its columns.', where.part === 'field' ? { part: 'field', field: where.field } : { part: 'filename' });
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/batch/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAclD,MAAM,YAAY,GAAyC,MAAM,CAAC,MAAM,CAAC;IACxE,oBAAoB,EACnB,gGAAgG;IACjG,aAAa,EACZ,qHAAqH;IACtH,kBAAkB,EACjB,kGAAkG;IACnG,KAAK,EAAE,8BAA8B;CACrC,CAAC,CAAC;AAEH,wFAAwF;AACxF,MAAM,OAAO,iBAAkB,SAAQ,aAAa;IAC1C,MAAM,CAAa;IAE5B,YAAY,MAAkB,EAAE,KAAoD;QACnF,KAAK,CAAC,qBAAqB,EAAE,YAAY,CAAC,MAAM,CAAC,EAAE;YAClD,MAAM;YACN,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,IAAI,EAAE,KAAK,CAAC,IAAI;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC;CACD;AAED;;;;;GAKG;AACH,MAAM,OAAO,wBAAyB,SAAQ,aAAa;IAC1D,YAAY,QAA6B;QACxC,KAAK,CACJ,sBAAsB,EACtB,0IAA0I,EAC1I,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,CACtC,CAAC;IACH,CAAC;CACD;AAED,kHAAkH;AAClH,MAAM,OAAO,gBAAiB,SAAQ,aAAa;IAClD,YAAY,GAAW;QACtB,KAAK,CACJ,qBAAqB,EACrB,gGAAgG,EAChG,EAAE,GAAG,EAAE,CACP,CAAC;IACH,CAAC;CACD;AAED;;;;;;GAMG;AACH,MAAM,OAAO,kBAAmB,SAAQ,aAAa;IACpD,YAAY,KAA8D;QACzE,KAAK,CACJ,sBAAsB,EACtB,4EAA4E,EAC5E,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CACrF,CAAC;IACH,CAAC;CACD"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* File names for the codes in a batch, built from a person's spreadsheet.
|
|
3
|
+
*
|
|
4
|
+
* A file name template such as `label-{sku}` fills in cells somebody else
|
|
5
|
+
* typed, and the ZIP is opened on Windows, macOS and Linux by extractors of
|
|
6
|
+
* every age. So each name is cleaned until it means the same everywhere and
|
|
7
|
+
* can only land in the folder it was extracted into:
|
|
8
|
+
*
|
|
9
|
+
* - Unicode NFC, so a name typed on a Mac (which once stored decomposed
|
|
10
|
+
* accents) and the same name typed elsewhere are one name, for duplicates
|
|
11
|
+
* as well as for display.
|
|
12
|
+
* - No path at all: `/` and `\` and the other characters Windows reserves
|
|
13
|
+
* (`< > : " | ? *`) become hyphens, and runs of dots become one, so no
|
|
14
|
+
* `..` survives anywhere in a name, let alone as a folder.
|
|
15
|
+
* - No control characters, and none of the invisible ones that reorder or
|
|
16
|
+
* hide text: "invoice", a right-to-left override (U+202E) and "gpj.exe"
|
|
17
|
+
* display as "invoiceexe.jpg", which is why they are removed rather than
|
|
18
|
+
* kept.
|
|
19
|
+
* - Nothing at either end that a system treats specially: a leading dot
|
|
20
|
+
* hides a file on Unix, a leading hyphen reads as an option to a shell
|
|
21
|
+
* command, and Windows drops trailing dots and spaces, so "a." and "a"
|
|
22
|
+
* would be one file there.
|
|
23
|
+
* - Not one of Windows' device names (CON, PRN, AUX, NUL, COM0 to COM9, LPT0
|
|
24
|
+
* to LPT9 and the superscript forms), with or without an extension, which
|
|
25
|
+
* Windows will not create as files. These get a leading underscore.
|
|
26
|
+
* - At most 120 bytes of UTF-8, cut at a character boundary, leaving room
|
|
27
|
+
* under every file system's 255 for a number and an extension.
|
|
28
|
+
* - An extension this layer adds itself is taken off the end, so a template
|
|
29
|
+
* of `{sku}.png` does not give `ABC.png.png`.
|
|
30
|
+
*
|
|
31
|
+
* Every rule is applied until nothing changes, so cleaning a clean name gives
|
|
32
|
+
* it back unchanged: `runBatch` cleans the names it is given again, in case
|
|
33
|
+
* they did not come from `planBatch`, and must not rename anything that did.
|
|
34
|
+
*/
|
|
35
|
+
/** The most bytes of UTF-8 in a name before its number and extension. */
|
|
36
|
+
export declare const MAX_NAME_BYTES = 120;
|
|
37
|
+
/**
|
|
38
|
+
* A name safe to write into a ZIP on every system, without an extension, or
|
|
39
|
+
* '' when nothing usable is left. The same name cleaned twice is unchanged.
|
|
40
|
+
*/
|
|
41
|
+
export declare function sanitiseFilename(text: string, max?: number): string;
|
|
42
|
+
/** How two names are compared for being the same file: NFC already, and case-folded as macOS and Windows extract. */
|
|
43
|
+
export declare function filenameKey(name: string): string;
|
|
44
|
+
export interface NamedRow {
|
|
45
|
+
/** The cleaned name, or '' to use the fallback. */
|
|
46
|
+
readonly name: string;
|
|
47
|
+
/** The name to use when `name` is empty: `qr-<row number>`. */
|
|
48
|
+
readonly fallback: string;
|
|
49
|
+
}
|
|
50
|
+
export interface UniqueName {
|
|
51
|
+
readonly name: string;
|
|
52
|
+
/** The number added to tell it from an earlier row with the same name, or null. */
|
|
53
|
+
readonly number: number | null;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* One name per row, unique under case folding, in the order given.
|
|
57
|
+
*
|
|
58
|
+
* The first row with a name keeps it; a later row with the same one becomes
|
|
59
|
+
* `name-2`, then `name-3`, skipping any number another row already has as its
|
|
60
|
+
* own name, so a row that is really called `label-2` keeps that and the
|
|
61
|
+
* second `label` becomes `label-3`. A numbered name is cut short first if it
|
|
62
|
+
* would pass the length limit, so cleaning it again leaves it alone.
|
|
63
|
+
*/
|
|
64
|
+
export declare function uniqueFilenames(rows: readonly NamedRow[], max?: number): UniqueName[];
|
|
65
|
+
//# sourceMappingURL=filename.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filename.d.ts","sourceRoot":"","sources":["../../src/batch/filename.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH,yEAAyE;AACzE,eAAO,MAAM,cAAc,MAAM,CAAC;AAgHlC;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,SAAiB,GAAG,MAAM,CAa3E;AAED,qHAAqH;AACrH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED,MAAM,WAAW,QAAQ;IACxB,mDAAmD;IACnD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,UAAU;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,mFAAmF;IACnF,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,QAAQ,EAAE,EAAE,GAAG,SAAiB,GAAG,UAAU,EAAE,CA6B7F"}
|