@prismer/sdk 2.0.7 → 2.2.55

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 (387) hide show
  1. package/README.md +13 -7
  2. package/dist/chunk-R7POPVJR.mjs +35 -0
  3. package/dist/cli.js +59723 -8280
  4. package/dist/index.d.mts +724 -229
  5. package/dist/index.d.ts +724 -229
  6. package/dist/index.js +325 -23
  7. package/dist/index.mjs +324 -23
  8. package/dist/katex-OIP2Q473.mjs +14515 -0
  9. package/dist/pkf-schema.json +35 -0
  10. package/dist/pkf.d.mts +1 -0
  11. package/dist/pkf.d.ts +1 -0
  12. package/dist/pkf.js +48370 -0
  13. package/dist/pkf.mjs +33683 -0
  14. package/node_modules/@clack/core/CHANGELOG.md +249 -0
  15. package/node_modules/@clack/core/LICENSE +9 -0
  16. package/node_modules/@clack/core/README.md +22 -0
  17. package/node_modules/@clack/core/dist/index.cjs +15 -0
  18. package/node_modules/@clack/core/dist/index.cjs.map +1 -0
  19. package/node_modules/@clack/core/dist/index.d.cts +209 -0
  20. package/node_modules/@clack/core/dist/index.d.mts +209 -0
  21. package/node_modules/@clack/core/dist/index.d.ts +209 -0
  22. package/node_modules/@clack/core/dist/index.mjs +15 -0
  23. package/node_modules/@clack/core/dist/index.mjs.map +1 -0
  24. package/node_modules/@clack/core/package.json +62 -0
  25. package/node_modules/@clack/prompts/CHANGELOG.md +374 -0
  26. package/node_modules/@clack/prompts/LICENSE +9 -0
  27. package/node_modules/@clack/prompts/README.md +191 -0
  28. package/node_modules/@clack/prompts/dist/index.cjs +80 -0
  29. package/node_modules/@clack/prompts/dist/index.cjs.map +1 -0
  30. package/node_modules/@clack/prompts/dist/index.d.cts +151 -0
  31. package/node_modules/@clack/prompts/dist/index.d.mts +151 -0
  32. package/node_modules/@clack/prompts/dist/index.d.ts +151 -0
  33. package/node_modules/@clack/prompts/dist/index.mjs +80 -0
  34. package/node_modules/@clack/prompts/dist/index.mjs.map +1 -0
  35. package/node_modules/@clack/prompts/package.json +61 -0
  36. package/node_modules/@iarna/toml/LICENSE +14 -0
  37. package/node_modules/@iarna/toml/README.md +301 -0
  38. package/node_modules/@iarna/toml/index.d.ts +57 -0
  39. package/node_modules/@iarna/toml/lib/create-date.js +23 -0
  40. package/node_modules/@iarna/toml/lib/create-datetime-float.js +24 -0
  41. package/node_modules/@iarna/toml/lib/create-datetime.js +10 -0
  42. package/node_modules/@iarna/toml/lib/create-time.js +22 -0
  43. package/node_modules/@iarna/toml/lib/format-num.js +6 -0
  44. package/node_modules/@iarna/toml/lib/parser-debug.js +60 -0
  45. package/node_modules/@iarna/toml/lib/parser.js +127 -0
  46. package/node_modules/@iarna/toml/lib/toml-parser.js +1379 -0
  47. package/node_modules/@iarna/toml/package.json +82 -0
  48. package/node_modules/@iarna/toml/parse-async.js +30 -0
  49. package/node_modules/@iarna/toml/parse-pretty-error.js +33 -0
  50. package/node_modules/@iarna/toml/parse-stream.js +80 -0
  51. package/node_modules/@iarna/toml/parse-string.js +18 -0
  52. package/node_modules/@iarna/toml/parse.js +5 -0
  53. package/node_modules/@iarna/toml/stringify.js +296 -0
  54. package/node_modules/@iarna/toml/toml.js +3 -0
  55. package/node_modules/@prismer/aip-sdk/README.md +36 -0
  56. package/node_modules/@prismer/aip-sdk/dist/cli/chunk-LIJDUCHB.js +104 -0
  57. package/node_modules/@prismer/aip-sdk/dist/cli/chunk-QUQXZ2LD.js +99 -0
  58. package/node_modules/@prismer/aip-sdk/dist/cli/credentials-5GGZEJFG.js +56 -0
  59. package/node_modules/@prismer/aip-sdk/dist/cli/delegation-3J35VGBZ.js +64 -0
  60. package/node_modules/@prismer/aip-sdk/dist/cli/identity-LXVWKSVB.js +7 -0
  61. package/node_modules/@prismer/aip-sdk/dist/cli/index.js +259 -0
  62. package/node_modules/@prismer/aip-sdk/dist/cli/resolver-TGOPKW52.js +26 -0
  63. package/node_modules/@prismer/aip-sdk/dist/index.cjs +368 -0
  64. package/node_modules/@prismer/aip-sdk/dist/index.d.cts +174 -0
  65. package/node_modules/@prismer/aip-sdk/dist/index.d.ts +174 -0
  66. package/node_modules/@prismer/aip-sdk/dist/index.js +322 -0
  67. package/node_modules/@prismer/aip-sdk/package.json +53 -0
  68. package/node_modules/ansi-regex/index.d.ts +37 -0
  69. package/node_modules/ansi-regex/index.js +10 -0
  70. package/node_modules/ansi-regex/license +9 -0
  71. package/node_modules/ansi-regex/package.json +55 -0
  72. package/node_modules/ansi-regex/readme.md +78 -0
  73. package/node_modules/camelcase/index.d.ts +63 -0
  74. package/node_modules/camelcase/index.js +76 -0
  75. package/node_modules/camelcase/license +9 -0
  76. package/node_modules/camelcase/package.json +43 -0
  77. package/node_modules/camelcase/readme.md +99 -0
  78. package/node_modules/cliui/LICENSE.txt +14 -0
  79. package/node_modules/cliui/README.md +115 -0
  80. package/node_modules/cliui/index.js +354 -0
  81. package/node_modules/cliui/package.json +65 -0
  82. package/node_modules/color-convert/LICENSE +21 -0
  83. package/node_modules/color-convert/README.md +68 -0
  84. package/node_modules/color-convert/conversions.js +839 -0
  85. package/node_modules/color-convert/index.js +81 -0
  86. package/node_modules/color-convert/package.json +48 -0
  87. package/node_modules/color-convert/route.js +97 -0
  88. package/node_modules/color-name/LICENSE +8 -0
  89. package/node_modules/color-name/README.md +11 -0
  90. package/node_modules/color-name/index.js +152 -0
  91. package/node_modules/color-name/package.json +28 -0
  92. package/node_modules/commander/LICENSE +22 -0
  93. package/node_modules/commander/Readme.md +1157 -0
  94. package/node_modules/commander/esm.mjs +16 -0
  95. package/node_modules/commander/index.js +24 -0
  96. package/node_modules/commander/lib/argument.js +149 -0
  97. package/node_modules/commander/lib/command.js +2509 -0
  98. package/node_modules/commander/lib/error.js +39 -0
  99. package/node_modules/commander/lib/help.js +520 -0
  100. package/node_modules/commander/lib/option.js +330 -0
  101. package/node_modules/commander/lib/suggestSimilar.js +101 -0
  102. package/node_modules/commander/package-support.json +16 -0
  103. package/node_modules/commander/package.json +84 -0
  104. package/node_modules/commander/typings/esm.d.mts +3 -0
  105. package/node_modules/commander/typings/index.d.ts +969 -0
  106. package/node_modules/decamelize/index.js +13 -0
  107. package/node_modules/decamelize/license +21 -0
  108. package/node_modules/decamelize/package.json +38 -0
  109. package/node_modules/decamelize/readme.md +48 -0
  110. package/node_modules/dijkstrajs/.travis.yml +4 -0
  111. package/node_modules/dijkstrajs/CONTRIBUTING.md +8 -0
  112. package/node_modules/dijkstrajs/LICENSE.md +19 -0
  113. package/node_modules/dijkstrajs/README.md +18 -0
  114. package/node_modules/dijkstrajs/dijkstra.js +165 -0
  115. package/node_modules/dijkstrajs/package.json +60 -0
  116. package/node_modules/dijkstrajs/test/dijkstra.test.js +96 -0
  117. package/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
  118. package/node_modules/emoji-regex/README.md +73 -0
  119. package/node_modules/emoji-regex/es2015/index.js +6 -0
  120. package/node_modules/emoji-regex/es2015/text.js +6 -0
  121. package/node_modules/emoji-regex/index.d.ts +23 -0
  122. package/node_modules/emoji-regex/index.js +6 -0
  123. package/node_modules/emoji-regex/package.json +50 -0
  124. package/node_modules/emoji-regex/text.js +6 -0
  125. package/node_modules/find-up/index.d.ts +137 -0
  126. package/node_modules/find-up/index.js +89 -0
  127. package/node_modules/find-up/license +9 -0
  128. package/node_modules/find-up/package.json +53 -0
  129. package/node_modules/find-up/readme.md +156 -0
  130. package/node_modules/get-caller-file/LICENSE.md +6 -0
  131. package/node_modules/get-caller-file/README.md +41 -0
  132. package/node_modules/get-caller-file/index.d.ts +2 -0
  133. package/node_modules/get-caller-file/index.js +22 -0
  134. package/node_modules/get-caller-file/index.js.map +1 -0
  135. package/node_modules/get-caller-file/package.json +42 -0
  136. package/node_modules/is-fullwidth-code-point/index.d.ts +17 -0
  137. package/node_modules/is-fullwidth-code-point/index.js +50 -0
  138. package/node_modules/is-fullwidth-code-point/license +9 -0
  139. package/node_modules/is-fullwidth-code-point/package.json +42 -0
  140. package/node_modules/is-fullwidth-code-point/readme.md +39 -0
  141. package/node_modules/locate-path/index.d.ts +83 -0
  142. package/node_modules/locate-path/index.js +65 -0
  143. package/node_modules/locate-path/license +9 -0
  144. package/node_modules/locate-path/package.json +45 -0
  145. package/node_modules/locate-path/readme.md +122 -0
  146. package/node_modules/p-locate/index.d.ts +64 -0
  147. package/node_modules/p-locate/index.js +52 -0
  148. package/node_modules/p-locate/license +9 -0
  149. package/node_modules/p-locate/node_modules/p-limit/index.d.ts +38 -0
  150. package/node_modules/p-locate/node_modules/p-limit/index.js +57 -0
  151. package/node_modules/p-locate/node_modules/p-limit/license +9 -0
  152. package/node_modules/p-locate/node_modules/p-limit/package.json +52 -0
  153. package/node_modules/p-locate/node_modules/p-limit/readme.md +101 -0
  154. package/node_modules/p-locate/package.json +53 -0
  155. package/node_modules/p-locate/readme.md +90 -0
  156. package/node_modules/p-try/index.d.ts +39 -0
  157. package/node_modules/p-try/index.js +9 -0
  158. package/node_modules/p-try/license +9 -0
  159. package/node_modules/p-try/package.json +42 -0
  160. package/node_modules/p-try/readme.md +58 -0
  161. package/node_modules/path-exists/index.d.ts +28 -0
  162. package/node_modules/path-exists/index.js +23 -0
  163. package/node_modules/path-exists/license +9 -0
  164. package/node_modules/path-exists/package.json +39 -0
  165. package/node_modules/path-exists/readme.md +52 -0
  166. package/node_modules/picocolors/LICENSE +15 -0
  167. package/node_modules/picocolors/README.md +21 -0
  168. package/node_modules/picocolors/package.json +25 -0
  169. package/node_modules/picocolors/picocolors.browser.js +4 -0
  170. package/node_modules/picocolors/picocolors.d.ts +5 -0
  171. package/node_modules/picocolors/picocolors.js +75 -0
  172. package/node_modules/picocolors/types.d.ts +51 -0
  173. package/node_modules/pngjs/.eslintignore +2 -0
  174. package/node_modules/pngjs/.eslintrc.json +19 -0
  175. package/node_modules/pngjs/.prettierignore +3 -0
  176. package/node_modules/pngjs/LICENSE +20 -0
  177. package/node_modules/pngjs/README.md +429 -0
  178. package/node_modules/pngjs/browser.js +16096 -0
  179. package/node_modules/pngjs/coverage/lcov-report/base.css +354 -0
  180. package/node_modules/pngjs/coverage/lcov-report/bitmapper.js.html +881 -0
  181. package/node_modules/pngjs/coverage/lcov-report/bitpacker.js.html +554 -0
  182. package/node_modules/pngjs/coverage/lcov-report/block-navigation.js +77 -0
  183. package/node_modules/pngjs/coverage/lcov-report/chunkstream.js.html +647 -0
  184. package/node_modules/pngjs/coverage/lcov-report/constants.js.html +176 -0
  185. package/node_modules/pngjs/coverage/lcov-report/crc.js.html +200 -0
  186. package/node_modules/pngjs/coverage/lcov-report/favicon.png +0 -0
  187. package/node_modules/pngjs/coverage/lcov-report/filter-pack.js.html +593 -0
  188. package/node_modules/pngjs/coverage/lcov-report/filter-parse-async.js.html +152 -0
  189. package/node_modules/pngjs/coverage/lcov-report/filter-parse-sync.js.html +143 -0
  190. package/node_modules/pngjs/coverage/lcov-report/filter-parse.js.html +611 -0
  191. package/node_modules/pngjs/coverage/lcov-report/format-normaliser.js.html +359 -0
  192. package/node_modules/pngjs/coverage/lcov-report/index.html +426 -0
  193. package/node_modules/pngjs/coverage/lcov-report/interlace.js.html +365 -0
  194. package/node_modules/pngjs/coverage/lcov-report/packer-async.js.html +230 -0
  195. package/node_modules/pngjs/coverage/lcov-report/packer-sync.js.html +248 -0
  196. package/node_modules/pngjs/coverage/lcov-report/packer.js.html +467 -0
  197. package/node_modules/pngjs/coverage/lcov-report/paeth-predictor.js.html +128 -0
  198. package/node_modules/pngjs/coverage/lcov-report/parser-async.js.html +575 -0
  199. package/node_modules/pngjs/coverage/lcov-report/parser-sync.js.html +404 -0
  200. package/node_modules/pngjs/coverage/lcov-report/parser.js.html +950 -0
  201. package/node_modules/pngjs/coverage/lcov-report/png-sync.js.html +116 -0
  202. package/node_modules/pngjs/coverage/lcov-report/png.js.html +662 -0
  203. package/node_modules/pngjs/coverage/lcov-report/prettify.css +101 -0
  204. package/node_modules/pngjs/coverage/lcov-report/prettify.js +1007 -0
  205. package/node_modules/pngjs/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  206. package/node_modules/pngjs/coverage/lcov-report/sorter.js +169 -0
  207. package/node_modules/pngjs/coverage/lcov-report/sync-inflate.js.html +584 -0
  208. package/node_modules/pngjs/coverage/lcov-report/sync-reader.js.html +215 -0
  209. package/node_modules/pngjs/coverage/lcov.info +2177 -0
  210. package/node_modules/pngjs/lib/bitmapper.js +267 -0
  211. package/node_modules/pngjs/lib/bitpacker.js +158 -0
  212. package/node_modules/pngjs/lib/chunkstream.js +189 -0
  213. package/node_modules/pngjs/lib/constants.js +32 -0
  214. package/node_modules/pngjs/lib/crc.js +40 -0
  215. package/node_modules/pngjs/lib/filter-pack.js +171 -0
  216. package/node_modules/pngjs/lib/filter-parse-async.js +24 -0
  217. package/node_modules/pngjs/lib/filter-parse-sync.js +21 -0
  218. package/node_modules/pngjs/lib/filter-parse.js +177 -0
  219. package/node_modules/pngjs/lib/format-normaliser.js +93 -0
  220. package/node_modules/pngjs/lib/interlace.js +95 -0
  221. package/node_modules/pngjs/lib/packer-async.js +50 -0
  222. package/node_modules/pngjs/lib/packer-sync.js +56 -0
  223. package/node_modules/pngjs/lib/packer.js +129 -0
  224. package/node_modules/pngjs/lib/paeth-predictor.js +16 -0
  225. package/node_modules/pngjs/lib/parser-async.js +165 -0
  226. package/node_modules/pngjs/lib/parser-sync.js +108 -0
  227. package/node_modules/pngjs/lib/parser.js +290 -0
  228. package/node_modules/pngjs/lib/png-sync.js +12 -0
  229. package/node_modules/pngjs/lib/png.js +194 -0
  230. package/node_modules/pngjs/lib/sync-inflate.js +168 -0
  231. package/node_modules/pngjs/lib/sync-reader.js +45 -0
  232. package/node_modules/pngjs/package.json +73 -0
  233. package/node_modules/qrcode/README.md +770 -0
  234. package/node_modules/qrcode/bin/qrcode +159 -0
  235. package/node_modules/qrcode/helper/to-sjis-browser.js +2 -0
  236. package/node_modules/qrcode/helper/to-sjis.js +105 -0
  237. package/node_modules/qrcode/lib/browser.js +76 -0
  238. package/node_modules/qrcode/lib/can-promise.js +7 -0
  239. package/node_modules/qrcode/lib/core/alignment-pattern.js +83 -0
  240. package/node_modules/qrcode/lib/core/alphanumeric-data.js +59 -0
  241. package/node_modules/qrcode/lib/core/bit-buffer.js +37 -0
  242. package/node_modules/qrcode/lib/core/bit-matrix.js +65 -0
  243. package/node_modules/qrcode/lib/core/byte-data.js +30 -0
  244. package/node_modules/qrcode/lib/core/error-correction-code.js +135 -0
  245. package/node_modules/qrcode/lib/core/error-correction-level.js +50 -0
  246. package/node_modules/qrcode/lib/core/finder-pattern.js +22 -0
  247. package/node_modules/qrcode/lib/core/format-info.js +29 -0
  248. package/node_modules/qrcode/lib/core/galois-field.js +69 -0
  249. package/node_modules/qrcode/lib/core/kanji-data.js +54 -0
  250. package/node_modules/qrcode/lib/core/mask-pattern.js +234 -0
  251. package/node_modules/qrcode/lib/core/mode.js +167 -0
  252. package/node_modules/qrcode/lib/core/numeric-data.js +43 -0
  253. package/node_modules/qrcode/lib/core/polynomial.js +62 -0
  254. package/node_modules/qrcode/lib/core/qrcode.js +495 -0
  255. package/node_modules/qrcode/lib/core/reed-solomon-encoder.js +56 -0
  256. package/node_modules/qrcode/lib/core/regex.js +31 -0
  257. package/node_modules/qrcode/lib/core/segments.js +330 -0
  258. package/node_modules/qrcode/lib/core/utils.js +63 -0
  259. package/node_modules/qrcode/lib/core/version-check.js +9 -0
  260. package/node_modules/qrcode/lib/core/version.js +163 -0
  261. package/node_modules/qrcode/lib/index.js +12 -0
  262. package/node_modules/qrcode/lib/renderer/canvas.js +63 -0
  263. package/node_modules/qrcode/lib/renderer/png.js +78 -0
  264. package/node_modules/qrcode/lib/renderer/svg-tag.js +81 -0
  265. package/node_modules/qrcode/lib/renderer/svg.js +19 -0
  266. package/node_modules/qrcode/lib/renderer/terminal/terminal-small.js +85 -0
  267. package/node_modules/qrcode/lib/renderer/terminal/terminal.js +49 -0
  268. package/node_modules/qrcode/lib/renderer/terminal.js +9 -0
  269. package/node_modules/qrcode/lib/renderer/utf8.js +71 -0
  270. package/node_modules/qrcode/lib/renderer/utils.js +99 -0
  271. package/node_modules/qrcode/lib/server.js +138 -0
  272. package/node_modules/qrcode/license +10 -0
  273. package/node_modules/qrcode/package.json +77 -0
  274. package/node_modules/require-directory/.jshintrc +67 -0
  275. package/node_modules/require-directory/.npmignore +1 -0
  276. package/node_modules/require-directory/.travis.yml +3 -0
  277. package/node_modules/require-directory/LICENSE +22 -0
  278. package/node_modules/require-directory/README.markdown +184 -0
  279. package/node_modules/require-directory/index.js +86 -0
  280. package/node_modules/require-directory/package.json +40 -0
  281. package/node_modules/require-main-filename/LICENSE.txt +14 -0
  282. package/node_modules/require-main-filename/README.md +26 -0
  283. package/node_modules/require-main-filename/index.js +18 -0
  284. package/node_modules/require-main-filename/package.json +35 -0
  285. package/node_modules/set-blocking/LICENSE.txt +14 -0
  286. package/node_modules/set-blocking/README.md +31 -0
  287. package/node_modules/set-blocking/index.js +7 -0
  288. package/node_modules/set-blocking/package.json +42 -0
  289. package/node_modules/sisteransi/license +21 -0
  290. package/node_modules/sisteransi/package.json +34 -0
  291. package/node_modules/sisteransi/readme.md +113 -0
  292. package/node_modules/sisteransi/src/index.js +58 -0
  293. package/node_modules/sisteransi/src/sisteransi.d.ts +35 -0
  294. package/node_modules/string-width/index.d.ts +29 -0
  295. package/node_modules/string-width/index.js +47 -0
  296. package/node_modules/string-width/license +9 -0
  297. package/node_modules/string-width/package.json +56 -0
  298. package/node_modules/string-width/readme.md +50 -0
  299. package/node_modules/strip-ansi/index.d.ts +17 -0
  300. package/node_modules/strip-ansi/index.js +4 -0
  301. package/node_modules/strip-ansi/license +9 -0
  302. package/node_modules/strip-ansi/package.json +54 -0
  303. package/node_modules/strip-ansi/readme.md +46 -0
  304. package/node_modules/which-module/LICENSE +13 -0
  305. package/node_modules/which-module/README.md +58 -0
  306. package/node_modules/which-module/index.js +9 -0
  307. package/node_modules/which-module/package.json +41 -0
  308. package/node_modules/wrap-ansi/index.js +186 -0
  309. package/node_modules/wrap-ansi/license +9 -0
  310. package/node_modules/wrap-ansi/node_modules/ansi-styles/index.d.ts +345 -0
  311. package/node_modules/wrap-ansi/node_modules/ansi-styles/index.js +163 -0
  312. package/node_modules/wrap-ansi/node_modules/ansi-styles/license +9 -0
  313. package/node_modules/wrap-ansi/node_modules/ansi-styles/package.json +56 -0
  314. package/node_modules/wrap-ansi/node_modules/ansi-styles/readme.md +152 -0
  315. package/node_modules/wrap-ansi/package.json +61 -0
  316. package/node_modules/wrap-ansi/readme.md +97 -0
  317. package/node_modules/y18n/LICENSE +13 -0
  318. package/node_modules/y18n/README.md +109 -0
  319. package/node_modules/y18n/index.js +188 -0
  320. package/node_modules/y18n/package.json +39 -0
  321. package/node_modules/yargs/LICENSE +21 -0
  322. package/node_modules/yargs/README.md +140 -0
  323. package/node_modules/yargs/build/lib/apply-extends.d.ts +2 -0
  324. package/node_modules/yargs/build/lib/apply-extends.js +65 -0
  325. package/node_modules/yargs/build/lib/argsert.d.ts +2 -0
  326. package/node_modules/yargs/build/lib/argsert.js +65 -0
  327. package/node_modules/yargs/build/lib/command.d.ts +64 -0
  328. package/node_modules/yargs/build/lib/command.js +416 -0
  329. package/node_modules/yargs/build/lib/common-types.d.ts +36 -0
  330. package/node_modules/yargs/build/lib/common-types.js +25 -0
  331. package/node_modules/yargs/build/lib/completion-templates.d.ts +2 -0
  332. package/node_modules/yargs/build/lib/completion-templates.js +50 -0
  333. package/node_modules/yargs/build/lib/completion.d.ts +21 -0
  334. package/node_modules/yargs/build/lib/completion.js +135 -0
  335. package/node_modules/yargs/build/lib/is-promise.d.ts +1 -0
  336. package/node_modules/yargs/build/lib/is-promise.js +9 -0
  337. package/node_modules/yargs/build/lib/levenshtein.d.ts +1 -0
  338. package/node_modules/yargs/build/lib/levenshtein.js +58 -0
  339. package/node_modules/yargs/build/lib/middleware.d.ts +10 -0
  340. package/node_modules/yargs/build/lib/middleware.js +57 -0
  341. package/node_modules/yargs/build/lib/obj-filter.d.ts +1 -0
  342. package/node_modules/yargs/build/lib/obj-filter.js +14 -0
  343. package/node_modules/yargs/build/lib/parse-command.d.ts +11 -0
  344. package/node_modules/yargs/build/lib/parse-command.js +36 -0
  345. package/node_modules/yargs/build/lib/process-argv.d.ts +2 -0
  346. package/node_modules/yargs/build/lib/process-argv.js +31 -0
  347. package/node_modules/yargs/build/lib/usage.d.ts +49 -0
  348. package/node_modules/yargs/build/lib/usage.js +540 -0
  349. package/node_modules/yargs/build/lib/validation.d.ts +34 -0
  350. package/node_modules/yargs/build/lib/validation.js +330 -0
  351. package/node_modules/yargs/build/lib/yargs.d.ts +274 -0
  352. package/node_modules/yargs/build/lib/yargs.js +1190 -0
  353. package/node_modules/yargs/build/lib/yerror.d.ts +4 -0
  354. package/node_modules/yargs/build/lib/yerror.js +11 -0
  355. package/node_modules/yargs/index.js +40 -0
  356. package/node_modules/yargs/locales/be.json +46 -0
  357. package/node_modules/yargs/locales/de.json +46 -0
  358. package/node_modules/yargs/locales/en.json +51 -0
  359. package/node_modules/yargs/locales/es.json +46 -0
  360. package/node_modules/yargs/locales/fi.json +49 -0
  361. package/node_modules/yargs/locales/fr.json +53 -0
  362. package/node_modules/yargs/locales/hi.json +49 -0
  363. package/node_modules/yargs/locales/hu.json +46 -0
  364. package/node_modules/yargs/locales/id.json +50 -0
  365. package/node_modules/yargs/locales/it.json +46 -0
  366. package/node_modules/yargs/locales/ja.json +51 -0
  367. package/node_modules/yargs/locales/ko.json +49 -0
  368. package/node_modules/yargs/locales/nb.json +44 -0
  369. package/node_modules/yargs/locales/nl.json +49 -0
  370. package/node_modules/yargs/locales/nn.json +44 -0
  371. package/node_modules/yargs/locales/pirate.json +13 -0
  372. package/node_modules/yargs/locales/pl.json +49 -0
  373. package/node_modules/yargs/locales/pt.json +45 -0
  374. package/node_modules/yargs/locales/pt_BR.json +48 -0
  375. package/node_modules/yargs/locales/ru.json +46 -0
  376. package/node_modules/yargs/locales/th.json +46 -0
  377. package/node_modules/yargs/locales/tr.json +48 -0
  378. package/node_modules/yargs/locales/zh_CN.json +48 -0
  379. package/node_modules/yargs/locales/zh_TW.json +47 -0
  380. package/node_modules/yargs/package.json +92 -0
  381. package/node_modules/yargs/yargs.js +14 -0
  382. package/node_modules/yargs-parser/LICENSE.txt +14 -0
  383. package/node_modules/yargs-parser/README.md +449 -0
  384. package/node_modules/yargs-parser/index.js +1032 -0
  385. package/node_modules/yargs-parser/lib/tokenize-arg-string.js +40 -0
  386. package/node_modules/yargs-parser/package.json +46 -0
  387. package/package.json +28 -5
