@paykka/card-checkout-ui 0.8.0 → 0.9.2

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 (247) hide show
  1. package/dist/card-checkout-ui.js +20 -13
  2. package/dist/card-checkout-ui.umd.cjs +20 -13
  3. package/dist/es/_commonjsHelpers.js +1 -0
  4. package/dist/es/api/http.js +19 -21
  5. package/dist/es/api/index.js +1 -0
  6. package/dist/es/api/modules/ali-pay/index.js +19 -11
  7. package/dist/es/api/modules/apple-pay/index.js +10 -26
  8. package/dist/es/api/modules/boost/index.js +56 -0
  9. package/dist/es/api/modules/card/index.js +17 -11
  10. package/dist/es/api/modules/checkout/index.js +6 -6
  11. package/dist/es/api/modules/checkout/map.js +23 -6
  12. package/dist/es/api/modules/gcash/index.js +56 -0
  13. package/dist/es/api/modules/get-browser-params.js +2 -2
  14. package/dist/es/api/modules/google-pay/index.js +10 -26
  15. package/dist/es/api/modules/grab-pay/index.js +56 -0
  16. package/dist/es/api/modules/index.js +1 -0
  17. package/dist/es/api/modules/line-pay/index.js +56 -0
  18. package/dist/es/api/modules/may-bank-qr-pay/index.js +56 -0
  19. package/dist/es/api/modules/nine-pay/index.js +56 -0
  20. package/dist/es/api/modules/paymaya/index.js +56 -0
  21. package/dist/es/api/modules/sepa/index.js +19 -11
  22. package/dist/es/api/modules/shopee-pay/index.js +56 -0
  23. package/dist/es/api/modules/tng-wallet/index.js +56 -0
  24. package/dist/es/api/modules/wechat-pay/index.js +18 -31
  25. package/dist/es/components/AccordionItem/AccordionItem.js +36 -0
  26. package/dist/es/components/AliPay/index.js +27 -39
  27. package/dist/es/components/ApplePay/index.js +16 -37
  28. package/dist/es/components/Boost/index.js +322 -0
  29. package/dist/es/components/Card/index.js +52 -41
  30. package/dist/es/components/CardBrands/index.js +2 -2
  31. package/dist/es/components/CardNumberField/index.js +113 -106
  32. package/dist/es/components/DropIn/index.js +204 -49
  33. package/dist/es/components/GooglePay/index.js +5 -4
  34. package/dist/es/components/GrabPay/index.js +322 -0
  35. package/dist/es/components/GuideCard/index.js +43 -0
  36. package/dist/es/components/LinePay/index.js +322 -0
  37. package/dist/es/components/MayBankQRPay/index.js +322 -0
  38. package/dist/es/components/NinePay/index.js +322 -0
  39. package/dist/es/components/SecuredIframe/index.js +3 -2
  40. package/dist/es/components/Sepa/index.js +6 -9
  41. package/dist/es/components/ShopeePay/index.js +322 -0
  42. package/dist/es/components/SubmitButton/index.js +6 -20
  43. package/dist/es/components/TNGWallet/index.js +322 -0
  44. package/dist/es/components/WechatPay/index.js +30 -49
  45. package/dist/es/components/business/QRCodeModal/QRCodeModal.js +41 -0
  46. package/dist/es/components/business/QRCodeModal/index.js +6 -0
  47. package/dist/es/components/business/QRCodeModal/qr-code-modal.js +1 -0
  48. package/dist/es/components/business/QRCodeModal/type.js +1 -0
  49. package/dist/es/components/business/index.js +6 -0
  50. package/dist/es/components/index.js +9 -0
  51. package/dist/es/components/internal/Accordion/Accordion.js +14 -0
  52. package/dist/es/components/internal/Accordion/accordion2.js +1 -0
  53. package/dist/es/components/internal/Accordion/accordionTransition.js +26 -0
  54. package/dist/es/components/internal/Accordion/index.js +7 -0
  55. package/dist/es/components/internal/Accordion/type.js +10 -0
  56. package/dist/es/components/internal/Modal/Modal.js +17 -3
  57. package/dist/es/components/internal/Modal/index.js +1 -0
  58. package/dist/es/components/internal/Modal/type.js +1 -0
  59. package/dist/es/components/internal/QRCode/QRCode.js +31 -0
  60. package/dist/es/components/internal/QRCode/index.js +4 -0
  61. package/dist/es/components/internal/QRCode/type.js +1 -0
  62. package/dist/es/components/internal/icons/IconBoost.js +63 -0
  63. package/dist/es/components/internal/icons/IconCard.js +1 -40
  64. package/dist/es/components/internal/icons/IconCard2.js +60 -0
  65. package/dist/es/components/internal/icons/IconGCash.js +196 -0
  66. package/dist/es/components/internal/icons/IconGcashComplete.js +184 -0
  67. package/dist/es/components/internal/icons/IconGrabPay.js +59 -0
  68. package/dist/es/components/internal/icons/IconLinePay.js +99 -0
  69. package/dist/es/components/internal/icons/IconMayBankQRPay.js +69 -0
  70. package/dist/es/components/internal/icons/IconNinePay.js +255 -0
  71. package/dist/es/components/internal/icons/IconPaymaya.js +114 -0
  72. package/dist/es/components/internal/icons/IconRedirect.js +58 -0
  73. package/dist/es/components/internal/icons/IconScan.js +102 -0
  74. package/dist/es/components/internal/icons/IconShopeePay.js +108 -0
  75. package/dist/es/components/internal/icons/IconTNGWallet.js +119 -0
  76. package/dist/es/components/internal/icons/IconUnionPay.js +65 -0
  77. package/dist/es/components/wallets/GCash/GCash.js +356 -0
  78. package/dist/es/components/wallets/GCash/g-cash.js +1 -0
  79. package/dist/es/components/wallets/GCash/index.js +1 -0
  80. package/dist/es/components/wallets/GCash/type.js +1 -0
  81. package/dist/es/components/wallets/Paymaya/Paymaya.js +323 -0
  82. package/dist/es/components/wallets/Paymaya/index.js +1 -0
  83. package/dist/es/components/wallets/Paymaya/paymaya2.js +1 -0
  84. package/dist/es/components/wallets/Paymaya/type.js +1 -0
  85. package/dist/es/config.js +12 -12
  86. package/dist/es/constant.js +84 -4
  87. package/dist/es/core/PayKKaCheckout.js +28 -3
  88. package/dist/es/core/Session.js +24 -23
  89. package/dist/es/core/error.js +7 -0
  90. package/dist/es/core/query.js +3 -2
  91. package/dist/es/core.js +2082 -70
  92. package/dist/es/hooks/usePayState.js +0 -3
  93. package/dist/es/i18n/I18n.js +8 -2
  94. package/dist/es/i18n/locales/de-DE.js +16 -1
  95. package/dist/es/i18n/locales/en-GB.js +16 -1
  96. package/dist/es/i18n/locales/es-ES.js +16 -1
  97. package/dist/es/i18n/locales/fr-FR.js +16 -1
  98. package/dist/es/i18n/locales/ja-JP.js +16 -1
  99. package/dist/es/i18n/locales/ko-KR.js +16 -1
  100. package/dist/es/i18n/locales/pt-PT.js +16 -1
  101. package/dist/es/i18n/locales/ru-RU.js +16 -1
  102. package/dist/es/i18n/locales/zh-CN.js +16 -1
  103. package/dist/es/i18n/locales/zh-HK.js +16 -1
  104. package/dist/es/i18n/locales/zh-TW.js +16 -1
  105. package/dist/es/i18n/util.js +12 -3
  106. package/dist/es/index.js +20 -0
  107. package/dist/es/style.css +1 -1192
  108. package/dist/es/types/index.js +1 -0
  109. package/dist/es/utils/array.js +9 -0
  110. package/dist/es/utils/card-brand/brands.js +11 -1
  111. package/dist/es/utils/card-brand/index.js +4 -3
  112. package/dist/es/utils/card-brand/luhn.js +25 -0
  113. package/dist/es/utils/date.js +25 -0
  114. package/dist/es/utils/detect.js +6 -0
  115. package/dist/es/utils/format.js +28 -12
  116. package/dist/es/utils/index.js +9 -1
  117. package/dist/es/utils/location.js +37 -0
  118. package/dist/es/utils/object.js +14 -0
  119. package/dist/es/utils/redirect.js +32 -0
  120. package/dist/es/utils/system-info/get-browser-info.js +4 -4
  121. package/dist/es/utils/system-info/get-system-info.js +11 -7
  122. package/dist/es/utils/system-info/index.js +4 -4
  123. package/dist/style.css +1 -1
  124. package/dist/types/api/http.d.ts +4 -10
  125. package/dist/types/api/modules/ali-pay/index.d.ts +2 -1
  126. package/dist/types/api/modules/apple-pay/index.d.ts +2 -1
  127. package/dist/types/api/modules/boost/index.d.ts +24 -0
  128. package/dist/types/api/modules/card/index.d.ts +1 -1
  129. package/dist/types/api/modules/checkout/index.d.ts +2 -2
  130. package/dist/types/api/modules/checkout/type.d.ts +9 -0
  131. package/dist/types/api/modules/gcash/index.d.ts +24 -0
  132. package/dist/types/api/modules/get-browser-params.d.ts +2 -2
  133. package/dist/types/api/modules/google-pay/index.d.ts +2 -1
  134. package/dist/types/api/modules/grab-pay/index.d.ts +24 -0
  135. package/dist/types/api/modules/index.d.ts +9 -0
  136. package/dist/types/api/modules/line-pay/index.d.ts +24 -0
  137. package/dist/types/api/modules/may-bank-qr-pay/index.d.ts +24 -0
  138. package/dist/types/api/modules/nine-pay/index.d.ts +24 -0
  139. package/dist/types/api/modules/paymaya/index.d.ts +24 -0
  140. package/dist/types/api/modules/sepa/index.d.ts +2 -1
  141. package/dist/types/api/modules/shopee-pay/index.d.ts +24 -0
  142. package/dist/types/api/modules/tng-wallet/index.d.ts +24 -0
  143. package/dist/types/api/modules/wechat-pay/index.d.ts +2 -1
  144. package/dist/types/components/Boost/Boost.d.ts +7 -0
  145. package/dist/types/components/Boost/index.d.ts +2 -0
  146. package/dist/types/components/Boost/type.d.ts +61 -0
  147. package/dist/types/components/DropIn/components/PaymentTabs/type.d.ts +1 -1
  148. package/dist/types/components/DropIn/config.d.ts +7 -0
  149. package/dist/types/components/DropIn/type.d.ts +11 -3
  150. package/dist/types/components/GrabPay/GrabPay.d.ts +7 -0
  151. package/dist/types/components/GrabPay/index.d.ts +2 -0
  152. package/dist/types/components/GrabPay/type.d.ts +61 -0
  153. package/dist/types/components/GuideCard/GuideCard.d.ts +3 -0
  154. package/dist/types/components/GuideCard/index.d.ts +2 -0
  155. package/dist/types/components/GuideCard/type.d.ts +4 -0
  156. package/dist/types/components/LinePay/LinePay.d.ts +7 -0
  157. package/dist/types/components/LinePay/index.d.ts +2 -0
  158. package/dist/types/components/LinePay/type.d.ts +61 -0
  159. package/dist/types/components/MayBankQRPay/MayBankQRPay.d.ts +6 -0
  160. package/dist/types/components/MayBankQRPay/index.d.ts +2 -0
  161. package/dist/types/components/MayBankQRPay/type.d.ts +61 -0
  162. package/dist/types/components/NinePay/NinePay.d.ts +6 -0
  163. package/dist/types/components/NinePay/index.d.ts +2 -0
  164. package/dist/types/components/NinePay/type.d.ts +61 -0
  165. package/dist/types/components/SecuredIframe/useSecuredInput.d.ts +1 -1
  166. package/dist/types/components/ShopeePay/ShopeePay.d.ts +7 -0
  167. package/dist/types/components/ShopeePay/index.d.ts +2 -0
  168. package/dist/types/components/ShopeePay/type.d.ts +61 -0
  169. package/dist/types/components/SubmitButton/SubmitButton.d.ts +1 -1
  170. package/dist/types/components/TNGWallet/TNGWallet.d.ts +7 -0
  171. package/dist/types/components/TNGWallet/index.d.ts +2 -0
  172. package/dist/types/components/TNGWallet/type.d.ts +61 -0
  173. package/dist/types/components/business/QRCodeModal/QRCodeModal.d.ts +3 -0
  174. package/dist/types/components/business/QRCodeModal/index.d.ts +2 -0
  175. package/dist/types/components/business/QRCodeModal/type.d.ts +18 -0
  176. package/dist/types/components/business/index.d.ts +1 -0
  177. package/dist/types/components/index.d.ts +9 -0
  178. package/dist/types/components/internal/Accordion/Accordion.d.ts +3 -0
  179. package/dist/types/components/internal/Accordion/accordionTransition.d.ts +8 -0
  180. package/dist/types/components/internal/Accordion/components/AccordionItem/AccordionItem.d.ts +3 -0
  181. package/dist/types/components/internal/Accordion/components/AccordionItem/index.d.ts +2 -0
  182. package/dist/types/components/internal/Accordion/components/AccordionItem/type.d.ts +18 -0
  183. package/dist/types/components/internal/Accordion/index.d.ts +3 -0
  184. package/dist/types/components/internal/Accordion/type.d.ts +18 -0
  185. package/dist/types/components/internal/Modal/type.d.ts +2 -0
  186. package/dist/types/components/internal/QRCode/QRCode.d.ts +2 -0
  187. package/dist/types/components/internal/QRCode/index.d.ts +2 -0
  188. package/dist/types/components/internal/QRCode/type.d.ts +9 -0
  189. package/dist/types/components/internal/icons/IconBoost.d.ts +2 -0
  190. package/dist/types/components/internal/icons/IconCard2.d.ts +2 -0
  191. package/dist/types/components/internal/icons/IconGCash.d.ts +2 -0
  192. package/dist/types/components/internal/icons/IconGcashComplete.d.ts +2 -0
  193. package/dist/types/components/internal/icons/IconGrabPay.d.ts +2 -0
  194. package/dist/types/components/internal/icons/IconLinePay.d.ts +2 -0
  195. package/dist/types/components/internal/icons/IconMayBankQRPay.d.ts +2 -0
  196. package/dist/types/components/internal/icons/IconNinePay.d.ts +2 -0
  197. package/dist/types/components/internal/icons/IconPaymaya.d.ts +2 -0
  198. package/dist/types/components/internal/icons/IconRedirect.d.ts +2 -0
  199. package/dist/types/components/internal/icons/IconScan.d.ts +2 -0
  200. package/dist/types/components/internal/icons/IconShopeePay.d.ts +2 -0
  201. package/dist/types/components/internal/icons/IconTNGWallet.d.ts +2 -0
  202. package/dist/types/components/internal/icons/IconUnionPay.d.ts +2 -0
  203. package/dist/types/components/internal/icons/index.d.ts +13 -0
  204. package/dist/types/components/wallets/GCash/GCash.d.ts +6 -0
  205. package/dist/types/components/wallets/GCash/index.d.ts +2 -0
  206. package/dist/types/components/wallets/GCash/type.d.ts +66 -0
  207. package/dist/types/components/wallets/Paymaya/Paymaya.d.ts +6 -0
  208. package/dist/types/components/wallets/Paymaya/index.d.ts +2 -0
  209. package/dist/types/components/wallets/Paymaya/type.d.ts +61 -0
  210. package/dist/types/config.d.ts +9 -9
  211. package/dist/types/constant.d.ts +28 -3
  212. package/dist/types/core/PayKKaCheckout.d.ts +10 -0
  213. package/dist/types/core/Session.d.ts +2 -0
  214. package/dist/types/core/error.d.ts +3 -1
  215. package/dist/types/core/query.d.ts +2 -2
  216. package/dist/types/hooks/usePayState.d.ts +0 -3
  217. package/dist/types/i18n/I18n.d.ts +1 -1
  218. package/dist/types/i18n/locales/de-DE.d.ts +13 -0
  219. package/dist/types/i18n/locales/en-GB.d.ts +13 -0
  220. package/dist/types/i18n/locales/es-ES.d.ts +13 -0
  221. package/dist/types/i18n/locales/fr-FR.d.ts +13 -0
  222. package/dist/types/i18n/locales/ja-JP.d.ts +13 -0
  223. package/dist/types/i18n/locales/ko-KR.d.ts +13 -0
  224. package/dist/types/i18n/locales/pt-PT.d.ts +13 -0
  225. package/dist/types/i18n/locales/ru-RU.d.ts +13 -0
  226. package/dist/types/i18n/locales/zh-CN.d.ts +13 -0
  227. package/dist/types/i18n/locales/zh-HK.d.ts +13 -0
  228. package/dist/types/i18n/locales/zh-TW.d.ts +13 -0
  229. package/dist/types/i18n/util.d.ts +5 -0
  230. package/dist/types/index.d.ts +1 -1
  231. package/dist/types/types/index.d.ts +10 -3
  232. package/dist/types/types/message.d.ts +1 -0
  233. package/dist/types/utils/array.d.ts +1 -0
  234. package/dist/types/utils/card-brand/brands.d.ts +4 -3
  235. package/dist/types/utils/card-brand/index.d.ts +9 -6
  236. package/dist/types/utils/card-brand/luhn.d.ts +9 -0
  237. package/dist/types/utils/date.d.ts +9 -0
  238. package/dist/types/utils/detect.d.ts +1 -0
  239. package/dist/types/utils/format.d.ts +7 -1
  240. package/dist/types/utils/index.d.ts +7 -0
  241. package/dist/types/utils/location.d.ts +7 -0
  242. package/dist/types/utils/object.d.ts +1 -0
  243. package/dist/types/utils/redirect.d.ts +5 -0
  244. package/dist/types/utils/system-info/get-browser-info.d.ts +1 -1
  245. package/dist/types/utils/system-info/get-system-info.d.ts +3 -2
  246. package/dist/types/utils/system-info/index.d.ts +3 -3
  247. package/package.json +4 -2
