@hexpro/qr-code-studio 0.0.0-stage → 0.1.0

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.
Files changed (1341) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/LICENSE +21 -0
  3. package/README.md +62 -2
  4. package/dist/app/bulk.d.ts +21 -0
  5. package/dist/app/bulk.d.ts.map +1 -0
  6. package/dist/app/bulk.js +564 -0
  7. package/dist/app/bulk.js.map +1 -0
  8. package/dist/app/check.d.ts +23 -0
  9. package/dist/app/check.d.ts.map +1 -0
  10. package/dist/app/check.js +306 -0
  11. package/dist/app/check.js.map +1 -0
  12. package/dist/app/content.d.ts +19 -0
  13. package/dist/app/content.d.ts.map +1 -0
  14. package/dist/app/content.js +634 -0
  15. package/dist/app/content.js.map +1 -0
  16. package/dist/app/context.d.ts +25 -0
  17. package/dist/app/context.d.ts.map +1 -0
  18. package/dist/app/context.js +11 -0
  19. package/dist/app/context.js.map +1 -0
  20. package/dist/app/controls.d.ts +95 -0
  21. package/dist/app/controls.d.ts.map +1 -0
  22. package/dist/app/controls.js +272 -0
  23. package/dist/app/controls.js.map +1 -0
  24. package/dist/app/design-panels.d.ts +27 -0
  25. package/dist/app/design-panels.d.ts.map +1 -0
  26. package/dist/app/design-panels.js +1196 -0
  27. package/dist/app/design-panels.js.map +1 -0
  28. package/dist/app/dom.d.ts +74 -0
  29. package/dist/app/dom.d.ts.map +1 -0
  30. package/dist/app/dom.js +129 -0
  31. package/dist/app/dom.js.map +1 -0
  32. package/dist/app/images.d.ts +22 -0
  33. package/dist/app/images.d.ts.map +1 -0
  34. package/dist/app/images.js +50 -0
  35. package/dist/app/images.js.map +1 -0
  36. package/dist/app/library-view.d.ts +24 -0
  37. package/dist/app/library-view.d.ts.map +1 -0
  38. package/dist/app/library-view.js +260 -0
  39. package/dist/app/library-view.js.map +1 -0
  40. package/dist/app/main.d.ts +17 -0
  41. package/dist/app/main.d.ts.map +1 -0
  42. package/dist/app/main.js +518 -0
  43. package/dist/app/main.js.map +1 -0
  44. package/dist/app/measure.d.ts +26 -0
  45. package/dist/app/measure.d.ts.map +1 -0
  46. package/dist/app/measure.js +53 -0
  47. package/dist/app/measure.js.map +1 -0
  48. package/dist/app/proof.d.ts +30 -0
  49. package/dist/app/proof.d.ts.map +1 -0
  50. package/dist/app/proof.js +378 -0
  51. package/dist/app/proof.js.map +1 -0
  52. package/dist/app/save.d.ts +27 -0
  53. package/dist/app/save.d.ts.map +1 -0
  54. package/dist/app/save.js +331 -0
  55. package/dist/app/save.js.map +1 -0
  56. package/dist/app/scan.d.ts +25 -0
  57. package/dist/app/scan.d.ts.map +1 -0
  58. package/dist/app/scan.js +421 -0
  59. package/dist/app/scan.js.map +1 -0
  60. package/dist/app/shortcuts.d.ts +12 -0
  61. package/dist/app/shortcuts.d.ts.map +1 -0
  62. package/dist/app/shortcuts.js +17 -0
  63. package/dist/app/shortcuts.js.map +1 -0
  64. package/dist/app/text.d.ts +22 -0
  65. package/dist/app/text.d.ts.map +1 -0
  66. package/dist/app/text.js +50 -0
  67. package/dist/app/text.js.map +1 -0
  68. package/dist/batch/csv.d.ts +56 -0
  69. package/dist/batch/csv.d.ts.map +1 -0
  70. package/dist/batch/csv.js +327 -0
  71. package/dist/batch/csv.js.map +1 -0
  72. package/dist/batch/errors.d.ts +60 -0
  73. package/dist/batch/errors.d.ts.map +1 -0
  74. package/dist/batch/errors.js +60 -0
  75. package/dist/batch/errors.js.map +1 -0
  76. package/dist/batch/filename.d.ts +65 -0
  77. package/dist/batch/filename.d.ts.map +1 -0
  78. package/dist/batch/filename.js +205 -0
  79. package/dist/batch/filename.js.map +1 -0
  80. package/dist/batch/index.d.ts +17 -0
  81. package/dist/batch/index.d.ts.map +1 -0
  82. package/dist/batch/index.js +11 -0
  83. package/dist/batch/index.js.map +1 -0
  84. package/dist/batch/issues.d.ts +45 -0
  85. package/dist/batch/issues.d.ts.map +1 -0
  86. package/dist/batch/issues.js +47 -0
  87. package/dist/batch/issues.js.map +1 -0
  88. package/dist/batch/manifest.d.ts +43 -0
  89. package/dist/batch/manifest.d.ts.map +1 -0
  90. package/dist/batch/manifest.js +82 -0
  91. package/dist/batch/manifest.js.map +1 -0
  92. package/dist/batch/plan.d.ts +33 -0
  93. package/dist/batch/plan.d.ts.map +1 -0
  94. package/dist/batch/plan.js +254 -0
  95. package/dist/batch/plan.js.map +1 -0
  96. package/dist/batch/run.d.ts +68 -0
  97. package/dist/batch/run.d.ts.map +1 -0
  98. package/dist/batch/run.js +548 -0
  99. package/dist/batch/run.js.map +1 -0
  100. package/dist/batch/template.d.ts +54 -0
  101. package/dist/batch/template.d.ts.map +1 -0
  102. package/dist/batch/template.js +119 -0
  103. package/dist/batch/template.js.map +1 -0
  104. package/dist/batch/text-decoding.d.ts +49 -0
  105. package/dist/batch/text-decoding.d.ts.map +1 -0
  106. package/dist/batch/text-decoding.js +160 -0
  107. package/dist/batch/text-decoding.js.map +1 -0
  108. package/dist/batch/types.d.ts +240 -0
  109. package/dist/batch/types.d.ts.map +1 -0
  110. package/dist/batch/types.js +35 -0
  111. package/dist/batch/types.js.map +1 -0
  112. package/dist/batch/verify.d.ts +45 -0
  113. package/dist/batch/verify.d.ts.map +1 -0
  114. package/dist/batch/verify.js +72 -0
  115. package/dist/batch/verify.js.map +1 -0
  116. package/dist/batch/zip.d.ts +39 -0
  117. package/dist/batch/zip.d.ts.map +1 -0
  118. package/dist/batch/zip.js +201 -0
  119. package/dist/batch/zip.js.map +1 -0
  120. package/dist/conformance/finder.d.ts +67 -0
  121. package/dist/conformance/finder.d.ts.map +1 -0
  122. package/dist/conformance/finder.js +125 -0
  123. package/dist/conformance/finder.js.map +1 -0
  124. package/dist/conformance/frame.d.ts +28 -0
  125. package/dist/conformance/frame.d.ts.map +1 -0
  126. package/dist/conformance/frame.js +134 -0
  127. package/dist/conformance/frame.js.map +1 -0
  128. package/dist/conformance/index.d.ts +15 -0
  129. package/dist/conformance/index.d.ts.map +1 -0
  130. package/dist/conformance/index.js +8 -0
  131. package/dist/conformance/index.js.map +1 -0
  132. package/dist/conformance/module-shape.d.ts +35 -0
  133. package/dist/conformance/module-shape.d.ts.map +1 -0
  134. package/dist/conformance/module-shape.js +139 -0
  135. package/dist/conformance/module-shape.js.map +1 -0
  136. package/dist/conformance/payload-type.d.ts +48 -0
  137. package/dist/conformance/payload-type.d.ts.map +1 -0
  138. package/dist/conformance/payload-type.js +113 -0
  139. package/dist/conformance/payload-type.js.map +1 -0
  140. package/dist/conformance/preset.d.ts +37 -0
  141. package/dist/conformance/preset.d.ts.map +1 -0
  142. package/dist/conformance/preset.js +171 -0
  143. package/dist/conformance/preset.js.map +1 -0
  144. package/dist/conformance/region-captures.d.ts +41 -0
  145. package/dist/conformance/region-captures.d.ts.map +1 -0
  146. package/dist/conformance/region-captures.js +69 -0
  147. package/dist/conformance/region-captures.js.map +1 -0
  148. package/dist/conformance/region-shape.d.ts +43 -0
  149. package/dist/conformance/region-shape.d.ts.map +1 -0
  150. package/dist/conformance/region-shape.js +214 -0
  151. package/dist/conformance/region-shape.js.map +1 -0
  152. package/dist/conformance/sample.d.ts +13 -0
  153. package/dist/conformance/sample.d.ts.map +1 -0
  154. package/dist/conformance/sample.js +75 -0
  155. package/dist/conformance/sample.js.map +1 -0
  156. package/dist/conformance/types.d.ts +16 -0
  157. package/dist/conformance/types.d.ts.map +1 -0
  158. package/dist/conformance/types.js +10 -0
  159. package/dist/conformance/types.js.map +1 -0
  160. package/dist/core/bch.d.ts +36 -0
  161. package/dist/core/bch.d.ts.map +1 -0
  162. package/dist/core/bch.js +92 -0
  163. package/dist/core/bch.js.map +1 -0
  164. package/dist/core/bit-matrix.d.ts +56 -0
  165. package/dist/core/bit-matrix.d.ts.map +1 -0
  166. package/dist/core/bit-matrix.js +150 -0
  167. package/dist/core/bit-matrix.js.map +1 -0
  168. package/dist/core/bits.d.ts +53 -0
  169. package/dist/core/bits.d.ts.map +1 -0
  170. package/dist/core/bits.js +128 -0
  171. package/dist/core/bits.js.map +1 -0
  172. package/dist/core/checksums.d.ts +22 -0
  173. package/dist/core/checksums.d.ts.map +1 -0
  174. package/dist/core/checksums.js +64 -0
  175. package/dist/core/checksums.js.map +1 -0
  176. package/dist/core/deflate.d.ts +51 -0
  177. package/dist/core/deflate.d.ts.map +1 -0
  178. package/dist/core/deflate.js +851 -0
  179. package/dist/core/deflate.js.map +1 -0
  180. package/dist/core/errors.d.ts +123 -0
  181. package/dist/core/errors.d.ts.map +1 -0
  182. package/dist/core/errors.js +168 -0
  183. package/dist/core/errors.js.map +1 -0
  184. package/dist/core/field.d.ts +58 -0
  185. package/dist/core/field.d.ts.map +1 -0
  186. package/dist/core/field.js +184 -0
  187. package/dist/core/field.js.map +1 -0
  188. package/dist/core/huffman.d.ts +31 -0
  189. package/dist/core/huffman.d.ts.map +1 -0
  190. package/dist/core/huffman.js +131 -0
  191. package/dist/core/huffman.js.map +1 -0
  192. package/dist/core/image.d.ts +18 -0
  193. package/dist/core/image.d.ts.map +1 -0
  194. package/dist/core/image.js +2 -0
  195. package/dist/core/image.js.map +1 -0
  196. package/dist/core/index.d.ts +25 -0
  197. package/dist/core/index.d.ts.map +1 -0
  198. package/dist/core/index.js +15 -0
  199. package/dist/core/index.js.map +1 -0
  200. package/dist/core/issue.d.ts +39 -0
  201. package/dist/core/issue.d.ts.map +1 -0
  202. package/dist/core/issue.js +24 -0
  203. package/dist/core/issue.js.map +1 -0
  204. package/dist/core/math.d.ts +56 -0
  205. package/dist/core/math.d.ts.map +1 -0
  206. package/dist/core/math.js +609 -0
  207. package/dist/core/math.js.map +1 -0
  208. package/dist/core/prng.d.ts +27 -0
  209. package/dist/core/prng.d.ts.map +1 -0
  210. package/dist/core/prng.js +111 -0
  211. package/dist/core/prng.js.map +1 -0
  212. package/dist/core/reed-solomon.d.ts +69 -0
  213. package/dist/core/reed-solomon.d.ts.map +1 -0
  214. package/dist/core/reed-solomon.js +308 -0
  215. package/dist/core/reed-solomon.js.map +1 -0
  216. package/dist/core/registry.d.ts +45 -0
  217. package/dist/core/registry.d.ts.map +1 -0
  218. package/dist/core/registry.js +80 -0
  219. package/dist/core/registry.js.map +1 -0
  220. package/dist/core/result.d.ts +33 -0
  221. package/dist/core/result.d.ts.map +1 -0
  222. package/dist/core/result.js +52 -0
  223. package/dist/core/result.js.map +1 -0
  224. package/dist/core/zip.d.ts +36 -0
  225. package/dist/core/zip.d.ts.map +1 -0
  226. package/dist/core/zip.js +234 -0
  227. package/dist/core/zip.js.map +1 -0
  228. package/dist/decode/alignment.d.ts +34 -0
  229. package/dist/decode/alignment.d.ts.map +1 -0
  230. package/dist/decode/alignment.js +179 -0
  231. package/dist/decode/alignment.js.map +1 -0
  232. package/dist/decode/binarise.d.ts +95 -0
  233. package/dist/decode/binarise.d.ts.map +1 -0
  234. package/dist/decode/binarise.js +399 -0
  235. package/dist/decode/binarise.js.map +1 -0
  236. package/dist/decode/decoder.d.ts +75 -0
  237. package/dist/decode/decoder.d.ts.map +1 -0
  238. package/dist/decode/decoder.js +773 -0
  239. package/dist/decode/decoder.js.map +1 -0
  240. package/dist/decode/erasures.d.ts +26 -0
  241. package/dist/decode/erasures.d.ts.map +1 -0
  242. package/dist/decode/erasures.js +34 -0
  243. package/dist/decode/erasures.js.map +1 -0
  244. package/dist/decode/failure.d.ts +15 -0
  245. package/dist/decode/failure.d.ts.map +1 -0
  246. package/dist/decode/failure.js +22 -0
  247. package/dist/decode/failure.js.map +1 -0
  248. package/dist/decode/finder.d.ts +114 -0
  249. package/dist/decode/finder.d.ts.map +1 -0
  250. package/dist/decode/finder.js +441 -0
  251. package/dist/decode/finder.js.map +1 -0
  252. package/dist/decode/frame.d.ts +49 -0
  253. package/dist/decode/frame.d.ts.map +1 -0
  254. package/dist/decode/frame.js +228 -0
  255. package/dist/decode/frame.js.map +1 -0
  256. package/dist/decode/grey.d.ts +87 -0
  257. package/dist/decode/grey.d.ts.map +1 -0
  258. package/dist/decode/grey.js +226 -0
  259. package/dist/decode/grey.js.map +1 -0
  260. package/dist/decode/index.d.ts +4 -0
  261. package/dist/decode/index.d.ts.map +1 -0
  262. package/dist/decode/index.js +3 -0
  263. package/dist/decode/index.js.map +1 -0
  264. package/dist/decode/locate-qr.d.ts +80 -0
  265. package/dist/decode/locate-qr.d.ts.map +1 -0
  266. package/dist/decode/locate-qr.js +295 -0
  267. package/dist/decode/locate-qr.js.map +1 -0
  268. package/dist/decode/locate-single.d.ts +47 -0
  269. package/dist/decode/locate-single.d.ts.map +1 -0
  270. package/dist/decode/locate-single.js +169 -0
  271. package/dist/decode/locate-single.js.map +1 -0
  272. package/dist/decode/plain.d.ts +70 -0
  273. package/dist/decode/plain.d.ts.map +1 -0
  274. package/dist/decode/plain.js +460 -0
  275. package/dist/decode/plain.js.map +1 -0
  276. package/dist/decode/sample.d.ts +56 -0
  277. package/dist/decode/sample.d.ts.map +1 -0
  278. package/dist/decode/sample.js +154 -0
  279. package/dist/decode/sample.js.map +1 -0
  280. package/dist/decode/strict.d.ts +255 -0
  281. package/dist/decode/strict.d.ts.map +1 -0
  282. package/dist/decode/strict.js +597 -0
  283. package/dist/decode/strict.js.map +1 -0
  284. package/dist/decode/tiled.d.ts +137 -0
  285. package/dist/decode/tiled.d.ts.map +1 -0
  286. package/dist/decode/tiled.js +452 -0
  287. package/dist/decode/tiled.js.map +1 -0
  288. package/dist/decode/transform.d.ts +48 -0
  289. package/dist/decode/transform.d.ts.map +1 -0
  290. package/dist/decode/transform.js +180 -0
  291. package/dist/decode/transform.js.map +1 -0
  292. package/dist/decode/types.d.ts +163 -0
  293. package/dist/decode/types.d.ts.map +1 -0
  294. package/dist/decode/types.js +10 -0
  295. package/dist/decode/types.js.map +1 -0
  296. package/dist/design/base64.d.ts +16 -0
  297. package/dist/design/base64.d.ts.map +1 -0
  298. package/dist/design/base64.js +97 -0
  299. package/dist/design/base64.js.map +1 -0
  300. package/dist/design/canonical.d.ts +13 -0
  301. package/dist/design/canonical.d.ts.map +1 -0
  302. package/dist/design/canonical.js +100 -0
  303. package/dist/design/canonical.js.map +1 -0
  304. package/dist/design/caption.d.ts +54 -0
  305. package/dist/design/caption.d.ts.map +1 -0
  306. package/dist/design/caption.js +175 -0
  307. package/dist/design/caption.js.map +1 -0
  308. package/dist/design/catalogue/draw.d.ts +77 -0
  309. package/dist/design/catalogue/draw.d.ts.map +1 -0
  310. package/dist/design/catalogue/draw.js +260 -0
  311. package/dist/design/catalogue/draw.js.map +1 -0
  312. package/dist/design/catalogue/fills.d.ts +9 -0
  313. package/dist/design/catalogue/fills.d.ts.map +1 -0
  314. package/dist/design/catalogue/fills.js +64 -0
  315. package/dist/design/catalogue/fills.js.map +1 -0
  316. package/dist/design/catalogue/frames.d.ts +18 -0
  317. package/dist/design/catalogue/frames.d.ts.map +1 -0
  318. package/dist/design/catalogue/frames.js +451 -0
  319. package/dist/design/catalogue/frames.js.map +1 -0
  320. package/dist/design/catalogue/icons.d.ts +21 -0
  321. package/dist/design/catalogue/icons.d.ts.map +1 -0
  322. package/dist/design/catalogue/icons.js +293 -0
  323. package/dist/design/catalogue/icons.js.map +1 -0
  324. package/dist/design/catalogue/module-shapes.d.ts +21 -0
  325. package/dist/design/catalogue/module-shapes.d.ts.map +1 -0
  326. package/dist/design/catalogue/module-shapes.js +266 -0
  327. package/dist/design/catalogue/module-shapes.js.map +1 -0
  328. package/dist/design/catalogue/presets.d.ts +31 -0
  329. package/dist/design/catalogue/presets.d.ts.map +1 -0
  330. package/dist/design/catalogue/presets.js +696 -0
  331. package/dist/design/catalogue/presets.js.map +1 -0
  332. package/dist/design/catalogue/region-shapes.d.ts +41 -0
  333. package/dist/design/catalogue/region-shapes.d.ts.map +1 -0
  334. package/dist/design/catalogue/region-shapes.js +399 -0
  335. package/dist/design/catalogue/region-shapes.js.map +1 -0
  336. package/dist/design/catalogue/schema.d.ts +14 -0
  337. package/dist/design/catalogue/schema.d.ts.map +1 -0
  338. package/dist/design/catalogue/schema.js +58 -0
  339. package/dist/design/catalogue/schema.js.map +1 -0
  340. package/dist/design/constraints.d.ts +25 -0
  341. package/dist/design/constraints.d.ts.map +1 -0
  342. package/dist/design/constraints.js +194 -0
  343. package/dist/design/constraints.js.map +1 -0
  344. package/dist/design/document.d.ts +64 -0
  345. package/dist/design/document.d.ts.map +1 -0
  346. package/dist/design/document.js +66 -0
  347. package/dist/design/document.js.map +1 -0
  348. package/dist/design/finder.d.ts +79 -0
  349. package/dist/design/finder.d.ts.map +1 -0
  350. package/dist/design/finder.js +270 -0
  351. package/dist/design/finder.js.map +1 -0
  352. package/dist/design/index.d.ts +18 -0
  353. package/dist/design/index.d.ts.map +1 -0
  354. package/dist/design/index.js +15 -0
  355. package/dist/design/index.js.map +1 -0
  356. package/dist/design/link.d.ts +41 -0
  357. package/dist/design/link.d.ts.map +1 -0
  358. package/dist/design/link.js +131 -0
  359. package/dist/design/link.js.map +1 -0
  360. package/dist/design/logo.d.ts +57 -0
  361. package/dist/design/logo.d.ts.map +1 -0
  362. package/dist/design/logo.js +376 -0
  363. package/dist/design/logo.js.map +1 -0
  364. package/dist/design/migrate.d.ts +31 -0
  365. package/dist/design/migrate.d.ts.map +1 -0
  366. package/dist/design/migrate.js +87 -0
  367. package/dist/design/migrate.js.map +1 -0
  368. package/dist/design/neighbours.d.ts +24 -0
  369. package/dist/design/neighbours.d.ts.map +1 -0
  370. package/dist/design/neighbours.js +50 -0
  371. package/dist/design/neighbours.js.map +1 -0
  372. package/dist/design/paint.d.ts +47 -0
  373. package/dist/design/paint.d.ts.map +1 -0
  374. package/dist/design/paint.js +115 -0
  375. package/dist/design/paint.js.map +1 -0
  376. package/dist/design/params.d.ts +30 -0
  377. package/dist/design/params.d.ts.map +1 -0
  378. package/dist/design/params.js +85 -0
  379. package/dist/design/params.js.map +1 -0
  380. package/dist/design/preset-size.d.ts +14 -0
  381. package/dist/design/preset-size.d.ts.map +1 -0
  382. package/dist/design/preset-size.js +14 -0
  383. package/dist/design/preset-size.js.map +1 -0
  384. package/dist/design/registries.d.ts +9 -0
  385. package/dist/design/registries.d.ts.map +1 -0
  386. package/dist/design/registries.js +24 -0
  387. package/dist/design/registries.js.map +1 -0
  388. package/dist/design/scene.d.ts +38 -0
  389. package/dist/design/scene.d.ts.map +1 -0
  390. package/dist/design/scene.js +694 -0
  391. package/dist/design/scene.js.map +1 -0
  392. package/dist/design/swiss-cross.d.ts +54 -0
  393. package/dist/design/swiss-cross.d.ts.map +1 -0
  394. package/dist/design/swiss-cross.js +95 -0
  395. package/dist/design/swiss-cross.js.map +1 -0
  396. package/dist/design/types.d.ts +389 -0
  397. package/dist/design/types.d.ts.map +1 -0
  398. package/dist/design/types.js +29 -0
  399. package/dist/design/types.js.map +1 -0
  400. package/dist/design/validate.d.ts +48 -0
  401. package/dist/design/validate.d.ts.map +1 -0
  402. package/dist/design/validate.js +986 -0
  403. package/dist/design/validate.js.map +1 -0
  404. package/dist/dom/camera.d.ts +94 -0
  405. package/dist/dom/camera.d.ts.map +1 -0
  406. package/dist/dom/camera.js +288 -0
  407. package/dist/dom/camera.js.map +1 -0
  408. package/dist/dom/file-library.d.ts +297 -0
  409. package/dist/dom/file-library.d.ts.map +1 -0
  410. package/dist/dom/file-library.js +703 -0
  411. package/dist/dom/file-library.js.map +1 -0
  412. package/dist/dom/image.d.ts +77 -0
  413. package/dist/dom/image.d.ts.map +1 -0
  414. package/dist/dom/image.js +253 -0
  415. package/dist/dom/image.js.map +1 -0
  416. package/dist/dom/index.d.ts +19 -0
  417. package/dist/dom/index.d.ts.map +1 -0
  418. package/dist/dom/index.js +10 -0
  419. package/dist/dom/index.js.map +1 -0
  420. package/dist/dom/library/index.d.ts +4 -0
  421. package/dist/dom/library/index.d.ts.map +1 -0
  422. package/dist/dom/library/index.js +2 -0
  423. package/dist/dom/library/index.js.map +1 -0
  424. package/dist/dom/library/indexeddb.d.ts +71 -0
  425. package/dist/dom/library/indexeddb.d.ts.map +1 -0
  426. package/dist/dom/library/indexeddb.js +365 -0
  427. package/dist/dom/library/indexeddb.js.map +1 -0
  428. package/dist/dom/logo.d.ts +36 -0
  429. package/dist/dom/logo.d.ts.map +1 -0
  430. package/dist/dom/logo.js +99 -0
  431. package/dist/dom/logo.js.map +1 -0
  432. package/dist/dom/orientation.d.ts +32 -0
  433. package/dist/dom/orientation.d.ts.map +1 -0
  434. package/dist/dom/orientation.js +152 -0
  435. package/dist/dom/orientation.js.map +1 -0
  436. package/dist/dom/output.d.ts +58 -0
  437. package/dist/dom/output.d.ts.map +1 -0
  438. package/dist/dom/output.js +93 -0
  439. package/dist/dom/output.js.map +1 -0
  440. package/dist/dom/print.d.ts +52 -0
  441. package/dist/dom/print.d.ts.map +1 -0
  442. package/dist/dom/print.js +101 -0
  443. package/dist/dom/print.js.map +1 -0
  444. package/dist/dom/raster-encoder.d.ts +43 -0
  445. package/dist/dom/raster-encoder.d.ts.map +1 -0
  446. package/dist/dom/raster-encoder.js +102 -0
  447. package/dist/dom/raster-encoder.js.map +1 -0
  448. package/dist/dom/resample.d.ts +20 -0
  449. package/dist/dom/resample.d.ts.map +1 -0
  450. package/dist/dom/resample.js +107 -0
  451. package/dist/dom/resample.js.map +1 -0
  452. package/dist/dom/types.d.ts +54 -0
  453. package/dist/dom/types.d.ts.map +1 -0
  454. package/dist/dom/types.js +13 -0
  455. package/dist/dom/types.js.map +1 -0
  456. package/dist/encode/bitstream.d.ts +14 -0
  457. package/dist/encode/bitstream.d.ts.map +1 -0
  458. package/dist/encode/bitstream.js +31 -0
  459. package/dist/encode/bitstream.js.map +1 -0
  460. package/dist/encode/encode.d.ts +21 -0
  461. package/dist/encode/encode.d.ts.map +1 -0
  462. package/dist/encode/encode.js +65 -0
  463. package/dist/encode/encode.js.map +1 -0
  464. package/dist/encode/index.d.ts +5 -0
  465. package/dist/encode/index.d.ts.map +1 -0
  466. package/dist/encode/index.js +4 -0
  467. package/dist/encode/index.js.map +1 -0
  468. package/dist/encode/plan.d.ts +61 -0
  469. package/dist/encode/plan.d.ts.map +1 -0
  470. package/dist/encode/plan.js +177 -0
  471. package/dist/encode/plan.js.map +1 -0
  472. package/dist/encode/structured-append.d.ts +35 -0
  473. package/dist/encode/structured-append.d.ts.map +1 -0
  474. package/dist/encode/structured-append.js +153 -0
  475. package/dist/encode/structured-append.js.map +1 -0
  476. package/dist/fonts/latin.d.ts +118 -0
  477. package/dist/fonts/latin.d.ts.map +1 -0
  478. package/dist/fonts/latin.js +137 -0
  479. package/dist/fonts/latin.js.map +1 -0
  480. package/dist/geometry/flatten.d.ts +60 -0
  481. package/dist/geometry/flatten.d.ts.map +1 -0
  482. package/dist/geometry/flatten.js +177 -0
  483. package/dist/geometry/flatten.js.map +1 -0
  484. package/dist/geometry/index.d.ts +10 -0
  485. package/dist/geometry/index.d.ts.map +1 -0
  486. package/dist/geometry/index.js +6 -0
  487. package/dist/geometry/index.js.map +1 -0
  488. package/dist/geometry/matrix.d.ts +50 -0
  489. package/dist/geometry/matrix.d.ts.map +1 -0
  490. package/dist/geometry/matrix.js +113 -0
  491. package/dist/geometry/matrix.js.map +1 -0
  492. package/dist/geometry/measure.d.ts +35 -0
  493. package/dist/geometry/measure.d.ts.map +1 -0
  494. package/dist/geometry/measure.js +206 -0
  495. package/dist/geometry/measure.js.map +1 -0
  496. package/dist/geometry/path.d.ts +137 -0
  497. package/dist/geometry/path.d.ts.map +1 -0
  498. package/dist/geometry/path.js +401 -0
  499. package/dist/geometry/path.js.map +1 -0
  500. package/dist/geometry/trace.d.ts +29 -0
  501. package/dist/geometry/trace.d.ts.map +1 -0
  502. package/dist/geometry/trace.js +166 -0
  503. package/dist/geometry/trace.js.map +1 -0
  504. package/dist/index.d.ts +20 -0
  505. package/dist/index.d.ts.map +1 -0
  506. package/dist/index.js +15 -0
  507. package/dist/index.js.map +1 -0
  508. package/dist/inspect/explain.d.ts +32 -0
  509. package/dist/inspect/explain.d.ts.map +1 -0
  510. package/dist/inspect/explain.js +99 -0
  511. package/dist/inspect/explain.js.map +1 -0
  512. package/dist/inspect/gs1.d.ts +38 -0
  513. package/dist/inspect/gs1.d.ts.map +1 -0
  514. package/dist/inspect/gs1.js +130 -0
  515. package/dist/inspect/gs1.js.map +1 -0
  516. package/dist/inspect/index.d.ts +9 -0
  517. package/dist/inspect/index.d.ts.map +1 -0
  518. package/dist/inspect/index.js +6 -0
  519. package/dist/inspect/index.js.map +1 -0
  520. package/dist/inspect/inspect.d.ts +29 -0
  521. package/dist/inspect/inspect.d.ts.map +1 -0
  522. package/dist/inspect/inspect.js +98 -0
  523. package/dist/inspect/inspect.js.map +1 -0
  524. package/dist/inspect/keys.d.ts +54 -0
  525. package/dist/inspect/keys.d.ts.map +1 -0
  526. package/dist/inspect/keys.js +63 -0
  527. package/dist/inspect/keys.js.map +1 -0
  528. package/dist/inspect/sets.d.ts +27 -0
  529. package/dist/inspect/sets.d.ts.map +1 -0
  530. package/dist/inspect/sets.js +67 -0
  531. package/dist/inspect/sets.js.map +1 -0
  532. package/dist/inspect/types.d.ts +81 -0
  533. package/dist/inspect/types.d.ts.map +1 -0
  534. package/dist/inspect/types.js +16 -0
  535. package/dist/inspect/types.js.map +1 -0
  536. package/dist/messages/en/app.d.ts +11 -0
  537. package/dist/messages/en/app.d.ts.map +1 -0
  538. package/dist/messages/en/app.js +395 -0
  539. package/dist/messages/en/app.js.map +1 -0
  540. package/dist/messages/en/batch.d.ts +18 -0
  541. package/dist/messages/en/batch.d.ts.map +1 -0
  542. package/dist/messages/en/batch.js +42 -0
  543. package/dist/messages/en/batch.js.map +1 -0
  544. package/dist/messages/en/decode.d.ts +9 -0
  545. package/dist/messages/en/decode.d.ts.map +1 -0
  546. package/dist/messages/en/decode.js +21 -0
  547. package/dist/messages/en/decode.js.map +1 -0
  548. package/dist/messages/en/design.d.ts +13 -0
  549. package/dist/messages/en/design.d.ts.map +1 -0
  550. package/dist/messages/en/design.js +228 -0
  551. package/dist/messages/en/design.js.map +1 -0
  552. package/dist/messages/en/dom.d.ts +11 -0
  553. package/dist/messages/en/dom.d.ts.map +1 -0
  554. package/dist/messages/en/dom.js +14 -0
  555. package/dist/messages/en/dom.js.map +1 -0
  556. package/dist/messages/en/encode.d.ts +13 -0
  557. package/dist/messages/en/encode.d.ts.map +1 -0
  558. package/dist/messages/en/encode.js +20 -0
  559. package/dist/messages/en/encode.js.map +1 -0
  560. package/dist/messages/en/index.d.ts +48 -0
  561. package/dist/messages/en/index.d.ts.map +1 -0
  562. package/dist/messages/en/index.js +73 -0
  563. package/dist/messages/en/index.js.map +1 -0
  564. package/dist/messages/en/inspect.d.ts +13 -0
  565. package/dist/messages/en/inspect.d.ts.map +1 -0
  566. package/dist/messages/en/inspect.js +84 -0
  567. package/dist/messages/en/inspect.js.map +1 -0
  568. package/dist/messages/en/library.d.ts +12 -0
  569. package/dist/messages/en/library.d.ts.map +1 -0
  570. package/dist/messages/en/library.js +27 -0
  571. package/dist/messages/en/library.js.map +1 -0
  572. package/dist/messages/en/micro.d.ts +9 -0
  573. package/dist/messages/en/micro.d.ts.map +1 -0
  574. package/dist/messages/en/micro.js +13 -0
  575. package/dist/messages/en/micro.js.map +1 -0
  576. package/dist/messages/en/own-link.d.ts +7 -0
  577. package/dist/messages/en/own-link.d.ts.map +1 -0
  578. package/dist/messages/en/own-link.js +29 -0
  579. package/dist/messages/en/own-link.js.map +1 -0
  580. package/dist/messages/en/payload.d.ts +13 -0
  581. package/dist/messages/en/payload.d.ts.map +1 -0
  582. package/dist/messages/en/payload.js +427 -0
  583. package/dist/messages/en/payload.js.map +1 -0
  584. package/dist/messages/en/rmqr.d.ts +9 -0
  585. package/dist/messages/en/rmqr.d.ts.map +1 -0
  586. package/dist/messages/en/rmqr.js +12 -0
  587. package/dist/messages/en/rmqr.js.map +1 -0
  588. package/dist/messages/en/studio.d.ts +18 -0
  589. package/dist/messages/en/studio.d.ts.map +1 -0
  590. package/dist/messages/en/studio.js +117 -0
  591. package/dist/messages/en/studio.js.map +1 -0
  592. package/dist/messages/en/symbology.d.ts +13 -0
  593. package/dist/messages/en/symbology.d.ts.map +1 -0
  594. package/dist/messages/en/symbology.js +21 -0
  595. package/dist/messages/en/symbology.js.map +1 -0
  596. package/dist/messages/en/text.d.ts +23 -0
  597. package/dist/messages/en/text.d.ts.map +1 -0
  598. package/dist/messages/en/text.js +47 -0
  599. package/dist/messages/en/text.js.map +1 -0
  600. package/dist/messages/en/verify.d.ts +13 -0
  601. package/dist/messages/en/verify.d.ts.map +1 -0
  602. package/dist/messages/en/verify.js +117 -0
  603. package/dist/messages/en/verify.js.map +1 -0
  604. package/dist/messages/format.d.ts +30 -0
  605. package/dist/messages/format.d.ts.map +1 -0
  606. package/dist/messages/format.js +170 -0
  607. package/dist/messages/format.js.map +1 -0
  608. package/dist/own-link/index.d.ts +5 -0
  609. package/dist/own-link/index.d.ts.map +1 -0
  610. package/dist/own-link/index.js +3 -0
  611. package/dist/own-link/index.js.map +1 -0
  612. package/dist/own-link/query.d.ts +10 -0
  613. package/dist/own-link/query.d.ts.map +1 -0
  614. package/dist/own-link/query.js +33 -0
  615. package/dist/own-link/query.js.map +1 -0
  616. package/dist/own-link/redirects.d.ts +54 -0
  617. package/dist/own-link/redirects.d.ts.map +1 -0
  618. package/dist/own-link/redirects.js +271 -0
  619. package/dist/own-link/redirects.js.map +1 -0
  620. package/dist/own-link/utm.d.ts +24 -0
  621. package/dist/own-link/utm.d.ts.map +1 -0
  622. package/dist/own-link/utm.js +82 -0
  623. package/dist/own-link/utm.js.map +1 -0
  624. package/dist/payload/banking.d.ts +39 -0
  625. package/dist/payload/banking.d.ts.map +1 -0
  626. package/dist/payload/banking.js +87 -0
  627. package/dist/payload/banking.js.map +1 -0
  628. package/dist/payload/base58.d.ts +21 -0
  629. package/dist/payload/base58.d.ts.map +1 -0
  630. package/dist/payload/base58.js +75 -0
  631. package/dist/payload/base58.js.map +1 -0
  632. package/dist/payload/bech32.d.ts +59 -0
  633. package/dist/payload/bech32.d.ts.map +1 -0
  634. package/dist/payload/bech32.js +137 -0
  635. package/dist/payload/bech32.js.map +1 -0
  636. package/dist/payload/check-digits.d.ts +49 -0
  637. package/dist/payload/check-digits.d.ts.map +1 -0
  638. package/dist/payload/check-digits.js +101 -0
  639. package/dist/payload/check-digits.js.map +1 -0
  640. package/dist/payload/content/bitcoin.d.ts +34 -0
  641. package/dist/payload/content/bitcoin.d.ts.map +1 -0
  642. package/dist/payload/content/bitcoin.js +137 -0
  643. package/dist/payload/content/bitcoin.js.map +1 -0
  644. package/dist/payload/content/email.d.ts +19 -0
  645. package/dist/payload/content/email.d.ts.map +1 -0
  646. package/dist/payload/content/email.js +137 -0
  647. package/dist/payload/content/email.js.map +1 -0
  648. package/dist/payload/content/epc.d.ts +32 -0
  649. package/dist/payload/content/epc.d.ts.map +1 -0
  650. package/dist/payload/content/epc.js +160 -0
  651. package/dist/payload/content/epc.js.map +1 -0
  652. package/dist/payload/content/event.d.ts +35 -0
  653. package/dist/payload/content/event.d.ts.map +1 -0
  654. package/dist/payload/content/event.js +242 -0
  655. package/dist/payload/content/event.js.map +1 -0
  656. package/dist/payload/content/facetime.d.ts +14 -0
  657. package/dist/payload/content/facetime.d.ts.map +1 -0
  658. package/dist/payload/content/facetime.js +56 -0
  659. package/dist/payload/content/facetime.js.map +1 -0
  660. package/dist/payload/content/geo.d.ts +24 -0
  661. package/dist/payload/content/geo.d.ts.map +1 -0
  662. package/dist/payload/content/geo.js +139 -0
  663. package/dist/payload/content/geo.js.map +1 -0
  664. package/dist/payload/content/gs1-digital-link.d.ts +34 -0
  665. package/dist/payload/content/gs1-digital-link.d.ts.map +1 -0
  666. package/dist/payload/content/gs1-digital-link.js +171 -0
  667. package/dist/payload/content/gs1-digital-link.js.map +1 -0
  668. package/dist/payload/content/lightning.d.ts +22 -0
  669. package/dist/payload/content/lightning.d.ts.map +1 -0
  670. package/dist/payload/content/lightning.js +90 -0
  671. package/dist/payload/content/lightning.js.map +1 -0
  672. package/dist/payload/content/mecard.d.ts +23 -0
  673. package/dist/payload/content/mecard.d.ts.map +1 -0
  674. package/dist/payload/content/mecard.js +111 -0
  675. package/dist/payload/content/mecard.js.map +1 -0
  676. package/dist/payload/content/phone.d.ts +17 -0
  677. package/dist/payload/content/phone.d.ts.map +1 -0
  678. package/dist/payload/content/phone.js +39 -0
  679. package/dist/payload/content/phone.js.map +1 -0
  680. package/dist/payload/content/pix.d.ts +36 -0
  681. package/dist/payload/content/pix.d.ts.map +1 -0
  682. package/dist/payload/content/pix.js +191 -0
  683. package/dist/payload/content/pix.js.map +1 -0
  684. package/dist/payload/content/signal.d.ts +17 -0
  685. package/dist/payload/content/signal.d.ts.map +1 -0
  686. package/dist/payload/content/signal.js +43 -0
  687. package/dist/payload/content/signal.js.map +1 -0
  688. package/dist/payload/content/sms.d.ts +18 -0
  689. package/dist/payload/content/sms.d.ts.map +1 -0
  690. package/dist/payload/content/sms.js +64 -0
  691. package/dist/payload/content/sms.js.map +1 -0
  692. package/dist/payload/content/swiss-qr-bill.d.ts +61 -0
  693. package/dist/payload/content/swiss-qr-bill.d.ts.map +1 -0
  694. package/dist/payload/content/swiss-qr-bill.js +325 -0
  695. package/dist/payload/content/swiss-qr-bill.js.map +1 -0
  696. package/dist/payload/content/telegram.d.ts +18 -0
  697. package/dist/payload/content/telegram.d.ts.map +1 -0
  698. package/dist/payload/content/telegram.js +105 -0
  699. package/dist/payload/content/telegram.js.map +1 -0
  700. package/dist/payload/content/text.d.ts +9 -0
  701. package/dist/payload/content/text.d.ts.map +1 -0
  702. package/dist/payload/content/text.js +18 -0
  703. package/dist/payload/content/text.js.map +1 -0
  704. package/dist/payload/content/upi.d.ts +21 -0
  705. package/dist/payload/content/upi.d.ts.map +1 -0
  706. package/dist/payload/content/upi.js +89 -0
  707. package/dist/payload/content/upi.js.map +1 -0
  708. package/dist/payload/content/url.d.ts +31 -0
  709. package/dist/payload/content/url.d.ts.map +1 -0
  710. package/dist/payload/content/url.js +120 -0
  711. package/dist/payload/content/url.js.map +1 -0
  712. package/dist/payload/content/vcard.d.ts +42 -0
  713. package/dist/payload/content/vcard.d.ts.map +1 -0
  714. package/dist/payload/content/vcard.js +302 -0
  715. package/dist/payload/content/vcard.js.map +1 -0
  716. package/dist/payload/content/whatsapp.d.ts +17 -0
  717. package/dist/payload/content/whatsapp.d.ts.map +1 -0
  718. package/dist/payload/content/whatsapp.js +72 -0
  719. package/dist/payload/content/whatsapp.js.map +1 -0
  720. package/dist/payload/content/wifi.d.ts +48 -0
  721. package/dist/payload/content/wifi.d.ts.map +1 -0
  722. package/dist/payload/content/wifi.js +240 -0
  723. package/dist/payload/content/wifi.js.map +1 -0
  724. package/dist/payload/content/zatca.d.ts +35 -0
  725. package/dist/payload/content/zatca.d.ts.map +1 -0
  726. package/dist/payload/content/zatca.js +156 -0
  727. package/dist/payload/content/zatca.js.map +1 -0
  728. package/dist/payload/data/hosts.d.ts +39 -0
  729. package/dist/payload/data/hosts.d.ts.map +1 -0
  730. package/dist/payload/data/hosts.js +74 -0
  731. package/dist/payload/data/hosts.js.map +1 -0
  732. package/dist/payload/define.d.ts +57 -0
  733. package/dist/payload/define.d.ts.map +1 -0
  734. package/dist/payload/define.js +87 -0
  735. package/dist/payload/define.js.map +1 -0
  736. package/dist/payload/detect.d.ts +13 -0
  737. package/dist/payload/detect.d.ts.map +1 -0
  738. package/dist/payload/detect.js +32 -0
  739. package/dist/payload/detect.js.map +1 -0
  740. package/dist/payload/emv.d.ts +41 -0
  741. package/dist/payload/emv.d.ts.map +1 -0
  742. package/dist/payload/emv.js +73 -0
  743. package/dist/payload/emv.js.map +1 -0
  744. package/dist/payload/escape.d.ts +66 -0
  745. package/dist/payload/escape.d.ts.map +1 -0
  746. package/dist/payload/escape.js +225 -0
  747. package/dist/payload/escape.js.map +1 -0
  748. package/dist/payload/fields.d.ts +86 -0
  749. package/dist/payload/fields.d.ts.map +1 -0
  750. package/dist/payload/fields.js +368 -0
  751. package/dist/payload/fields.js.map +1 -0
  752. package/dist/payload/hash.d.ts +11 -0
  753. package/dist/payload/hash.d.ts.map +1 -0
  754. package/dist/payload/hash.js +82 -0
  755. package/dist/payload/hash.js.map +1 -0
  756. package/dist/payload/index.d.ts +58 -0
  757. package/dist/payload/index.d.ts.map +1 -0
  758. package/dist/payload/index.js +32 -0
  759. package/dist/payload/index.js.map +1 -0
  760. package/dist/payload/punycode.d.ts +18 -0
  761. package/dist/payload/punycode.d.ts.map +1 -0
  762. package/dist/payload/punycode.js +99 -0
  763. package/dist/payload/punycode.js.map +1 -0
  764. package/dist/payload/registry.d.ts +20 -0
  765. package/dist/payload/registry.d.ts.map +1 -0
  766. package/dist/payload/registry.js +64 -0
  767. package/dist/payload/registry.js.map +1 -0
  768. package/dist/payload/safety.d.ts +13 -0
  769. package/dist/payload/safety.d.ts.map +1 -0
  770. package/dist/payload/safety.js +30 -0
  771. package/dist/payload/safety.js.map +1 -0
  772. package/dist/payload/scripts.d.ts +25 -0
  773. package/dist/payload/scripts.d.ts.map +1 -0
  774. package/dist/payload/scripts.js +90 -0
  775. package/dist/payload/scripts.js.map +1 -0
  776. package/dist/payload/types.d.ts +138 -0
  777. package/dist/payload/types.d.ts.map +1 -0
  778. package/dist/payload/types.js +28 -0
  779. package/dist/payload/types.js.map +1 -0
  780. package/dist/payload/uri.d.ts +24 -0
  781. package/dist/payload/uri.d.ts.map +1 -0
  782. package/dist/payload/uri.js +69 -0
  783. package/dist/payload/uri.js.map +1 -0
  784. package/dist/payload/url-safety.d.ts +31 -0
  785. package/dist/payload/url-safety.d.ts.map +1 -0
  786. package/dist/payload/url-safety.js +221 -0
  787. package/dist/payload/url-safety.js.map +1 -0
  788. package/dist/payload/vectors/bitcoin.d.ts +13 -0
  789. package/dist/payload/vectors/bitcoin.d.ts.map +1 -0
  790. package/dist/payload/vectors/bitcoin.js +83 -0
  791. package/dist/payload/vectors/bitcoin.js.map +1 -0
  792. package/dist/payload/vectors/built-in.d.ts +15 -0
  793. package/dist/payload/vectors/built-in.d.ts.map +1 -0
  794. package/dist/payload/vectors/built-in.js +59 -0
  795. package/dist/payload/vectors/built-in.js.map +1 -0
  796. package/dist/payload/vectors/email.d.ts +8 -0
  797. package/dist/payload/vectors/email.d.ts.map +1 -0
  798. package/dist/payload/vectors/email.js +60 -0
  799. package/dist/payload/vectors/email.js.map +1 -0
  800. package/dist/payload/vectors/epc.d.ts +9 -0
  801. package/dist/payload/vectors/epc.d.ts.map +1 -0
  802. package/dist/payload/vectors/epc.js +38 -0
  803. package/dist/payload/vectors/epc.js.map +1 -0
  804. package/dist/payload/vectors/event.d.ts +9 -0
  805. package/dist/payload/vectors/event.d.ts.map +1 -0
  806. package/dist/payload/vectors/event.js +57 -0
  807. package/dist/payload/vectors/event.js.map +1 -0
  808. package/dist/payload/vectors/facetime.d.ts +9 -0
  809. package/dist/payload/vectors/facetime.d.ts.map +1 -0
  810. package/dist/payload/vectors/facetime.js +19 -0
  811. package/dist/payload/vectors/facetime.js.map +1 -0
  812. package/dist/payload/vectors/geo.d.ts +8 -0
  813. package/dist/payload/vectors/geo.d.ts.map +1 -0
  814. package/dist/payload/vectors/geo.js +22 -0
  815. package/dist/payload/vectors/geo.js.map +1 -0
  816. package/dist/payload/vectors/gs1-digital-link.d.ts +9 -0
  817. package/dist/payload/vectors/gs1-digital-link.d.ts.map +1 -0
  818. package/dist/payload/vectors/gs1-digital-link.js +21 -0
  819. package/dist/payload/vectors/gs1-digital-link.js.map +1 -0
  820. package/dist/payload/vectors/hosts.d.ts +12 -0
  821. package/dist/payload/vectors/hosts.d.ts.map +1 -0
  822. package/dist/payload/vectors/hosts.js +50 -0
  823. package/dist/payload/vectors/hosts.js.map +1 -0
  824. package/dist/payload/vectors/index.d.ts +10 -0
  825. package/dist/payload/vectors/index.d.ts.map +1 -0
  826. package/dist/payload/vectors/index.js +9 -0
  827. package/dist/payload/vectors/index.js.map +1 -0
  828. package/dist/payload/vectors/lightning.d.ts +9 -0
  829. package/dist/payload/vectors/lightning.d.ts.map +1 -0
  830. package/dist/payload/vectors/lightning.js +23 -0
  831. package/dist/payload/vectors/lightning.js.map +1 -0
  832. package/dist/payload/vectors/mecard.d.ts +9 -0
  833. package/dist/payload/vectors/mecard.d.ts.map +1 -0
  834. package/dist/payload/vectors/mecard.js +25 -0
  835. package/dist/payload/vectors/mecard.js.map +1 -0
  836. package/dist/payload/vectors/phone.d.ts +9 -0
  837. package/dist/payload/vectors/phone.d.ts.map +1 -0
  838. package/dist/payload/vectors/phone.js +13 -0
  839. package/dist/payload/vectors/phone.js.map +1 -0
  840. package/dist/payload/vectors/pix.d.ts +9 -0
  841. package/dist/payload/vectors/pix.d.ts.map +1 -0
  842. package/dist/payload/vectors/pix.js +21 -0
  843. package/dist/payload/vectors/pix.js.map +1 -0
  844. package/dist/payload/vectors/signal.d.ts +9 -0
  845. package/dist/payload/vectors/signal.d.ts.map +1 -0
  846. package/dist/payload/vectors/signal.js +14 -0
  847. package/dist/payload/vectors/signal.js.map +1 -0
  848. package/dist/payload/vectors/sms.d.ts +9 -0
  849. package/dist/payload/vectors/sms.d.ts.map +1 -0
  850. package/dist/payload/vectors/sms.js +18 -0
  851. package/dist/payload/vectors/sms.js.map +1 -0
  852. package/dist/payload/vectors/swiss-qr-bill.d.ts +9 -0
  853. package/dist/payload/vectors/swiss-qr-bill.d.ts.map +1 -0
  854. package/dist/payload/vectors/swiss-qr-bill.js +72 -0
  855. package/dist/payload/vectors/swiss-qr-bill.js.map +1 -0
  856. package/dist/payload/vectors/telegram.d.ts +9 -0
  857. package/dist/payload/vectors/telegram.d.ts.map +1 -0
  858. package/dist/payload/vectors/telegram.js +19 -0
  859. package/dist/payload/vectors/telegram.js.map +1 -0
  860. package/dist/payload/vectors/text.d.ts +9 -0
  861. package/dist/payload/vectors/text.d.ts.map +1 -0
  862. package/dist/payload/vectors/text.js +13 -0
  863. package/dist/payload/vectors/text.js.map +1 -0
  864. package/dist/payload/vectors/upi.d.ts +9 -0
  865. package/dist/payload/vectors/upi.d.ts.map +1 -0
  866. package/dist/payload/vectors/upi.js +14 -0
  867. package/dist/payload/vectors/upi.js.map +1 -0
  868. package/dist/payload/vectors/url.d.ts +8 -0
  869. package/dist/payload/vectors/url.d.ts.map +1 -0
  870. package/dist/payload/vectors/url.js +30 -0
  871. package/dist/payload/vectors/url.js.map +1 -0
  872. package/dist/payload/vectors/vcard.d.ts +9 -0
  873. package/dist/payload/vectors/vcard.d.ts.map +1 -0
  874. package/dist/payload/vectors/vcard.js +47 -0
  875. package/dist/payload/vectors/vcard.js.map +1 -0
  876. package/dist/payload/vectors/whatsapp.d.ts +9 -0
  877. package/dist/payload/vectors/whatsapp.d.ts.map +1 -0
  878. package/dist/payload/vectors/whatsapp.js +19 -0
  879. package/dist/payload/vectors/whatsapp.js.map +1 -0
  880. package/dist/payload/vectors/wifi.d.ts +13 -0
  881. package/dist/payload/vectors/wifi.d.ts.map +1 -0
  882. package/dist/payload/vectors/wifi.js +40 -0
  883. package/dist/payload/vectors/wifi.js.map +1 -0
  884. package/dist/payload/vectors/zatca.d.ts +12 -0
  885. package/dist/payload/vectors/zatca.d.ts.map +1 -0
  886. package/dist/payload/vectors/zatca.js +28 -0
  887. package/dist/payload/vectors/zatca.js.map +1 -0
  888. package/dist/qr-code-studio.html +190 -0
  889. package/dist/registries.d.ts +24 -0
  890. package/dist/registries.d.ts.map +1 -0
  891. package/dist/registries.js +23 -0
  892. package/dist/registries.js.map +1 -0
  893. package/dist/render/base64.d.ts +11 -0
  894. package/dist/render/base64.d.ts.map +1 -0
  895. package/dist/render/base64.js +40 -0
  896. package/dist/render/base64.js.map +1 -0
  897. package/dist/render/colour.d.ts +28 -0
  898. package/dist/render/colour.d.ts.map +1 -0
  899. package/dist/render/colour.js +72 -0
  900. package/dist/render/colour.js.map +1 -0
  901. package/dist/render/conic.d.ts +68 -0
  902. package/dist/render/conic.d.ts.map +1 -0
  903. package/dist/render/conic.js +205 -0
  904. package/dist/render/conic.js.map +1 -0
  905. package/dist/render/coverage.d.ts +154 -0
  906. package/dist/render/coverage.d.ts.map +1 -0
  907. package/dist/render/coverage.js +613 -0
  908. package/dist/render/coverage.js.map +1 -0
  909. package/dist/render/eps.d.ts +41 -0
  910. package/dist/render/eps.d.ts.map +1 -0
  911. package/dist/render/eps.js +377 -0
  912. package/dist/render/eps.js.map +1 -0
  913. package/dist/render/impose.d.ts +130 -0
  914. package/dist/render/impose.d.ts.map +1 -0
  915. package/dist/render/impose.js +288 -0
  916. package/dist/render/impose.js.map +1 -0
  917. package/dist/render/index.d.ts +22 -0
  918. package/dist/render/index.d.ts.map +1 -0
  919. package/dist/render/index.js +13 -0
  920. package/dist/render/index.js.map +1 -0
  921. package/dist/render/paint.d.ts +62 -0
  922. package/dist/render/paint.d.ts.map +1 -0
  923. package/dist/render/paint.js +169 -0
  924. package/dist/render/paint.js.map +1 -0
  925. package/dist/render/pdf-colour.d.ts +34 -0
  926. package/dist/render/pdf-colour.d.ts.map +1 -0
  927. package/dist/render/pdf-colour.js +64 -0
  928. package/dist/render/pdf-colour.js.map +1 -0
  929. package/dist/render/pdf-content.d.ts +90 -0
  930. package/dist/render/pdf-content.d.ts.map +1 -0
  931. package/dist/render/pdf-content.js +367 -0
  932. package/dist/render/pdf-content.js.map +1 -0
  933. package/dist/render/pdf-document.d.ts +38 -0
  934. package/dist/render/pdf-document.d.ts.map +1 -0
  935. package/dist/render/pdf-document.js +110 -0
  936. package/dist/render/pdf-document.js.map +1 -0
  937. package/dist/render/pdf-hash.d.ts +14 -0
  938. package/dist/render/pdf-hash.d.ts.map +1 -0
  939. package/dist/render/pdf-hash.js +71 -0
  940. package/dist/render/pdf-hash.js.map +1 -0
  941. package/dist/render/pdf-syntax.d.ts +45 -0
  942. package/dist/render/pdf-syntax.d.ts.map +1 -0
  943. package/dist/render/pdf-syntax.js +100 -0
  944. package/dist/render/pdf-syntax.js.map +1 -0
  945. package/dist/render/pdf.d.ts +59 -0
  946. package/dist/render/pdf.d.ts.map +1 -0
  947. package/dist/render/pdf.js +267 -0
  948. package/dist/render/pdf.js.map +1 -0
  949. package/dist/render/png-decode.d.ts +33 -0
  950. package/dist/render/png-decode.d.ts.map +1 -0
  951. package/dist/render/png-decode.js +345 -0
  952. package/dist/render/png-decode.js.map +1 -0
  953. package/dist/render/png.d.ts +37 -0
  954. package/dist/render/png.d.ts.map +1 -0
  955. package/dist/render/png.js +350 -0
  956. package/dist/render/png.js.map +1 -0
  957. package/dist/render/raster.d.ts +40 -0
  958. package/dist/render/raster.d.ts.map +1 -0
  959. package/dist/render/raster.js +245 -0
  960. package/dist/render/raster.js.map +1 -0
  961. package/dist/render/scene.d.ts +84 -0
  962. package/dist/render/scene.d.ts.map +1 -0
  963. package/dist/render/scene.js +216 -0
  964. package/dist/render/scene.js.map +1 -0
  965. package/dist/render/sheets.d.ts +26 -0
  966. package/dist/render/sheets.d.ts.map +1 -0
  967. package/dist/render/sheets.js +83 -0
  968. package/dist/render/sheets.js.map +1 -0
  969. package/dist/render/svg.d.ts +54 -0
  970. package/dist/render/svg.d.ts.map +1 -0
  971. package/dist/render/svg.js +324 -0
  972. package/dist/render/svg.js.map +1 -0
  973. package/dist/render/types.d.ts +95 -0
  974. package/dist/render/types.d.ts.map +1 -0
  975. package/dist/render/types.js +9 -0
  976. package/dist/render/types.js.map +1 -0
  977. package/dist/segment/alphanumeric.d.ts +15 -0
  978. package/dist/segment/alphanumeric.d.ts.map +1 -0
  979. package/dist/segment/alphanumeric.js +23 -0
  980. package/dist/segment/alphanumeric.js.map +1 -0
  981. package/dist/segment/eci.d.ts +41 -0
  982. package/dist/segment/eci.d.ts.map +1 -0
  983. package/dist/segment/eci.js +194 -0
  984. package/dist/segment/eci.js.map +1 -0
  985. package/dist/segment/index.d.ts +10 -0
  986. package/dist/segment/index.d.ts.map +1 -0
  987. package/dist/segment/index.js +8 -0
  988. package/dist/segment/index.js.map +1 -0
  989. package/dist/segment/kanji.d.ts +57 -0
  990. package/dist/segment/kanji.d.ts.map +1 -0
  991. package/dist/segment/kanji.js +135 -0
  992. package/dist/segment/kanji.js.map +1 -0
  993. package/dist/segment/profile.d.ts +21 -0
  994. package/dist/segment/profile.d.ts.map +1 -0
  995. package/dist/segment/profile.js +66 -0
  996. package/dist/segment/profile.js.map +1 -0
  997. package/dist/segment/read.d.ts +29 -0
  998. package/dist/segment/read.d.ts.map +1 -0
  999. package/dist/segment/read.js +360 -0
  1000. package/dist/segment/read.js.map +1 -0
  1001. package/dist/segment/segment-text.d.ts +88 -0
  1002. package/dist/segment/segment-text.d.ts.map +1 -0
  1003. package/dist/segment/segment-text.js +422 -0
  1004. package/dist/segment/segment-text.js.map +1 -0
  1005. package/dist/segment/types.d.ts +89 -0
  1006. package/dist/segment/types.d.ts.map +1 -0
  1007. package/dist/segment/types.js +13 -0
  1008. package/dist/segment/types.js.map +1 -0
  1009. package/dist/segment/write.d.ts +36 -0
  1010. package/dist/segment/write.d.ts.map +1 -0
  1011. package/dist/segment/write.js +226 -0
  1012. package/dist/segment/write.js.map +1 -0
  1013. package/dist/studio/assets.d.ts +22 -0
  1014. package/dist/studio/assets.d.ts.map +1 -0
  1015. package/dist/studio/assets.js +66 -0
  1016. package/dist/studio/assets.js.map +1 -0
  1017. package/dist/studio/catalogue.d.ts +34 -0
  1018. package/dist/studio/catalogue.d.ts.map +1 -0
  1019. package/dist/studio/catalogue.js +359 -0
  1020. package/dist/studio/catalogue.js.map +1 -0
  1021. package/dist/studio/contrast.d.ts +16 -0
  1022. package/dist/studio/contrast.d.ts.map +1 -0
  1023. package/dist/studio/contrast.js +28 -0
  1024. package/dist/studio/contrast.js.map +1 -0
  1025. package/dist/studio/document.d.ts +61 -0
  1026. package/dist/studio/document.d.ts.map +1 -0
  1027. package/dist/studio/document.js +208 -0
  1028. package/dist/studio/document.js.map +1 -0
  1029. package/dist/studio/export.d.ts +52 -0
  1030. package/dist/studio/export.d.ts.map +1 -0
  1031. package/dist/studio/export.js +269 -0
  1032. package/dist/studio/export.js.map +1 -0
  1033. package/dist/studio/form.d.ts +15 -0
  1034. package/dist/studio/form.d.ts.map +1 -0
  1035. package/dist/studio/form.js +91 -0
  1036. package/dist/studio/form.js.map +1 -0
  1037. package/dist/studio/history.d.ts +66 -0
  1038. package/dist/studio/history.d.ts.map +1 -0
  1039. package/dist/studio/history.js +109 -0
  1040. package/dist/studio/history.js.map +1 -0
  1041. package/dist/studio/index.d.ts +16 -0
  1042. package/dist/studio/index.d.ts.map +1 -0
  1043. package/dist/studio/index.js +12 -0
  1044. package/dist/studio/index.js.map +1 -0
  1045. package/dist/studio/keys.d.ts +86 -0
  1046. package/dist/studio/keys.d.ts.map +1 -0
  1047. package/dist/studio/keys.js +165 -0
  1048. package/dist/studio/keys.js.map +1 -0
  1049. package/dist/studio/kit.d.ts +44 -0
  1050. package/dist/studio/kit.d.ts.map +1 -0
  1051. package/dist/studio/kit.js +114 -0
  1052. package/dist/studio/kit.js.map +1 -0
  1053. package/dist/studio/logo.d.ts +25 -0
  1054. package/dist/studio/logo.d.ts.map +1 -0
  1055. package/dist/studio/logo.js +49 -0
  1056. package/dist/studio/logo.js.map +1 -0
  1057. package/dist/studio/names.d.ts +18 -0
  1058. package/dist/studio/names.d.ts.map +1 -0
  1059. package/dist/studio/names.js +36 -0
  1060. package/dist/studio/names.js.map +1 -0
  1061. package/dist/studio/patch.d.ts +17 -0
  1062. package/dist/studio/patch.d.ts.map +1 -0
  1063. package/dist/studio/patch.js +64 -0
  1064. package/dist/studio/patch.js.map +1 -0
  1065. package/dist/studio/seams.d.ts +44 -0
  1066. package/dist/studio/seams.d.ts.map +1 -0
  1067. package/dist/studio/seams.js +36 -0
  1068. package/dist/studio/seams.js.map +1 -0
  1069. package/dist/studio/share.d.ts +16 -0
  1070. package/dist/studio/share.d.ts.map +1 -0
  1071. package/dist/studio/share.js +57 -0
  1072. package/dist/studio/share.js.map +1 -0
  1073. package/dist/studio/shuffle.d.ts +38 -0
  1074. package/dist/studio/shuffle.d.ts.map +1 -0
  1075. package/dist/studio/shuffle.js +181 -0
  1076. package/dist/studio/shuffle.js.map +1 -0
  1077. package/dist/studio/slices.d.ts +29 -0
  1078. package/dist/studio/slices.d.ts.map +1 -0
  1079. package/dist/studio/slices.js +84 -0
  1080. package/dist/studio/slices.js.map +1 -0
  1081. package/dist/studio/studio.d.ts +29 -0
  1082. package/dist/studio/studio.d.ts.map +1 -0
  1083. package/dist/studio/studio.js +1298 -0
  1084. package/dist/studio/studio.js.map +1 -0
  1085. package/dist/studio/symbol.d.ts +47 -0
  1086. package/dist/studio/symbol.d.ts.map +1 -0
  1087. package/dist/studio/symbol.js +159 -0
  1088. package/dist/studio/symbol.js.map +1 -0
  1089. package/dist/studio/timers.d.ts +18 -0
  1090. package/dist/studio/timers.d.ts.map +1 -0
  1091. package/dist/studio/timers.js +36 -0
  1092. package/dist/studio/timers.js.map +1 -0
  1093. package/dist/studio/types.d.ts +693 -0
  1094. package/dist/studio/types.d.ts.map +1 -0
  1095. package/dist/studio/types.js +26 -0
  1096. package/dist/studio/types.js.map +1 -0
  1097. package/dist/studio/verify.d.ts +47 -0
  1098. package/dist/studio/verify.d.ts.map +1 -0
  1099. package/dist/studio/verify.js +63 -0
  1100. package/dist/studio/verify.js.map +1 -0
  1101. package/dist/symbology/index.d.ts +8 -0
  1102. package/dist/symbology/index.d.ts.map +1 -0
  1103. package/dist/symbology/index.js +6 -0
  1104. package/dist/symbology/index.js.map +1 -0
  1105. package/dist/symbology/micro/blocks.d.ts +34 -0
  1106. package/dist/symbology/micro/blocks.d.ts.map +1 -0
  1107. package/dist/symbology/micro/blocks.js +63 -0
  1108. package/dist/symbology/micro/blocks.js.map +1 -0
  1109. package/dist/symbology/micro/entry.d.ts +70 -0
  1110. package/dist/symbology/micro/entry.d.ts.map +1 -0
  1111. package/dist/symbology/micro/entry.js +181 -0
  1112. package/dist/symbology/micro/entry.js.map +1 -0
  1113. package/dist/symbology/micro/format.d.ts +31 -0
  1114. package/dist/symbology/micro/format.d.ts.map +1 -0
  1115. package/dist/symbology/micro/format.js +48 -0
  1116. package/dist/symbology/micro/format.js.map +1 -0
  1117. package/dist/symbology/micro/index.d.ts +7 -0
  1118. package/dist/symbology/micro/index.d.ts.map +1 -0
  1119. package/dist/symbology/micro/index.js +5 -0
  1120. package/dist/symbology/micro/index.js.map +1 -0
  1121. package/dist/symbology/micro/layout.d.ts +40 -0
  1122. package/dist/symbology/micro/layout.d.ts.map +1 -0
  1123. package/dist/symbology/micro/layout.js +106 -0
  1124. package/dist/symbology/micro/layout.js.map +1 -0
  1125. package/dist/symbology/micro/mask.d.ts +25 -0
  1126. package/dist/symbology/micro/mask.d.ts.map +1 -0
  1127. package/dist/symbology/micro/mask.js +41 -0
  1128. package/dist/symbology/micro/mask.js.map +1 -0
  1129. package/dist/symbology/micro/modules.d.ts +76 -0
  1130. package/dist/symbology/micro/modules.d.ts.map +1 -0
  1131. package/dist/symbology/micro/modules.js +156 -0
  1132. package/dist/symbology/micro/modules.js.map +1 -0
  1133. package/dist/symbology/micro/profile.d.ts +16 -0
  1134. package/dist/symbology/micro/profile.d.ts.map +1 -0
  1135. package/dist/symbology/micro/profile.js +45 -0
  1136. package/dist/symbology/micro/profile.js.map +1 -0
  1137. package/dist/symbology/micro/read-helpers.d.ts +31 -0
  1138. package/dist/symbology/micro/read-helpers.d.ts.map +1 -0
  1139. package/dist/symbology/micro/read-helpers.js +66 -0
  1140. package/dist/symbology/micro/read-helpers.js.map +1 -0
  1141. package/dist/symbology/micro/tables.d.ts +63 -0
  1142. package/dist/symbology/micro/tables.d.ts.map +1 -0
  1143. package/dist/symbology/micro/tables.js +163 -0
  1144. package/dist/symbology/micro/tables.js.map +1 -0
  1145. package/dist/symbology/qr/blocks.d.ts +58 -0
  1146. package/dist/symbology/qr/blocks.d.ts.map +1 -0
  1147. package/dist/symbology/qr/blocks.js +176 -0
  1148. package/dist/symbology/qr/blocks.js.map +1 -0
  1149. package/dist/symbology/qr/build.d.ts +20 -0
  1150. package/dist/symbology/qr/build.d.ts.map +1 -0
  1151. package/dist/symbology/qr/build.js +91 -0
  1152. package/dist/symbology/qr/build.js.map +1 -0
  1153. package/dist/symbology/qr/entry.d.ts +13 -0
  1154. package/dist/symbology/qr/entry.d.ts.map +1 -0
  1155. package/dist/symbology/qr/entry.js +56 -0
  1156. package/dist/symbology/qr/entry.js.map +1 -0
  1157. package/dist/symbology/qr/index.d.ts +13 -0
  1158. package/dist/symbology/qr/index.d.ts.map +1 -0
  1159. package/dist/symbology/qr/index.js +9 -0
  1160. package/dist/symbology/qr/index.js.map +1 -0
  1161. package/dist/symbology/qr/info.d.ts +29 -0
  1162. package/dist/symbology/qr/info.d.ts.map +1 -0
  1163. package/dist/symbology/qr/info.js +53 -0
  1164. package/dist/symbology/qr/info.js.map +1 -0
  1165. package/dist/symbology/qr/layout.d.ts +37 -0
  1166. package/dist/symbology/qr/layout.d.ts.map +1 -0
  1167. package/dist/symbology/qr/layout.js +174 -0
  1168. package/dist/symbology/qr/layout.js.map +1 -0
  1169. package/dist/symbology/qr/mask.d.ts +35 -0
  1170. package/dist/symbology/qr/mask.d.ts.map +1 -0
  1171. package/dist/symbology/qr/mask.js +113 -0
  1172. package/dist/symbology/qr/mask.js.map +1 -0
  1173. package/dist/symbology/qr/read.d.ts +43 -0
  1174. package/dist/symbology/qr/read.d.ts.map +1 -0
  1175. package/dist/symbology/qr/read.js +219 -0
  1176. package/dist/symbology/qr/read.js.map +1 -0
  1177. package/dist/symbology/qr/tables.d.ts +62 -0
  1178. package/dist/symbology/qr/tables.d.ts.map +1 -0
  1179. package/dist/symbology/qr/tables.js +337 -0
  1180. package/dist/symbology/qr/tables.js.map +1 -0
  1181. package/dist/symbology/registry.d.ts +11 -0
  1182. package/dist/symbology/registry.d.ts.map +1 -0
  1183. package/dist/symbology/registry.js +19 -0
  1184. package/dist/symbology/registry.js.map +1 -0
  1185. package/dist/symbology/rmqr/entry.d.ts +56 -0
  1186. package/dist/symbology/rmqr/entry.d.ts.map +1 -0
  1187. package/dist/symbology/rmqr/entry.js +165 -0
  1188. package/dist/symbology/rmqr/entry.js.map +1 -0
  1189. package/dist/symbology/rmqr/format.d.ts +45 -0
  1190. package/dist/symbology/rmqr/format.d.ts.map +1 -0
  1191. package/dist/symbology/rmqr/format.js +72 -0
  1192. package/dist/symbology/rmqr/format.js.map +1 -0
  1193. package/dist/symbology/rmqr/index.d.ts +5 -0
  1194. package/dist/symbology/rmqr/index.d.ts.map +1 -0
  1195. package/dist/symbology/rmqr/index.js +5 -0
  1196. package/dist/symbology/rmqr/index.js.map +1 -0
  1197. package/dist/symbology/rmqr/layout.d.ts +46 -0
  1198. package/dist/symbology/rmqr/layout.d.ts.map +1 -0
  1199. package/dist/symbology/rmqr/layout.js +196 -0
  1200. package/dist/symbology/rmqr/layout.js.map +1 -0
  1201. package/dist/symbology/rmqr/profile.d.ts +15 -0
  1202. package/dist/symbology/rmqr/profile.d.ts.map +1 -0
  1203. package/dist/symbology/rmqr/profile.js +52 -0
  1204. package/dist/symbology/rmqr/profile.js.map +1 -0
  1205. package/dist/symbology/rmqr/tables.d.ts +62 -0
  1206. package/dist/symbology/rmqr/tables.d.ts.map +1 -0
  1207. package/dist/symbology/rmqr/tables.js +194 -0
  1208. package/dist/symbology/rmqr/tables.js.map +1 -0
  1209. package/dist/symbology/roles.d.ts +19 -0
  1210. package/dist/symbology/roles.d.ts.map +1 -0
  1211. package/dist/symbology/roles.js +35 -0
  1212. package/dist/symbology/roles.js.map +1 -0
  1213. package/dist/symbology/types.d.ts +126 -0
  1214. package/dist/symbology/types.d.ts.map +1 -0
  1215. package/dist/symbology/types.js +11 -0
  1216. package/dist/symbology/types.js.map +1 -0
  1217. package/dist/text/base64.d.ts +11 -0
  1218. package/dist/text/base64.d.ts.map +1 -0
  1219. package/dist/text/base64.js +49 -0
  1220. package/dist/text/base64.js.map +1 -0
  1221. package/dist/text/cmap.d.ts +17 -0
  1222. package/dist/text/cmap.d.ts.map +1 -0
  1223. package/dist/text/cmap.js +161 -0
  1224. package/dist/text/cmap.js.map +1 -0
  1225. package/dist/text/compiled.d.ts +52 -0
  1226. package/dist/text/compiled.d.ts.map +1 -0
  1227. package/dist/text/compiled.js +220 -0
  1228. package/dist/text/compiled.js.map +1 -0
  1229. package/dist/text/errors.d.ts +34 -0
  1230. package/dist/text/errors.d.ts.map +1 -0
  1231. package/dist/text/errors.js +26 -0
  1232. package/dist/text/errors.js.map +1 -0
  1233. package/dist/text/font.d.ts +29 -0
  1234. package/dist/text/font.d.ts.map +1 -0
  1235. package/dist/text/font.js +67 -0
  1236. package/dist/text/font.js.map +1 -0
  1237. package/dist/text/glyf.d.ts +62 -0
  1238. package/dist/text/glyf.d.ts.map +1 -0
  1239. package/dist/text/glyf.js +276 -0
  1240. package/dist/text/glyf.js.map +1 -0
  1241. package/dist/text/index.d.ts +13 -0
  1242. package/dist/text/index.d.ts.map +1 -0
  1243. package/dist/text/index.js +9 -0
  1244. package/dist/text/index.js.map +1 -0
  1245. package/dist/text/kerning.d.ts +36 -0
  1246. package/dist/text/kerning.d.ts.map +1 -0
  1247. package/dist/text/kerning.js +382 -0
  1248. package/dist/text/kerning.js.map +1 -0
  1249. package/dist/text/layout.d.ts +35 -0
  1250. package/dist/text/layout.d.ts.map +1 -0
  1251. package/dist/text/layout.js +287 -0
  1252. package/dist/text/layout.js.map +1 -0
  1253. package/dist/text/outline.d.ts +22 -0
  1254. package/dist/text/outline.d.ts.map +1 -0
  1255. package/dist/text/outline.js +79 -0
  1256. package/dist/text/outline.js.map +1 -0
  1257. package/dist/text/reader.d.ts +43 -0
  1258. package/dist/text/reader.d.ts.map +1 -0
  1259. package/dist/text/reader.js +83 -0
  1260. package/dist/text/reader.js.map +1 -0
  1261. package/dist/text/registry.d.ts +21 -0
  1262. package/dist/text/registry.d.ts.map +1 -0
  1263. package/dist/text/registry.js +32 -0
  1264. package/dist/text/registry.js.map +1 -0
  1265. package/dist/text/truetype.d.ts +44 -0
  1266. package/dist/text/truetype.d.ts.map +1 -0
  1267. package/dist/text/truetype.js +127 -0
  1268. package/dist/text/truetype.js.map +1 -0
  1269. package/dist/text/types.d.ts +106 -0
  1270. package/dist/text/types.d.ts.map +1 -0
  1271. package/dist/text/types.js +11 -0
  1272. package/dist/text/types.js.map +1 -0
  1273. package/dist/verify/camera.d.ts +59 -0
  1274. package/dist/verify/camera.d.ts.map +1 -0
  1275. package/dist/verify/camera.js +76 -0
  1276. package/dist/verify/camera.js.map +1 -0
  1277. package/dist/verify/capture.d.ts +40 -0
  1278. package/dist/verify/capture.d.ts.map +1 -0
  1279. package/dist/verify/capture.js +118 -0
  1280. package/dist/verify/capture.js.map +1 -0
  1281. package/dist/verify/coverage.d.ts +61 -0
  1282. package/dist/verify/coverage.d.ts.map +1 -0
  1283. package/dist/verify/coverage.js +90 -0
  1284. package/dist/verify/coverage.js.map +1 -0
  1285. package/dist/verify/degrade.d.ts +143 -0
  1286. package/dist/verify/degrade.d.ts.map +1 -0
  1287. package/dist/verify/degrade.js +503 -0
  1288. package/dist/verify/degrade.js.map +1 -0
  1289. package/dist/verify/fixes.d.ts +28 -0
  1290. package/dist/verify/fixes.d.ts.map +1 -0
  1291. package/dist/verify/fixes.js +277 -0
  1292. package/dist/verify/fixes.js.map +1 -0
  1293. package/dist/verify/homography.d.ts +32 -0
  1294. package/dist/verify/homography.d.ts.map +1 -0
  1295. package/dist/verify/homography.js +79 -0
  1296. package/dist/verify/homography.js.map +1 -0
  1297. package/dist/verify/index.d.ts +17 -0
  1298. package/dist/verify/index.d.ts.map +1 -0
  1299. package/dist/verify/index.js +11 -0
  1300. package/dist/verify/index.js.map +1 -0
  1301. package/dist/verify/inks.d.ts +39 -0
  1302. package/dist/verify/inks.d.ts.map +1 -0
  1303. package/dist/verify/inks.js +101 -0
  1304. package/dist/verify/inks.js.map +1 -0
  1305. package/dist/verify/job.d.ts +89 -0
  1306. package/dist/verify/job.d.ts.map +1 -0
  1307. package/dist/verify/job.js +314 -0
  1308. package/dist/verify/job.js.map +1 -0
  1309. package/dist/verify/keys.d.ts +92 -0
  1310. package/dist/verify/keys.d.ts.map +1 -0
  1311. package/dist/verify/keys.js +95 -0
  1312. package/dist/verify/keys.js.map +1 -0
  1313. package/dist/verify/ladders.d.ts +68 -0
  1314. package/dist/verify/ladders.d.ts.map +1 -0
  1315. package/dist/verify/ladders.js +154 -0
  1316. package/dist/verify/ladders.js.map +1 -0
  1317. package/dist/verify/prepare.d.ts +78 -0
  1318. package/dist/verify/prepare.d.ts.map +1 -0
  1319. package/dist/verify/prepare.js +307 -0
  1320. package/dist/verify/prepare.js.map +1 -0
  1321. package/dist/verify/preset.d.ts +111 -0
  1322. package/dist/verify/preset.d.ts.map +1 -0
  1323. package/dist/verify/preset.js +200 -0
  1324. package/dist/verify/preset.js.map +1 -0
  1325. package/dist/verify/read.d.ts +23 -0
  1326. package/dist/verify/read.d.ts.map +1 -0
  1327. package/dist/verify/read.js +55 -0
  1328. package/dist/verify/read.js.map +1 -0
  1329. package/dist/verify/region.d.ts +37 -0
  1330. package/dist/verify/region.d.ts.map +1 -0
  1331. package/dist/verify/region.js +80 -0
  1332. package/dist/verify/region.js.map +1 -0
  1333. package/dist/verify/static.d.ts +56 -0
  1334. package/dist/verify/static.d.ts.map +1 -0
  1335. package/dist/verify/static.js +277 -0
  1336. package/dist/verify/static.js.map +1 -0
  1337. package/dist/verify/types.d.ts +173 -0
  1338. package/dist/verify/types.d.ts.map +1 -0
  1339. package/dist/verify/types.js +36 -0
  1340. package/dist/verify/types.js.map +1 -0
  1341. package/package.json +191 -5