@@ -0,0 +1,770 @@
1
+ # node-qrcode
2
+ > QR code/2d barcode generator.
3
+
4
+ [![Travis](https://img.shields.io/travis/soldair/node-qrcode.svg?style=flat-square)](http://travis-ci.org/soldair/node-qrcode)
5
+ [![npm](https://img.shields.io/npm/v/qrcode.svg?style=flat-square)](https://www.npmjs.com/package/qrcode)
6
+ [![npm](https://img.shields.io/npm/dt/qrcode.svg?style=flat-square)](https://www.npmjs.com/package/qrcode)
7
+ [![npm](https://img.shields.io/npm/l/qrcode.svg?style=flat-square)](https://github.com/soldair/node-qrcode/blob/master/license)
8
+
9
+ - [Highlights](#highlights)
10
+ - [Installation](#installation)
11
+ - [Usage](#usage)
12
+ - [Error correction level](#error-correction-level)
13
+ - [QR Code capacity](#qr-code-capacity)
14
+ - [Encoding Modes](#encoding-modes)
15
+ - [Binary data](#binary-data)
16
+ - [Multibyte characters](#multibyte-characters)
17
+ - [API](#api)
18
+ - [GS1 QR Codes](#gs1-qr-codes)
19
+ - [Credits](#credits)
20
+ - [License](#license)
21
+
22
+ ## Highlights
23
+ - Works on server and client (and react native with svg)
24
+ - CLI utility
25
+ - Save QR code as image
26
+ - Support for Numeric, Alphanumeric, Kanji and Byte mode
27
+ - Support for mixed modes
28
+ - Support for chinese, cyrillic, greek and japanese characters
29
+ - Support for multibyte characters (like emojis :smile:)
30
+ - Auto generates optimized segments for best data compression and smallest QR Code size
31
+ - App agnostic readability, QR Codes by definition are app agnostic
32
+
33
+ ## Installation
34
+ Inside your project folder do:
35
+
36
+ ```shell
37
+ npm install --save qrcode
38
+ ```
39
+
40
+ or, install it globally to use `qrcode` from the command line to save qrcode images or generate ones you can view in your terminal.
41
+
42
+ ```shell
43
+ npm install -g qrcode
44
+ ```
45
+
46
+ ## Usage
47
+ ### CLI
48
+
49
+ ```
50
+ Usage: qrcode [options] <input string>
51
+
52
+ QR Code options:
53
+ -v, --qversion QR Code symbol version (1 - 40) [number]
54
+ -e, --error Error correction level [choices: "L", "M", "Q", "H"]
55
+ -m, --mask Mask pattern (0 - 7) [number]
56
+
57
+ Renderer options:
58
+ -t, --type Output type [choices: "png", "svg", "utf8"]
59
+ -w, --width Image width (px) [number]
60
+ -s, --scale Scale factor [number]
61
+ -q, --qzone Quiet zone size [number]
62
+ -l, --lightcolor Light RGBA hex color
63
+ -d, --darkcolor Dark RGBA hex color
64
+ --small Output smaller QR code to terminal [boolean]
65
+
66
+ Options:
67
+ -o, --output Output file
68
+ -h, --help Show help [boolean]
69
+ --version Show version number [boolean]
70
+
71
+ Examples:
72
+ qrcode "some text" Draw in terminal window
73
+ qrcode -o out.png "some text" Save as png image
74
+ qrcode -d F00 -o out.png "some text" Use red as foreground color
75
+ ```
76
+ If not specified, output type is guessed from file extension.<br>
77
+ Recognized extensions are `png`, `svg` and `txt`.
78
+
79
+ ### Browser
80
+ `node-qrcode` can be used in browser through module bundlers like [Browserify](https://github.com/substack/node-browserify) and [Webpack](https://github.com/webpack/webpack) or by including the precompiled bundle present in `build/` folder.
81
+
82
+ #### Module bundlers
83
+ ```html
84
+ <!-- index.html -->
85
+ <html>
86
+ <body>
87
+ <canvas id="canvas"></canvas>
88
+ <script src="bundle.js"></script>
89
+ </body>
90
+ </html>
91
+ ```
92
+
93
+ ```javascript
94
+ // index.js -> bundle.js
95
+ var QRCode = require('qrcode')
96
+ var canvas = document.getElementById('canvas')
97
+
98
+ QRCode.toCanvas(canvas, 'sample text', function (error) {
99
+ if (error) console.error(error)
100
+ console.log('success!');
101
+ })
102
+ ```
103
+
104
+ #### Precompiled bundle
105
+ ```html
106
+ <canvas id="canvas"></canvas>
107
+
108
+ <script src="/build/qrcode.js"></script>
109
+ <script>
110
+ QRCode.toCanvas(document.getElementById('canvas'), 'sample text', function (error) {
111
+ if (error) console.error(error)
112
+ console.log('success!');
113
+ })
114
+ </script>
115
+ ```
116
+
117
+ If you install through `npm`, precompiled files will be available in `node_modules/qrcode/build/` folder.
118
+
119
+ The precompiled bundle have support for [Internet Explorer 10+, Safari 5.1+, and all evergreen browsers](https://browserl.ist/?q=defaults%2C+IE+%3E%3D+10%2C+Safari+%3E%3D+5.1).
120
+
121
+ ### NodeJS
122
+ Require the module `qrcode`
123
+
124
+ ```javascript
125
+ var QRCode = require('qrcode')
126
+
127
+ QRCode.toDataURL('I am a pony!', function (err, url) {
128
+ console.log(url)
129
+ })
130
+ ```
131
+
132
+ render a qrcode for the terminal
133
+ ```js
134
+ var QRCode = require('qrcode')
135
+
136
+ QRCode.toString('I am a pony!',{type:'terminal'}, function (err, url) {
137
+ console.log(url)
138
+ })
139
+ ```
140
+
141
+ ### ES6/ES7
142
+ Promises and Async/Await can be used in place of callback function.
143
+
144
+ ```javascript
145
+ import QRCode from 'qrcode'
146
+
147
+ // With promises
148
+ QRCode.toDataURL('I am a pony!')
149
+ .then(url => {
150
+ console.log(url)
151
+ })
152
+ .catch(err => {
153
+ console.error(err)
154
+ })
155
+
156
+ // With async/await
157
+ const generateQR = async text => {
158
+ try {
159
+ console.log(await QRCode.toDataURL(text))
160
+ } catch (err) {
161
+ console.error(err)
162
+ }
163
+ }
164
+ ```
165
+
166
+ ## Error correction level
167
+ Error correction capability allows to successfully scan a QR Code even if the symbol is dirty or damaged.
168
+ Four levels are available to choose according to the operating environment.
169
+
170
+ Higher levels offer a better error resistance but reduce the symbol's capacity.<br>
171
+ If the chances that the QR Code symbol may be corrupted are low (for example if it is showed through a monitor)
172
+ is possible to safely use a low error level such as `Low` or `Medium`.
173
+
174
+ Possible levels are shown below:
175
+
176
+ | Level | Error resistance |
177
+ |------------------|:----------------:|
178
+ | **L** (Low) | **~7%** |
179
+ | **M** (Medium) | **~15%** |
180
+ | **Q** (Quartile) | **~25%** |
181
+ | **H** (High) | **~30%** |
182
+
183
+ The percentage indicates the maximum amount of damaged surface after which the symbol becomes unreadable.
184
+
185
+ Error level can be set through `options.errorCorrectionLevel` property.<br>
186
+ If not specified, the default value is `M`.
187
+
188
+ ```javascript
189
+ QRCode.toDataURL('some text', { errorCorrectionLevel: 'H' }, function (err, url) {
190
+ console.log(url)
191
+ })
192
+ ```
193
+
194
+ ## QR Code capacity
195
+ Capacity depends on symbol version and error correction level. Also encoding modes may influence the amount of storable data.
196
+
197
+ The QR Code versions range from version **1** to version **40**.<br>
198
+ Each version has a different number of modules (black and white dots), which define the symbol's size.
199
+ For version 1 they are `21x21`, for version 2 `25x25` e so on.
200
+ Higher is the version, more are the storable data, and of course bigger will be the QR Code symbol.
201
+
202
+ The table below shows the maximum number of storable characters in each encoding mode and for each error correction level.
203
+
204
+ | Mode | L | M | Q | H |
205
+ |--------------|------|------|------|------|
206
+ | Numeric | 7089 | 5596 | 3993 | 3057 |
207
+ | Alphanumeric | 4296 | 3391 | 2420 | 1852 |
208
+ | Byte | 2953 | 2331 | 1663 | 1273 |
209
+ | Kanji | 1817 | 1435 | 1024 | 784 |
210
+
211
+ **Note:** Maximum characters number can be different when using [Mixed modes](#mixed-modes).
212
+
213
+ QR Code version can be set through `options.version` property.<br>
214
+ If no version is specified, the more suitable value will be used. Unless a specific version is required, this option is not needed.
215
+
216
+ ```javascript
217
+ QRCode.toDataURL('some text', { version: 2 }, function (err, url) {
218
+ console.log(url)
219
+ })
220
+ ```
221
+
222
+ ## Encoding modes
223
+ Modes can be used to encode a string in a more efficient way.<br>
224
+ A mode may be more suitable than others depending on the string content.
225
+ A list of supported modes are shown in the table below:
226
+
227
+ | Mode | Characters | Compression |
228
+ |--------------|-----------------------------------------------------------|-------------------------------------------|
229
+ | Numeric | 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 | 3 characters are represented by 10 bits |
230
+ | Alphanumeric | 0–9, A–Z (upper-case only), space, $, %, *, +, -, ., /, : | 2 characters are represented by 11 bits |
231
+ | Kanji | Characters from the Shift JIS system based on JIS X 0208 | 2 kanji are represented by 13 bits |
232
+ | Byte | Characters from the ISO/IEC 8859-1 character set | Each characters are represented by 8 bits |
233
+
234
+ Choose the right mode may be tricky if the input text is unknown.<br>
235
+ In these cases **Byte** mode is the best choice since all characters can be encoded with it. (See [Multibyte characters](#multibyte-characters))<br>
236
+ However, if the QR Code reader supports mixed modes, using [Auto mode](#auto-mode) may produce better results.
237
+
238
+ ### Mixed modes
239
+ Mixed modes are also possible. A QR code can be generated from a series of segments having different encoding modes to optimize the data compression.<br>
240
+ However, switching from a mode to another has a cost which may lead to a worst result if it's not taken into account.
241
+ See [Manual mode](#manual-mode) for an example of how to specify segments with different encoding modes.
242
+
243
+ ### Auto mode
244
+ By **default**, automatic mode selection is used.<br>
245
+ The input string is automatically splitted in various segments optimized to produce the shortest possible bitstream using mixed modes.<br>
246
+ This is the preferred way to generate the QR Code.
247
+
248
+ For example, the string **ABCDE12345678?A1A** will be splitted in 3 segments with the following modes:
249
+
250
+ | Segment | Mode |
251
+ |----------|--------------|
252
+ | ABCDE | Alphanumeric |
253
+ | 12345678 | Numeric |
254
+ | ?A1A | Byte |
255
+
256
+ Any other combinations of segments and modes will result in a longer bitstream.<br>
257
+ If you need to keep the QR Code size small, this mode will produce the best results.
258
+
259
+ ### Manual mode
260
+ If auto mode doesn't work for you or you have specific needs, is also possible to manually specify each segment with the relative mode.
261
+ In this way no segment optimizations will be applied under the hood.<br>
262
+ Segments list can be passed as an array of object:
263
+
264
+ ```javascript
265
+ var QRCode = require('qrcode')
266
+
267
+ var segs = [
268
+ { data: 'ABCDEFG', mode: 'alphanumeric' },
269
+ { data: '0123456', mode: 'numeric' }
270
+ ]
271
+
272
+ QRCode.toDataURL(segs, function (err, url) {
273
+ console.log(url)
274
+ })
275
+ ```
276
+
277
+ ### Kanji mode
278
+ With kanji mode is possible to encode characters from the Shift JIS system in an optimized way.<br>
279
+ Unfortunately, there isn't a way to calculate a Shifted JIS values from, for example, a character encoded in UTF-8, for this reason a conversion table from the input characters to the SJIS values is needed.<br>
280
+ This table is not included by default in the bundle to keep the size as small as possible.
281
+
282
+ If your application requires kanji support, you will need to pass a function that will take care of converting the input characters to appropriate values.
283
+
284
+ An helper method is provided by the lib through an optional file that you can include as shown in the example below.
285
+
286
+ **Note:** Support for Kanji mode is only needed if you want to benefit of the data compression, otherwise is still possible to encode kanji using Byte mode (See [Multibyte characters](#multibyte-characters)).
287
+
288
+ ```javascript
289
+ var QRCode = require('qrcode')
290
+ var toSJIS = require('qrcode/helper/to-sjis')
291
+
292
+ QRCode.toDataURL(kanjiString, { toSJISFunc: toSJIS }, function (err, url) {
293
+ console.log(url)
294
+ })
295
+ ```
296
+
297
+ With precompiled bundle:
298
+
299
+ ```html
300
+ <canvas id="canvas"></canvas>
301
+
302
+ <script src="/build/qrcode.min.js"></script>
303
+ <script src="/build/qrcode.tosjis.min.js"></script>
304
+ <script>
305
+ QRCode.toCanvas(document.getElementById('canvas'),
306
+ 'sample text', { toSJISFunc: QRCode.toSJIS }, function (error) {
307
+ if (error) console.error(error)
308
+ console.log('success!')
309
+ })
310
+ </script>
311
+ ```
312
+
313
+ ## Binary data
314
+ QR Codes can hold arbitrary byte-based binary data. If you attempt to create a binary QR Code by first converting the data to a JavaScript string, it will fail to encode propery because string encoding adds additional bytes. Instead, you must pass a [`Uint8ClampedArray`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Uint8ClampedArray) or compatible array, or a Node [Buffer](https://nodejs.org/api/buffer.html), as follows:
315
+
316
+ ```javascript
317
+ // Regular array example
318
+ // WARNING: Element values will be clamped to 0-255 even if your data contains higher values.
319
+ const QRCode = require('qrcode')
320
+ QRCode.toFile(
321
+ 'foo.png',
322
+ [{ data: [253,254,255], mode: 'byte' }],
323
+ ...options...,
324
+ ...callback...
325
+ )
326
+ ```
327
+
328
+ ```javascript
329
+ // Uint8ClampedArray example
330
+ const QRCode = require('qrcode')
331
+
332
+ QRCode.toFile(
333
+ 'foo.png',
334
+ [{ data: new Uint8ClampedArray([253,254,255]), mode: 'byte' }],
335
+ ...options...,
336
+ ...callback...
337
+ )
338
+ ```
339
+
340
+ ```javascript
341
+ // Node Buffer example
342
+ // WARNING: Element values will be clamped to 0-255 even if your data contains higher values.
343
+ const QRCode = require('qrcode')
344
+
345
+ QRCode.toFile(
346
+ 'foo.png',
347
+ [{ data: Buffer.from([253,254,255]), mode: 'byte' }],
348
+ ...options...,
349
+ ...callback...
350
+ )
351
+ ```
352
+
353
+ TypeScript users: if you are using [@types/qrcode](https://www.npmjs.com/package/@types/qrcode), you will need to add a `// @ts-ignore` above the data segment because it expects `data: string`.
354
+
355
+ ## Multibyte characters
356
+ Support for multibyte characters isn't present in the initial QR Code standard, but is possible to encode UTF-8 characters in Byte mode.
357
+
358
+ QR Codes provide a way to specify a different type of character set through ECI (Extended Channel Interpretation), but it's not fully implemented in this lib yet.
359
+
360
+ Most QR Code readers, however, are able to recognize multibyte characters even without ECI.
361
+
362
+ Note that a single Kanji/Kana or Emoji can take up to 4 bytes.
363
+
364
+ ## API
365
+ Browser:
366
+ - [create()](#createtext-options)
367
+ - [toCanvas()](#tocanvascanvaselement-text-options-cberror)
368
+ - [toDataURL()](#todataurltext-options-cberror-url)
369
+ - [toString()](#tostringtext-options-cberror-string)
370
+
371
+ Server:
372
+ - [create()](#createtext-options)
373
+ - [toCanvas()](#tocanvascanvas-text-options-cberror)
374
+ - [toDataURL()](#todataurltext-options-cberror-url-1)
375
+ - [toString()](#tostringtext-options-cberror-string-1)
376
+ - [toFile()](#tofilepath-text-options-cberror)
377
+ - [toFileStream()](#tofilestreamstream-text-options)
378
+
379
+ ### Browser API
380
+ #### `create(text, [options])`
381
+ Creates QR Code symbol and returns a qrcode object.
382
+
383
+ ##### `text`
384
+ Type: `String|Array`
385
+
386
+ Text to encode or a list of objects describing segments.
387
+
388
+ ##### `options`
389
+ See [QR Code options](#qr-code-options).
390
+
391
+ ##### `returns`
392
+ Type: `Object`
393
+
394
+ ```javascript
395
+ // QRCode object
396
+ {
397
+ modules, // Bitmatrix class with modules data
398
+ version, // Calculated QR Code version
399
+ errorCorrectionLevel, // Error Correction Level
400
+ maskPattern, // Calculated Mask pattern
401
+ segments // Generated segments
402
+ }
403
+ ```
404
+
405
+ <br>
406
+
407
+ #### `toCanvas(canvasElement, text, [options], [cb(error)])`
408
+ #### `toCanvas(text, [options], [cb(error, canvas)])`
409
+ Draws qr code symbol to canvas.<br>
410
+ If `canvasElement` is omitted a new canvas is returned.
411
+
412
+ ##### `canvasElement`
413
+ Type: `DOMElement`
414
+
415
+ Canvas where to draw QR Code.
416
+
417
+ ##### `text`
418
+ Type: `String|Array`
419
+
420
+ Text to encode or a list of objects describing segments.
421
+
422
+ ##### `options`
423
+ See [Options](#options).
424
+
425
+ ##### `cb`
426
+ Type: `Function`
427
+
428
+ Callback function called on finish.
429
+
430
+ ##### Example
431
+ ```javascript
432
+ QRCode.toCanvas('text', { errorCorrectionLevel: 'H' }, function (err, canvas) {
433
+ if (err) throw err
434
+
435
+ var container = document.getElementById('container')
436
+ container.appendChild(canvas)
437
+ })
438
+ ```
439
+
440
+ <br>
441
+
442
+ #### `toDataURL(text, [options], [cb(error, url)])`
443
+ #### `toDataURL(canvasElement, text, [options], [cb(error, url)])`
444
+ Returns a Data URI containing a representation of the QR Code image.<br>
445
+ If provided, `canvasElement` will be used as canvas to generate the data URI.
446
+
447
+ ##### `canvasElement`
448
+ Type: `DOMElement`
449
+
450
+ Canvas where to draw QR Code.
451
+
452
+ ##### `text`
453
+ Type: `String|Array`
454
+
455
+ Text to encode or a list of objects describing segments.
456
+
457
+ ##### `options`
458
+ - ###### `type`
459
+ Type: `String`<br>
460
+ Default: `image/png`
461
+
462
+ Data URI format.<br>
463
+ Possible values are: `image/png`, `image/jpeg`, `image/webp`.<br>
464
+
465
+ - ###### `rendererOpts.quality`
466
+ Type: `Number`<br>
467
+ Default: `0.92`
468
+
469
+ A Number between `0` and `1` indicating image quality if the requested type is `image/jpeg` or `image/webp`.
470
+
471
+ See [Options](#options) for other settings.
472
+
473
+ ##### `cb`
474
+ Type: `Function`
475
+
476
+ Callback function called on finish.
477
+
478
+ ##### Example
479
+ ```javascript
480
+ var opts = {
481
+ errorCorrectionLevel: 'H',
482
+ type: 'image/jpeg',
483
+ quality: 0.3,
484
+ margin: 1,
485
+ color: {
486
+ dark:"#010599FF",
487
+ light:"#FFBF60FF"
488
+ }
489
+ }
490
+
491
+ QRCode.toDataURL('text', opts, function (err, url) {
492
+ if (err) throw err
493
+
494
+ var img = document.getElementById('image')
495
+ img.src = url
496
+ })
497
+ ```
498
+ <br>
499
+
500
+ #### `toString(text, [options], [cb(error, string)])`
501
+
502
+ Returns a string representation of the QR Code.<br>
503
+
504
+
505
+ ##### `text`
506
+ Type: `String|Array`
507
+
508
+ Text to encode or a list of objects describing segments.
509
+
510
+ ##### `options`
511
+ - ###### `type`
512
+ Type: `String`<br>
513
+ Default: `utf8`
514
+
515
+ Output format.<br>
516
+ Possible values are: `terminal`,`utf8`, and `svg`.
517
+
518
+ See [Options](#options) for other settings.
519
+
520
+ ##### `cb`
521
+ Type: `Function`
522
+
523
+ Callback function called on finish.
524
+
525
+ ##### Example
526
+ ```javascript
527
+ QRCode.toString('http://www.google.com', function (err, string) {
528
+ if (err) throw err
529
+ console.log(string)
530
+ })
531
+ ```
532
+
533
+ <br>
534
+
535
+
536
+ ### Server API
537
+ #### `create(text, [options])`
538
+ See [create](#createtext-options).
539
+
540
+ <br>
541
+
542
+ #### `toCanvas(canvas, text, [options], [cb(error)])`
543
+ Draws qr code symbol to [node canvas](https://github.com/Automattic/node-canvas).
544
+
545
+ ##### `text`
546
+ Type: `String|Array`
547
+
548
+ Text to encode or a list of objects describing segments.
549
+
550
+ ##### `options`
551
+ See [Options](#options).
552
+
553
+ ##### `cb`
554
+ Type: `Function`
555
+
556
+ Callback function called on finish.
557
+
558
+ <br>
559
+
560
+ #### `toDataURL(text, [options], [cb(error, url)])`
561
+ Returns a Data URI containing a representation of the QR Code image.<br>
562
+ Only works with `image/png` type for now.
563
+
564
+ ##### `text`
565
+ Type: `String|Array`
566
+
567
+ Text to encode or a list of objects describing segments.
568
+
569
+ ##### `options`
570
+ See [Options](#options) for other settings.
571
+
572
+ ##### `cb`
573
+ Type: `Function`
574
+
575
+ Callback function called on finish.
576
+
577
+ <br>
578
+
579
+ #### `toString(text, [options], [cb(error, string)])`
580
+ Returns a string representation of the QR Code.<br>
581
+ If choosen output format is `svg` it will returns a string containing xml code.
582
+
583
+ ##### `text`
584
+ Type: `String|Array`
585
+
586
+ Text to encode or a list of objects describing segments.
587
+
588
+ ##### `options`
589
+ - ###### `type`
590
+ Type: `String`<br>
591
+ Default: `utf8`
592
+
593
+ Output format.<br>
594
+ Possible values are: `utf8`, `svg`, `terminal`.
595
+
596
+ See [Options](#options) for other settings.
597
+
598
+ ##### `cb`
599
+ Type: `Function`
600
+
601
+ Callback function called on finish.
602
+
603
+ ##### Example
604
+ ```javascript
605
+ QRCode.toString('http://www.google.com', function (err, string) {
606
+ if (err) throw err
607
+ console.log(string)
608
+ })
609
+ ```
610
+
611
+ <br>
612
+
613
+ #### `toFile(path, text, [options], [cb(error)])`
614
+ Saves QR Code to image file.<br>
615
+ If `options.type` is not specified, the format will be guessed from file extension.<br>
616
+ Recognized extensions are `png`, `svg`, `txt`.
617
+
618
+ ##### `path`
619
+ Type: `String`
620
+
621
+ Path where to save the file.
622
+
623
+ ##### `text`
624
+ Type: `String|Array`
625
+
626
+ Text to encode or a list of objects describing segments.
627
+
628
+ ##### `options`
629
+ - ###### `type`
630
+ Type: `String`<br>
631
+ Default: `png`
632
+
633
+ Output format.<br>
634
+ Possible values are: `png`, `svg`, `utf8`.
635
+
636
+ - ###### `rendererOpts.deflateLevel` **(png only)**
637
+ Type: `Number`<br>
638
+ Default: `9`
639
+
640
+ Compression level for deflate.
641
+
642
+ - ###### `rendererOpts.deflateStrategy` **(png only)**
643
+ Type: `Number`<br>
644
+ Default: `3`
645
+
646
+ Compression strategy for deflate.
647
+
648
+ See [Options](#options) for other settings.
649
+
650
+ ##### `cb`
651
+ Type: `Function`
652
+
653
+ Callback function called on finish.
654
+
655
+ ##### Example
656
+ ```javascript
657
+ QRCode.toFile('path/to/filename.png', 'Some text', {
658
+ color: {
659
+ dark: '#00F', // Blue dots
660
+ light: '#0000' // Transparent background
661
+ }
662
+ }, function (err) {
663
+ if (err) throw err
664
+ console.log('done')
665
+ })
666
+ ```
667
+
668
+ <br>
669
+
670
+ #### `toFileStream(stream, text, [options])`
671
+ Writes QR Code image to stream. Only works with `png` format for now.
672
+
673
+ ##### `stream`
674
+ Type: `stream.Writable`
675
+
676
+ Node stream.
677
+
678
+ ##### `text`
679
+ Type: `String|Array`
680
+
681
+ Text to encode or a list of objects describing segments.
682
+
683
+ ##### `options`
684
+ See [Options](#options).
685
+
686
+ <br>
687
+
688
+ ### Options
689
+
690
+ #### QR Code options
691
+ ##### `version`
692
+ Type: `Number`<br>
693
+
694
+ QR Code version. If not specified the more suitable value will be calculated.
695
+
696
+ ##### `errorCorrectionLevel`
697
+ Type: `String`<br>
698
+ Default: `M`
699
+
700
+ Error correction level.<br>
701
+ Possible values are `low, medium, quartile, high` or `L, M, Q, H`.
702
+
703
+ ##### `maskPattern`
704
+ Type: `Number`<br>
705
+
706
+ Mask pattern used to mask the symbol.<br>
707
+ Possible values are `0`, `1`, `2`, `3`, `4`, `5`, `6`, `7`.<br>
708
+ If not specified the more suitable value will be calculated.
709
+
710
+ ##### `toSJISFunc`
711
+ Type: `Function`<br>
712
+
713
+ Helper function used internally to convert a kanji to its Shift JIS value.<br>
714
+ Provide this function if you need support for Kanji mode.
715
+
716
+ #### Renderers options
717
+ ##### `margin`
718
+ Type: `Number`<br>
719
+ Default: `4`
720
+
721
+ Define how much wide the quiet zone should be.
722
+
723
+ ##### `scale`
724
+ Type: `Number`<br>
725
+ Default: `4`
726
+
727
+ Scale factor. A value of `1` means 1px per modules (black dots).
728
+
729
+ ##### `small`
730
+ Type: `Boolean`<br>
731
+ Default: `false`
732
+
733
+ Relevant only for terminal renderer. Outputs smaller QR code.
734
+
735
+ ##### `width`
736
+ Type: `Number`<br>
737
+
738
+ Forces a specific width for the output image.<br>
739
+ If width is too small to contain the qr symbol, this option will be ignored.<br>
740
+ Takes precedence over `scale`.
741
+
742
+ ##### `color.dark`
743
+ Type: `String`<br>
744
+ Default: `#000000ff`
745
+
746
+ Color of dark module. Value must be in hex format (RGBA).<br>
747
+ Note: dark color should always be darker than `color.light`.
748
+
749
+ ##### `color.light`
750
+ Type: `String`<br>
751
+ Default: `#ffffffff`
752
+
753
+ Color of light module. Value must be in hex format (RGBA).<br>
754
+
755
+ <br>
756
+
757
+ ## GS1 QR Codes
758
+ There was a real good discussion here about them. but in short any qrcode generator will make gs1 compatible qrcodes, but what defines a gs1 qrcode is a header with metadata that describes your gs1 information.
759
+
760
+ https://github.com/soldair/node-qrcode/issues/45
761
+
762
+
763
+ ## Credits
764
+ This lib is based on "QRCode for JavaScript" which Kazuhiko Arase thankfully MIT licensed.
765
+
766
+ ## License
767
+ [MIT](https://github.com/soldair/node-qrcode/blob/master/license)
768
+
769
+ The word "QR Code" is registered trademark of:<br>
770
+ DENSO WAVE INCORPORATED