package/dist/es/core.js CHANGED
@@ -57,7 +57,7 @@ function M$3() {
57
57
  n2.__d && (u2 = i$2.length, o2 = void 0, e2 = (r2 = (t2 = n2).__v).__e, c2 = [], s2 = [], t2.__P && ((o2 = d$3({}, r2)).__v = r2.__v + 1, l$3.vnode && l$3.vnode(o2), O(t2.__P, o2, r2, t2.__n, t2.__P.namespaceURI, 32 & r2.__u ? [e2] : null, c2, null == e2 ? x$2(r2) : e2, !!(32 & r2.__u), s2), o2.__v = r2.__v, o2.__.__k[o2.__i] = o2, j$2(c2, o2, s2), o2.__e != e2 && C$1(o2)), i$2.length > u2 && i$2.sort(f$3));
58
58
  M$3.__r = 0;
59
59
  }
60
- function P(n2, l2, u2, t2, i2, o2, r2, f2, e2, c2, s2) {
60
+ function P$1(n2, l2, u2, t2, i2, o2, r2, f2, e2, c2, s2) {
61
61
  var a2, p2, y2, d2, w2, _2 = t2 && t2.__k || v$2, g2 = l2.length;
62
62
  for (u2.__d = e2, $(u2, l2, _2), e2 = u2.__d, a2 = 0; a2 < g2; a2++)
63
63
  null != (y2 = u2.__k[a2]) && (p2 = -1 === y2.__i ? h$2 : _2[y2.__i] || h$2, y2.__i = a2, O(n2, y2, p2, i2, o2, r2, f2, e2, c2, s2), d2 = y2.__e, y2.ref && p2.ref != y2.ref && (p2.ref && N$1(p2.ref, null, y2), s2.push(y2.ref, y2.__c || d2, y2)), null == w2 && null != d2 && (w2 = d2), 65536 & y2.__u || p2.__k === y2.__k ? e2 = I(y2, e2, n2) : "function" == typeof y2.type && void 0 !== y2.__d ? e2 = y2.__d : d2 && (e2 = d2.nextSibling), y2.__d = void 0, y2.__u &= -196609);
@@ -69,7 +69,7 @@ function $(n2, l2, u2) {
69
69
  null != (i2 = l2[t2]) && "boolean" != typeof i2 && "function" != typeof i2 ? (r2 = t2 + a2, (i2 = n2.__k[t2] = "string" == typeof i2 || "number" == typeof i2 || "bigint" == typeof i2 || i2.constructor == String ? g$2(null, i2, null, null, null) : y$2(i2) ? g$2(b$1, { children: i2 }, null, null, null) : void 0 === i2.constructor && i2.__b > 0 ? g$2(i2.type, i2.props, i2.key, i2.ref ? i2.ref : null, i2.__v) : i2).__ = n2, i2.__b = n2.__b + 1, o2 = null, -1 !== (f2 = i2.__i = L$1(i2, u2, r2, s2)) && (s2--, (o2 = u2[f2]) && (o2.__u |= 131072)), null == o2 || null === o2.__v ? (-1 == f2 && a2--, "function" != typeof i2.type && (i2.__u |= 65536)) : f2 !== r2 && (f2 == r2 - 1 ? a2-- : f2 == r2 + 1 ? a2++ : (f2 > r2 ? a2-- : a2++, i2.__u |= 65536))) : i2 = n2.__k[t2] = null;
70
70
  if (s2)
71
71
  for (t2 = 0; t2 < c2; t2++)
72
- null != (o2 = u2[t2]) && 0 == (131072 & o2.__u) && (o2.__e == n2.__d && (n2.__d = x$2(o2)), V(o2, o2));
72
+ null != (o2 = u2[t2]) && 0 == (131072 & o2.__u) && (o2.__e == n2.__d && (n2.__d = x$2(o2)), V$1(o2, o2));
73
73
  }
74
74
  function I(n2, l2, u2) {
75
75
  var t2, i2;
@@ -182,7 +182,7 @@ function O(n2, u2, t2, i2, o2, r2, f2, e2, c2, s2) {
182
182
  do {
183
183
  h2.__d = false, $2 && $2(u2), a2 = h2.render(h2.props, h2.state, h2.context), h2.state = h2.__s;
184
184
  } while (h2.__d && ++I2 < 25);
185
- h2.state = h2.__s, null != h2.getChildContext && (i2 = d$3(d$3({}, i2), h2.getChildContext())), x2 && !v2 && null != h2.getSnapshotBeforeUpdate && (_2 = h2.getSnapshotBeforeUpdate(p2, w2)), P(n2, y$2(L2 = null != a2 && a2.type === b$1 && null == a2.key ? a2.props.children : a2) ? L2 : [L2], u2, t2, i2, o2, r2, f2, e2, c2, s2), h2.base = u2.__e, u2.__u &= -161, h2.__h.length && f2.push(h2), g2 && (h2.__E = h2.__ = null);
185
+ h2.state = h2.__s, null != h2.getChildContext && (i2 = d$3(d$3({}, i2), h2.getChildContext())), x2 && !v2 && null != h2.getSnapshotBeforeUpdate && (_2 = h2.getSnapshotBeforeUpdate(p2, w2)), P$1(n2, y$2(L2 = null != a2 && a2.type === b$1 && null == a2.key ? a2.props.children : a2) ? L2 : [L2], u2, t2, i2, o2, r2, f2, e2, c2, s2), h2.base = u2.__e, u2.__u &= -161, h2.__h.length && f2.push(h2), g2 && (h2.__E = h2.__ = null);
186
186
  } catch (n3) {
187
187
  if (u2.__v = null, c2 || null != r2) {
188
188
  for (u2.__u |= c2 ? 160 : 128; e2 && 8 === e2.nodeType && e2.nextSibling; )
@@ -244,7 +244,7 @@ function z$2(u2, t2, i2, o2, r2, f2, e2, c2, s2) {
244
244
  _2 = k2[a2], "children" == a2 ? d2 = _2 : "dangerouslySetInnerHTML" == a2 ? v2 = _2 : "value" == a2 ? g2 = _2 : "checked" == a2 ? m2 = _2 : c2 && "function" != typeof _2 || b2[a2] === _2 || A$2(u2, a2, _2, b2[a2], r2);
245
245
  if (v2)
246
246
  c2 || p2 && (v2.__html === p2.__html || v2.__html === u2.innerHTML) || (u2.innerHTML = v2.__html), t2.__k = [];
247
- else if (p2 && (u2.innerHTML = ""), P(u2, y$2(d2) ? d2 : [d2], t2, i2, o2, "foreignObject" === C3 ? "http://www.w3.org/1999/xhtml" : r2, f2, e2, f2 ? f2[0] : i2.__k && x$2(i2, 0), c2, s2), null != f2)
247
+ else if (p2 && (u2.innerHTML = ""), P$1(u2, y$2(d2) ? d2 : [d2], t2, i2, o2, "foreignObject" === C3 ? "http://www.w3.org/1999/xhtml" : r2, f2, e2, f2 ? f2[0] : i2.__k && x$2(i2, 0), c2, s2), null != f2)
248
248
  for (a2 = f2.length; a2--; )
249
249
  w$3(f2[a2]);
250
250
  c2 || (a2 = "value", "progress" === C3 && null == g2 ? u2.removeAttribute("value") : void 0 !== g2 && (g2 !== u2[a2] || "progress" === C3 && !g2 || "option" === C3 && g2 !== b2[a2]) && A$2(u2, a2, g2, b2[a2], r2), a2 = "checked", void 0 !== m2 && m2 !== u2[a2] && A$2(u2, a2, m2, b2[a2], r2));
@@ -262,7 +262,7 @@ function N$1(n2, u2, t2) {
262
262
  l$3.__e(n3, t2);
263
263
  }
264
264
  }
265
- function V(n2, u2, t2) {
265
+ function V$1(n2, u2, t2) {
266
266
  var i2, o2;
267
267
  if (l$3.unmount && l$3.unmount(n2), (i2 = n2.ref) && (i2.current && i2.current !== n2.__e || N$1(i2, null, u2)), null != (i2 = n2.__c)) {
268
268
  if (i2.componentWillUnmount)
@@ -275,7 +275,7 @@ function V(n2, u2, t2) {
275
275
  }
276
276
  if (i2 = n2.__k)
277
277
  for (o2 = 0; o2 < i2.length; o2++)
278
- i2[o2] && V(i2[o2], u2, t2 || "function" != typeof n2.type);
278
+ i2[o2] && V$1(i2[o2], u2, t2 || "function" != typeof n2.type);
279
279
  t2 || w$3(n2.__e), n2.__c = n2.__ = n2.__e = n2.__d = void 0;
280
280
  }
281
281
  function q$1(n2, l2, u2) {
@@ -602,6 +602,29 @@ var U = function(n2, t2, e2) {
602
602
  n2.u = e2 = e2[2];
603
603
  }
604
604
  };
605
+ function V(n2) {
606
+ return this.getChildContext = function() {
607
+ return n2.context;
608
+ }, n2.children;
609
+ }
610
+ function W(n2) {
611
+ var e2 = this, r2 = n2.i;
612
+ e2.componentWillUnmount = function() {
613
+ B$2(null, e2.l), e2.l = null, e2.i = null;
614
+ }, e2.i && e2.i !== r2 && e2.componentWillUnmount(), e2.l || (e2.i = r2, e2.l = { nodeType: 1, parentNode: r2, childNodes: [], contains: function() {
615
+ return true;
616
+ }, appendChild: function(n3) {
617
+ this.childNodes.push(n3), e2.i.appendChild(n3);
618
+ }, insertBefore: function(n3, t2) {
619
+ this.childNodes.push(n3), e2.i.appendChild(n3);
620
+ }, removeChild: function(n3) {
621
+ this.childNodes.splice(this.childNodes.indexOf(n3) >>> 1, 1), e2.i.removeChild(n3);
622
+ } }), B$2(_$3(V, { context: e2.context }, n2.__v), e2.l);
623
+ }
624
+ function P(n2, e2) {
625
+ var r2 = _$3(W, { __v: n2, i: e2 });
626
+ return r2.containerInfo = e2, r2;
627
+ }
605
628
  (F.prototype = new k$1()).__a = function(n2) {
606
629
  var t2 = this, e2 = L(t2.__v), r2 = t2.o.get(n2);
607
630
  return r2[0]++, function(u2) {
@@ -675,6 +698,36 @@ l$3.diffed = function(n2) {
675
698
  var t2 = n2.props, e2 = n2.__e;
676
699
  null != e2 && "textarea" === n2.type && "value" in t2 && t2.value !== e2.value && (e2.value = null == t2.value ? "" : t2.value);
677
700
  };
701
+ function e$1(e2, n2) {
702
+ return n2 = n2 || {}, new Promise(function(t2, r2) {
703
+ var s2 = new XMLHttpRequest(), o2 = [], u2 = {}, a2 = function e3() {
704
+ return { ok: 2 == (s2.status / 100 | 0), statusText: s2.statusText, status: s2.status, url: s2.responseURL, text: function() {
705
+ return Promise.resolve(s2.responseText);
706
+ }, json: function() {
707
+ return Promise.resolve(s2.responseText).then(JSON.parse);
708
+ }, blob: function() {
709
+ return Promise.resolve(new Blob([s2.response]));
710
+ }, clone: e3, headers: { keys: function() {
711
+ return o2;
712
+ }, entries: function() {
713
+ return o2.map(function(e4) {
714
+ return [e4, s2.getResponseHeader(e4)];
715
+ });
716
+ }, get: function(e4) {
717
+ return s2.getResponseHeader(e4);
718
+ }, has: function(e4) {
719
+ return null != s2.getResponseHeader(e4);
720
+ } } };
721
+ };
722
+ for (var i2 in s2.open(n2.method || "get", e2, true), s2.onload = function() {
723
+ s2.getAllResponseHeaders().toLowerCase().replace(/^(.+?):/gm, function(e3, n3) {
724
+ u2[n3] || o2.push(u2[n3] = n3);
725
+ }), t2(a2());
726
+ }, s2.onerror = r2, s2.withCredentials = "include" == n2.credentials, n2.headers)
727
+ s2.setRequestHeader(i2, n2.headers[i2]);
728
+ s2.send(n2.body || null);
729
+ });
730
+ }
678
731
  var __assign = function() {
679
732
  __assign = Object.assign || function __assign2(t2) {
680
733
  for (var s2, i2 = 1, n2 = arguments.length; i2 < n2; i2++) {
@@ -805,7 +858,7 @@ typeof SuppressedError === "function" ? SuppressedError : function(error, suppre
805
858
  var e2 = new Error(message);
806
859
  return e2.name = "SuppressedError", e2.error = error, e2.suppressed = suppressed, e2;
807
860
  };
808
- var version = "4.3.0";
861
+ var version$1 = "4.3.0";
809
862
  function wait(durationMs, resolveWith) {
810
863
  return new Promise(function(resolve) {
811
864
  return setTimeout(resolve, durationMs, resolveWith);
@@ -1934,14 +1987,14 @@ function getCanvasFingerprint() {
1934
1987
  }
1935
1988
  function getUnstableCanvasFingerprint(skipImages) {
1936
1989
  return __awaiter(this, void 0, void 0, function() {
1937
- var winding, geometry, text, _a, canvas, context;
1990
+ var winding, geometry, text, _a, canvas2, context;
1938
1991
  var _b;
1939
1992
  return __generator(this, function(_c) {
1940
1993
  switch (_c.label) {
1941
1994
  case 0:
1942
1995
  winding = false;
1943
- _a = makeCanvasContext(), canvas = _a[0], context = _a[1];
1944
- if (!!isSupported(canvas, context))
1996
+ _a = makeCanvasContext(), canvas2 = _a[0], context = _a[1];
1997
+ if (!!isSupported(canvas2, context))
1945
1998
  return [3, 1];
1946
1999
  geometry = text = "unsupported";
1947
2000
  return [3, 4];
@@ -1952,7 +2005,7 @@ function getUnstableCanvasFingerprint(skipImages) {
1952
2005
  geometry = text = "skipped";
1953
2006
  return [3, 4];
1954
2007
  case 2:
1955
- return [4, renderImages(canvas, context)];
2008
+ return [4, renderImages(canvas2, context)];
1956
2009
  case 3:
1957
2010
  _b = _c.sent(), geometry = _b[0], text = _b[1];
1958
2011
  _c.label = 4;
@@ -1963,31 +2016,31 @@ function getUnstableCanvasFingerprint(skipImages) {
1963
2016
  });
1964
2017
  }
1965
2018
  function makeCanvasContext() {
1966
- var canvas = document.createElement("canvas");
1967
- canvas.width = 1;
1968
- canvas.height = 1;
1969
- return [canvas, canvas.getContext("2d")];
2019
+ var canvas2 = document.createElement("canvas");
2020
+ canvas2.width = 1;
2021
+ canvas2.height = 1;
2022
+ return [canvas2, canvas2.getContext("2d")];
1970
2023
  }
1971
- function isSupported(canvas, context) {
1972
- return !!(context && canvas.toDataURL);
2024
+ function isSupported(canvas2, context) {
2025
+ return !!(context && canvas2.toDataURL);
1973
2026
  }
1974
2027
  function doesSupportWinding(context) {
1975
2028
  context.rect(0, 0, 10, 10);
1976
2029
  context.rect(2, 2, 6, 6);
1977
2030
  return !context.isPointInPath(5, 5, "evenodd");
1978
2031
  }
1979
- function renderImages(canvas, context) {
2032
+ function renderImages(canvas2, context) {
1980
2033
  return __awaiter(this, void 0, void 0, function() {
1981
2034
  var textImage1, textImage2, geometryImage;
1982
2035
  return __generator(this, function(_a) {
1983
2036
  switch (_a.label) {
1984
2037
  case 0:
1985
- renderTextImage(canvas, context);
2038
+ renderTextImage(canvas2, context);
1986
2039
  return [4, releaseEventLoop()];
1987
2040
  case 1:
1988
2041
  _a.sent();
1989
- textImage1 = canvasToString(canvas);
1990
- textImage2 = canvasToString(canvas);
2042
+ textImage1 = canvasToString(canvas2);
2043
+ textImage2 = canvasToString(canvas2);
1991
2044
  if (textImage1 !== textImage2) {
1992
2045
  return [2, [
1993
2046
  "unstable",
@@ -1995,19 +2048,19 @@ function renderImages(canvas, context) {
1995
2048
  /* ImageStatus.Unstable */
1996
2049
  ]];
1997
2050
  }
1998
- renderGeometryImage(canvas, context);
2051
+ renderGeometryImage(canvas2, context);
1999
2052
  return [4, releaseEventLoop()];
2000
2053
  case 2:
2001
2054
  _a.sent();
2002
- geometryImage = canvasToString(canvas);
2055
+ geometryImage = canvasToString(canvas2);
2003
2056
  return [2, [geometryImage, textImage1]];
2004
2057
  }
2005
2058
  });
2006
2059
  });
2007
2060
  }
2008
- function renderTextImage(canvas, context) {
2009
- canvas.width = 240;
2010
- canvas.height = 60;
2061
+ function renderTextImage(canvas2, context) {
2062
+ canvas2.width = 240;
2063
+ canvas2.height = 60;
2011
2064
  context.textBaseline = "alphabetic";
2012
2065
  context.fillStyle = "#f60";
2013
2066
  context.fillRect(100, 1, 62, 20);
@@ -2022,9 +2075,9 @@ function renderTextImage(canvas, context) {
2022
2075
  context.font = "18pt Arial";
2023
2076
  context.fillText(printedText, 4, 45);
2024
2077
  }
2025
- function renderGeometryImage(canvas, context) {
2026
- canvas.width = 122;
2027
- canvas.height = 110;
2078
+ function renderGeometryImage(canvas2, context) {
2079
+ canvas2.width = 122;
2080
+ canvas2.height = 110;
2028
2081
  context.globalCompositeOperation = "multiply";
2029
2082
  for (var _i = 0, _a = [
2030
2083
  ["#f2f", 40, 40],
@@ -2043,8 +2096,8 @@ function renderGeometryImage(canvas, context) {
2043
2096
  context.arc(60, 60, 20, 0, Math.PI * 2, true);
2044
2097
  context.fill("evenodd");
2045
2098
  }
2046
- function canvasToString(canvas) {
2047
- return canvas.toDataURL();
2099
+ function canvasToString(canvas2) {
2100
+ return canvas2.toDataURL();
2048
2101
  }
2049
2102
  function doesBrowserPerformAntifingerprinting() {
2050
2103
  return isWebKit() && isWebKit616OrNewer() && isSafariWebKit();
@@ -2807,7 +2860,7 @@ function getMathFingerprint() {
2807
2860
  var cosh = M.cosh || fallbackFn;
2808
2861
  var tan = M.tan || fallbackFn;
2809
2862
  var tanh = M.tanh || fallbackFn;
2810
- var exp = M.exp || fallbackFn;
2863
+ var exp2 = M.exp || fallbackFn;
2811
2864
  var expm1 = M.expm1 || fallbackFn;
2812
2865
  var log1p = M.log1p || fallbackFn;
2813
2866
  var powPI = function(value) {
@@ -2856,7 +2909,7 @@ function getMathFingerprint() {
2856
2909
  tan: tan(-1e300),
2857
2910
  tanh: tanh(1),
2858
2911
  tanhPf: tanhPf(1),
2859
- exp: exp(1),
2912
+ exp: exp2(1),
2860
2913
  expm1: expm1(1),
2861
2914
  expm1Pf: expm1Pf(1),
2862
2915
  log1p: log1p(10),
@@ -3172,15 +3225,15 @@ function getWebGLContext(cache) {
3172
3225
  if (cache.webgl) {
3173
3226
  return cache.webgl.context;
3174
3227
  }
3175
- var canvas = document.createElement("canvas");
3228
+ var canvas2 = document.createElement("canvas");
3176
3229
  var context;
3177
- canvas.addEventListener("webglCreateContextError", function() {
3230
+ canvas2.addEventListener("webglCreateContextError", function() {
3178
3231
  return context = void 0;
3179
3232
  });
3180
3233
  for (var _i = 0, _a = ["webgl", "experimental-webgl"]; _i < _a.length; _i++) {
3181
3234
  var type = _a[_i];
3182
3235
  try {
3183
- context = canvas.getContext(type);
3236
+ context = canvas2.getContext(type);
3184
3237
  } catch (_b) {
3185
3238
  }
3186
3239
  if (context) {
@@ -3322,7 +3375,7 @@ function makeLazyGetResult(components) {
3322
3375
  },
3323
3376
  confidence,
3324
3377
  components,
3325
- version
3378
+ version: version$1
3326
3379
  };
3327
3380
  }
3328
3381
  function prepareForSources(delayFallback) {
@@ -3361,7 +3414,7 @@ function monitor() {
3361
3414
  }
3362
3415
  try {
3363
3416
  var request = new XMLHttpRequest();
3364
- request.open("get", "https://m1.openfpcdn.io/fingerprintjs/v".concat(version, "/npm-monitoring"), true);
3417
+ request.open("get", "https://m1.openfpcdn.io/fingerprintjs/v".concat(version$1, "/npm-monitoring"), true);
3365
3418
  request.send();
3366
3419
  } catch (error) {
3367
3420
  console.error(error);
@@ -3887,7 +3940,7 @@ function t() {
3887
3940
  }
3888
3941
  var o = void 0;
3889
3942
  var h = void 0, s$1 = 0, f = 0, v = 0;
3890
- function e$1(i2) {
3943
+ function e(i2) {
3891
3944
  if (void 0 !== o) {
3892
3945
  var t2 = i2.n;
3893
3946
  if (void 0 === t2 || t2.t !== o) {
@@ -3978,7 +4031,7 @@ u.prototype.peek = function() {
3978
4031
  }
3979
4032
  };
3980
4033
  Object.defineProperty(u.prototype, "value", { get: function() {
3981
- var i2 = e$1(this);
4034
+ var i2 = e(this);
3982
4035
  if (void 0 !== i2)
3983
4036
  i2.i = this.i;
3984
4037
  return this.v;
@@ -4109,7 +4162,7 @@ y.prototype.N = function() {
4109
4162
  Object.defineProperty(y.prototype, "value", { get: function() {
4110
4163
  if (1 & this.f)
4111
4164
  throw new Error("Cycle detected");
4112
- var i2 = e$1(this);
4165
+ var i2 = e(this);
4113
4166
  this.h();
4114
4167
  if (void 0 !== i2)
4115
4168
  i2.i = this.i;
@@ -4392,46 +4445,2005 @@ function useSignal(n2) {
4392
4445
  return d$1(n2);
4393
4446
  }, []);
4394
4447
  }
4395
- function e(e2, n2) {
4396
- return n2 = n2 || {}, new Promise(function(t2, r2) {
4397
- var s2 = new XMLHttpRequest(), o2 = [], u2 = {}, a2 = function e3() {
4398
- return { ok: 2 == (s2.status / 100 | 0), statusText: s2.statusText, status: s2.status, url: s2.responseURL, text: function() {
4399
- return Promise.resolve(s2.responseText);
4400
- }, json: function() {
4401
- return Promise.resolve(s2.responseText).then(JSON.parse);
4402
- }, blob: function() {
4403
- return Promise.resolve(new Blob([s2.response]));
4404
- }, clone: e3, headers: { keys: function() {
4405
- return o2;
4406
- }, entries: function() {
4407
- return o2.map(function(e4) {
4408
- return [e4, s2.getResponseHeader(e4)];
4409
- });
4410
- }, get: function(e4) {
4411
- return s2.getResponseHeader(e4);
4412
- }, has: function(e4) {
4413
- return null != s2.getResponseHeader(e4);
4414
- } } };
4415
- };
4416
- for (var i2 in s2.open(n2.method || "get", e2, true), s2.onload = function() {
4417
- s2.getAllResponseHeaders().toLowerCase().replace(/^(.+?):/gm, function(e3, n3) {
4418
- u2[n3] || o2.push(u2[n3] = n3);
4419
- }), t2(a2());
4420
- }, s2.onerror = r2, s2.withCredentials = "include" == n2.credentials, n2.headers)
4421
- s2.setRequestHeader(i2, n2.headers[i2]);
4422
- s2.send(n2.body || null);
4448
+ var browser = {};
4449
+ var canPromise$1 = function() {
4450
+ return typeof Promise === "function" && Promise.prototype && Promise.prototype.then;
4451
+ };
4452
+ var qrcode = {};
4453
+ var utils$1 = {};
4454
+ let toSJISFunction;
4455
+ const CODEWORDS_COUNT = [
4456
+ 0,
4457
+ // Not used
4458
+ 26,
4459
+ 44,
4460
+ 70,
4461
+ 100,
4462
+ 134,
4463
+ 172,
4464
+ 196,
4465
+ 242,
4466
+ 292,
4467
+ 346,
4468
+ 404,
4469
+ 466,
4470
+ 532,
4471
+ 581,
4472
+ 655,
4473
+ 733,
4474
+ 815,
4475
+ 901,
4476
+ 991,
4477
+ 1085,
4478
+ 1156,
4479
+ 1258,
4480
+ 1364,
4481
+ 1474,
4482
+ 1588,
4483
+ 1706,
4484
+ 1828,
4485
+ 1921,
4486
+ 2051,
4487
+ 2185,
4488
+ 2323,
4489
+ 2465,
4490
+ 2611,
4491
+ 2761,
4492
+ 2876,
4493
+ 3034,
4494
+ 3196,
4495
+ 3362,
4496
+ 3532,
4497
+ 3706
4498
+ ];
4499
+ utils$1.getSymbolSize = function getSymbolSize(version2) {
4500
+ if (!version2)
4501
+ throw new Error('"version" cannot be null or undefined');
4502
+ if (version2 < 1 || version2 > 40)
4503
+ throw new Error('"version" should be in range from 1 to 40');
4504
+ return version2 * 4 + 17;
4505
+ };
4506
+ utils$1.getSymbolTotalCodewords = function getSymbolTotalCodewords(version2) {
4507
+ return CODEWORDS_COUNT[version2];
4508
+ };
4509
+ utils$1.getBCHDigit = function(data) {
4510
+ let digit = 0;
4511
+ while (data !== 0) {
4512
+ digit++;
4513
+ data >>>= 1;
4514
+ }
4515
+ return digit;
4516
+ };
4517
+ utils$1.setToSJISFunction = function setToSJISFunction(f2) {
4518
+ if (typeof f2 !== "function") {
4519
+ throw new Error('"toSJISFunc" is not a valid function.');
4520
+ }
4521
+ toSJISFunction = f2;
4522
+ };
4523
+ utils$1.isKanjiModeEnabled = function() {
4524
+ return typeof toSJISFunction !== "undefined";
4525
+ };
4526
+ utils$1.toSJIS = function toSJIS(kanji2) {
4527
+ return toSJISFunction(kanji2);
4528
+ };
4529
+ var errorCorrectionLevel = {};
4530
+ (function(exports) {
4531
+ exports.L = { bit: 1 };
4532
+ exports.M = { bit: 0 };
4533
+ exports.Q = { bit: 3 };
4534
+ exports.H = { bit: 2 };
4535
+ function fromString(string) {
4536
+ if (typeof string !== "string") {
4537
+ throw new Error("Param is not a string");
4538
+ }
4539
+ const lcStr = string.toLowerCase();
4540
+ switch (lcStr) {
4541
+ case "l":
4542
+ case "low":
4543
+ return exports.L;
4544
+ case "m":
4545
+ case "medium":
4546
+ return exports.M;
4547
+ case "q":
4548
+ case "quartile":
4549
+ return exports.Q;
4550
+ case "h":
4551
+ case "high":
4552
+ return exports.H;
4553
+ default:
4554
+ throw new Error("Unknown EC Level: " + string);
4555
+ }
4556
+ }
4557
+ exports.isValid = function isValid2(level) {
4558
+ return level && typeof level.bit !== "undefined" && level.bit >= 0 && level.bit < 4;
4559
+ };
4560
+ exports.from = function from(value, defaultValue) {
4561
+ if (exports.isValid(value)) {
4562
+ return value;
4563
+ }
4564
+ try {
4565
+ return fromString(value);
4566
+ } catch (e2) {
4567
+ return defaultValue;
4568
+ }
4569
+ };
4570
+ })(errorCorrectionLevel);
4571
+ function BitBuffer$1() {
4572
+ this.buffer = [];
4573
+ this.length = 0;
4574
+ }
4575
+ BitBuffer$1.prototype = {
4576
+ get: function(index2) {
4577
+ const bufIndex = Math.floor(index2 / 8);
4578
+ return (this.buffer[bufIndex] >>> 7 - index2 % 8 & 1) === 1;
4579
+ },
4580
+ put: function(num, length) {
4581
+ for (let i2 = 0; i2 < length; i2++) {
4582
+ this.putBit((num >>> length - i2 - 1 & 1) === 1);
4583
+ }
4584
+ },
4585
+ getLengthInBits: function() {
4586
+ return this.length;
4587
+ },
4588
+ putBit: function(bit) {
4589
+ const bufIndex = Math.floor(this.length / 8);
4590
+ if (this.buffer.length <= bufIndex) {
4591
+ this.buffer.push(0);
4592
+ }
4593
+ if (bit) {
4594
+ this.buffer[bufIndex] |= 128 >>> this.length % 8;
4595
+ }
4596
+ this.length++;
4597
+ }
4598
+ };
4599
+ var bitBuffer = BitBuffer$1;
4600
+ function BitMatrix$1(size) {
4601
+ if (!size || size < 1) {
4602
+ throw new Error("BitMatrix size must be defined and greater than 0");
4603
+ }
4604
+ this.size = size;
4605
+ this.data = new Uint8Array(size * size);
4606
+ this.reservedBit = new Uint8Array(size * size);
4607
+ }
4608
+ BitMatrix$1.prototype.set = function(row, col, value, reserved) {
4609
+ const index2 = row * this.size + col;
4610
+ this.data[index2] = value;
4611
+ if (reserved)
4612
+ this.reservedBit[index2] = true;
4613
+ };
4614
+ BitMatrix$1.prototype.get = function(row, col) {
4615
+ return this.data[row * this.size + col];
4616
+ };
4617
+ BitMatrix$1.prototype.xor = function(row, col, value) {
4618
+ this.data[row * this.size + col] ^= value;
4619
+ };
4620
+ BitMatrix$1.prototype.isReserved = function(row, col) {
4621
+ return this.reservedBit[row * this.size + col];
4622
+ };
4623
+ var bitMatrix = BitMatrix$1;
4624
+ var alignmentPattern = {};
4625
+ (function(exports) {
4626
+ const getSymbolSize3 = utils$1.getSymbolSize;
4627
+ exports.getRowColCoords = function getRowColCoords(version2) {
4628
+ if (version2 === 1)
4629
+ return [];
4630
+ const posCount = Math.floor(version2 / 7) + 2;
4631
+ const size = getSymbolSize3(version2);
4632
+ const intervals = size === 145 ? 26 : Math.ceil((size - 13) / (2 * posCount - 2)) * 2;
4633
+ const positions = [size - 7];
4634
+ for (let i2 = 1; i2 < posCount - 1; i2++) {
4635
+ positions[i2] = positions[i2 - 1] - intervals;
4636
+ }
4637
+ positions.push(6);
4638
+ return positions.reverse();
4639
+ };
4640
+ exports.getPositions = function getPositions2(version2) {
4641
+ const coords = [];
4642
+ const pos = exports.getRowColCoords(version2);
4643
+ const posLength = pos.length;
4644
+ for (let i2 = 0; i2 < posLength; i2++) {
4645
+ for (let j2 = 0; j2 < posLength; j2++) {
4646
+ if (i2 === 0 && j2 === 0 || // top-left
4647
+ i2 === 0 && j2 === posLength - 1 || // bottom-left
4648
+ i2 === posLength - 1 && j2 === 0) {
4649
+ continue;
4650
+ }
4651
+ coords.push([pos[i2], pos[j2]]);
4652
+ }
4653
+ }
4654
+ return coords;
4655
+ };
4656
+ })(alignmentPattern);
4657
+ var finderPattern = {};
4658
+ const getSymbolSize2 = utils$1.getSymbolSize;
4659
+ const FINDER_PATTERN_SIZE = 7;
4660
+ finderPattern.getPositions = function getPositions(version2) {
4661
+ const size = getSymbolSize2(version2);
4662
+ return [
4663
+ // top-left
4664
+ [0, 0],
4665
+ // top-right
4666
+ [size - FINDER_PATTERN_SIZE, 0],
4667
+ // bottom-left
4668
+ [0, size - FINDER_PATTERN_SIZE]
4669
+ ];
4670
+ };
4671
+ var maskPattern = {};
4672
+ (function(exports) {
4673
+ exports.Patterns = {
4674
+ PATTERN000: 0,
4675
+ PATTERN001: 1,
4676
+ PATTERN010: 2,
4677
+ PATTERN011: 3,
4678
+ PATTERN100: 4,
4679
+ PATTERN101: 5,
4680
+ PATTERN110: 6,
4681
+ PATTERN111: 7
4682
+ };
4683
+ const PenaltyScores = {
4684
+ N1: 3,
4685
+ N2: 3,
4686
+ N3: 40,
4687
+ N4: 10
4688
+ };
4689
+ exports.isValid = function isValid2(mask) {
4690
+ return mask != null && mask !== "" && !isNaN(mask) && mask >= 0 && mask <= 7;
4691
+ };
4692
+ exports.from = function from(value) {
4693
+ return exports.isValid(value) ? parseInt(value, 10) : void 0;
4694
+ };
4695
+ exports.getPenaltyN1 = function getPenaltyN1(data) {
4696
+ const size = data.size;
4697
+ let points = 0;
4698
+ let sameCountCol = 0;
4699
+ let sameCountRow = 0;
4700
+ let lastCol = null;
4701
+ let lastRow = null;
4702
+ for (let row = 0; row < size; row++) {
4703
+ sameCountCol = sameCountRow = 0;
4704
+ lastCol = lastRow = null;
4705
+ for (let col = 0; col < size; col++) {
4706
+ let module = data.get(row, col);
4707
+ if (module === lastCol) {
4708
+ sameCountCol++;
4709
+ } else {
4710
+ if (sameCountCol >= 5)
4711
+ points += PenaltyScores.N1 + (sameCountCol - 5);
4712
+ lastCol = module;
4713
+ sameCountCol = 1;
4714
+ }
4715
+ module = data.get(col, row);
4716
+ if (module === lastRow) {
4717
+ sameCountRow++;
4718
+ } else {
4719
+ if (sameCountRow >= 5)
4720
+ points += PenaltyScores.N1 + (sameCountRow - 5);
4721
+ lastRow = module;
4722
+ sameCountRow = 1;
4723
+ }
4724
+ }
4725
+ if (sameCountCol >= 5)
4726
+ points += PenaltyScores.N1 + (sameCountCol - 5);
4727
+ if (sameCountRow >= 5)
4728
+ points += PenaltyScores.N1 + (sameCountRow - 5);
4729
+ }
4730
+ return points;
4731
+ };
4732
+ exports.getPenaltyN2 = function getPenaltyN2(data) {
4733
+ const size = data.size;
4734
+ let points = 0;
4735
+ for (let row = 0; row < size - 1; row++) {
4736
+ for (let col = 0; col < size - 1; col++) {
4737
+ const last = data.get(row, col) + data.get(row, col + 1) + data.get(row + 1, col) + data.get(row + 1, col + 1);
4738
+ if (last === 4 || last === 0)
4739
+ points++;
4740
+ }
4741
+ }
4742
+ return points * PenaltyScores.N2;
4743
+ };
4744
+ exports.getPenaltyN3 = function getPenaltyN3(data) {
4745
+ const size = data.size;
4746
+ let points = 0;
4747
+ let bitsCol = 0;
4748
+ let bitsRow = 0;
4749
+ for (let row = 0; row < size; row++) {
4750
+ bitsCol = bitsRow = 0;
4751
+ for (let col = 0; col < size; col++) {
4752
+ bitsCol = bitsCol << 1 & 2047 | data.get(row, col);
4753
+ if (col >= 10 && (bitsCol === 1488 || bitsCol === 93))
4754
+ points++;
4755
+ bitsRow = bitsRow << 1 & 2047 | data.get(col, row);
4756
+ if (col >= 10 && (bitsRow === 1488 || bitsRow === 93))
4757
+ points++;
4758
+ }
4759
+ }
4760
+ return points * PenaltyScores.N3;
4761
+ };
4762
+ exports.getPenaltyN4 = function getPenaltyN4(data) {
4763
+ let darkCount = 0;
4764
+ const modulesCount = data.data.length;
4765
+ for (let i2 = 0; i2 < modulesCount; i2++)
4766
+ darkCount += data.data[i2];
4767
+ const k2 = Math.abs(Math.ceil(darkCount * 100 / modulesCount / 5) - 10);
4768
+ return k2 * PenaltyScores.N4;
4769
+ };
4770
+ function getMaskAt(maskPattern2, i2, j2) {
4771
+ switch (maskPattern2) {
4772
+ case exports.Patterns.PATTERN000:
4773
+ return (i2 + j2) % 2 === 0;
4774
+ case exports.Patterns.PATTERN001:
4775
+ return i2 % 2 === 0;
4776
+ case exports.Patterns.PATTERN010:
4777
+ return j2 % 3 === 0;
4778
+ case exports.Patterns.PATTERN011:
4779
+ return (i2 + j2) % 3 === 0;
4780
+ case exports.Patterns.PATTERN100:
4781
+ return (Math.floor(i2 / 2) + Math.floor(j2 / 3)) % 2 === 0;
4782
+ case exports.Patterns.PATTERN101:
4783
+ return i2 * j2 % 2 + i2 * j2 % 3 === 0;
4784
+ case exports.Patterns.PATTERN110:
4785
+ return (i2 * j2 % 2 + i2 * j2 % 3) % 2 === 0;
4786
+ case exports.Patterns.PATTERN111:
4787
+ return (i2 * j2 % 3 + (i2 + j2) % 2) % 2 === 0;
4788
+ default:
4789
+ throw new Error("bad maskPattern:" + maskPattern2);
4790
+ }
4791
+ }
4792
+ exports.applyMask = function applyMask(pattern, data) {
4793
+ const size = data.size;
4794
+ for (let col = 0; col < size; col++) {
4795
+ for (let row = 0; row < size; row++) {
4796
+ if (data.isReserved(row, col))
4797
+ continue;
4798
+ data.xor(row, col, getMaskAt(pattern, row, col));
4799
+ }
4800
+ }
4801
+ };
4802
+ exports.getBestMask = function getBestMask(data, setupFormatFunc) {
4803
+ const numPatterns = Object.keys(exports.Patterns).length;
4804
+ let bestPattern = 0;
4805
+ let lowerPenalty = Infinity;
4806
+ for (let p2 = 0; p2 < numPatterns; p2++) {
4807
+ setupFormatFunc(p2);
4808
+ exports.applyMask(p2, data);
4809
+ const penalty = exports.getPenaltyN1(data) + exports.getPenaltyN2(data) + exports.getPenaltyN3(data) + exports.getPenaltyN4(data);
4810
+ exports.applyMask(p2, data);
4811
+ if (penalty < lowerPenalty) {
4812
+ lowerPenalty = penalty;
4813
+ bestPattern = p2;
4814
+ }
4815
+ }
4816
+ return bestPattern;
4817
+ };
4818
+ })(maskPattern);
4819
+ var errorCorrectionCode = {};
4820
+ const ECLevel$1 = errorCorrectionLevel;
4821
+ const EC_BLOCKS_TABLE = [
4822
+ // L M Q H
4823
+ 1,
4824
+ 1,
4825
+ 1,
4826
+ 1,
4827
+ 1,
4828
+ 1,
4829
+ 1,
4830
+ 1,
4831
+ 1,
4832
+ 1,
4833
+ 2,
4834
+ 2,
4835
+ 1,
4836
+ 2,
4837
+ 2,
4838
+ 4,
4839
+ 1,
4840
+ 2,
4841
+ 4,
4842
+ 4,
4843
+ 2,
4844
+ 4,
4845
+ 4,
4846
+ 4,
4847
+ 2,
4848
+ 4,
4849
+ 6,
4850
+ 5,
4851
+ 2,
4852
+ 4,
4853
+ 6,
4854
+ 6,
4855
+ 2,
4856
+ 5,
4857
+ 8,
4858
+ 8,
4859
+ 4,
4860
+ 5,
4861
+ 8,
4862
+ 8,
4863
+ 4,
4864
+ 5,
4865
+ 8,
4866
+ 11,
4867
+ 4,
4868
+ 8,
4869
+ 10,
4870
+ 11,
4871
+ 4,
4872
+ 9,
4873
+ 12,
4874
+ 16,
4875
+ 4,
4876
+ 9,
4877
+ 16,
4878
+ 16,
4879
+ 6,
4880
+ 10,
4881
+ 12,
4882
+ 18,
4883
+ 6,
4884
+ 10,
4885
+ 17,
4886
+ 16,
4887
+ 6,
4888
+ 11,
4889
+ 16,
4890
+ 19,
4891
+ 6,
4892
+ 13,
4893
+ 18,
4894
+ 21,
4895
+ 7,
4896
+ 14,
4897
+ 21,
4898
+ 25,
4899
+ 8,
4900
+ 16,
4901
+ 20,
4902
+ 25,
4903
+ 8,
4904
+ 17,
4905
+ 23,
4906
+ 25,
4907
+ 9,
4908
+ 17,
4909
+ 23,
4910
+ 34,
4911
+ 9,
4912
+ 18,
4913
+ 25,
4914
+ 30,
4915
+ 10,
4916
+ 20,
4917
+ 27,
4918
+ 32,
4919
+ 12,
4920
+ 21,
4921
+ 29,
4922
+ 35,
4923
+ 12,
4924
+ 23,
4925
+ 34,
4926
+ 37,
4927
+ 12,
4928
+ 25,
4929
+ 34,
4930
+ 40,
4931
+ 13,
4932
+ 26,
4933
+ 35,
4934
+ 42,
4935
+ 14,
4936
+ 28,
4937
+ 38,
4938
+ 45,
4939
+ 15,
4940
+ 29,
4941
+ 40,
4942
+ 48,
4943
+ 16,
4944
+ 31,
4945
+ 43,
4946
+ 51,
4947
+ 17,
4948
+ 33,
4949
+ 45,
4950
+ 54,
4951
+ 18,
4952
+ 35,
4953
+ 48,
4954
+ 57,
4955
+ 19,
4956
+ 37,
4957
+ 51,
4958
+ 60,
4959
+ 19,
4960
+ 38,
4961
+ 53,
4962
+ 63,
4963
+ 20,
4964
+ 40,
4965
+ 56,
4966
+ 66,
4967
+ 21,
4968
+ 43,
4969
+ 59,
4970
+ 70,
4971
+ 22,
4972
+ 45,
4973
+ 62,
4974
+ 74,
4975
+ 24,
4976
+ 47,
4977
+ 65,
4978
+ 77,
4979
+ 25,
4980
+ 49,
4981
+ 68,
4982
+ 81
4983
+ ];
4984
+ const EC_CODEWORDS_TABLE = [
4985
+ // L M Q H
4986
+ 7,
4987
+ 10,
4988
+ 13,
4989
+ 17,
4990
+ 10,
4991
+ 16,
4992
+ 22,
4993
+ 28,
4994
+ 15,
4995
+ 26,
4996
+ 36,
4997
+ 44,
4998
+ 20,
4999
+ 36,
5000
+ 52,
5001
+ 64,
5002
+ 26,
5003
+ 48,
5004
+ 72,
5005
+ 88,
5006
+ 36,
5007
+ 64,
5008
+ 96,
5009
+ 112,
5010
+ 40,
5011
+ 72,
5012
+ 108,
5013
+ 130,
5014
+ 48,
5015
+ 88,
5016
+ 132,
5017
+ 156,
5018
+ 60,
5019
+ 110,
5020
+ 160,
5021
+ 192,
5022
+ 72,
5023
+ 130,
5024
+ 192,
5025
+ 224,
5026
+ 80,
5027
+ 150,
5028
+ 224,
5029
+ 264,
5030
+ 96,
5031
+ 176,
5032
+ 260,
5033
+ 308,
5034
+ 104,
5035
+ 198,
5036
+ 288,
5037
+ 352,
5038
+ 120,
5039
+ 216,
5040
+ 320,
5041
+ 384,
5042
+ 132,
5043
+ 240,
5044
+ 360,
5045
+ 432,
5046
+ 144,
5047
+ 280,
5048
+ 408,
5049
+ 480,
5050
+ 168,
5051
+ 308,
5052
+ 448,
5053
+ 532,
5054
+ 180,
5055
+ 338,
5056
+ 504,
5057
+ 588,
5058
+ 196,
5059
+ 364,
5060
+ 546,
5061
+ 650,
5062
+ 224,
5063
+ 416,
5064
+ 600,
5065
+ 700,
5066
+ 224,
5067
+ 442,
5068
+ 644,
5069
+ 750,
5070
+ 252,
5071
+ 476,
5072
+ 690,
5073
+ 816,
5074
+ 270,
5075
+ 504,
5076
+ 750,
5077
+ 900,
5078
+ 300,
5079
+ 560,
5080
+ 810,
5081
+ 960,
5082
+ 312,
5083
+ 588,
5084
+ 870,
5085
+ 1050,
5086
+ 336,
5087
+ 644,
5088
+ 952,
5089
+ 1110,
5090
+ 360,
5091
+ 700,
5092
+ 1020,
5093
+ 1200,
5094
+ 390,
5095
+ 728,
5096
+ 1050,
5097
+ 1260,
5098
+ 420,
5099
+ 784,
5100
+ 1140,
5101
+ 1350,
5102
+ 450,
5103
+ 812,
5104
+ 1200,
5105
+ 1440,
5106
+ 480,
5107
+ 868,
5108
+ 1290,
5109
+ 1530,
5110
+ 510,
5111
+ 924,
5112
+ 1350,
5113
+ 1620,
5114
+ 540,
5115
+ 980,
5116
+ 1440,
5117
+ 1710,
5118
+ 570,
5119
+ 1036,
5120
+ 1530,
5121
+ 1800,
5122
+ 570,
5123
+ 1064,
5124
+ 1590,
5125
+ 1890,
5126
+ 600,
5127
+ 1120,
5128
+ 1680,
5129
+ 1980,
5130
+ 630,
5131
+ 1204,
5132
+ 1770,
5133
+ 2100,
5134
+ 660,
5135
+ 1260,
5136
+ 1860,
5137
+ 2220,
5138
+ 720,
5139
+ 1316,
5140
+ 1950,
5141
+ 2310,
5142
+ 750,
5143
+ 1372,
5144
+ 2040,
5145
+ 2430
5146
+ ];
5147
+ errorCorrectionCode.getBlocksCount = function getBlocksCount(version2, errorCorrectionLevel2) {
5148
+ switch (errorCorrectionLevel2) {
5149
+ case ECLevel$1.L:
5150
+ return EC_BLOCKS_TABLE[(version2 - 1) * 4 + 0];
5151
+ case ECLevel$1.M:
5152
+ return EC_BLOCKS_TABLE[(version2 - 1) * 4 + 1];
5153
+ case ECLevel$1.Q:
5154
+ return EC_BLOCKS_TABLE[(version2 - 1) * 4 + 2];
5155
+ case ECLevel$1.H:
5156
+ return EC_BLOCKS_TABLE[(version2 - 1) * 4 + 3];
5157
+ default:
5158
+ return void 0;
5159
+ }
5160
+ };
5161
+ errorCorrectionCode.getTotalCodewordsCount = function getTotalCodewordsCount(version2, errorCorrectionLevel2) {
5162
+ switch (errorCorrectionLevel2) {
5163
+ case ECLevel$1.L:
5164
+ return EC_CODEWORDS_TABLE[(version2 - 1) * 4 + 0];
5165
+ case ECLevel$1.M:
5166
+ return EC_CODEWORDS_TABLE[(version2 - 1) * 4 + 1];
5167
+ case ECLevel$1.Q:
5168
+ return EC_CODEWORDS_TABLE[(version2 - 1) * 4 + 2];
5169
+ case ECLevel$1.H:
5170
+ return EC_CODEWORDS_TABLE[(version2 - 1) * 4 + 3];
5171
+ default:
5172
+ return void 0;
5173
+ }
5174
+ };
5175
+ var polynomial = {};
5176
+ var galoisField = {};
5177
+ const EXP_TABLE = new Uint8Array(512);
5178
+ const LOG_TABLE = new Uint8Array(256);
5179
+ (function initTables() {
5180
+ let x2 = 1;
5181
+ for (let i2 = 0; i2 < 255; i2++) {
5182
+ EXP_TABLE[i2] = x2;
5183
+ LOG_TABLE[x2] = i2;
5184
+ x2 <<= 1;
5185
+ if (x2 & 256) {
5186
+ x2 ^= 285;
5187
+ }
5188
+ }
5189
+ for (let i2 = 255; i2 < 512; i2++) {
5190
+ EXP_TABLE[i2] = EXP_TABLE[i2 - 255];
5191
+ }
5192
+ })();
5193
+ galoisField.log = function log(n2) {
5194
+ if (n2 < 1)
5195
+ throw new Error("log(" + n2 + ")");
5196
+ return LOG_TABLE[n2];
5197
+ };
5198
+ galoisField.exp = function exp(n2) {
5199
+ return EXP_TABLE[n2];
5200
+ };
5201
+ galoisField.mul = function mul(x2, y2) {
5202
+ if (x2 === 0 || y2 === 0)
5203
+ return 0;
5204
+ return EXP_TABLE[LOG_TABLE[x2] + LOG_TABLE[y2]];
5205
+ };
5206
+ (function(exports) {
5207
+ const GF = galoisField;
5208
+ exports.mul = function mul2(p1, p2) {
5209
+ const coeff = new Uint8Array(p1.length + p2.length - 1);
5210
+ for (let i2 = 0; i2 < p1.length; i2++) {
5211
+ for (let j2 = 0; j2 < p2.length; j2++) {
5212
+ coeff[i2 + j2] ^= GF.mul(p1[i2], p2[j2]);
5213
+ }
5214
+ }
5215
+ return coeff;
5216
+ };
5217
+ exports.mod = function mod(divident, divisor) {
5218
+ let result = new Uint8Array(divident);
5219
+ while (result.length - divisor.length >= 0) {
5220
+ const coeff = result[0];
5221
+ for (let i2 = 0; i2 < divisor.length; i2++) {
5222
+ result[i2] ^= GF.mul(divisor[i2], coeff);
5223
+ }
5224
+ let offset = 0;
5225
+ while (offset < result.length && result[offset] === 0)
5226
+ offset++;
5227
+ result = result.slice(offset);
5228
+ }
5229
+ return result;
5230
+ };
5231
+ exports.generateECPolynomial = function generateECPolynomial(degree) {
5232
+ let poly = new Uint8Array([1]);
5233
+ for (let i2 = 0; i2 < degree; i2++) {
5234
+ poly = exports.mul(poly, new Uint8Array([1, GF.exp(i2)]));
5235
+ }
5236
+ return poly;
5237
+ };
5238
+ })(polynomial);
5239
+ const Polynomial = polynomial;
5240
+ function ReedSolomonEncoder$1(degree) {
5241
+ this.genPoly = void 0;
5242
+ this.degree = degree;
5243
+ if (this.degree)
5244
+ this.initialize(this.degree);
5245
+ }
5246
+ ReedSolomonEncoder$1.prototype.initialize = function initialize(degree) {
5247
+ this.degree = degree;
5248
+ this.genPoly = Polynomial.generateECPolynomial(this.degree);
5249
+ };
5250
+ ReedSolomonEncoder$1.prototype.encode = function encode(data) {
5251
+ if (!this.genPoly) {
5252
+ throw new Error("Encoder not initialized");
5253
+ }
5254
+ const paddedData = new Uint8Array(data.length + this.degree);
5255
+ paddedData.set(data);
5256
+ const remainder = Polynomial.mod(paddedData, this.genPoly);
5257
+ const start = this.degree - remainder.length;
5258
+ if (start > 0) {
5259
+ const buff = new Uint8Array(this.degree);
5260
+ buff.set(remainder, start);
5261
+ return buff;
5262
+ }
5263
+ return remainder;
5264
+ };
5265
+ var reedSolomonEncoder = ReedSolomonEncoder$1;
5266
+ var version = {};
5267
+ var mode = {};
5268
+ var versionCheck = {};
5269
+ versionCheck.isValid = function isValid(version2) {
5270
+ return !isNaN(version2) && version2 >= 1 && version2 <= 40;
5271
+ };
5272
+ var regex = {};
5273
+ const numeric = "[0-9]+";
5274
+ const alphanumeric = "[A-Z $%*+\\-./:]+";
5275
+ let kanji = "(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";
5276
+ kanji = kanji.replace(/u/g, "\\u");
5277
+ const byte = "(?:(?![A-Z0-9 $%*+\\-./:]|" + kanji + ")(?:.|[\r\n]))+";
5278
+ regex.KANJI = new RegExp(kanji, "g");
5279
+ regex.BYTE_KANJI = new RegExp("[^A-Z0-9 $%*+\\-./:]+", "g");
5280
+ regex.BYTE = new RegExp(byte, "g");
5281
+ regex.NUMERIC = new RegExp(numeric, "g");
5282
+ regex.ALPHANUMERIC = new RegExp(alphanumeric, "g");
5283
+ const TEST_KANJI = new RegExp("^" + kanji + "$");
5284
+ const TEST_NUMERIC = new RegExp("^" + numeric + "$");
5285
+ const TEST_ALPHANUMERIC = new RegExp("^[A-Z0-9 $%*+\\-./:]+$");
5286
+ regex.testKanji = function testKanji(str) {
5287
+ return TEST_KANJI.test(str);
5288
+ };
5289
+ regex.testNumeric = function testNumeric(str) {
5290
+ return TEST_NUMERIC.test(str);
5291
+ };
5292
+ regex.testAlphanumeric = function testAlphanumeric(str) {
5293
+ return TEST_ALPHANUMERIC.test(str);
5294
+ };
5295
+ (function(exports) {
5296
+ const VersionCheck = versionCheck;
5297
+ const Regex = regex;
5298
+ exports.NUMERIC = {
5299
+ id: "Numeric",
5300
+ bit: 1 << 0,
5301
+ ccBits: [10, 12, 14]
5302
+ };
5303
+ exports.ALPHANUMERIC = {
5304
+ id: "Alphanumeric",
5305
+ bit: 1 << 1,
5306
+ ccBits: [9, 11, 13]
5307
+ };
5308
+ exports.BYTE = {
5309
+ id: "Byte",
5310
+ bit: 1 << 2,
5311
+ ccBits: [8, 16, 16]
5312
+ };
5313
+ exports.KANJI = {
5314
+ id: "Kanji",
5315
+ bit: 1 << 3,
5316
+ ccBits: [8, 10, 12]
5317
+ };
5318
+ exports.MIXED = {
5319
+ bit: -1
5320
+ };
5321
+ exports.getCharCountIndicator = function getCharCountIndicator(mode2, version2) {
5322
+ if (!mode2.ccBits)
5323
+ throw new Error("Invalid mode: " + mode2);
5324
+ if (!VersionCheck.isValid(version2)) {
5325
+ throw new Error("Invalid version: " + version2);
5326
+ }
5327
+ if (version2 >= 1 && version2 < 10)
5328
+ return mode2.ccBits[0];
5329
+ else if (version2 < 27)
5330
+ return mode2.ccBits[1];
5331
+ return mode2.ccBits[2];
5332
+ };
5333
+ exports.getBestModeForData = function getBestModeForData(dataStr) {
5334
+ if (Regex.testNumeric(dataStr))
5335
+ return exports.NUMERIC;
5336
+ else if (Regex.testAlphanumeric(dataStr))
5337
+ return exports.ALPHANUMERIC;
5338
+ else if (Regex.testKanji(dataStr))
5339
+ return exports.KANJI;
5340
+ else
5341
+ return exports.BYTE;
5342
+ };
5343
+ exports.toString = function toString(mode2) {
5344
+ if (mode2 && mode2.id)
5345
+ return mode2.id;
5346
+ throw new Error("Invalid mode");
5347
+ };
5348
+ exports.isValid = function isValid2(mode2) {
5349
+ return mode2 && mode2.bit && mode2.ccBits;
5350
+ };
5351
+ function fromString(string) {
5352
+ if (typeof string !== "string") {
5353
+ throw new Error("Param is not a string");
5354
+ }
5355
+ const lcStr = string.toLowerCase();
5356
+ switch (lcStr) {
5357
+ case "numeric":
5358
+ return exports.NUMERIC;
5359
+ case "alphanumeric":
5360
+ return exports.ALPHANUMERIC;
5361
+ case "kanji":
5362
+ return exports.KANJI;
5363
+ case "byte":
5364
+ return exports.BYTE;
5365
+ default:
5366
+ throw new Error("Unknown mode: " + string);
5367
+ }
5368
+ }
5369
+ exports.from = function from(value, defaultValue) {
5370
+ if (exports.isValid(value)) {
5371
+ return value;
5372
+ }
5373
+ try {
5374
+ return fromString(value);
5375
+ } catch (e2) {
5376
+ return defaultValue;
5377
+ }
5378
+ };
5379
+ })(mode);
5380
+ (function(exports) {
5381
+ const Utils2 = utils$1;
5382
+ const ECCode2 = errorCorrectionCode;
5383
+ const ECLevel2 = errorCorrectionLevel;
5384
+ const Mode2 = mode;
5385
+ const VersionCheck = versionCheck;
5386
+ const G18 = 1 << 12 | 1 << 11 | 1 << 10 | 1 << 9 | 1 << 8 | 1 << 5 | 1 << 2 | 1 << 0;
5387
+ const G18_BCH = Utils2.getBCHDigit(G18);
5388
+ function getBestVersionForDataLength(mode2, length, errorCorrectionLevel2) {
5389
+ for (let currentVersion = 1; currentVersion <= 40; currentVersion++) {
5390
+ if (length <= exports.getCapacity(currentVersion, errorCorrectionLevel2, mode2)) {
5391
+ return currentVersion;
5392
+ }
5393
+ }
5394
+ return void 0;
5395
+ }
5396
+ function getReservedBitsCount(mode2, version2) {
5397
+ return Mode2.getCharCountIndicator(mode2, version2) + 4;
5398
+ }
5399
+ function getTotalBitsFromDataArray(segments2, version2) {
5400
+ let totalBits = 0;
5401
+ segments2.forEach(function(data) {
5402
+ const reservedBits = getReservedBitsCount(data.mode, version2);
5403
+ totalBits += reservedBits + data.getBitsLength();
5404
+ });
5405
+ return totalBits;
5406
+ }
5407
+ function getBestVersionForMixedData(segments2, errorCorrectionLevel2) {
5408
+ for (let currentVersion = 1; currentVersion <= 40; currentVersion++) {
5409
+ const length = getTotalBitsFromDataArray(segments2, currentVersion);
5410
+ if (length <= exports.getCapacity(currentVersion, errorCorrectionLevel2, Mode2.MIXED)) {
5411
+ return currentVersion;
5412
+ }
5413
+ }
5414
+ return void 0;
5415
+ }
5416
+ exports.from = function from(value, defaultValue) {
5417
+ if (VersionCheck.isValid(value)) {
5418
+ return parseInt(value, 10);
5419
+ }
5420
+ return defaultValue;
5421
+ };
5422
+ exports.getCapacity = function getCapacity(version2, errorCorrectionLevel2, mode2) {
5423
+ if (!VersionCheck.isValid(version2)) {
5424
+ throw new Error("Invalid QR Code version");
5425
+ }
5426
+ if (typeof mode2 === "undefined")
5427
+ mode2 = Mode2.BYTE;
5428
+ const totalCodewords = Utils2.getSymbolTotalCodewords(version2);
5429
+ const ecTotalCodewords = ECCode2.getTotalCodewordsCount(version2, errorCorrectionLevel2);
5430
+ const dataTotalCodewordsBits = (totalCodewords - ecTotalCodewords) * 8;
5431
+ if (mode2 === Mode2.MIXED)
5432
+ return dataTotalCodewordsBits;
5433
+ const usableBits = dataTotalCodewordsBits - getReservedBitsCount(mode2, version2);
5434
+ switch (mode2) {
5435
+ case Mode2.NUMERIC:
5436
+ return Math.floor(usableBits / 10 * 3);
5437
+ case Mode2.ALPHANUMERIC:
5438
+ return Math.floor(usableBits / 11 * 2);
5439
+ case Mode2.KANJI:
5440
+ return Math.floor(usableBits / 13);
5441
+ case Mode2.BYTE:
5442
+ default:
5443
+ return Math.floor(usableBits / 8);
5444
+ }
5445
+ };
5446
+ exports.getBestVersionForData = function getBestVersionForData(data, errorCorrectionLevel2) {
5447
+ let seg;
5448
+ const ecl = ECLevel2.from(errorCorrectionLevel2, ECLevel2.M);
5449
+ if (Array.isArray(data)) {
5450
+ if (data.length > 1) {
5451
+ return getBestVersionForMixedData(data, ecl);
5452
+ }
5453
+ if (data.length === 0) {
5454
+ return 1;
5455
+ }
5456
+ seg = data[0];
5457
+ } else {
5458
+ seg = data;
5459
+ }
5460
+ return getBestVersionForDataLength(seg.mode, seg.getLength(), ecl);
5461
+ };
5462
+ exports.getEncodedBits = function getEncodedBits2(version2) {
5463
+ if (!VersionCheck.isValid(version2) || version2 < 7) {
5464
+ throw new Error("Invalid QR Code version");
5465
+ }
5466
+ let d2 = version2 << 12;
5467
+ while (Utils2.getBCHDigit(d2) - G18_BCH >= 0) {
5468
+ d2 ^= G18 << Utils2.getBCHDigit(d2) - G18_BCH;
5469
+ }
5470
+ return version2 << 12 | d2;
5471
+ };
5472
+ })(version);
5473
+ var formatInfo = {};
5474
+ const Utils$3 = utils$1;
5475
+ const G15 = 1 << 10 | 1 << 8 | 1 << 5 | 1 << 4 | 1 << 2 | 1 << 1 | 1 << 0;
5476
+ const G15_MASK = 1 << 14 | 1 << 12 | 1 << 10 | 1 << 4 | 1 << 1;
5477
+ const G15_BCH = Utils$3.getBCHDigit(G15);
5478
+ formatInfo.getEncodedBits = function getEncodedBits(errorCorrectionLevel2, mask) {
5479
+ const data = errorCorrectionLevel2.bit << 3 | mask;
5480
+ let d2 = data << 10;
5481
+ while (Utils$3.getBCHDigit(d2) - G15_BCH >= 0) {
5482
+ d2 ^= G15 << Utils$3.getBCHDigit(d2) - G15_BCH;
5483
+ }
5484
+ return (data << 10 | d2) ^ G15_MASK;
5485
+ };
5486
+ var segments = {};
5487
+ const Mode$4 = mode;
5488
+ function NumericData(data) {
5489
+ this.mode = Mode$4.NUMERIC;
5490
+ this.data = data.toString();
5491
+ }
5492
+ NumericData.getBitsLength = function getBitsLength(length) {
5493
+ return 10 * Math.floor(length / 3) + (length % 3 ? length % 3 * 3 + 1 : 0);
5494
+ };
5495
+ NumericData.prototype.getLength = function getLength() {
5496
+ return this.data.length;
5497
+ };
5498
+ NumericData.prototype.getBitsLength = function getBitsLength2() {
5499
+ return NumericData.getBitsLength(this.data.length);
5500
+ };
5501
+ NumericData.prototype.write = function write(bitBuffer2) {
5502
+ let i2, group, value;
5503
+ for (i2 = 0; i2 + 3 <= this.data.length; i2 += 3) {
5504
+ group = this.data.substr(i2, 3);
5505
+ value = parseInt(group, 10);
5506
+ bitBuffer2.put(value, 10);
5507
+ }
5508
+ const remainingNum = this.data.length - i2;
5509
+ if (remainingNum > 0) {
5510
+ group = this.data.substr(i2);
5511
+ value = parseInt(group, 10);
5512
+ bitBuffer2.put(value, remainingNum * 3 + 1);
5513
+ }
5514
+ };
5515
+ var numericData = NumericData;
5516
+ const Mode$3 = mode;
5517
+ const ALPHA_NUM_CHARS = [
5518
+ "0",
5519
+ "1",
5520
+ "2",
5521
+ "3",
5522
+ "4",
5523
+ "5",
5524
+ "6",
5525
+ "7",
5526
+ "8",
5527
+ "9",
5528
+ "A",
5529
+ "B",
5530
+ "C",
5531
+ "D",
5532
+ "E",
5533
+ "F",
5534
+ "G",
5535
+ "H",
5536
+ "I",
5537
+ "J",
5538
+ "K",
5539
+ "L",
5540
+ "M",
5541
+ "N",
5542
+ "O",
5543
+ "P",
5544
+ "Q",
5545
+ "R",
5546
+ "S",
5547
+ "T",
5548
+ "U",
5549
+ "V",
5550
+ "W",
5551
+ "X",
5552
+ "Y",
5553
+ "Z",
5554
+ " ",
5555
+ "$",
5556
+ "%",
5557
+ "*",
5558
+ "+",
5559
+ "-",
5560
+ ".",
5561
+ "/",
5562
+ ":"
5563
+ ];
5564
+ function AlphanumericData(data) {
5565
+ this.mode = Mode$3.ALPHANUMERIC;
5566
+ this.data = data;
5567
+ }
5568
+ AlphanumericData.getBitsLength = function getBitsLength3(length) {
5569
+ return 11 * Math.floor(length / 2) + 6 * (length % 2);
5570
+ };
5571
+ AlphanumericData.prototype.getLength = function getLength2() {
5572
+ return this.data.length;
5573
+ };
5574
+ AlphanumericData.prototype.getBitsLength = function getBitsLength4() {
5575
+ return AlphanumericData.getBitsLength(this.data.length);
5576
+ };
5577
+ AlphanumericData.prototype.write = function write2(bitBuffer2) {
5578
+ let i2;
5579
+ for (i2 = 0; i2 + 2 <= this.data.length; i2 += 2) {
5580
+ let value = ALPHA_NUM_CHARS.indexOf(this.data[i2]) * 45;
5581
+ value += ALPHA_NUM_CHARS.indexOf(this.data[i2 + 1]);
5582
+ bitBuffer2.put(value, 11);
5583
+ }
5584
+ if (this.data.length % 2) {
5585
+ bitBuffer2.put(ALPHA_NUM_CHARS.indexOf(this.data[i2]), 6);
5586
+ }
5587
+ };
5588
+ var alphanumericData = AlphanumericData;
5589
+ const Mode$2 = mode;
5590
+ function ByteData(data) {
5591
+ this.mode = Mode$2.BYTE;
5592
+ if (typeof data === "string") {
5593
+ this.data = new TextEncoder().encode(data);
5594
+ } else {
5595
+ this.data = new Uint8Array(data);
5596
+ }
5597
+ }
5598
+ ByteData.getBitsLength = function getBitsLength5(length) {
5599
+ return length * 8;
5600
+ };
5601
+ ByteData.prototype.getLength = function getLength3() {
5602
+ return this.data.length;
5603
+ };
5604
+ ByteData.prototype.getBitsLength = function getBitsLength6() {
5605
+ return ByteData.getBitsLength(this.data.length);
5606
+ };
5607
+ ByteData.prototype.write = function(bitBuffer2) {
5608
+ for (let i2 = 0, l2 = this.data.length; i2 < l2; i2++) {
5609
+ bitBuffer2.put(this.data[i2], 8);
5610
+ }
5611
+ };
5612
+ var byteData = ByteData;
5613
+ const Mode$1 = mode;
5614
+ const Utils$2 = utils$1;
5615
+ function KanjiData(data) {
5616
+ this.mode = Mode$1.KANJI;
5617
+ this.data = data;
5618
+ }
5619
+ KanjiData.getBitsLength = function getBitsLength7(length) {
5620
+ return length * 13;
5621
+ };
5622
+ KanjiData.prototype.getLength = function getLength4() {
5623
+ return this.data.length;
5624
+ };
5625
+ KanjiData.prototype.getBitsLength = function getBitsLength8() {
5626
+ return KanjiData.getBitsLength(this.data.length);
5627
+ };
5628
+ KanjiData.prototype.write = function(bitBuffer2) {
5629
+ let i2;
5630
+ for (i2 = 0; i2 < this.data.length; i2++) {
5631
+ let value = Utils$2.toSJIS(this.data[i2]);
5632
+ if (value >= 33088 && value <= 40956) {
5633
+ value -= 33088;
5634
+ } else if (value >= 57408 && value <= 60351) {
5635
+ value -= 49472;
5636
+ } else {
5637
+ throw new Error(
5638
+ "Invalid SJIS character: " + this.data[i2] + "\nMake sure your charset is UTF-8"
5639
+ );
5640
+ }
5641
+ value = (value >>> 8 & 255) * 192 + (value & 255);
5642
+ bitBuffer2.put(value, 13);
5643
+ }
5644
+ };
5645
+ var kanjiData = KanjiData;
5646
+ var dijkstra = { exports: {} };
5647
+ (function(module) {
5648
+ var dijkstra2 = {
5649
+ single_source_shortest_paths: function(graph, s2, d2) {
5650
+ var predecessors = {};
5651
+ var costs = {};
5652
+ costs[s2] = 0;
5653
+ var open = dijkstra2.PriorityQueue.make();
5654
+ open.push(s2, 0);
5655
+ var closest, u2, v2, cost_of_s_to_u, adjacent_nodes, cost_of_e, cost_of_s_to_u_plus_cost_of_e, cost_of_s_to_v, first_visit;
5656
+ while (!open.empty()) {
5657
+ closest = open.pop();
5658
+ u2 = closest.value;
5659
+ cost_of_s_to_u = closest.cost;
5660
+ adjacent_nodes = graph[u2] || {};
5661
+ for (v2 in adjacent_nodes) {
5662
+ if (adjacent_nodes.hasOwnProperty(v2)) {
5663
+ cost_of_e = adjacent_nodes[v2];
5664
+ cost_of_s_to_u_plus_cost_of_e = cost_of_s_to_u + cost_of_e;
5665
+ cost_of_s_to_v = costs[v2];
5666
+ first_visit = typeof costs[v2] === "undefined";
5667
+ if (first_visit || cost_of_s_to_v > cost_of_s_to_u_plus_cost_of_e) {
5668
+ costs[v2] = cost_of_s_to_u_plus_cost_of_e;
5669
+ open.push(v2, cost_of_s_to_u_plus_cost_of_e);
5670
+ predecessors[v2] = u2;
5671
+ }
5672
+ }
5673
+ }
5674
+ }
5675
+ if (typeof d2 !== "undefined" && typeof costs[d2] === "undefined") {
5676
+ var msg = ["Could not find a path from ", s2, " to ", d2, "."].join("");
5677
+ throw new Error(msg);
5678
+ }
5679
+ return predecessors;
5680
+ },
5681
+ extract_shortest_path_from_predecessor_list: function(predecessors, d2) {
5682
+ var nodes = [];
5683
+ var u2 = d2;
5684
+ while (u2) {
5685
+ nodes.push(u2);
5686
+ predecessors[u2];
5687
+ u2 = predecessors[u2];
5688
+ }
5689
+ nodes.reverse();
5690
+ return nodes;
5691
+ },
5692
+ find_path: function(graph, s2, d2) {
5693
+ var predecessors = dijkstra2.single_source_shortest_paths(graph, s2, d2);
5694
+ return dijkstra2.extract_shortest_path_from_predecessor_list(
5695
+ predecessors,
5696
+ d2
5697
+ );
5698
+ },
5699
+ /**
5700
+ * A very naive priority queue implementation.
5701
+ */
5702
+ PriorityQueue: {
5703
+ make: function(opts) {
5704
+ var T2 = dijkstra2.PriorityQueue, t2 = {}, key;
5705
+ opts = opts || {};
5706
+ for (key in T2) {
5707
+ if (T2.hasOwnProperty(key)) {
5708
+ t2[key] = T2[key];
5709
+ }
5710
+ }
5711
+ t2.queue = [];
5712
+ t2.sorter = opts.sorter || T2.default_sorter;
5713
+ return t2;
5714
+ },
5715
+ default_sorter: function(a2, b2) {
5716
+ return a2.cost - b2.cost;
5717
+ },
5718
+ /**
5719
+ * Add a new item to the queue and ensure the highest priority element
5720
+ * is at the front of the queue.
5721
+ */
5722
+ push: function(value, cost) {
5723
+ var item = { value, cost };
5724
+ this.queue.push(item);
5725
+ this.queue.sort(this.sorter);
5726
+ },
5727
+ /**
5728
+ * Return the highest priority element in the queue.
5729
+ */
5730
+ pop: function() {
5731
+ return this.queue.shift();
5732
+ },
5733
+ empty: function() {
5734
+ return this.queue.length === 0;
5735
+ }
5736
+ }
5737
+ };
5738
+ {
5739
+ module.exports = dijkstra2;
5740
+ }
5741
+ })(dijkstra);
5742
+ var dijkstraExports = dijkstra.exports;
5743
+ (function(exports) {
5744
+ const Mode2 = mode;
5745
+ const NumericData2 = numericData;
5746
+ const AlphanumericData2 = alphanumericData;
5747
+ const ByteData2 = byteData;
5748
+ const KanjiData2 = kanjiData;
5749
+ const Regex = regex;
5750
+ const Utils2 = utils$1;
5751
+ const dijkstra2 = dijkstraExports;
5752
+ function getStringByteLength(str) {
5753
+ return unescape(encodeURIComponent(str)).length;
5754
+ }
5755
+ function getSegments(regex2, mode2, str) {
5756
+ const segments2 = [];
5757
+ let result;
5758
+ while ((result = regex2.exec(str)) !== null) {
5759
+ segments2.push({
5760
+ data: result[0],
5761
+ index: result.index,
5762
+ mode: mode2,
5763
+ length: result[0].length
5764
+ });
5765
+ }
5766
+ return segments2;
5767
+ }
5768
+ function getSegmentsFromString(dataStr) {
5769
+ const numSegs = getSegments(Regex.NUMERIC, Mode2.NUMERIC, dataStr);
5770
+ const alphaNumSegs = getSegments(Regex.ALPHANUMERIC, Mode2.ALPHANUMERIC, dataStr);
5771
+ let byteSegs;
5772
+ let kanjiSegs;
5773
+ if (Utils2.isKanjiModeEnabled()) {
5774
+ byteSegs = getSegments(Regex.BYTE, Mode2.BYTE, dataStr);
5775
+ kanjiSegs = getSegments(Regex.KANJI, Mode2.KANJI, dataStr);
5776
+ } else {
5777
+ byteSegs = getSegments(Regex.BYTE_KANJI, Mode2.BYTE, dataStr);
5778
+ kanjiSegs = [];
5779
+ }
5780
+ const segs = numSegs.concat(alphaNumSegs, byteSegs, kanjiSegs);
5781
+ return segs.sort(function(s1, s2) {
5782
+ return s1.index - s2.index;
5783
+ }).map(function(obj) {
5784
+ return {
5785
+ data: obj.data,
5786
+ mode: obj.mode,
5787
+ length: obj.length
5788
+ };
5789
+ });
5790
+ }
5791
+ function getSegmentBitsLength(length, mode2) {
5792
+ switch (mode2) {
5793
+ case Mode2.NUMERIC:
5794
+ return NumericData2.getBitsLength(length);
5795
+ case Mode2.ALPHANUMERIC:
5796
+ return AlphanumericData2.getBitsLength(length);
5797
+ case Mode2.KANJI:
5798
+ return KanjiData2.getBitsLength(length);
5799
+ case Mode2.BYTE:
5800
+ return ByteData2.getBitsLength(length);
5801
+ }
5802
+ }
5803
+ function mergeSegments(segs) {
5804
+ return segs.reduce(function(acc, curr) {
5805
+ const prevSeg = acc.length - 1 >= 0 ? acc[acc.length - 1] : null;
5806
+ if (prevSeg && prevSeg.mode === curr.mode) {
5807
+ acc[acc.length - 1].data += curr.data;
5808
+ return acc;
5809
+ }
5810
+ acc.push(curr);
5811
+ return acc;
5812
+ }, []);
5813
+ }
5814
+ function buildNodes(segs) {
5815
+ const nodes = [];
5816
+ for (let i2 = 0; i2 < segs.length; i2++) {
5817
+ const seg = segs[i2];
5818
+ switch (seg.mode) {
5819
+ case Mode2.NUMERIC:
5820
+ nodes.push([
5821
+ seg,
5822
+ { data: seg.data, mode: Mode2.ALPHANUMERIC, length: seg.length },
5823
+ { data: seg.data, mode: Mode2.BYTE, length: seg.length }
5824
+ ]);
5825
+ break;
5826
+ case Mode2.ALPHANUMERIC:
5827
+ nodes.push([
5828
+ seg,
5829
+ { data: seg.data, mode: Mode2.BYTE, length: seg.length }
5830
+ ]);
5831
+ break;
5832
+ case Mode2.KANJI:
5833
+ nodes.push([
5834
+ seg,
5835
+ { data: seg.data, mode: Mode2.BYTE, length: getStringByteLength(seg.data) }
5836
+ ]);
5837
+ break;
5838
+ case Mode2.BYTE:
5839
+ nodes.push([
5840
+ { data: seg.data, mode: Mode2.BYTE, length: getStringByteLength(seg.data) }
5841
+ ]);
5842
+ }
5843
+ }
5844
+ return nodes;
5845
+ }
5846
+ function buildGraph(nodes, version2) {
5847
+ const table = {};
5848
+ const graph = { start: {} };
5849
+ let prevNodeIds = ["start"];
5850
+ for (let i2 = 0; i2 < nodes.length; i2++) {
5851
+ const nodeGroup = nodes[i2];
5852
+ const currentNodeIds = [];
5853
+ for (let j2 = 0; j2 < nodeGroup.length; j2++) {
5854
+ const node = nodeGroup[j2];
5855
+ const key = "" + i2 + j2;
5856
+ currentNodeIds.push(key);
5857
+ table[key] = { node, lastCount: 0 };
5858
+ graph[key] = {};
5859
+ for (let n2 = 0; n2 < prevNodeIds.length; n2++) {
5860
+ const prevNodeId = prevNodeIds[n2];
5861
+ if (table[prevNodeId] && table[prevNodeId].node.mode === node.mode) {
5862
+ graph[prevNodeId][key] = getSegmentBitsLength(table[prevNodeId].lastCount + node.length, node.mode) - getSegmentBitsLength(table[prevNodeId].lastCount, node.mode);
5863
+ table[prevNodeId].lastCount += node.length;
5864
+ } else {
5865
+ if (table[prevNodeId])
5866
+ table[prevNodeId].lastCount = node.length;
5867
+ graph[prevNodeId][key] = getSegmentBitsLength(node.length, node.mode) + 4 + Mode2.getCharCountIndicator(node.mode, version2);
5868
+ }
5869
+ }
5870
+ }
5871
+ prevNodeIds = currentNodeIds;
5872
+ }
5873
+ for (let n2 = 0; n2 < prevNodeIds.length; n2++) {
5874
+ graph[prevNodeIds[n2]].end = 0;
5875
+ }
5876
+ return { map: graph, table };
5877
+ }
5878
+ function buildSingleSegment(data, modesHint) {
5879
+ let mode2;
5880
+ const bestMode = Mode2.getBestModeForData(data);
5881
+ mode2 = Mode2.from(modesHint, bestMode);
5882
+ if (mode2 !== Mode2.BYTE && mode2.bit < bestMode.bit) {
5883
+ throw new Error('"' + data + '" cannot be encoded with mode ' + Mode2.toString(mode2) + ".\n Suggested mode is: " + Mode2.toString(bestMode));
5884
+ }
5885
+ if (mode2 === Mode2.KANJI && !Utils2.isKanjiModeEnabled()) {
5886
+ mode2 = Mode2.BYTE;
5887
+ }
5888
+ switch (mode2) {
5889
+ case Mode2.NUMERIC:
5890
+ return new NumericData2(data);
5891
+ case Mode2.ALPHANUMERIC:
5892
+ return new AlphanumericData2(data);
5893
+ case Mode2.KANJI:
5894
+ return new KanjiData2(data);
5895
+ case Mode2.BYTE:
5896
+ return new ByteData2(data);
5897
+ }
5898
+ }
5899
+ exports.fromArray = function fromArray(array) {
5900
+ return array.reduce(function(acc, seg) {
5901
+ if (typeof seg === "string") {
5902
+ acc.push(buildSingleSegment(seg, null));
5903
+ } else if (seg.data) {
5904
+ acc.push(buildSingleSegment(seg.data, seg.mode));
5905
+ }
5906
+ return acc;
5907
+ }, []);
5908
+ };
5909
+ exports.fromString = function fromString(data, version2) {
5910
+ const segs = getSegmentsFromString(data, Utils2.isKanjiModeEnabled());
5911
+ const nodes = buildNodes(segs);
5912
+ const graph = buildGraph(nodes, version2);
5913
+ const path = dijkstra2.find_path(graph.map, "start", "end");
5914
+ const optimizedSegs = [];
5915
+ for (let i2 = 1; i2 < path.length - 1; i2++) {
5916
+ optimizedSegs.push(graph.table[path[i2]].node);
5917
+ }
5918
+ return exports.fromArray(mergeSegments(optimizedSegs));
5919
+ };
5920
+ exports.rawSplit = function rawSplit(data) {
5921
+ return exports.fromArray(
5922
+ getSegmentsFromString(data, Utils2.isKanjiModeEnabled())
5923
+ );
5924
+ };
5925
+ })(segments);
5926
+ const Utils$1 = utils$1;
5927
+ const ECLevel = errorCorrectionLevel;
5928
+ const BitBuffer = bitBuffer;
5929
+ const BitMatrix = bitMatrix;
5930
+ const AlignmentPattern = alignmentPattern;
5931
+ const FinderPattern = finderPattern;
5932
+ const MaskPattern = maskPattern;
5933
+ const ECCode = errorCorrectionCode;
5934
+ const ReedSolomonEncoder = reedSolomonEncoder;
5935
+ const Version = version;
5936
+ const FormatInfo = formatInfo;
5937
+ const Mode = mode;
5938
+ const Segments = segments;
5939
+ function setupFinderPattern(matrix, version2) {
5940
+ const size = matrix.size;
5941
+ const pos = FinderPattern.getPositions(version2);
5942
+ for (let i2 = 0; i2 < pos.length; i2++) {
5943
+ const row = pos[i2][0];
5944
+ const col = pos[i2][1];
5945
+ for (let r2 = -1; r2 <= 7; r2++) {
5946
+ if (row + r2 <= -1 || size <= row + r2)
5947
+ continue;
5948
+ for (let c2 = -1; c2 <= 7; c2++) {
5949
+ if (col + c2 <= -1 || size <= col + c2)
5950
+ continue;
5951
+ if (r2 >= 0 && r2 <= 6 && (c2 === 0 || c2 === 6) || c2 >= 0 && c2 <= 6 && (r2 === 0 || r2 === 6) || r2 >= 2 && r2 <= 4 && c2 >= 2 && c2 <= 4) {
5952
+ matrix.set(row + r2, col + c2, true, true);
5953
+ } else {
5954
+ matrix.set(row + r2, col + c2, false, true);
5955
+ }
5956
+ }
5957
+ }
5958
+ }
5959
+ }
5960
+ function setupTimingPattern(matrix) {
5961
+ const size = matrix.size;
5962
+ for (let r2 = 8; r2 < size - 8; r2++) {
5963
+ const value = r2 % 2 === 0;
5964
+ matrix.set(r2, 6, value, true);
5965
+ matrix.set(6, r2, value, true);
5966
+ }
5967
+ }
5968
+ function setupAlignmentPattern(matrix, version2) {
5969
+ const pos = AlignmentPattern.getPositions(version2);
5970
+ for (let i2 = 0; i2 < pos.length; i2++) {
5971
+ const row = pos[i2][0];
5972
+ const col = pos[i2][1];
5973
+ for (let r2 = -2; r2 <= 2; r2++) {
5974
+ for (let c2 = -2; c2 <= 2; c2++) {
5975
+ if (r2 === -2 || r2 === 2 || c2 === -2 || c2 === 2 || r2 === 0 && c2 === 0) {
5976
+ matrix.set(row + r2, col + c2, true, true);
5977
+ } else {
5978
+ matrix.set(row + r2, col + c2, false, true);
5979
+ }
5980
+ }
5981
+ }
5982
+ }
5983
+ }
5984
+ function setupVersionInfo(matrix, version2) {
5985
+ const size = matrix.size;
5986
+ const bits = Version.getEncodedBits(version2);
5987
+ let row, col, mod;
5988
+ for (let i2 = 0; i2 < 18; i2++) {
5989
+ row = Math.floor(i2 / 3);
5990
+ col = i2 % 3 + size - 8 - 3;
5991
+ mod = (bits >> i2 & 1) === 1;
5992
+ matrix.set(row, col, mod, true);
5993
+ matrix.set(col, row, mod, true);
5994
+ }
5995
+ }
5996
+ function setupFormatInfo(matrix, errorCorrectionLevel2, maskPattern2) {
5997
+ const size = matrix.size;
5998
+ const bits = FormatInfo.getEncodedBits(errorCorrectionLevel2, maskPattern2);
5999
+ let i2, mod;
6000
+ for (i2 = 0; i2 < 15; i2++) {
6001
+ mod = (bits >> i2 & 1) === 1;
6002
+ if (i2 < 6) {
6003
+ matrix.set(i2, 8, mod, true);
6004
+ } else if (i2 < 8) {
6005
+ matrix.set(i2 + 1, 8, mod, true);
6006
+ } else {
6007
+ matrix.set(size - 15 + i2, 8, mod, true);
6008
+ }
6009
+ if (i2 < 8) {
6010
+ matrix.set(8, size - i2 - 1, mod, true);
6011
+ } else if (i2 < 9) {
6012
+ matrix.set(8, 15 - i2 - 1 + 1, mod, true);
6013
+ } else {
6014
+ matrix.set(8, 15 - i2 - 1, mod, true);
6015
+ }
6016
+ }
6017
+ matrix.set(size - 8, 8, 1, true);
6018
+ }
6019
+ function setupData(matrix, data) {
6020
+ const size = matrix.size;
6021
+ let inc = -1;
6022
+ let row = size - 1;
6023
+ let bitIndex = 7;
6024
+ let byteIndex = 0;
6025
+ for (let col = size - 1; col > 0; col -= 2) {
6026
+ if (col === 6)
6027
+ col--;
6028
+ while (true) {
6029
+ for (let c2 = 0; c2 < 2; c2++) {
6030
+ if (!matrix.isReserved(row, col - c2)) {
6031
+ let dark = false;
6032
+ if (byteIndex < data.length) {
6033
+ dark = (data[byteIndex] >>> bitIndex & 1) === 1;
6034
+ }
6035
+ matrix.set(row, col - c2, dark);
6036
+ bitIndex--;
6037
+ if (bitIndex === -1) {
6038
+ byteIndex++;
6039
+ bitIndex = 7;
6040
+ }
6041
+ }
6042
+ }
6043
+ row += inc;
6044
+ if (row < 0 || size <= row) {
6045
+ row -= inc;
6046
+ inc = -inc;
6047
+ break;
6048
+ }
6049
+ }
6050
+ }
6051
+ }
6052
+ function createData(version2, errorCorrectionLevel2, segments2) {
6053
+ const buffer = new BitBuffer();
6054
+ segments2.forEach(function(data) {
6055
+ buffer.put(data.mode.bit, 4);
6056
+ buffer.put(data.getLength(), Mode.getCharCountIndicator(data.mode, version2));
6057
+ data.write(buffer);
4423
6058
  });
6059
+ const totalCodewords = Utils$1.getSymbolTotalCodewords(version2);
6060
+ const ecTotalCodewords = ECCode.getTotalCodewordsCount(version2, errorCorrectionLevel2);
6061
+ const dataTotalCodewordsBits = (totalCodewords - ecTotalCodewords) * 8;
6062
+ if (buffer.getLengthInBits() + 4 <= dataTotalCodewordsBits) {
6063
+ buffer.put(0, 4);
6064
+ }
6065
+ while (buffer.getLengthInBits() % 8 !== 0) {
6066
+ buffer.putBit(0);
6067
+ }
6068
+ const remainingByte = (dataTotalCodewordsBits - buffer.getLengthInBits()) / 8;
6069
+ for (let i2 = 0; i2 < remainingByte; i2++) {
6070
+ buffer.put(i2 % 2 ? 17 : 236, 8);
6071
+ }
6072
+ return createCodewords(buffer, version2, errorCorrectionLevel2);
6073
+ }
6074
+ function createCodewords(bitBuffer2, version2, errorCorrectionLevel2) {
6075
+ const totalCodewords = Utils$1.getSymbolTotalCodewords(version2);
6076
+ const ecTotalCodewords = ECCode.getTotalCodewordsCount(version2, errorCorrectionLevel2);
6077
+ const dataTotalCodewords = totalCodewords - ecTotalCodewords;
6078
+ const ecTotalBlocks = ECCode.getBlocksCount(version2, errorCorrectionLevel2);
6079
+ const blocksInGroup2 = totalCodewords % ecTotalBlocks;
6080
+ const blocksInGroup1 = ecTotalBlocks - blocksInGroup2;
6081
+ const totalCodewordsInGroup1 = Math.floor(totalCodewords / ecTotalBlocks);
6082
+ const dataCodewordsInGroup1 = Math.floor(dataTotalCodewords / ecTotalBlocks);
6083
+ const dataCodewordsInGroup2 = dataCodewordsInGroup1 + 1;
6084
+ const ecCount = totalCodewordsInGroup1 - dataCodewordsInGroup1;
6085
+ const rs = new ReedSolomonEncoder(ecCount);
6086
+ let offset = 0;
6087
+ const dcData = new Array(ecTotalBlocks);
6088
+ const ecData = new Array(ecTotalBlocks);
6089
+ let maxDataSize = 0;
6090
+ const buffer = new Uint8Array(bitBuffer2.buffer);
6091
+ for (let b2 = 0; b2 < ecTotalBlocks; b2++) {
6092
+ const dataSize = b2 < blocksInGroup1 ? dataCodewordsInGroup1 : dataCodewordsInGroup2;
6093
+ dcData[b2] = buffer.slice(offset, offset + dataSize);
6094
+ ecData[b2] = rs.encode(dcData[b2]);
6095
+ offset += dataSize;
6096
+ maxDataSize = Math.max(maxDataSize, dataSize);
6097
+ }
6098
+ const data = new Uint8Array(totalCodewords);
6099
+ let index2 = 0;
6100
+ let i2, r2;
6101
+ for (i2 = 0; i2 < maxDataSize; i2++) {
6102
+ for (r2 = 0; r2 < ecTotalBlocks; r2++) {
6103
+ if (i2 < dcData[r2].length) {
6104
+ data[index2++] = dcData[r2][i2];
6105
+ }
6106
+ }
6107
+ }
6108
+ for (i2 = 0; i2 < ecCount; i2++) {
6109
+ for (r2 = 0; r2 < ecTotalBlocks; r2++) {
6110
+ data[index2++] = ecData[r2][i2];
6111
+ }
6112
+ }
6113
+ return data;
6114
+ }
6115
+ function createSymbol(data, version2, errorCorrectionLevel2, maskPattern2) {
6116
+ let segments2;
6117
+ if (Array.isArray(data)) {
6118
+ segments2 = Segments.fromArray(data);
6119
+ } else if (typeof data === "string") {
6120
+ let estimatedVersion = version2;
6121
+ if (!estimatedVersion) {
6122
+ const rawSegments = Segments.rawSplit(data);
6123
+ estimatedVersion = Version.getBestVersionForData(rawSegments, errorCorrectionLevel2);
6124
+ }
6125
+ segments2 = Segments.fromString(data, estimatedVersion || 40);
6126
+ } else {
6127
+ throw new Error("Invalid data");
6128
+ }
6129
+ const bestVersion = Version.getBestVersionForData(segments2, errorCorrectionLevel2);
6130
+ if (!bestVersion) {
6131
+ throw new Error("The amount of data is too big to be stored in a QR Code");
6132
+ }
6133
+ if (!version2) {
6134
+ version2 = bestVersion;
6135
+ } else if (version2 < bestVersion) {
6136
+ throw new Error(
6137
+ "\nThe chosen QR Code version cannot contain this amount of data.\nMinimum version required to store current data is: " + bestVersion + ".\n"
6138
+ );
6139
+ }
6140
+ const dataBits = createData(version2, errorCorrectionLevel2, segments2);
6141
+ const moduleCount = Utils$1.getSymbolSize(version2);
6142
+ const modules = new BitMatrix(moduleCount);
6143
+ setupFinderPattern(modules, version2);
6144
+ setupTimingPattern(modules);
6145
+ setupAlignmentPattern(modules, version2);
6146
+ setupFormatInfo(modules, errorCorrectionLevel2, 0);
6147
+ if (version2 >= 7) {
6148
+ setupVersionInfo(modules, version2);
6149
+ }
6150
+ setupData(modules, dataBits);
6151
+ if (isNaN(maskPattern2)) {
6152
+ maskPattern2 = MaskPattern.getBestMask(
6153
+ modules,
6154
+ setupFormatInfo.bind(null, modules, errorCorrectionLevel2)
6155
+ );
6156
+ }
6157
+ MaskPattern.applyMask(maskPattern2, modules);
6158
+ setupFormatInfo(modules, errorCorrectionLevel2, maskPattern2);
6159
+ return {
6160
+ modules,
6161
+ version: version2,
6162
+ errorCorrectionLevel: errorCorrectionLevel2,
6163
+ maskPattern: maskPattern2,
6164
+ segments: segments2
6165
+ };
6166
+ }
6167
+ qrcode.create = function create(data, options) {
6168
+ if (typeof data === "undefined" || data === "") {
6169
+ throw new Error("No input text");
6170
+ }
6171
+ let errorCorrectionLevel2 = ECLevel.M;
6172
+ let version2;
6173
+ let mask;
6174
+ if (typeof options !== "undefined") {
6175
+ errorCorrectionLevel2 = ECLevel.from(options.errorCorrectionLevel, ECLevel.M);
6176
+ version2 = Version.from(options.version);
6177
+ mask = MaskPattern.from(options.maskPattern);
6178
+ if (options.toSJISFunc) {
6179
+ Utils$1.setToSJISFunction(options.toSJISFunc);
6180
+ }
6181
+ }
6182
+ return createSymbol(data, version2, errorCorrectionLevel2, mask);
6183
+ };
6184
+ var canvas = {};
6185
+ var utils = {};
6186
+ (function(exports) {
6187
+ function hex2rgba(hex) {
6188
+ if (typeof hex === "number") {
6189
+ hex = hex.toString();
6190
+ }
6191
+ if (typeof hex !== "string") {
6192
+ throw new Error("Color should be defined as hex string");
6193
+ }
6194
+ let hexCode = hex.slice().replace("#", "").split("");
6195
+ if (hexCode.length < 3 || hexCode.length === 5 || hexCode.length > 8) {
6196
+ throw new Error("Invalid hex color: " + hex);
6197
+ }
6198
+ if (hexCode.length === 3 || hexCode.length === 4) {
6199
+ hexCode = Array.prototype.concat.apply([], hexCode.map(function(c2) {
6200
+ return [c2, c2];
6201
+ }));
6202
+ }
6203
+ if (hexCode.length === 6)
6204
+ hexCode.push("F", "F");
6205
+ const hexValue = parseInt(hexCode.join(""), 16);
6206
+ return {
6207
+ r: hexValue >> 24 & 255,
6208
+ g: hexValue >> 16 & 255,
6209
+ b: hexValue >> 8 & 255,
6210
+ a: hexValue & 255,
6211
+ hex: "#" + hexCode.slice(0, 6).join("")
6212
+ };
6213
+ }
6214
+ exports.getOptions = function getOptions(options) {
6215
+ if (!options)
6216
+ options = {};
6217
+ if (!options.color)
6218
+ options.color = {};
6219
+ const margin = typeof options.margin === "undefined" || options.margin === null || options.margin < 0 ? 4 : options.margin;
6220
+ const width = options.width && options.width >= 21 ? options.width : void 0;
6221
+ const scale = options.scale || 4;
6222
+ return {
6223
+ width,
6224
+ scale: width ? 4 : scale,
6225
+ margin,
6226
+ color: {
6227
+ dark: hex2rgba(options.color.dark || "#000000ff"),
6228
+ light: hex2rgba(options.color.light || "#ffffffff")
6229
+ },
6230
+ type: options.type,
6231
+ rendererOpts: options.rendererOpts || {}
6232
+ };
6233
+ };
6234
+ exports.getScale = function getScale(qrSize, opts) {
6235
+ return opts.width && opts.width >= qrSize + opts.margin * 2 ? opts.width / (qrSize + opts.margin * 2) : opts.scale;
6236
+ };
6237
+ exports.getImageWidth = function getImageWidth(qrSize, opts) {
6238
+ const scale = exports.getScale(qrSize, opts);
6239
+ return Math.floor((qrSize + opts.margin * 2) * scale);
6240
+ };
6241
+ exports.qrToImageData = function qrToImageData(imgData, qr, opts) {
6242
+ const size = qr.modules.size;
6243
+ const data = qr.modules.data;
6244
+ const scale = exports.getScale(size, opts);
6245
+ const symbolSize = Math.floor((size + opts.margin * 2) * scale);
6246
+ const scaledMargin = opts.margin * scale;
6247
+ const palette = [opts.color.light, opts.color.dark];
6248
+ for (let i2 = 0; i2 < symbolSize; i2++) {
6249
+ for (let j2 = 0; j2 < symbolSize; j2++) {
6250
+ let posDst = (i2 * symbolSize + j2) * 4;
6251
+ let pxColor = opts.color.light;
6252
+ if (i2 >= scaledMargin && j2 >= scaledMargin && i2 < symbolSize - scaledMargin && j2 < symbolSize - scaledMargin) {
6253
+ const iSrc = Math.floor((i2 - scaledMargin) / scale);
6254
+ const jSrc = Math.floor((j2 - scaledMargin) / scale);
6255
+ pxColor = palette[data[iSrc * size + jSrc] ? 1 : 0];
6256
+ }
6257
+ imgData[posDst++] = pxColor.r;
6258
+ imgData[posDst++] = pxColor.g;
6259
+ imgData[posDst++] = pxColor.b;
6260
+ imgData[posDst] = pxColor.a;
6261
+ }
6262
+ }
6263
+ };
6264
+ })(utils);
6265
+ (function(exports) {
6266
+ const Utils2 = utils;
6267
+ function clearCanvas(ctx, canvas2, size) {
6268
+ ctx.clearRect(0, 0, canvas2.width, canvas2.height);
6269
+ if (!canvas2.style)
6270
+ canvas2.style = {};
6271
+ canvas2.height = size;
6272
+ canvas2.width = size;
6273
+ canvas2.style.height = size + "px";
6274
+ canvas2.style.width = size + "px";
6275
+ }
6276
+ function getCanvasElement() {
6277
+ try {
6278
+ return document.createElement("canvas");
6279
+ } catch (e2) {
6280
+ throw new Error("You need to specify a canvas element");
6281
+ }
6282
+ }
6283
+ exports.render = function render2(qrData, canvas2, options) {
6284
+ let opts = options;
6285
+ let canvasEl = canvas2;
6286
+ if (typeof opts === "undefined" && (!canvas2 || !canvas2.getContext)) {
6287
+ opts = canvas2;
6288
+ canvas2 = void 0;
6289
+ }
6290
+ if (!canvas2) {
6291
+ canvasEl = getCanvasElement();
6292
+ }
6293
+ opts = Utils2.getOptions(opts);
6294
+ const size = Utils2.getImageWidth(qrData.modules.size, opts);
6295
+ const ctx = canvasEl.getContext("2d");
6296
+ const image = ctx.createImageData(size, size);
6297
+ Utils2.qrToImageData(image.data, qrData, opts);
6298
+ clearCanvas(ctx, canvasEl, size);
6299
+ ctx.putImageData(image, 0, 0);
6300
+ return canvasEl;
6301
+ };
6302
+ exports.renderToDataURL = function renderToDataURL(qrData, canvas2, options) {
6303
+ let opts = options;
6304
+ if (typeof opts === "undefined" && (!canvas2 || !canvas2.getContext)) {
6305
+ opts = canvas2;
6306
+ canvas2 = void 0;
6307
+ }
6308
+ if (!opts)
6309
+ opts = {};
6310
+ const canvasEl = exports.render(qrData, canvas2, opts);
6311
+ const type = opts.type || "image/png";
6312
+ const rendererOpts = opts.rendererOpts || {};
6313
+ return canvasEl.toDataURL(type, rendererOpts.quality);
6314
+ };
6315
+ })(canvas);
6316
+ var svgTag = {};
6317
+ const Utils = utils;
6318
+ function getColorAttrib(color, attrib) {
6319
+ const alpha = color.a / 255;
6320
+ const str = attrib + '="' + color.hex + '"';
6321
+ return alpha < 1 ? str + " " + attrib + '-opacity="' + alpha.toFixed(2).slice(1) + '"' : str;
6322
+ }
6323
+ function svgCmd(cmd, x2, y2) {
6324
+ let str = cmd + x2;
6325
+ if (typeof y2 !== "undefined")
6326
+ str += " " + y2;
6327
+ return str;
6328
+ }
6329
+ function qrToPath(data, size, margin) {
6330
+ let path = "";
6331
+ let moveBy = 0;
6332
+ let newRow = false;
6333
+ let lineLength = 0;
6334
+ for (let i2 = 0; i2 < data.length; i2++) {
6335
+ const col = Math.floor(i2 % size);
6336
+ const row = Math.floor(i2 / size);
6337
+ if (!col && !newRow)
6338
+ newRow = true;
6339
+ if (data[i2]) {
6340
+ lineLength++;
6341
+ if (!(i2 > 0 && col > 0 && data[i2 - 1])) {
6342
+ path += newRow ? svgCmd("M", col + margin, 0.5 + row + margin) : svgCmd("m", moveBy, 0);
6343
+ moveBy = 0;
6344
+ newRow = false;
6345
+ }
6346
+ if (!(col + 1 < size && data[i2 + 1])) {
6347
+ path += svgCmd("h", lineLength);
6348
+ lineLength = 0;
6349
+ }
6350
+ } else {
6351
+ moveBy++;
6352
+ }
6353
+ }
6354
+ return path;
6355
+ }
6356
+ svgTag.render = function render(qrData, options, cb) {
6357
+ const opts = Utils.getOptions(options);
6358
+ const size = qrData.modules.size;
6359
+ const data = qrData.modules.data;
6360
+ const qrcodesize = size + opts.margin * 2;
6361
+ const bg = !opts.color.light.a ? "" : "<path " + getColorAttrib(opts.color.light, "fill") + ' d="M0 0h' + qrcodesize + "v" + qrcodesize + 'H0z"/>';
6362
+ const path = "<path " + getColorAttrib(opts.color.dark, "stroke") + ' d="' + qrToPath(data, size, opts.margin) + '"/>';
6363
+ const viewBox = 'viewBox="0 0 ' + qrcodesize + " " + qrcodesize + '"';
6364
+ const width = !opts.width ? "" : 'width="' + opts.width + '" height="' + opts.width + '" ';
6365
+ const svgTag2 = '<svg xmlns="http://www.w3.org/2000/svg" ' + width + viewBox + ' shape-rendering="crispEdges">' + bg + path + "</svg>\n";
6366
+ if (typeof cb === "function") {
6367
+ cb(null, svgTag2);
6368
+ }
6369
+ return svgTag2;
6370
+ };
6371
+ const canPromise = canPromise$1;
6372
+ const QRCode = qrcode;
6373
+ const CanvasRenderer = canvas;
6374
+ const SvgRenderer = svgTag;
6375
+ function renderCanvas(renderFunc, canvas2, text, opts, cb) {
6376
+ const args = [].slice.call(arguments, 1);
6377
+ const argsNum = args.length;
6378
+ const isLastArgCb = typeof args[argsNum - 1] === "function";
6379
+ if (!isLastArgCb && !canPromise()) {
6380
+ throw new Error("Callback required as last argument");
6381
+ }
6382
+ if (isLastArgCb) {
6383
+ if (argsNum < 2) {
6384
+ throw new Error("Too few arguments provided");
6385
+ }
6386
+ if (argsNum === 2) {
6387
+ cb = text;
6388
+ text = canvas2;
6389
+ canvas2 = opts = void 0;
6390
+ } else if (argsNum === 3) {
6391
+ if (canvas2.getContext && typeof cb === "undefined") {
6392
+ cb = opts;
6393
+ opts = void 0;
6394
+ } else {
6395
+ cb = opts;
6396
+ opts = text;
6397
+ text = canvas2;
6398
+ canvas2 = void 0;
6399
+ }
6400
+ }
6401
+ } else {
6402
+ if (argsNum < 1) {
6403
+ throw new Error("Too few arguments provided");
6404
+ }
6405
+ if (argsNum === 1) {
6406
+ text = canvas2;
6407
+ canvas2 = opts = void 0;
6408
+ } else if (argsNum === 2 && !canvas2.getContext) {
6409
+ opts = text;
6410
+ text = canvas2;
6411
+ canvas2 = void 0;
6412
+ }
6413
+ return new Promise(function(resolve, reject) {
6414
+ try {
6415
+ const data = QRCode.create(text, opts);
6416
+ resolve(renderFunc(data, canvas2, opts));
6417
+ } catch (e2) {
6418
+ reject(e2);
6419
+ }
6420
+ });
6421
+ }
6422
+ try {
6423
+ const data = QRCode.create(text, opts);
6424
+ cb(null, renderFunc(data, canvas2, opts));
6425
+ } catch (e2) {
6426
+ cb(e2);
6427
+ }
4424
6428
  }
6429
+ browser.create = QRCode.create;
6430
+ browser.toCanvas = renderCanvas.bind(null, CanvasRenderer.render);
6431
+ browser.toDataURL = renderCanvas.bind(null, CanvasRenderer.renderToDataURL);
6432
+ browser.toString = renderCanvas.bind(null, function(data, _2, opts) {
6433
+ return SvgRenderer.render(data, opts);
6434
+ });
4425
6435
  export {
4426
6436
  A$1 as A,
4427
6437
  B$2 as B,
4428
6438
  F$1 as F,
4429
6439
  G$1 as G,
6440
+ P,
4430
6441
  T$1 as T,
4431
6442
  _$3 as _,
4432
6443
  b$1 as b,
6444
+ browser,
4433
6445
  d$1 as d,
4434
- e,
6446
+ e$1 as e,
4435
6447
  h$1 as h,
4436
6448
  index,
4437
6449
  inputToRGB,