@@ -0,0 +1,267 @@
1
+ /**
2
+ * The PDF writer: a scene as a one page PDF 1.7 at its true size, and a sheet
3
+ * of scenes as a PDF of as many pages as it needs.
4
+ *
5
+ * The page is the size asked for in millimetres, plus the bleed, plus room
6
+ * for crop marks when they are asked for. The boxes say which is which, so a
7
+ * print workflow trims where it should: the TrimBox is the finished piece,
8
+ * the BleedBox is the trim with the bleed around it (the background is drawn
9
+ * out to it), and the MediaBox holds the crop marks as well, which stand off
10
+ * the trim by the bleed or 3 mm, whichever is more, so they never print on
11
+ * the piece.
12
+ *
13
+ * Colour is sRGB (DeviceRGB) or CMYK (DeviceCMYK); see `pdf-colour.ts` for
14
+ * the conversion and its black rule, and `pdf-content.ts` for how each kind
15
+ * of paint, clip, group and image is written. Crop marks are 0.25 pt lines in
16
+ * registration colour (all four inks) in CMYK, so they print on every plate,
17
+ * and in black in sRGB.
18
+ *
19
+ * The same scene gives the same bytes: every number is formatted here, every
20
+ * object is numbered in the order it is made, the Info dictionary has a title
21
+ * and a producer and no dates, the file identifier is a hash of the file, and
22
+ * streams are compressed with this package's own deflate.
23
+ */
24
+ import { QrStudioError } from '../core/errors.js';
25
+ import { PathBuilder } from '../geometry/path.js';
26
+ import { MARK_LENGTH_MM, MARK_OFFSET_MM, checkTemplate } from './impose.js';
27
+ import { checkCmyk, checkSpace } from './pdf-colour.js';
28
+ import { ContentStream, fillPaint, writeNode } from './pdf-content.js';
29
+ import { PRODUCER, PdfDocument } from './pdf-document.js';
30
+ import { num, nums, textString } from './pdf-syntax.js';
31
+ import { normaliseScene } from './scene.js';
32
+ /** Points to the millimetre. */
33
+ export const PT_PER_MM = 72 / 25.4;
34
+ /** The largest page PDF allows, 200 inches (14,400 units) a side, in millimetres. */
35
+ export const MAX_PAGE_MM = 5080;
36
+ /** The most bleed this writer will draw. Printers ask for 3 mm, sometimes 5. */
37
+ export const MAX_BLEED_MM = 50;
38
+ /** A crop mark's line weight in points: a hairline a press holds. */
39
+ const MARK_WEIGHT_PT = 0.25;
40
+ function paintColours(paint, where) {
41
+ if (paint.kind === 'none')
42
+ return;
43
+ if (paint.kind === 'solid')
44
+ checkCmyk(paint.colour, where);
45
+ else
46
+ for (const stop of paint.stops)
47
+ checkCmyk(stop.colour, where);
48
+ }
49
+ function nodeColours(node, where) {
50
+ if (node.kind === 'path')
51
+ paintColours(node.paint, where);
52
+ else if (node.kind === 'group')
53
+ for (const child of node.children)
54
+ nodeColours(child, where);
55
+ }
56
+ /** Check a scene for the print writers: normalised, with every print value well formed. */
57
+ export function normalisePrintScene(scene, where) {
58
+ const normal = normaliseScene(scene, where);
59
+ paintColours(normal.background, `${where}: background`);
60
+ normal.layers.forEach((layer, i) => nodeColours(layer, `${where}: layer ${i}`));
61
+ return normal;
62
+ }
63
+ /** Draw a scene into a page's content. */
64
+ function place(stream, placement) {
65
+ const { scene } = placement;
66
+ const sx = placement.width / scene.width;
67
+ const sy = placement.height / scene.height;
68
+ // What can be seen: the scene and its bleed, in scene units.
69
+ const bx = placement.bleed / sx;
70
+ const by = placement.bleed / sy;
71
+ const visible = {
72
+ x: -bx,
73
+ y: -by,
74
+ width: scene.width + 2 * bx,
75
+ height: scene.height + 2 * by,
76
+ };
77
+ stream.op('q');
78
+ stream.op(`${nums([sx, 0, 0, -sy], 8)} ${nums([placement.left, placement.top])} cm`);
79
+ stream.rect(visible);
80
+ stream.op('W n');
81
+ if (scene.background.kind !== 'none') {
82
+ const rect = new PathBuilder()
83
+ .rect(visible.x, visible.y, visible.width, visible.height)
84
+ .build();
85
+ fillPaint(stream, rect, scene.background, visible);
86
+ }
87
+ for (const layer of scene.layers)
88
+ writeNode(stream, layer, visible);
89
+ stream.op('Q');
90
+ }
91
+ function box(b) {
92
+ return `[${nums([b.x, b.y, b.x + b.width, b.y + b.height])}]`;
93
+ }
94
+ function writePdf(pages, space, title) {
95
+ const doc = new PdfDocument();
96
+ const catalog = doc.reserve();
97
+ const tree = doc.reserve();
98
+ const info = doc.reserve();
99
+ const kids = [];
100
+ const images = new Map();
101
+ for (const page of pages) {
102
+ const context = { doc, space, transparency: false, images };
103
+ const stream = new ContentStream(context);
104
+ for (const placement of page.placements)
105
+ place(stream, placement);
106
+ if (page.marks.length > 0) {
107
+ stream.op('q');
108
+ stream.op(`${num(MARK_WEIGHT_PT)} w 0 J [] 0 d`);
109
+ stream.op(space === 'srgb' ? '0 0 0 RG' : '1 1 1 1 K');
110
+ for (const mark of page.marks) {
111
+ stream.op(`${nums([mark.x1, mark.y1])} m ${nums([mark.x2, mark.y2])} l S`);
112
+ }
113
+ stream.op('Q');
114
+ }
115
+ const content = doc.addStream('', stream.bytes());
116
+ const group = context.transparency
117
+ ? ` /Group << /Type /Group /S /Transparency /CS ${space === 'srgb' ? '/DeviceRGB' : '/DeviceCMYK'} >>`
118
+ : '';
119
+ kids.push(doc.add(`<< /Type /Page /Parent ${tree} 0 R /MediaBox [0 0 ${nums([page.width, page.height])}] /TrimBox ${box(page.trim)} /BleedBox ${box(page.bleed)} /Resources ${stream.resources()} /Contents ${content} 0 R${group} >>`));
120
+ }
121
+ doc.set(catalog, `<< /Type /Catalog /Pages ${tree} 0 R >>`);
122
+ doc.set(tree, `<< /Type /Pages /Kids [${kids.map((id) => `${id} 0 R`).join(' ')}] /Count ${kids.length} >>`);
123
+ doc.set(info, `<< ${title === null ? '' : `/Title ${textString(title)} `}/Producer ${textString(PRODUCER)} >>`);
124
+ return doc.finish(catalog, info);
125
+ }
126
+ function length(value, name, where, zero) {
127
+ if (typeof value !== 'number' || !Number.isFinite(value) || value < 0 || (!zero && value === 0)) {
128
+ throw new TypeError(`${where}: ${name} is a finite number${zero ? ', zero or more' : ' more than zero'}.`);
129
+ }
130
+ return value;
131
+ }
132
+ function coordinate(value, name, where) {
133
+ if (typeof value !== 'number' || !Number.isFinite(value)) {
134
+ throw new TypeError(`${where}: ${name} is a finite number.`);
135
+ }
136
+ return value;
137
+ }
138
+ function tooLarge(where) {
139
+ throw new QrStudioError('render/surface-too-large', 'That page is larger than a PDF can be. Choose a smaller size.', { maxMm: MAX_PAGE_MM, where });
140
+ }
141
+ function titleOf(value, fallback, where) {
142
+ if (value === undefined)
143
+ return fallback;
144
+ if (typeof value !== 'string')
145
+ throw new TypeError(`${where}: title is a string.`);
146
+ return value;
147
+ }
148
+ /** A scene as a one page PDF at the size asked for. */
149
+ export function sceneToPdf(scene, options) {
150
+ const where = 'sceneToPdf';
151
+ if (typeof options !== 'object' || options === null) {
152
+ throw new TypeError(`${where}: options gives at least the colour and the width.`);
153
+ }
154
+ const space = checkSpace(options.colour, where);
155
+ const normal = normalisePrintScene(scene, where);
156
+ const widthMm = length(options.widthMm, 'widthMm', where, false);
157
+ const heightMm = options.heightMm === undefined
158
+ ? (widthMm * normal.height) / normal.width
159
+ : length(options.heightMm, 'heightMm', where, false);
160
+ const bleedMm = length(options.bleedMm ?? 0, 'bleedMm', where, true);
161
+ if (bleedMm > MAX_BLEED_MM)
162
+ throw new TypeError(`${where}: bleedMm is at most ${MAX_BLEED_MM}.`);
163
+ const marks = options.cropMarks ?? false;
164
+ if (typeof marks !== 'boolean')
165
+ throw new TypeError(`${where}: cropMarks is true or false.`);
166
+ const title = titleOf(options.title, normal.title, where);
167
+ const offset = Math.max(MARK_OFFSET_MM, bleedMm);
168
+ const margin = marks ? offset + MARK_LENGTH_MM : bleedMm;
169
+ if (widthMm + 2 * margin > MAX_PAGE_MM || heightMm + 2 * margin > MAX_PAGE_MM)
170
+ tooLarge(where);
171
+ const pt = (mm) => mm * PT_PER_MM;
172
+ const trim = { x: pt(margin), y: pt(margin), width: pt(widthMm), height: pt(heightMm) };
173
+ const page = { width: pt(widthMm + 2 * margin), height: pt(heightMm + 2 * margin) };
174
+ const bleed = {
175
+ x: pt(margin - bleedMm),
176
+ y: pt(margin - bleedMm),
177
+ width: pt(widthMm + 2 * bleedMm),
178
+ height: pt(heightMm + 2 * bleedMm),
179
+ };
180
+ const lines = [];
181
+ if (marks) {
182
+ // Two marks at each corner of the trim, in the slug outside the bleed.
183
+ const left = trim.x;
184
+ const right = trim.x + trim.width;
185
+ const bottom = trim.y;
186
+ const top = trim.y + trim.height;
187
+ const near = pt(offset);
188
+ const far = pt(offset + MARK_LENGTH_MM);
189
+ for (const x of [left, right]) {
190
+ for (const y of [bottom, top]) {
191
+ const outX = x === left ? -1 : 1;
192
+ const outY = y === bottom ? -1 : 1;
193
+ lines.push({ x1: x + outX * near, y1: y, x2: x + outX * far, y2: y });
194
+ lines.push({ x1: x, y1: y + outY * near, x2: x, y2: y + outY * far });
195
+ }
196
+ }
197
+ }
198
+ return writePdf([
199
+ {
200
+ ...page,
201
+ trim,
202
+ bleed,
203
+ placements: [
204
+ {
205
+ scene: normal,
206
+ left: trim.x,
207
+ top: trim.y + trim.height,
208
+ width: trim.width,
209
+ height: trim.height,
210
+ bleed: pt(bleedMm),
211
+ },
212
+ ],
213
+ marks: lines,
214
+ },
215
+ ], space, title);
216
+ }
217
+ /** A sheet from `imposeSheet` as a PDF, a page per sheet. */
218
+ export function sheetToPdf(sheet, options) {
219
+ const where = 'sheetToPdf';
220
+ if (typeof sheet !== 'object' || sheet === null || !Array.isArray(sheet.pages)) {
221
+ throw new TypeError(`${where}: sheet is what imposeSheet returns.`);
222
+ }
223
+ if (typeof options !== 'object' || options === null) {
224
+ throw new TypeError(`${where}: options gives at least the colour.`);
225
+ }
226
+ const space = checkSpace(options.colour, where);
227
+ const title = titleOf(options.title, null, where);
228
+ checkTemplate(sheet.template);
229
+ const { widthMm, heightMm } = sheet.template.page;
230
+ if (widthMm > MAX_PAGE_MM || heightMm > MAX_PAGE_MM)
231
+ tooLarge(where);
232
+ const pt = (mm) => mm * PT_PER_MM;
233
+ const whole = { x: 0, y: 0, width: pt(widthMm), height: pt(heightMm) };
234
+ // An empty sheet is still a page, so the file is a document a reader opens.
235
+ const pages = sheet.pages.length === 0 ? [{ cells: [], marks: [] }] : sheet.pages;
236
+ const specs = pages.map((page, p) => ({
237
+ width: whole.width,
238
+ height: whole.height,
239
+ trim: whole,
240
+ bleed: whole,
241
+ placements: page.cells.map((cell, i) => {
242
+ const at = `${where}: page ${p} cell ${i}`;
243
+ const bleed = length(cell.bleedMm, 'bleedMm', at, true);
244
+ if (bleed > MAX_BLEED_MM)
245
+ throw new TypeError(`${at}: bleedMm is at most ${MAX_BLEED_MM}.`);
246
+ return {
247
+ scene: normalisePrintScene(cell.scene, at),
248
+ left: pt(coordinate(cell.xMm, 'xMm', at)),
249
+ top: pt(heightMm - coordinate(cell.yMm, 'yMm', at)),
250
+ width: pt(length(cell.widthMm, 'widthMm', at, false)),
251
+ height: pt(length(cell.heightMm, 'heightMm', at, false)),
252
+ bleed: pt(bleed),
253
+ };
254
+ }),
255
+ marks: page.marks.map((mark, i) => {
256
+ const at = `${where}: page ${p} mark ${i}`;
257
+ return {
258
+ x1: pt(coordinate(mark.x1Mm, 'x1Mm', at)),
259
+ y1: pt(heightMm - coordinate(mark.y1Mm, 'y1Mm', at)),
260
+ x2: pt(coordinate(mark.x2Mm, 'x2Mm', at)),
261
+ y2: pt(heightMm - coordinate(mark.y2Mm, 'y2Mm', at)),
262
+ };
263
+ }),
264
+ }));
265
+ return writePdf(specs, space, title);
266
+ }
267
+ //# sourceMappingURL=pdf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pdf.js","sourceRoot":"","sources":["../../src/render/pdf.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * The PNG decoder.
3
+ *
4
+ * A design file carries its logo as a PNG, and the website lets a person drop
5
+ * one in, so this reads bytes nobody vouched for. It reads the whole format
6
+ * (every colour type, every bit depth, palettes with tRNS, Adam7 interlacing)
7
+ * and refuses everything else with one of two errors: 'image/unreadable' for
8
+ * a file that is damaged or is not a PNG, and 'image/too-large' for one whose
9
+ * header asks for more pixels than the caller allows. Nothing else escapes.
10
+ *
11
+ * It does not use `createImageBitmap` because that is not deterministic
12
+ * (colour management differs by engine) and is not available where this runs
13
+ * in a worker or on a server.
14
+ *
15
+ * Ancillary chunks are skipped unread, apart from tRNS, which is part of the
16
+ * picture. Text chunks in particular are never decoded: a PNG's tEXt can hold
17
+ * anything, and nothing a file says about itself should reach a design.
18
+ *
19
+ * Memory is bounded before it is spent. The header fixes how many bytes the
20
+ * image data must inflate to, and that is the inflater's limit, so a stream
21
+ * built to expand to gigabytes stops at the size its header claims.
22
+ */
23
+ import type { RgbaImage } from '../core/image.js';
24
+ export interface DecodePngOptions {
25
+ /** Refuse an image with more pixels than this. Default 2^26, about 67 million. */
26
+ readonly maxPixels?: number;
27
+ }
28
+ export declare const DEFAULT_MAX_PIXELS = 67108864;
29
+ /** Why a file was refused. A stage, never anything the file contained. */
30
+ export type PngFailure = 'signature' | 'chunk' | 'crc' | 'header' | 'palette' | 'data' | 'truncated';
31
+ /** Decode a PNG to straight RGBA, 8 bits a channel. */
32
+ export declare function decodePng(bytes: Uint8Array, options?: DecodePngOptions): RgbaImage;
33
+ //# sourceMappingURL=png-decode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"png-decode.d.ts","sourceRoot":"","sources":["../../src/render/png-decode.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAKH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAGlD,MAAM,WAAW,gBAAgB;IAChC,kFAAkF;IAClF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,eAAO,MAAM,kBAAkB,WAAW,CAAC;AAE3C,0EAA0E;AAC1E,MAAM,MAAM,UAAU,GACrB,WAAW,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,WAAW,CAAC;AAgI7E,uDAAuD;AACvD,wBAAgB,SAAS,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,GAAE,gBAAqB,GAAG,SAAS,CAYtF"}
@@ -0,0 +1,345 @@
1
+ /**
2
+ * The PNG decoder.
3
+ *
4
+ * A design file carries its logo as a PNG, and the website lets a person drop
5
+ * one in, so this reads bytes nobody vouched for. It reads the whole format
6
+ * (every colour type, every bit depth, palettes with tRNS, Adam7 interlacing)
7
+ * and refuses everything else with one of two errors: 'image/unreadable' for
8
+ * a file that is damaged or is not a PNG, and 'image/too-large' for one whose
9
+ * header asks for more pixels than the caller allows. Nothing else escapes.
10
+ *
11
+ * It does not use `createImageBitmap` because that is not deterministic
12
+ * (colour management differs by engine) and is not available where this runs
13
+ * in a worker or on a server.
14
+ *
15
+ * Ancillary chunks are skipped unread, apart from tRNS, which is part of the
16
+ * picture. Text chunks in particular are never decoded: a PNG's tEXt can hold
17
+ * anything, and nothing a file says about itself should reach a design.
18
+ *
19
+ * Memory is bounded before it is spent. The header fixes how many bytes the
20
+ * image data must inflate to, and that is the inflater's limit, so a stream
21
+ * built to expand to gigabytes stops at the size its header claims.
22
+ */
23
+ import { QrStudioError } from '../core/errors.js';
24
+ import { crc32 } from '../core/checksums.js';
25
+ import { zlibUnwrap } from '../core/deflate.js';
26
+ import { PNG_SIGNATURE } from './png.js';
27
+ export const DEFAULT_MAX_PIXELS = 67108864;
28
+ function unreadable(reason) {
29
+ return new QrStudioError('image/unreadable', 'This image is damaged, or is not a PNG this tool can read.', { reason });
30
+ }
31
+ /** Bit depths each colour type allows, from the specification's table. */
32
+ const DEPTHS = {
33
+ 0: [1, 2, 4, 8, 16],
34
+ 2: [8, 16],
35
+ 3: [1, 2, 4, 8],
36
+ 4: [8, 16],
37
+ 6: [8, 16],
38
+ };
39
+ /** Samples per pixel for each colour type. */
40
+ const CHANNELS = { 0: 1, 2: 3, 3: 1, 4: 2, 6: 4 };
41
+ /** Adam7: the first column and row of each pass, and the steps between. */
42
+ const PASSES = [
43
+ [0, 0, 8, 8],
44
+ [4, 0, 8, 8],
45
+ [0, 4, 4, 8],
46
+ [2, 0, 4, 4],
47
+ [0, 2, 2, 4],
48
+ [1, 0, 2, 2],
49
+ [0, 1, 1, 2],
50
+ ];
51
+ function readUint32(bytes, at) {
52
+ return (bytes[at] * 16777216 +
53
+ ((bytes[at + 1] << 16) |
54
+ (bytes[at + 2] << 8) |
55
+ bytes[at + 3]));
56
+ }
57
+ /** The images the data holds: one, or the seven Adam7 passes (some of which may be empty). */
58
+ function subImages(header) {
59
+ const { width, height } = header;
60
+ if (!header.interlaced)
61
+ return [{ x0: 0, y0: 0, dx: 1, dy: 1, width, height }];
62
+ return PASSES.map(([x0, y0, dx, dy]) => ({
63
+ x0,
64
+ y0,
65
+ dx,
66
+ dy,
67
+ width: Math.ceil((width - x0) / dx),
68
+ height: Math.ceil((height - y0) / dy),
69
+ }));
70
+ }
71
+ function paeth(left, above, aboveLeft) {
72
+ const p = left + above - aboveLeft;
73
+ const dl = Math.abs(p - left);
74
+ const du = Math.abs(p - above);
75
+ const dul = Math.abs(p - aboveLeft);
76
+ return dl <= du && dl <= dul ? left : du <= dul ? above : aboveLeft;
77
+ }
78
+ /** Undo one row's filter in place, given the unfiltered row above (zeros for the first). */
79
+ function unfilter(type, row, previous, bpp) {
80
+ const n = row.length;
81
+ if (type === 0)
82
+ return;
83
+ if (type === 1) {
84
+ for (let i = bpp; i < n; i += 1)
85
+ row[i] = (row[i] + row[i - bpp]) & 0xff;
86
+ return;
87
+ }
88
+ if (type === 2) {
89
+ for (let i = 0; i < n; i += 1)
90
+ row[i] = (row[i] + previous[i]) & 0xff;
91
+ return;
92
+ }
93
+ if (type === 3) {
94
+ for (let i = 0; i < n; i += 1) {
95
+ const left = i >= bpp ? row[i - bpp] : 0;
96
+ row[i] = (row[i] + ((left + previous[i]) >> 1)) & 0xff;
97
+ }
98
+ return;
99
+ }
100
+ if (type === 4) {
101
+ for (let i = 0; i < n; i += 1) {
102
+ const left = i >= bpp ? row[i - bpp] : 0;
103
+ const aboveLeft = i >= bpp ? previous[i - bpp] : 0;
104
+ row[i] = (row[i] + paeth(left, previous[i], aboveLeft)) & 0xff;
105
+ }
106
+ return;
107
+ }
108
+ throw unreadable('data');
109
+ }
110
+ /** Sample `index` of a row at `depth` bits a sample, most significant bits first. */
111
+ function sample(row, index, depth) {
112
+ if (depth === 8)
113
+ return row[index];
114
+ if (depth === 16)
115
+ return (row[index * 2] << 8) | row[index * 2 + 1];
116
+ const perByte = 8 / depth;
117
+ const byte = row[Math.floor(index / perByte)];
118
+ const shift = 8 - depth * ((index % perByte) + 1);
119
+ return (byte >> shift) & ((1 << depth) - 1);
120
+ }
121
+ /** A sample scaled to 8 bits, rounded half up, as pngjs and libpng's simplified API do. */
122
+ function toByte(value, depth) {
123
+ if (depth === 8)
124
+ return value;
125
+ return Math.floor((value * 255) / ((1 << depth) - 1) + 0.5);
126
+ }
127
+ /** Decode a PNG to straight RGBA, 8 bits a channel. */
128
+ export function decodePng(bytes, options = {}) {
129
+ if (!(bytes instanceof Uint8Array)) {
130
+ throw new TypeError('decodePng: bytes is a Uint8Array.');
131
+ }
132
+ if (typeof options !== 'object' || options === null) {
133
+ throw new TypeError('decodePng: options is an object.');
134
+ }
135
+ const maxPixels = options.maxPixels ?? DEFAULT_MAX_PIXELS;
136
+ if (!Number.isInteger(maxPixels) || maxPixels < 1) {
137
+ throw new TypeError('decodePng: maxPixels is a whole number, 1 or more.');
138
+ }
139
+ return decode(bytes, maxPixels);
140
+ }
141
+ /** The chunk at `at`, checked for length, type and CRC. */
142
+ function readChunk(bytes, at) {
143
+ if (at + 12 > bytes.length)
144
+ throw unreadable('truncated');
145
+ const length = readUint32(bytes, at);
146
+ if (length > 0x7fffffff)
147
+ throw unreadable('chunk');
148
+ if (at + 12 + length > bytes.length)
149
+ throw unreadable('truncated');
150
+ const type = String.fromCharCode(bytes[at + 4], bytes[at + 5], bytes[at + 6], bytes[at + 7]);
151
+ if (!/^[A-Za-z]{4}$/.test(type))
152
+ throw unreadable('chunk');
153
+ if (crc32(bytes.subarray(at + 4, at + 8 + length)) !== readUint32(bytes, at + 8 + length)) {
154
+ throw unreadable('crc');
155
+ }
156
+ return { type, body: bytes.subarray(at + 8, at + 8 + length), next: at + 12 + length };
157
+ }
158
+ function decode(bytes, maxPixels) {
159
+ if (bytes.length < 8)
160
+ throw unreadable('signature');
161
+ for (let i = 0; i < 8; i += 1) {
162
+ if (bytes[i] !== PNG_SIGNATURE[i])
163
+ throw unreadable('signature');
164
+ }
165
+ const first = readChunk(bytes, 8);
166
+ if (first.type !== 'IHDR')
167
+ throw unreadable('header');
168
+ const header = readHeader(first.body);
169
+ if (header.width * header.height > maxPixels) {
170
+ throw new QrStudioError('image/too-large', 'This image has more pixels than this tool will open.', {
171
+ width: header.width,
172
+ height: header.height,
173
+ maxPixels,
174
+ });
175
+ }
176
+ let palette = null;
177
+ let transparency = null;
178
+ const data = [];
179
+ let dataLength = 0;
180
+ let dataEnded = false;
181
+ let at = first.next;
182
+ for (;;) {
183
+ const { type, body, next } = readChunk(bytes, at);
184
+ at = next;
185
+ if (type === 'IEND')
186
+ break;
187
+ if (type !== 'IDAT' && data.length > 0)
188
+ dataEnded = true;
189
+ switch (type) {
190
+ case 'IHDR':
191
+ throw unreadable('header');
192
+ case 'PLTE':
193
+ if (palette !== null || data.length > 0)
194
+ throw unreadable('palette');
195
+ if (body.length === 0 || body.length % 3 !== 0 || body.length > 768) {
196
+ throw unreadable('palette');
197
+ }
198
+ palette = body;
199
+ break;
200
+ case 'tRNS':
201
+ // Ancillary, but part of the picture. One that does not fit its
202
+ // colour type is ignored, as libpng does.
203
+ if (data.length === 0)
204
+ transparency = body;
205
+ break;
206
+ case 'IDAT':
207
+ if (dataEnded)
208
+ throw unreadable('data');
209
+ data.push(body);
210
+ dataLength += body.length;
211
+ break;
212
+ default:
213
+ // A critical chunk this reader does not know means a picture it
214
+ // cannot draw correctly; an ancillary one is skipped unread.
215
+ if ((type.charCodeAt(0) & 0x20) === 0)
216
+ throw unreadable('chunk');
217
+ }
218
+ }
219
+ if (data.length === 0)
220
+ throw unreadable('data');
221
+ if (header.colourType === 3) {
222
+ if (palette === null || palette.length / 3 > 1 << header.depth)
223
+ throw unreadable('palette');
224
+ }
225
+ const compressed = new Uint8Array(dataLength);
226
+ let offset = 0;
227
+ for (const piece of data) {
228
+ compressed.set(piece, offset);
229
+ offset += piece.length;
230
+ }
231
+ const channels = CHANNELS[header.colourType];
232
+ const bitsPerPixel = channels * header.depth;
233
+ const bpp = Math.max(1, bitsPerPixel >> 3);
234
+ const subs = subImages(header);
235
+ let expected = 0;
236
+ for (const sub of subs) {
237
+ if (sub.width > 0 && sub.height > 0)
238
+ expected += sub.height * (1 + Math.ceil((sub.width * bitsPerPixel) / 8));
239
+ }
240
+ let raw;
241
+ try {
242
+ raw = zlibUnwrap(compressed, { maxOutput: expected });
243
+ }
244
+ catch {
245
+ // Malformed, or longer than the header says, which is the same thing
246
+ // here. The limit is always a valid one, so nothing else is thrown.
247
+ throw unreadable('data');
248
+ }
249
+ if (raw.length !== expected)
250
+ throw unreadable('data');
251
+ return toRgba(header, raw, subs, bitsPerPixel, bpp, palette, transparency);
252
+ }
253
+ function readHeader(body) {
254
+ if (body.length !== 13)
255
+ throw unreadable('header');
256
+ const width = readUint32(body, 0);
257
+ const height = readUint32(body, 4);
258
+ const depth = body[8];
259
+ const colourType = body[9];
260
+ const allowed = DEPTHS[colourType];
261
+ if (width < 1 ||
262
+ height < 1 ||
263
+ width > 0x7fffffff ||
264
+ height > 0x7fffffff ||
265
+ allowed === undefined ||
266
+ !allowed.includes(depth) ||
267
+ body[10] !== 0 ||
268
+ body[11] !== 0 ||
269
+ (body[12] !== 0 && body[12] !== 1)) {
270
+ throw unreadable('header');
271
+ }
272
+ return { width, height, depth, colourType, interlaced: body[12] === 1 };
273
+ }
274
+ function toRgba(header, raw, subs, bitsPerPixel, bpp, palette, transparency) {
275
+ const { width, height, depth, colourType } = header;
276
+ const out = new Uint8ClampedArray(width * height * 4);
277
+ const entries = palette === null ? 0 : palette.length / 3;
278
+ // The transparent key for greyscale and RGB, at the file's own precision.
279
+ // A pixel that matches it is left as four zeros, the one spelling of
280
+ // nothing the rasteriser uses too (and what pngjs and a canvas give).
281
+ const key = transparency !== null && colourType === 0 && transparency.length === 2
282
+ ? [(transparency[0] << 8) | transparency[1]]
283
+ : transparency !== null && colourType === 2 && transparency.length === 6
284
+ ? [0, 2, 4].map((i) => ((transparency[i] << 8) | transparency[i + 1]) >>> 0)
285
+ : null;
286
+ const paletteAlpha = (index) => colourType === 3 &&
287
+ transparency !== null &&
288
+ index < transparency.length &&
289
+ transparency.length <= entries
290
+ ? transparency[index]
291
+ : 255;
292
+ let at = 0;
293
+ for (const sub of subs) {
294
+ if (sub.width === 0 || sub.height === 0)
295
+ continue;
296
+ const stride = Math.ceil((sub.width * bitsPerPixel) / 8);
297
+ let previous = new Uint8Array(stride);
298
+ for (let y = 0; y < sub.height; y += 1) {
299
+ const filter = raw[at];
300
+ const row = raw.subarray(at + 1, at + 1 + stride);
301
+ unfilter(filter, row, previous, bpp);
302
+ previous = row;
303
+ at += 1 + stride;
304
+ const oy = sub.y0 + y * sub.dy;
305
+ for (let x = 0; x < sub.width; x += 1) {
306
+ const o = (oy * width + sub.x0 + x * sub.dx) * 4;
307
+ if (colourType === 3) {
308
+ const index = sample(row, x, depth);
309
+ if (index >= entries)
310
+ throw unreadable('palette');
311
+ const p = palette;
312
+ out[o] = p[index * 3];
313
+ out[o + 1] = p[index * 3 + 1];
314
+ out[o + 2] = p[index * 3 + 2];
315
+ out[o + 3] = paletteAlpha(index);
316
+ }
317
+ else if (colourType === 0 || colourType === 4) {
318
+ const grey = sample(row, x * (colourType === 4 ? 2 : 1), depth);
319
+ if (colourType === 0 && key !== null && key[0] === grey)
320
+ continue;
321
+ const value = toByte(grey, depth);
322
+ out[o] = value;
323
+ out[o + 1] = value;
324
+ out[o + 2] = value;
325
+ out[o + 3] = colourType === 4 ? toByte(sample(row, x * 2 + 1, depth), depth) : 255;
326
+ }
327
+ else {
328
+ const n = colourType === 6 ? 4 : 3;
329
+ const r = sample(row, x * n, depth);
330
+ const g = sample(row, x * n + 1, depth);
331
+ const b = sample(row, x * n + 2, depth);
332
+ if (colourType === 2 && key !== null && key[0] === r && key[1] === g && key[2] === b) {
333
+ continue;
334
+ }
335
+ out[o] = toByte(r, depth);
336
+ out[o + 1] = toByte(g, depth);
337
+ out[o + 2] = toByte(b, depth);
338
+ out[o + 3] = colourType === 6 ? toByte(sample(row, x * 4 + 3, depth), depth) : 255;
339
+ }
340
+ }
341
+ }
342
+ }
343
+ return { width, height, data: out };
344
+ }
345
+ //# sourceMappingURL=png-decode.js.map