@aquera/nile-elements 1.5.4 → 1.5.6

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 (297) hide show
  1. package/README.md +10 -0
  2. package/demo/index.css +9 -0
  3. package/dist/index.cjs.js +1 -1
  4. package/dist/index.esm.js +1 -1
  5. package/dist/index.js +871 -255
  6. package/dist/nile-auto-complete/nile-auto-complete.css.cjs.js +1 -1
  7. package/dist/nile-auto-complete/nile-auto-complete.css.cjs.js.map +1 -1
  8. package/dist/nile-auto-complete/nile-auto-complete.css.esm.js +13 -2
  9. package/dist/nile-button/nile-button.cjs.js +1 -1
  10. package/dist/nile-button/nile-button.cjs.js.map +1 -1
  11. package/dist/nile-button/nile-button.css.cjs.js +1 -1
  12. package/dist/nile-button/nile-button.css.cjs.js.map +1 -1
  13. package/dist/nile-button/nile-button.css.esm.js +89 -33
  14. package/dist/nile-button/nile-button.esm.js +2 -2
  15. package/dist/nile-calendar/nile-calendar.cjs.js +1 -1
  16. package/dist/nile-calendar/nile-calendar.cjs.js.map +1 -1
  17. package/dist/nile-calendar/nile-calendar.css.cjs.js +1 -1
  18. package/dist/nile-calendar/nile-calendar.css.cjs.js.map +1 -1
  19. package/dist/nile-calendar/nile-calendar.css.esm.js +59 -2
  20. package/dist/nile-calendar/nile-calendar.esm.js +16 -10
  21. package/dist/nile-checkbox/nile-checkbox.css.cjs.js +1 -1
  22. package/dist/nile-checkbox/nile-checkbox.css.cjs.js.map +1 -1
  23. package/dist/nile-checkbox/nile-checkbox.css.esm.js +4 -5
  24. package/dist/nile-chip/nile-chip.css.cjs.js +1 -1
  25. package/dist/nile-chip/nile-chip.css.cjs.js.map +1 -1
  26. package/dist/nile-chip/nile-chip.css.esm.js +37 -23
  27. package/dist/nile-code-editor/nile-code-editor.cjs.js +1 -1
  28. package/dist/nile-code-editor/nile-code-editor.cjs.js.map +1 -1
  29. package/dist/nile-code-editor/nile-code-editor.css.cjs.js +1 -1
  30. package/dist/nile-code-editor/nile-code-editor.css.cjs.js.map +1 -1
  31. package/dist/nile-code-editor/nile-code-editor.css.esm.js +7 -6
  32. package/dist/nile-code-editor/nile-code-editor.esm.js +1 -1
  33. package/dist/nile-date-picker/nile-date-picker.cjs.js +1 -1
  34. package/dist/nile-date-picker/nile-date-picker.cjs.js.map +1 -1
  35. package/dist/nile-date-picker/nile-date-picker.esm.js +4 -4
  36. package/dist/nile-detail/index.cjs.js +2 -0
  37. package/dist/nile-detail/index.cjs.js.map +1 -0
  38. package/dist/nile-detail/index.esm.js +1 -0
  39. package/dist/nile-detail/nile-detail.cjs.js +2 -0
  40. package/dist/nile-detail/nile-detail.cjs.js.map +1 -0
  41. package/dist/nile-detail/nile-detail.css.cjs.js +2 -0
  42. package/dist/nile-detail/nile-detail.css.cjs.js.map +1 -0
  43. package/dist/nile-detail/nile-detail.css.esm.js +149 -0
  44. package/dist/nile-detail/nile-detail.esm.js +45 -0
  45. package/dist/nile-detail/nile-detail.utils.cjs.js +2 -0
  46. package/dist/nile-detail/nile-detail.utils.cjs.js.map +1 -0
  47. package/dist/nile-detail/nile-detail.utils.esm.js +1 -0
  48. package/dist/nile-dropdown/nile-dropdown.cjs.js +1 -1
  49. package/dist/nile-dropdown/nile-dropdown.cjs.js.map +1 -1
  50. package/dist/nile-dropdown/nile-dropdown.esm.js +1 -1
  51. package/dist/nile-file-upload/utils/file-validation.util.cjs.js +2 -2
  52. package/dist/nile-file-upload/utils/file-validation.util.cjs.js.map +1 -1
  53. package/dist/nile-file-upload/utils/file-validation.util.esm.js +1 -1
  54. package/dist/nile-filter-chip/nile-filter-chip.cjs.js +1 -1
  55. package/dist/nile-filter-chip/nile-filter-chip.cjs.js.map +1 -1
  56. package/dist/nile-filter-chip/nile-filter-chip.css.cjs.js +1 -1
  57. package/dist/nile-filter-chip/nile-filter-chip.css.cjs.js.map +1 -1
  58. package/dist/nile-filter-chip/nile-filter-chip.css.esm.js +24 -2
  59. package/dist/nile-filter-chip/nile-filter-chip.esm.js +2 -2
  60. package/dist/nile-inline-edit/nile-inline-edit.cjs.js +1 -1
  61. package/dist/nile-inline-edit/nile-inline-edit.cjs.js.map +1 -1
  62. package/dist/nile-inline-edit/nile-inline-edit.css.cjs.js +1 -1
  63. package/dist/nile-inline-edit/nile-inline-edit.css.cjs.js.map +1 -1
  64. package/dist/nile-inline-edit/nile-inline-edit.css.esm.js +15 -6
  65. package/dist/nile-inline-edit/nile-inline-edit.esm.js +2 -2
  66. package/dist/nile-inline-sidebar/nile-inline-sidebar.cjs.js +1 -1
  67. package/dist/nile-inline-sidebar/nile-inline-sidebar.cjs.js.map +1 -1
  68. package/dist/nile-inline-sidebar/nile-inline-sidebar.css.cjs.js +1 -1
  69. package/dist/nile-inline-sidebar/nile-inline-sidebar.css.cjs.js.map +1 -1
  70. package/dist/nile-inline-sidebar/nile-inline-sidebar.css.esm.js +19 -0
  71. package/dist/nile-inline-sidebar/nile-inline-sidebar.esm.js +16 -14
  72. package/dist/nile-inline-sidebar-item/nile-inline-sidebar-item.cjs.js +1 -1
  73. package/dist/nile-inline-sidebar-item/nile-inline-sidebar-item.cjs.js.map +1 -1
  74. package/dist/nile-inline-sidebar-item/nile-inline-sidebar-item.esm.js +8 -3
  75. package/dist/nile-input/nile-input.css.cjs.js +1 -1
  76. package/dist/nile-input/nile-input.css.cjs.js.map +1 -1
  77. package/dist/nile-input/nile-input.css.esm.js +4 -4
  78. package/dist/nile-link/nile-link.cjs.js +1 -1
  79. package/dist/nile-link/nile-link.cjs.js.map +1 -1
  80. package/dist/nile-link/nile-link.css.cjs.js +1 -1
  81. package/dist/nile-link/nile-link.css.cjs.js.map +1 -1
  82. package/dist/nile-link/nile-link.css.esm.js +3 -4
  83. package/dist/nile-link/nile-link.esm.js +2 -2
  84. package/dist/nile-pagination/nile-pagination.cjs.js +1 -1
  85. package/dist/nile-pagination/nile-pagination.cjs.js.map +1 -1
  86. package/dist/nile-pagination/nile-pagination.css.cjs.js +1 -1
  87. package/dist/nile-pagination/nile-pagination.css.cjs.js.map +1 -1
  88. package/dist/nile-pagination/nile-pagination.css.esm.js +109 -5
  89. package/dist/nile-pagination/nile-pagination.esm.js +70 -3
  90. package/dist/nile-qr-code/index.cjs.js +2 -0
  91. package/dist/nile-qr-code/index.cjs.js.map +1 -0
  92. package/dist/nile-qr-code/index.esm.js +1 -0
  93. package/dist/nile-qr-code/nile-qr-code-utils.cjs.js +2 -0
  94. package/dist/nile-qr-code/nile-qr-code-utils.cjs.js.map +1 -0
  95. package/dist/nile-qr-code/nile-qr-code-utils.esm.js +1 -0
  96. package/dist/nile-qr-code/nile-qr-code.cjs.js +2 -0
  97. package/dist/nile-qr-code/nile-qr-code.cjs.js.map +1 -0
  98. package/dist/nile-qr-code/nile-qr-code.css.cjs.js +2 -0
  99. package/dist/nile-qr-code/nile-qr-code.css.cjs.js.map +1 -0
  100. package/dist/nile-qr-code/nile-qr-code.css.esm.js +12 -0
  101. package/dist/nile-qr-code/nile-qr-code.esm.js +9 -0
  102. package/dist/nile-radio/nile-radio.css.cjs.js +1 -1
  103. package/dist/nile-radio/nile-radio.css.cjs.js.map +1 -1
  104. package/dist/nile-radio/nile-radio.css.esm.js +1 -1
  105. package/dist/nile-rich-text-editor/nile-rich-text-editor.cjs.js +1 -1
  106. package/dist/nile-rich-text-editor/nile-rich-text-editor.cjs.js.map +1 -1
  107. package/dist/nile-rich-text-editor/nile-rich-text-editor.css.cjs.js +1 -1
  108. package/dist/nile-rich-text-editor/nile-rich-text-editor.css.cjs.js.map +1 -1
  109. package/dist/nile-rich-text-editor/nile-rich-text-editor.css.esm.js +25 -6
  110. package/dist/nile-rich-text-editor/nile-rich-text-editor.esm.js +1 -1
  111. package/dist/nile-rich-text-editor/nile-rte-select.cjs.js +1 -1
  112. package/dist/nile-rich-text-editor/nile-rte-select.cjs.js.map +1 -1
  113. package/dist/nile-rich-text-editor/nile-rte-select.esm.js +4 -3
  114. package/dist/nile-select/nile-select.css.cjs.js +1 -1
  115. package/dist/nile-select/nile-select.css.cjs.js.map +1 -1
  116. package/dist/nile-select/nile-select.css.esm.js +7 -4
  117. package/dist/nile-slide-toggle/nile-slide-toggle.css.cjs.js +1 -1
  118. package/dist/nile-slide-toggle/nile-slide-toggle.css.cjs.js.map +1 -1
  119. package/dist/nile-slide-toggle/nile-slide-toggle.css.esm.js +5 -1
  120. package/dist/nile-textarea/nile-textarea.css.cjs.js +1 -1
  121. package/dist/nile-textarea/nile-textarea.css.cjs.js.map +1 -1
  122. package/dist/nile-textarea/nile-textarea.css.esm.js +10 -5
  123. package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js +1 -1
  124. package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js.map +1 -1
  125. package/dist/nile-virtual-select/nile-virtual-select.css.esm.js +5 -3
  126. package/dist/src/index.d.ts +2 -0
  127. package/dist/src/index.js +2 -0
  128. package/dist/src/index.js.map +1 -1
  129. package/dist/src/nile-auto-complete/nile-auto-complete.css.js +11 -0
  130. package/dist/src/nile-auto-complete/nile-auto-complete.css.js.map +1 -1
  131. package/dist/src/nile-button/nile-button.css.js +89 -33
  132. package/dist/src/nile-button/nile-button.css.js.map +1 -1
  133. package/dist/src/nile-button/nile-button.js +5 -5
  134. package/dist/src/nile-button/nile-button.js.map +1 -1
  135. package/dist/src/nile-calendar/nile-calendar.css.js +57 -0
  136. package/dist/src/nile-calendar/nile-calendar.css.js.map +1 -1
  137. package/dist/src/nile-calendar/nile-calendar.d.ts +1 -0
  138. package/dist/src/nile-calendar/nile-calendar.js +24 -6
  139. package/dist/src/nile-calendar/nile-calendar.js.map +1 -1
  140. package/dist/src/nile-checkbox/nile-checkbox.css.js +4 -5
  141. package/dist/src/nile-checkbox/nile-checkbox.css.js.map +1 -1
  142. package/dist/src/nile-chip/nile-chip.css.js +35 -21
  143. package/dist/src/nile-chip/nile-chip.css.js.map +1 -1
  144. package/dist/src/nile-code-editor/nile-code-editor.css.js +7 -6
  145. package/dist/src/nile-code-editor/nile-code-editor.css.js.map +1 -1
  146. package/dist/src/nile-code-editor/nile-code-editor.d.ts +1 -1
  147. package/dist/src/nile-code-editor/nile-code-editor.js +7 -1
  148. package/dist/src/nile-code-editor/nile-code-editor.js.map +1 -1
  149. package/dist/src/nile-date-picker/nile-date-picker.d.ts +3 -0
  150. package/dist/src/nile-date-picker/nile-date-picker.js +22 -2
  151. package/dist/src/nile-date-picker/nile-date-picker.js.map +1 -1
  152. package/dist/src/nile-detail/index.d.ts +1 -0
  153. package/dist/src/nile-detail/index.js +2 -0
  154. package/dist/src/nile-detail/index.js.map +1 -0
  155. package/dist/src/nile-detail/nile-detail.css.d.ts +3 -0
  156. package/dist/src/nile-detail/nile-detail.css.js +152 -0
  157. package/dist/src/nile-detail/nile-detail.css.js.map +1 -0
  158. package/dist/src/nile-detail/nile-detail.d.ts +29 -0
  159. package/dist/src/nile-detail/nile-detail.js +143 -0
  160. package/dist/src/nile-detail/nile-detail.js.map +1 -0
  161. package/dist/src/nile-detail/nile-detail.test.d.ts +1 -0
  162. package/dist/src/nile-detail/nile-detail.test.js +168 -0
  163. package/dist/src/nile-detail/nile-detail.test.js.map +1 -0
  164. package/dist/src/nile-detail/nile-detail.utils.d.ts +8 -0
  165. package/dist/src/nile-detail/nile-detail.utils.js +117 -0
  166. package/dist/src/nile-detail/nile-detail.utils.js.map +1 -0
  167. package/dist/src/nile-dropdown/nile-dropdown.d.ts +1 -0
  168. package/dist/src/nile-dropdown/nile-dropdown.js +11 -0
  169. package/dist/src/nile-dropdown/nile-dropdown.js.map +1 -1
  170. package/dist/src/nile-file-upload/utils/file-validation.util.js +11 -6
  171. package/dist/src/nile-file-upload/utils/file-validation.util.js.map +1 -1
  172. package/dist/src/nile-filter-chip/nile-filter-chip.css.js +22 -0
  173. package/dist/src/nile-filter-chip/nile-filter-chip.css.js.map +1 -1
  174. package/dist/src/nile-filter-chip/nile-filter-chip.d.ts +1 -0
  175. package/dist/src/nile-filter-chip/nile-filter-chip.js +6 -0
  176. package/dist/src/nile-filter-chip/nile-filter-chip.js.map +1 -1
  177. package/dist/src/nile-inline-edit/nile-inline-edit.css.js +15 -6
  178. package/dist/src/nile-inline-edit/nile-inline-edit.css.js.map +1 -1
  179. package/dist/src/nile-inline-edit/nile-inline-edit.d.ts +2 -0
  180. package/dist/src/nile-inline-edit/nile-inline-edit.js +7 -0
  181. package/dist/src/nile-inline-edit/nile-inline-edit.js.map +1 -1
  182. package/dist/src/nile-inline-sidebar/nile-inline-sidebar.css.js +19 -0
  183. package/dist/src/nile-inline-sidebar/nile-inline-sidebar.css.js.map +1 -1
  184. package/dist/src/nile-inline-sidebar/nile-inline-sidebar.d.ts +6 -0
  185. package/dist/src/nile-inline-sidebar/nile-inline-sidebar.js +88 -4
  186. package/dist/src/nile-inline-sidebar/nile-inline-sidebar.js.map +1 -1
  187. package/dist/src/nile-inline-sidebar/nile-inline-sidebar.test.d.ts +3 -0
  188. package/dist/src/nile-inline-sidebar/nile-inline-sidebar.test.js +110 -0
  189. package/dist/src/nile-inline-sidebar/nile-inline-sidebar.test.js.map +1 -0
  190. package/dist/src/nile-inline-sidebar-group/nile-inline-sidebar-group.test.d.ts +2 -0
  191. package/dist/src/nile-inline-sidebar-group/nile-inline-sidebar-group.test.js +109 -0
  192. package/dist/src/nile-inline-sidebar-group/nile-inline-sidebar-group.test.js.map +1 -0
  193. package/dist/src/nile-inline-sidebar-item/nile-inline-sidebar-item.d.ts +4 -0
  194. package/dist/src/nile-inline-sidebar-item/nile-inline-sidebar-item.js +30 -2
  195. package/dist/src/nile-inline-sidebar-item/nile-inline-sidebar-item.js.map +1 -1
  196. package/dist/src/nile-inline-sidebar-item/nile-inline-sidebar-item.test.d.ts +2 -0
  197. package/dist/src/nile-inline-sidebar-item/nile-inline-sidebar-item.test.js +109 -0
  198. package/dist/src/nile-inline-sidebar-item/nile-inline-sidebar-item.test.js.map +1 -0
  199. package/dist/src/nile-input/nile-input.css.js +4 -4
  200. package/dist/src/nile-input/nile-input.css.js.map +1 -1
  201. package/dist/src/nile-link/nile-link.css.js +1 -2
  202. package/dist/src/nile-link/nile-link.css.js.map +1 -1
  203. package/dist/src/nile-link/nile-link.js +1 -0
  204. package/dist/src/nile-link/nile-link.js.map +1 -1
  205. package/dist/src/nile-pagination/nile-pagination.css.js +107 -3
  206. package/dist/src/nile-pagination/nile-pagination.css.js.map +1 -1
  207. package/dist/src/nile-pagination/nile-pagination.d.ts +5 -1
  208. package/dist/src/nile-pagination/nile-pagination.js +84 -1
  209. package/dist/src/nile-pagination/nile-pagination.js.map +1 -1
  210. package/dist/src/nile-pagination/nile-pagination.test.js +1187 -103
  211. package/dist/src/nile-pagination/nile-pagination.test.js.map +1 -1
  212. package/dist/src/nile-qr-code/index.d.ts +1 -0
  213. package/dist/src/nile-qr-code/index.js +2 -0
  214. package/dist/src/nile-qr-code/index.js.map +1 -0
  215. package/dist/src/nile-qr-code/nile-qr-code-utils.d.ts +15 -0
  216. package/dist/src/nile-qr-code/nile-qr-code-utils.js +678 -0
  217. package/dist/src/nile-qr-code/nile-qr-code-utils.js.map +1 -0
  218. package/dist/src/nile-qr-code/nile-qr-code.css.d.ts +12 -0
  219. package/dist/src/nile-qr-code/nile-qr-code.css.js +24 -0
  220. package/dist/src/nile-qr-code/nile-qr-code.css.js.map +1 -0
  221. package/dist/src/nile-qr-code/nile-qr-code.d.ts +127 -0
  222. package/dist/src/nile-qr-code/nile-qr-code.js +381 -0
  223. package/dist/src/nile-qr-code/nile-qr-code.js.map +1 -0
  224. package/dist/src/nile-qr-code/nile-qr-code.test.d.ts +1 -0
  225. package/dist/src/nile-qr-code/nile-qr-code.test.js +719 -0
  226. package/dist/src/nile-qr-code/nile-qr-code.test.js.map +1 -0
  227. package/dist/src/nile-radio/nile-radio.css.js +1 -1
  228. package/dist/src/nile-radio/nile-radio.css.js.map +1 -1
  229. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.js +25 -6
  230. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.js.map +1 -1
  231. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.d.ts +1 -0
  232. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.js +17 -6
  233. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.js.map +1 -1
  234. package/dist/src/nile-rich-text-editor/nile-rte-select.d.ts +1 -0
  235. package/dist/src/nile-rich-text-editor/nile-rte-select.js +7 -2
  236. package/dist/src/nile-rich-text-editor/nile-rte-select.js.map +1 -1
  237. package/dist/src/nile-select/nile-select.css.js +7 -4
  238. package/dist/src/nile-select/nile-select.css.js.map +1 -1
  239. package/dist/src/nile-slide-toggle/nile-slide-toggle.css.js +5 -1
  240. package/dist/src/nile-slide-toggle/nile-slide-toggle.css.js.map +1 -1
  241. package/dist/src/nile-textarea/nile-textarea.css.js +10 -5
  242. package/dist/src/nile-textarea/nile-textarea.css.js.map +1 -1
  243. package/dist/src/nile-virtual-select/nile-virtual-select.css.js +5 -3
  244. package/dist/src/nile-virtual-select/nile-virtual-select.css.js.map +1 -1
  245. package/dist/src/version.js +1 -1
  246. package/dist/src/version.js.map +1 -1
  247. package/dist/tsconfig.tsbuildinfo +1 -1
  248. package/package.json +3 -2
  249. package/src/index.ts +3 -2
  250. package/src/nile-auto-complete/nile-auto-complete.css.ts +11 -0
  251. package/src/nile-button/nile-button.css.ts +89 -33
  252. package/src/nile-button/nile-button.ts +6 -5
  253. package/src/nile-calendar/nile-calendar.css.ts +57 -0
  254. package/src/nile-calendar/nile-calendar.ts +17 -6
  255. package/src/nile-checkbox/nile-checkbox.css.ts +4 -5
  256. package/src/nile-chip/nile-chip.css.ts +35 -21
  257. package/src/nile-code-editor/nile-code-editor.css.ts +7 -6
  258. package/src/nile-code-editor/nile-code-editor.ts +7 -1
  259. package/src/nile-date-picker/nile-date-picker.ts +22 -2
  260. package/src/nile-detail/index.ts +1 -0
  261. package/src/nile-detail/nile-detail.css.ts +153 -0
  262. package/src/nile-detail/nile-detail.test.ts +215 -0
  263. package/src/nile-detail/nile-detail.ts +140 -0
  264. package/src/nile-detail/nile-detail.utils.ts +133 -0
  265. package/src/nile-dropdown/nile-dropdown.ts +11 -0
  266. package/src/nile-file-upload/utils/file-validation.util.ts +10 -5
  267. package/src/nile-filter-chip/nile-filter-chip.css.ts +22 -0
  268. package/src/nile-filter-chip/nile-filter-chip.ts +2 -0
  269. package/src/nile-inline-edit/nile-inline-edit.css.ts +15 -6
  270. package/src/nile-inline-edit/nile-inline-edit.ts +4 -0
  271. package/src/nile-inline-sidebar/nile-inline-sidebar.css.ts +19 -0
  272. package/src/nile-inline-sidebar/nile-inline-sidebar.test.ts +108 -0
  273. package/src/nile-inline-sidebar/nile-inline-sidebar.ts +108 -5
  274. package/src/nile-inline-sidebar-group/nile-inline-sidebar-group.test.ts +107 -0
  275. package/src/nile-inline-sidebar-item/nile-inline-sidebar-item.test.ts +107 -0
  276. package/src/nile-inline-sidebar-item/nile-inline-sidebar-item.ts +34 -3
  277. package/src/nile-input/nile-input.css.ts +4 -4
  278. package/src/nile-link/nile-link.css.ts +1 -2
  279. package/src/nile-link/nile-link.ts +1 -0
  280. package/src/nile-pagination/nile-pagination.css.ts +107 -3
  281. package/src/nile-pagination/nile-pagination.test.ts +1388 -101
  282. package/src/nile-pagination/nile-pagination.ts +87 -2
  283. package/src/nile-qr-code/index.ts +1 -0
  284. package/src/nile-qr-code/nile-qr-code-utils.ts +733 -0
  285. package/src/nile-qr-code/nile-qr-code.css.ts +26 -0
  286. package/src/nile-qr-code/nile-qr-code.test.ts +879 -0
  287. package/src/nile-qr-code/nile-qr-code.ts +431 -0
  288. package/src/nile-radio/nile-radio.css.ts +1 -1
  289. package/src/nile-rich-text-editor/nile-rich-text-editor.css.ts +25 -6
  290. package/src/nile-rich-text-editor/nile-rich-text-editor.ts +14 -6
  291. package/src/nile-rich-text-editor/nile-rte-select.ts +5 -2
  292. package/src/nile-select/nile-select.css.ts +7 -4
  293. package/src/nile-slide-toggle/nile-slide-toggle.css.ts +5 -1
  294. package/src/nile-textarea/nile-textarea.css.ts +10 -5
  295. package/src/nile-virtual-select/nile-virtual-select.css.ts +5 -3
  296. package/vscode-html-custom-data.json +163 -10
  297. package/web-test-runner.config.mjs +1 -1
@@ -1,7 +1,16 @@
1
- import{css as a}from"lit";const n=a`
1
+ import{css as n}from"lit";const a=n`
2
2
  :host {
3
3
  }
4
4
 
5
+ :host([disabled]) {
6
+ cursor: not-allowed;
7
+ }
8
+
9
+ :host([disabled]) .pagination-wrapper,
10
+ :host([disabled]) .pagination-wrapper.mini {
11
+ pointer-events: none;
12
+ }
13
+
5
14
  .pagination-wrapper {
6
15
  display: flex;
7
16
  align-items: center;
@@ -10,14 +19,14 @@ import{css as a}from"lit";const n=a`
10
19
  }
11
20
 
12
21
 
13
- .pagination-wrapper.v2 .pager-container {
22
+ .pagination-wrapper.mini .pager-container {
14
23
  flex-direction: row;
15
24
  align-items: center;
16
25
  gap: var(--nile-spacing-spacing-md, var(--ng-spacing-md));
17
26
  margin-right: var(--nile-spacing-spacing-xl, var(--ng-spacing-xl));
18
27
  }
19
28
 
20
- .pagination-wrapper.v2 .range-text {
29
+ .pagination-wrapper.mini .range-text {
21
30
  margin-right: var(--nile-spacing-spacing-md, var(--ng-spacing-md));
22
31
  font-size: var(--nile-font-size-small, var(--ng-font-size-text-sm));
23
32
  color: var(--nile-colors-dark-900, var( --ng-colors-text-primary-900));
@@ -25,6 +34,101 @@ import{css as a}from"lit";const n=a`
25
34
  font-weight: var(--nile-font-weight-regular, var(--ng-font-weight-regular));
26
35
  }
27
36
 
37
+ .pagination-wrapper.mini {
38
+ display: inline-flex;
39
+ align-items: center;
40
+ gap: 2px;
41
+ padding: var(--nile-spacing-spacing-md, var(--ng-spacing-md)) var(--nile-spacing-spacing-lg, var(--ng-spacing-lg));
42
+ }
43
+
44
+ .mini-showing-label,
45
+ .mini-of-label {
46
+ font-size: var(--nile-font-size-small, var(--ng-font-size-text-sm));
47
+ color: var(--nile-colors-dark-900, var(--ng-colors-text-primary-900));
48
+ font-feature-settings: 'liga' off, 'clig' off;
49
+ font-weight: var(--nile-font-weight-regular, var(--ng-font-weight-regular));
50
+ white-space: nowrap;
51
+ line-height: 32px;
52
+ }
53
+
54
+ .mini-page-dropdown nile-menu {
55
+ overflow-y: auto;
56
+ padding: var(--nile-spacing-spacing-lg, var(--ng-spacing-lg)) var(--nile-spacing-spacing-none, var(--ng-spacing-none));
57
+ box-shadow: 0px 4px 8px 0px rgba(119, 125, 130, 0.15);
58
+ }
59
+
60
+ .mini-scroll-wrapper {
61
+ max-height: 164px;
62
+ overflow-y: auto;
63
+ width: 60px;
64
+ }
65
+
66
+ nile-button.mini-page-btn::part(base) {
67
+ min-width: auto;
68
+ height: 10px;
69
+ padding: 0px 4px;
70
+ gap: 2px;
71
+ border: none ;
72
+ box-shadow: none ;
73
+ background: transparent ;
74
+ font-family: var(--nile-font-family-medium, var(--ng-font-family-body));
75
+ font-size: var(--nile-font-size-small, var(--ng-font-size-text-xs));
76
+ font-weight: var(--nile-font-weight-semibold, var(--ng-font-weight-semibold));
77
+ }
78
+
79
+ nile-button.mini-page-btn::part(base):hover,
80
+ nile-button.mini-page-btn::part(base):active {
81
+ min-width: auto;
82
+ height: 10px;
83
+ padding: 0px 4px;
84
+ gap: 2px;
85
+ border: none ;
86
+ background: transparent ;
87
+ }
88
+
89
+ .mini-page-dropdown {
90
+ display: inline-flex;
91
+ align-items: center;
92
+ }
93
+
94
+ nile-button.mini-prev-button::part(base),
95
+ nile-button.mini-next-button::part(base) {
96
+ border: none ;
97
+ }
98
+
99
+ nile-button.mini-prev-button::part(base):hover,
100
+ nile-button.mini-next-button::part(base):hover {
101
+ border: none ;
102
+ }
103
+
104
+ nile-button.mini-prev-button::part(base):active,
105
+ nile-button.mini-next-button::part(base):active {
106
+ border: none ;
107
+ }
108
+
109
+ .mini-page-dropdown .chevron {
110
+ transition: transform 0.2s;
111
+ }
112
+
113
+ .mini-page-dropdown .mini-page-btn.open .chevron {
114
+ transform: rotate(180deg);
115
+ }
116
+
117
+ .mini-nav {
118
+ display: inline-flex;
119
+ align-items: center;
120
+ margin-left: var(--nile-spacing-spacing-none, var(--ng-spacing-none));
121
+ }
122
+
123
+ .mini-pagination {
124
+ display: inline-flex;
125
+ align-items: center;
126
+ gap: 0;
127
+ list-style: none;
128
+ margin: 0;
129
+ padding: 0;
130
+ }
131
+
28
132
 
29
133
  .pagination-wrapper.compact {
30
134
  min-width: 324px;
@@ -95,7 +199,7 @@ import{css as a}from"lit";const n=a`
95
199
  }
96
200
 
97
201
  .pagination-wrapper.compact .pager-container {
98
- gap: var(--nile-spacing-xxs, var(--ng-spacing-xxs)) !important;
202
+ gap: var(--nile-spacing-xxs, var(--ng-spacing-xxs)) ;
99
203
  }
100
204
 
101
205
  .range-text {
@@ -259,4 +363,4 @@ import{css as a}from"lit";const n=a`
259
363
  border: 1px solid var(--nile-colors-neutral-500, var(--ng-colors-border-primary));
260
364
  }
261
365
 
262
- `;export{n as s};
366
+ `;export{a as s};
@@ -1,4 +1,4 @@
1
- import{__decorate as i}from"tslib";import{html as e}from"lit";import{property as t,state as n,query as s,customElement as r}from"lit/decorators.js";import{s as a}from"./nile-pagination.css.esm.js";import{N as o}from"../internal/nile-element.esm.js";import{c as l,g as h,a as d,b as c}from"./nile-pagination-utils.esm.js";let p=class extends o{constructor(){super(...arguments),this.totalItems=0,this.currentPage=1,this.pageSize=50,this.pageSizeOptions=[10,25,50,100],this.variant="fluid",this.disabled=!1,this.showTitle=!0,this._pageSizeOpen=!1,this._pageOpen=!1}static get styles(){return[a]}firstUpdated(){this._pageSizeDropdown&&(this._pageSizeDropdown.addEventListener("nile-show",(()=>{this._pageSizeOpen=!0})),this._pageSizeDropdown.addEventListener("nile-after-hide",(()=>{this._pageSizeOpen=!1})))}get totalPages(){return Math.max(1,l(this.totalItems,this.pageSize))}goToPage(i){if(this.disabled)return;const e=this.currentPage;this.currentPage=i,this.emit("nile-change",{page:i,previousPage:e,pageSize:this.pageSize})}onPageSizeSelect(i){if(this.disabled||this.pageSize===i)return;const e=this.currentPage;this.pageSize=i,this.currentPage=1,this.emit("nile-change",{page:1,previousPage:e,pageSize:i})}renderCompactRangeText(){const i=h(this.totalItems,this.pageSize,this.currentPage).replace(/^Showing\s*/,"");return e`<div class="range-text">${i}</div>`}renderRangeText(){return 0===this.totalItems?e`<div class="range-text">Showing 0 of 0</div>`:e`
1
+ import{__decorate as i}from"tslib";import{html as e}from"lit";import{property as t,state as n,query as s,customElement as r}from"lit/decorators.js";import{s as a}from"./nile-pagination.css.esm.js";import{N as l}from"../internal/nile-element.esm.js";import{c as o,g as h,a as d,b as c}from"./nile-pagination-utils.esm.js";let p=class extends l{constructor(){super(...arguments),this.totalItems=0,this.currentPage=1,this.pageSize=50,this.pageSizeOptions=[10,25,50,100],this.variant="fluid",this.disabled=!1,this.showTitle=!0,this._pageSizeOpen=!1,this._pageOpen=!1,this._miniPageOpen=!1}static get styles(){return[a]}firstUpdated(){this._pageSizeDropdown&&(this._pageSizeDropdown.addEventListener("nile-show",(()=>{this._pageSizeOpen=!0})),this._pageSizeDropdown.addEventListener("nile-after-hide",(()=>{this._pageSizeOpen=!1})))}get totalPages(){return Math.max(1,o(this.totalItems,this.pageSize))}goToPage(i){if(this.disabled)return;const e=this.currentPage;this.currentPage=i,this.emit("nile-change",{page:i,previousPage:e,pageSize:this.pageSize})}onPageSizeSelect(i){if(this.disabled||this.pageSize===i)return;const e=this.currentPage;this.pageSize=i,this.currentPage=1,this.emit("nile-change",{page:1,previousPage:e,pageSize:i})}renderCompactRangeText(){const i=h(this.totalItems,this.pageSize,this.currentPage).replace(/^Showing\s*/,"");return e`<div class="range-text">${i}</div>`}renderRangeText(){return 0===this.totalItems?e`<div class="range-text">Showing 0 of 0</div>`:e`
2
2
  <div part="range-text" class="range-text">
3
3
  ${h(this.totalItems,this.pageSize,this.currentPage)}
4
4
  </div>
@@ -120,6 +120,73 @@ import{__decorate as i}from"tslib";import{html as e}from"lit";import{property as
120
120
  ${i}
121
121
  </nile-button>
122
122
  </li>
123
+ `}renderMiniPrevButton(){return e`
124
+ <li>
125
+ <nile-button
126
+ variant="tertiary"
127
+ ?disabled=${1===this.currentPage||this.disabled}
128
+ @click=${()=>this.goToPage(this.currentPage-1)}
129
+ class="mini-prev-button"
130
+ >
131
+ <nile-icon name="var(--nile-icon-arrow-left, var(--ng-icon-chevron-left))" method="var(--nile-svg-method-fill, var(--ng-svg-method-stroke))" size="12"></nile-icon>
132
+ </nile-button>
133
+ </li>
134
+ `}renderMiniNextButton(){return e`
135
+ <li>
136
+ <nile-button
137
+ variant="tertiary"
138
+ ?disabled=${this.currentPage===this.totalPages||this.disabled}
139
+ @click=${()=>this.goToPage(this.currentPage+1)}
140
+ class="mini-next-button"
141
+ >
142
+ <nile-icon name="var(--nile-icon-arrow-right, var(--ng-icon-chevron-right))" method="var(--nile-svg-method-fill, var(--ng-svg-method-stroke))" size="12"></nile-icon>
143
+ </nile-button>
144
+ </li>
145
+ `}renderMini(){return e`
146
+ <div part="wrapper" class="pagination-wrapper mini">
147
+ <span part="mini-showing-label" class="mini-showing-label">Showing</span>
148
+ <nile-dropdown
149
+ part="mini-page-dropdown"
150
+ class="mini-page-dropdown"
151
+ ?disabled=${this.disabled}
152
+ @nile-show=${()=>this._miniPageOpen=!0}
153
+ @nile-after-hide=${()=>this._miniPageOpen=!1}
154
+ >
155
+ <nile-button
156
+ slot="trigger"
157
+ variant="tertiary"
158
+ class="mini-page-btn ${this._miniPageOpen?"open":""}"
159
+ ?disabled=${this.disabled}
160
+ >
161
+ ${this.currentPage}
162
+ <nile-icon
163
+ name="var(--nile-icon-chevron-down, var(--ng-icon-chevron-down))"
164
+ size="12"
165
+ method="var(--nile-svg-method-fill, var(--ng-svg-method-stroke))"
166
+ class="chevron"
167
+ ></nile-icon>
168
+ </nile-button>
169
+ <nile-menu>
170
+ <div class="mini-scroll-wrapper">
171
+ ${Array.from({length:this.totalPages},((i,e)=>e+1)).map((i=>e`
172
+ <nile-menu-item
173
+ ?disabled=${this.disabled}
174
+ @click=${()=>this.goToPage(i)}
175
+ >
176
+ ${i}
177
+ </nile-menu-item>
178
+ `))}
179
+ </div>
180
+ </nile-menu>
181
+ </nile-dropdown>
182
+ <span part="mini-of-label" class="mini-of-label">of ${this.totalPages}</span>
183
+ <nav aria-label="Pagination" part="mini-nav" class="mini-nav">
184
+ <ul part="mini-page-list" class="pagination mini-pagination">
185
+ ${this.renderMiniPrevButton()}
186
+ ${this.renderMiniNextButton()}
187
+ </ul>
188
+ </nav>
189
+ </div>
123
190
  `}renderPageList(){if("compact"===this.variant)return e`
124
191
  <nav aria-label="Pagination">
125
192
  <ul class="pagination compact-pagination">
@@ -170,7 +237,7 @@ import{__decorate as i}from"tslib";import{html as e}from"lit";import{property as
170
237
  ${this.renderNextButton()}
171
238
  </ul>
172
239
  </nav>
173
- `}render(){return e`
240
+ `}render(){return"mini"===this.variant?this.renderMini():e`
174
241
  <div part="wrapper" class="pagination-wrapper ${this.variant}">
175
242
  <div part="pager-container" class="pager-container">
176
243
  ${"fluid"===this.variant&&this.showTitle?this.renderRangeText():"compact"===this.variant?this.renderCompactRangeText():null}
@@ -178,4 +245,4 @@ import{__decorate as i}from"tslib";import{html as e}from"lit";import{property as
178
245
  </div>
179
246
  ${this.renderPageList()}
180
247
  </div>
181
- `}};i([t({attribute:"totalitems",reflect:!0,converter:{fromAttribute:i=>{const e=Number(i);return Number.isFinite(e)&&e>=0?Math.floor(e):0}}})],p.prototype,"totalItems",void 0),i([t({attribute:"currentpage",reflect:!0,converter:{fromAttribute:i=>{const e=Number(i);return Number.isFinite(e)&&e>=1?Math.floor(e):1}}})],p.prototype,"currentPage",void 0),i([t({attribute:"pagesize",reflect:!0,converter:{fromAttribute:i=>{const e=Number(i);return Number.isFinite(e)&&e>=1?Math.floor(e):50}}})],p.prototype,"pageSize",void 0),i([t({attribute:"pagesizeoptions",reflect:!1,converter:{fromAttribute:i=>{try{const e=JSON.parse(i);if(Array.isArray(e)&&e.every((i=>"number"==typeof i)))return e}catch{}return[10,25,50,100]}}})],p.prototype,"pageSizeOptions",void 0),i([t({type:String})],p.prototype,"variant",void 0),i([t({type:Boolean})],p.prototype,"disabled",void 0),i([t({type:Boolean})],p.prototype,"showTitle",void 0),i([n()],p.prototype,"_pageSizeOpen",void 0),i([n()],p.prototype,"_pageOpen",void 0),i([s(".page-size-dropdown")],p.prototype,"_pageSizeDropdown",void 0),p=i([r("nile-pagination")],p);export{p as N};
248
+ `}};i([t({attribute:"totalitems",reflect:!0,converter:{fromAttribute:i=>{const e=Number(i);return Number.isFinite(e)&&e>=0?Math.floor(e):0}}})],p.prototype,"totalItems",void 0),i([t({attribute:"currentpage",reflect:!0,converter:{fromAttribute:i=>{const e=Number(i);return Number.isFinite(e)&&e>=1?Math.floor(e):1}}})],p.prototype,"currentPage",void 0),i([t({attribute:"pagesize",reflect:!0,converter:{fromAttribute:i=>{const e=Number(i);return Number.isFinite(e)&&e>=1?Math.floor(e):50}}})],p.prototype,"pageSize",void 0),i([t({attribute:"pagesizeoptions",reflect:!1,converter:{fromAttribute:i=>{try{const e=JSON.parse(i);if(Array.isArray(e)&&e.every((i=>"number"==typeof i)))return e}catch{}return[10,25,50,100]}}})],p.prototype,"pageSizeOptions",void 0),i([t({type:String})],p.prototype,"variant",void 0),i([t({type:Boolean,reflect:!0})],p.prototype,"disabled",void 0),i([t({type:Boolean})],p.prototype,"showTitle",void 0),i([n()],p.prototype,"_pageSizeOpen",void 0),i([n()],p.prototype,"_pageOpen",void 0),i([n()],p.prototype,"_miniPageOpen",void 0),i([s(".page-size-dropdown")],p.prototype,"_pageSizeDropdown",void 0),p=i([r("nile-pagination")],p);export{p as N};
@@ -0,0 +1,2 @@
1
+ System.register(["./nile-qr-code.cjs.js","tslib","lit","lit/decorators.js","./nile-qr-code.css.cjs.js","./nile-qr-code-utils.cjs.js","../internal/nile-element.cjs.js"],function(_export,_context){"use strict";return{setters:[function(_nileQrCodeCjsJs){_export("NileQrCode",_nileQrCodeCjsJs.N);},function(_tslib){},function(_lit){},function(_litDecoratorsJs){},function(_nileQrCodeCssCjsJs){},function(_nileQrCodeUtilsCjsJs){},function(_internalNileElementCjsJs){}],execute:function execute(){}};});
2
+ //# sourceMappingURL=index.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export{N as NileQrCode}from"./nile-qr-code.esm.js";import"tslib";import"lit";import"lit/decorators.js";import"./nile-qr-code.css.esm.js";import"./nile-qr-code-utils.esm.js";import"../internal/nile-element.esm.js";
@@ -0,0 +1,2 @@
1
+ System.register([],function(_export,_context){"use strict";var t,o,n,r,e,f,l,c,s,g;function _slicedToArray(r,e){return _arrayWithHoles(r)||_iterableToArrayLimit(r,e)||_unsupportedIterableToArray(r,e)||_nonIterableRest();}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _iterableToArrayLimit(r,l){var t=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=t){var e,n,i,u,a=[],f=!0,o=!1;try{if(i=(t=t.call(r)).next,0===l){if(Object(t)!==t)return;f=!1;}else for(;!(f=(e=i.call(t)).done)&&(a.push(e.value),a.length!==l);f=!0);}catch(r){o=!0,n=r;}finally{try{if(!f&&null!=t["return"]&&(u=t["return"](),Object(u)!==u))return;}finally{if(o)throw n;}}return a;}}function _arrayWithHoles(r){if(Array.isArray(r))return r;}function _toConsumableArray(r){return _arrayWithoutHoles(r)||_iterableToArray(r)||_unsupportedIterableToArray(r)||_nonIterableSpread();}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _iterableToArray(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r);}function _arrayWithoutHoles(r){if(Array.isArray(r))return _arrayLikeToArray(r);}function _createForOfIteratorHelper(r,e){var t="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!t){if(Array.isArray(r)||(t=_unsupportedIterableToArray(r))||e&&r&&"number"==typeof r.length){t&&(r=t);var _n15=0,F=function F(){};return{s:F,n:function n(){return _n15>=r.length?{done:!0}:{done:!1,value:r[_n15++]};},e:function e(r){throw r;},f:F};}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}var o,a=!0,u=!1;return{s:function s(){t=t.call(r);},n:function n(){var r=t.next();return a=r.done,r;},e:function e(r){u=!0,o=r;},f:function f(){try{a||null==t["return"]||t["return"]();}finally{if(u)throw o;}}};}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0;}}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}function u(t,o){return 0===t||0===o?0:c[s[t]+s[o]];}function i(t,o){var n=function(t){var o=new Uint8Array(t+1);o[0]=1;for(var _n=0;_n<t;_n++)for(var _r=t;_r>=1;_r--)o[_r]=o[_r]^u(o[_r-1],c[_n]);return o;}(o),r=new Uint8Array(o);for(var _e=0;_e<t.length;_e++){var _f=t[_e]^r[0];for(var _t=0;_t<o-1;_t++)r[_t]=r[_t+1]^u(n[_t+1],_f);r[o-1]=u(n[o],_f);}return r;}function a(t){return Array.from({length:t},function(){return Array(t).fill(-1);});}function h(t,o,n,r){o>=0&&o<t.length&&n>=0&&n<t.length&&(t[o][n]=r);}function M(t,o,n){for(var _r2=-1;_r2<=7;_r2++)for(var _e2=-1;_e2<=7;_e2++){var _f2=0;_r2>=0&&_r2<=6&&_e2>=0&&_e2<=6&&(0===_r2||6===_r2||0===_e2||6===_e2||_r2>=2&&_r2<=4&&_e2>=2&&_e2<=4)&&(_f2=1),h(t,o+_r2,n+_e2,_f2);}}function y(t,o){if(o<2)return;var n=e[o-1];var _iterator=_createForOfIteratorHelper(n),_step;try{for(_iterator.s();!(_step=_iterator.n()).done;){var _o=_step.value;var _iterator2=_createForOfIteratorHelper(n),_step2;try{for(_iterator2.s();!(_step2=_iterator2.n()).done;){var _r3=_step2.value;if(-1===t[_o][_r3])for(var _n2=-2;_n2<=2;_n2++)for(var _e3=-2;_e3<=2;_e3++){h(t,_o+_n2,_r3+_e3,2===Math.abs(_n2)||2===Math.abs(_e3)||0===_n2&&0===_e3?1:0);}}}catch(err){_iterator2.e(err);}finally{_iterator2.f();}}}catch(err){_iterator.e(err);}finally{_iterator.f();}}function w(t){var o=t.length;for(var _n3=8;_n3<o-8;_n3++)-1===t[6][_n3]&&(t[6][_n3]=(_n3+1)%2),-1===t[_n3][6]&&(t[_n3][6]=(_n3+1)%2);}function A(t){var o=t.length;for(var _o2=0;_o2<=8;_o2++)-1===t[8][_o2]&&(t[8][_o2]=0),-1===t[_o2][8]&&(t[_o2][8]=0);for(var _n4=0;_n4<=7;_n4++)-1===t[8][o-1-_n4]&&(t[8][o-1-_n4]=0);for(var _n5=0;_n5<=7;_n5++)-1===t[o-1-_n5][8]&&(t[o-1-_n5][8]=0);t[o-8][8]=1;}function U(t,o){if(o<7)return;var n=t.length;for(var _o3=0;_o3<6;_o3++)for(var _r4=0;_r4<3;_r4++)-1===t[_o3][n-11+_r4]&&(t[_o3][n-11+_r4]=0),-1===t[n-11+_r4][_o3]&&(t[n-11+_r4][_o3]=0);}function x(t,o,n,r){return-1!==o[n][r];}function E(t,o,n){var r=t.length,e=t.map(function(t){return _toConsumableArray(t);}),f=g[n];for(var _t3=0;_t3<r;_t3++)for(var _n6=0;_n6<r;_n6++)!x(0,o,_t3,_n6)&&f(_t3,_n6)&&(e[_t3][_n6]^=1);return e;}function d(o,n,r){var e=f[t[n]][r],l=o.length;for(var _t4=0;_t4<=5;_t4++)o[8][_t4]=e>>>14-_t4&1;o[8][7]=e>>>8&1,o[8][8]=e>>>7&1,o[7][8]=e>>>6&1;for(var _t5=0;_t5<=5;_t5++)o[5-_t5][8]=e>>>_t5&1;for(var _t6=0;_t6<=7;_t6++)o[8][l-1-_t6]=e>>>_t6&1;for(var _t7=0;_t7<=6;_t7++)o[l-1-_t7][8]=e>>>14-_t7&1;o[l-8][8]=1;}function H(t,o){if(o<7)return;var n=l[o-7],r=t.length;for(var _o5=0;_o5<6;_o5++)for(var _e4=0;_e4<3;_e4++){var _f3=n>>>3*_o5+_e4&1;t[_o5][r-11+_e4]=_f3,t[r-11+_e4][_o5]=_f3;}}function Q(t){var o=t.length;var n=0;for(var _r5=0;_r5<o;_r5++){var _e5=1;for(var _f4=1;_f4<o;_f4++)t[_r5][_f4]===t[_r5][_f4-1]?_e5++:(_e5>=5&&(n+=_e5-2),_e5=1);_e5>=5&&(n+=_e5-2);}for(var _r6=0;_r6<o;_r6++){var _e6=1;for(var _f5=1;_f5<o;_f5++)t[_f5][_r6]===t[_f5-1][_r6]?_e6++:(_e6>=5&&(n+=_e6-2),_e6=1);_e6>=5&&(n+=_e6-2);}for(var _r7=0;_r7<o-1;_r7++)for(var _e7=0;_e7<o-1;_e7++){var _o6=t[_r7][_e7];_o6===t[_r7][_e7+1]&&_o6===t[_r7+1][_e7]&&_o6===t[_r7+1][_e7+1]&&(n+=3);}var r=[1,0,1,1,1,0,1,0,0,0,0],e=[0,0,0,0,1,0,1,1,1,0,1];for(var _f6=0;_f6<o;_f6++)for(var _l=0;_l<=o-11;_l++){var _o7=!0,_c=!0;for(var _n7=0;_n7<11;_n7++)t[_f6][_l+_n7]!==r[_n7]&&(_o7=!1),t[_f6][_l+_n7]!==e[_n7]&&(_c=!1);(_o7||_c)&&(n+=40);}for(var _f7=0;_f7<o;_f7++)for(var _l2=0;_l2<=o-11;_l2++){var _o8=!0,_c2=!0;for(var _n8=0;_n8<11;_n8++)t[_l2+_n8][_f7]!==r[_n8]&&(_o8=!1),t[_l2+_n8][_f7]!==e[_n8]&&(_c2=!1);(_o8||_c2)&&(n+=40);}var f=0;for(var _n9=0;_n9<o;_n9++)for(var _r8=0;_r8<o;_r8++)1===t[_n9][_r8]&&f++;var l=f/(o*o)*100,c=5*Math.floor(l/5),s=c+5;return n+=10*Math.min(Math.abs(c-50)/5,Math.abs(s-50)/5),n;}function T(e){var f=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"H";if(!e)return Array.from({length:21},function(){return Array(21).fill(0);});var l=function(n,r){var e=new TextEncoder().encode(n).length,f=t[r];for(var _t8=1;_t8<=40;_t8++)if(4+(_t8<=9?8:16)+8*e<=8*o[_t8-1][f])return _t8;throw new Error("Data too long for any QR version");}(e,f),c=function(t){return 4*t+17;}(l),s=a(c);M(s,0,0),M(s,0,c-7),M(s,c-7,0),y(s,l),w(s),A(s),U(s,l);var u=a(c);M(u,0,0),M(u,0,c-7),M(u,c-7,0),y(u,l),w(u),A(u),U(u,l);var h=function(n,r,e){var f=o[r-1][t[e]],l=new TextEncoder().encode(n),c=[],s=function s(t,o){for(var _n10=o-1;_n10>=0;_n10--)c.push(t>>>_n10&1);};s(4,4);var u=r<=9?8:16;s(l.length,u);var _iterator3=_createForOfIteratorHelper(l),_step3;try{for(_iterator3.s();!(_step3=_iterator3.n()).done;){var _t10=_step3.value;s(_t10,8);}}catch(err){_iterator3.e(err);}finally{_iterator3.f();}var i=8*f;for(s(0,Math.min(4,i-c.length));c.length%8!=0;)c.push(0);var a=[236,17];var h=0;for(;c.length<i;)s(a[h],8),h^=1;var M=new Uint8Array(f);for(var _t9=0;_t9<f;_t9++){var _o9=0;for(var _n11=0;_n11<8;_n11++)_o9=_o9<<1|c[8*_t9+_n11];M[_t9]=_o9;}return M;}(e,l,f),g=function(e,f,l){var c=t[l],_r$c=_slicedToArray(r[f-1][c],4),s=_r$c[0],u=_r$c[1],a=_r$c[2],h=_r$c[3],M=n[f-1],y=s+a,w=Math.floor((M-o[f-1][c])/y),A=[],U=[];var g=0;for(var _t11=0;_t11<s;_t11++){var _t12=e.slice(g,g+u);A.push(_t12),U.push(i(_t12,w)),g+=u;}for(var _t13=0;_t13<a;_t13++){var _t14=e.slice(g,g+h);A.push(_t14),U.push(i(_t14,w)),g+=h;}var x=[],E=Math.max(u,h);for(var _t15=0;_t15<E;_t15++)for(var _o10=0;_o10<y;_o10++)_t15<A[_o10].length&&x.push(A[_o10][_t15]);for(var _t16=0;_t16<w;_t16++)for(var _o11=0;_o11<y;_o11++)x.push(U[_o11][_t16]);return new Uint8Array(x);}(h,l,f);!function(t,o){var n=t.length;var r=0;var e=8*o.length;var f=!0;for(var _l3=n-1;_l3>=1;_l3-=2){6===_l3&&(_l3=5);for(var _c3=0;_c3<n;_c3++){var _s=f?n-1-_c3:_c3;for(var _n12=0;_n12<=1;_n12++){var _f8=_l3-_n12;if(-1===t[_s][_f8])if(r<e){var _n13=r>>>3,_e8=7-(7&r);t[_s][_f8]=o[_n13]>>>_e8&1,r++;}else t[_s][_f8]=0;}}f=!f;}}(u,g);var x=0,T=1/0,p=u;for(var _t17=0;_t17<8;_t17++){var _o12=E(u,s,_t17);d(_o12,f,_t17),H(_o12,l);var _n14=Q(_o12);_n14<T&&(T=_n14,x=_t17,p=_o12);}return d(p,f,x),H(p,l),p;}_export("g",T);return{setters:[],execute:function execute(){t={L:0,M:1,Q:2,H:3},o=[[19,16,13,9],[34,28,22,16],[55,44,34,26],[80,64,48,36],[108,86,62,46],[136,108,76,60],[156,124,88,66],[194,154,110,86],[232,182,132,100],[274,216,154,122],[324,254,180,140],[370,290,206,158],[428,334,244,180],[461,365,261,197],[523,415,295,223],[589,453,325,253],[647,507,367,283],[721,563,397,313],[795,627,445,341],[861,669,485,385],[932,714,512,406],[1006,782,568,442],[1094,860,614,464],[1174,914,664,514],[1276,1e3,718,538],[1370,1062,754,596],[1468,1128,808,628],[1531,1193,871,661],[1631,1267,911,701],[1735,1373,985,745],[1843,1455,1033,793],[1955,1541,1115,845],[2071,1631,1171,901],[2191,1725,1231,961],[2306,1812,1286,986],[2434,1914,1354,1054],[2566,1992,1426,1096],[2702,2102,1502,1142],[2812,2216,1582,1222],[2956,2334,1666,1276]],n=[26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706],r=[[[1,19,0,0],[1,16,0,0],[1,13,0,0],[1,9,0,0]],[[1,34,0,0],[1,28,0,0],[1,22,0,0],[1,16,0,0]],[[1,55,0,0],[1,44,0,0],[2,17,0,0],[2,13,0,0]],[[1,80,0,0],[2,32,0,0],[2,24,0,0],[4,9,0,0]],[[1,108,0,0],[2,43,0,0],[2,15,2,16],[2,11,2,12]],[[2,68,0,0],[4,27,0,0],[4,19,0,0],[4,15,0,0]],[[2,78,0,0],[4,31,0,0],[2,14,4,15],[4,13,1,14]],[[2,97,0,0],[2,38,2,39],[4,18,2,19],[4,14,2,15]],[[2,116,0,0],[3,36,2,37],[4,16,4,17],[4,12,4,13]],[[2,68,2,69],[4,43,1,44],[6,19,2,20],[6,15,2,16]],[[4,81,0,0],[1,50,4,51],[4,22,4,23],[3,12,8,13]],[[2,92,2,93],[6,36,2,37],[4,20,6,21],[7,14,4,15]],[[4,107,0,0],[8,37,1,38],[8,20,4,21],[12,11,4,12]],[[3,115,1,116],[4,40,5,41],[11,16,5,17],[11,12,5,13]],[[5,87,1,88],[5,41,5,42],[5,24,7,25],[11,12,7,13]],[[5,98,1,99],[7,45,3,46],[15,19,2,20],[3,15,13,16]],[[1,107,5,108],[10,46,1,47],[1,22,15,23],[2,14,17,15]],[[5,120,1,121],[9,43,4,44],[17,22,1,23],[2,14,19,15]],[[3,113,4,114],[3,44,11,45],[17,21,4,22],[9,13,16,14]],[[3,107,5,108],[3,41,13,42],[15,24,5,25],[15,15,10,16]],[[4,116,4,117],[17,42,0,0],[17,22,6,23],[19,16,6,17]],[[2,111,7,112],[17,46,0,0],[7,24,16,25],[34,13,0,0]],[[4,121,5,122],[4,47,14,48],[11,24,14,25],[16,15,14,16]],[[6,117,4,118],[6,45,14,46],[11,24,16,25],[30,16,2,17]],[[8,106,4,107],[8,47,13,48],[7,24,22,25],[22,15,13,16]],[[10,114,2,115],[19,46,4,47],[28,22,6,23],[33,16,4,17]],[[8,122,4,123],[22,45,3,46],[8,23,26,24],[12,15,28,16]],[[3,117,10,118],[3,45,23,46],[4,24,31,25],[11,15,31,16]],[[7,116,7,117],[21,45,7,46],[1,23,37,24],[19,15,26,16]],[[5,115,10,116],[19,47,10,48],[15,24,25,25],[23,15,25,16]],[[13,115,3,116],[2,46,29,47],[42,24,1,25],[23,15,28,16]],[[17,115,0,0],[10,46,23,47],[10,24,35,25],[19,15,35,16]],[[17,115,1,116],[14,46,21,47],[29,24,19,25],[11,15,46,16]],[[13,115,6,116],[14,46,23,47],[44,24,7,25],[59,16,1,17]],[[12,121,7,122],[12,47,26,48],[39,24,14,25],[22,15,41,16]],[[6,121,14,122],[6,47,34,48],[46,24,10,25],[2,15,64,16]],[[17,122,4,123],[29,46,14,47],[49,24,10,25],[24,15,46,16]],[[4,122,18,123],[13,46,32,47],[48,24,14,25],[42,15,32,16]],[[20,117,4,118],[40,47,7,48],[43,24,22,25],[10,15,67,16]],[[19,118,6,119],[18,47,31,48],[34,24,34,25],[20,15,61,16]]],e=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],f=[[30660,29427,32170,30877,26159,25368,27713,26998],[21522,20773,24188,23371,17913,16590,20375,19104],[13663,12392,16177,14854,9396,8579,11994,11245],[5769,5054,7399,6608,1890,597,3340,2107]],l=[31892,34236,39577,42195,48118,51042,55367,58893,63784,68472,70749,76311,79154,84390,87683,92361,96236,102084,102881,110507,110734,117786,119615,126325,127568,133589,136944,141498,145311,150283,152622,158308,161089,167017],c=new Uint8Array(512),s=new Uint8Array(256);!function(){var t=1;for(var _o4=0;_o4<255;_o4++)c[_o4]=t,s[t]=_o4,t<<=1,t>=256&&(t^=285);for(var _t2=255;_t2<512;_t2++)c[_t2]=c[_t2-255];}();g=[function(t,o){return(t+o)%2==0;},function(t,o){return t%2==0;},function(t,o){return o%3==0;},function(t,o){return(t+o)%3==0;},function(t,o){return(Math.floor(t/2)+Math.floor(o/3))%2==0;},function(t,o){return t*o%2+t*o%3==0;},function(t,o){return(t*o%2+t*o%3)%2==0;},function(t,o){return((t+o)%2+t*o%3)%2==0;}];}};});
2
+ //# sourceMappingURL=nile-qr-code-utils.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nile-qr-code-utils.cjs.js","sources":["../../../src/nile-qr-code/nile-qr-code-utils.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n \n\n// ---------------------------------------------------------------------------\n// Types\n// ---------------------------------------------------------------------------\n\nexport type ErrorCorrectionLevel = 'L' | 'M' | 'Q' | 'H';\n\n// ---------------------------------------------------------------------------\n// Constants\n// ---------------------------------------------------------------------------\n\n/** Error-correction level ordinals used as array indices. */\nconst EC_ORDINALS: Record<ErrorCorrectionLevel, number> = { L: 0, M: 1, Q: 2, H: 3 };\n\n/**\n * Maximum number of *data* codewords for each (version, ecl) combination.\n * Index: [version-1][ecl ordinal] (versions 1–40).\n * Source: ISO/IEC 18004 Table 7.\n */\nconst DATA_CODEWORDS: number[][] = [\n [19, 16, 13, 9],\n [34, 28, 22, 16],\n [55, 44, 34, 26],\n [80, 64, 48, 36],\n [108, 86, 62, 46],\n [136, 108, 76, 60],\n [156, 124, 88, 66],\n [194, 154, 110, 86],\n [232, 182, 132, 100],\n [274, 216, 154, 122],\n [324, 254, 180, 140],\n [370, 290, 206, 158],\n [428, 334, 244, 180],\n [461, 365, 261, 197],\n [523, 415, 295, 223],\n [589, 453, 325, 253],\n [647, 507, 367, 283],\n [721, 563, 397, 313],\n [795, 627, 445, 341],\n [861, 669, 485, 385],\n [932, 714, 512, 406],\n [1006, 782, 568, 442],\n [1094, 860, 614, 464],\n [1174, 914, 664, 514],\n [1276, 1000, 718, 538],\n [1370, 1062, 754, 596],\n [1468, 1128, 808, 628],\n [1531, 1193, 871, 661],\n [1631, 1267, 911, 701],\n [1735, 1373, 985, 745],\n [1843, 1455, 1033, 793],\n [1955, 1541, 1115, 845],\n [2071, 1631, 1171, 901],\n [2191, 1725, 1231, 961],\n [2306, 1812, 1286, 986],\n [2434, 1914, 1354, 1054],\n [2566, 1992, 1426, 1096],\n [2702, 2102, 1502, 1142],\n [2812, 2216, 1582, 1222],\n [2956, 2334, 1666, 1276],\n];\n\n/**\n * Total codewords per version (data + EC).\n */\nconst TOTAL_CODEWORDS: number[] = [\n 26, 44, 70, 100, 134, 172, 196, 242, 292, 346,\n 404, 466, 532, 581, 655, 733, 815, 901, 991, 1085,\n 1156, 1258, 1364, 1474, 1588, 1706, 1828, 1921, 2051, 2185,\n 2323, 2465, 2611, 2761, 2876, 3034, 3196, 3362, 3532, 3706,\n];\n\n/**\n * Number of EC blocks (group-1 count, group-1 data-cw, group-2 count, group-2 data-cw)\n * for each (version, ecl).\n * Index: [version-1][ecl ordinal] → [g1Count, g1DataCw, g2Count, g2DataCw]\n */\nconst EC_BLOCKS: number[][][] = [\n /* v1 */ [[1,19,0,0],[1,16,0,0],[1,13,0,0],[1,9,0,0]],\n /* v2 */ [[1,34,0,0],[1,28,0,0],[1,22,0,0],[1,16,0,0]],\n /* v3 */ [[1,55,0,0],[1,44,0,0],[2,17,0,0],[2,13,0,0]],\n /* v4 */ [[1,80,0,0],[2,32,0,0],[2,24,0,0],[4,9,0,0]],\n /* v5 */ [[1,108,0,0],[2,43,0,0],[2,15,2,16],[2,11,2,12]],\n /* v6 */ [[2,68,0,0],[4,27,0,0],[4,19,0,0],[4,15,0,0]],\n /* v7 */ [[2,78,0,0],[4,31,0,0],[2,14,4,15],[4,13,1,14]],\n /* v8 */ [[2,97,0,0],[2,38,2,39],[4,18,2,19],[4,14,2,15]],\n /* v9 */ [[2,116,0,0],[3,36,2,37],[4,16,4,17],[4,12,4,13]],\n /* v10 */ [[2,68,2,69],[4,43,1,44],[6,19,2,20],[6,15,2,16]],\n /* v11 */ [[4,81,0,0],[1,50,4,51],[4,22,4,23],[3,12,8,13]],\n /* v12 */ [[2,92,2,93],[6,36,2,37],[4,20,6,21],[7,14,4,15]],\n /* v13 */ [[4,107,0,0],[8,37,1,38],[8,20,4,21],[12,11,4,12]],\n /* v14 */ [[3,115,1,116],[4,40,5,41],[11,16,5,17],[11,12,5,13]],\n /* v15 */ [[5,87,1,88],[5,41,5,42],[5,24,7,25],[11,12,7,13]],\n /* v16 */ [[5,98,1,99],[7,45,3,46],[15,19,2,20],[3,15,13,16]],\n /* v17 */ [[1,107,5,108],[10,46,1,47],[1,22,15,23],[2,14,17,15]],\n /* v18 */ [[5,120,1,121],[9,43,4,44],[17,22,1,23],[2,14,19,15]],\n /* v19 */ [[3,113,4,114],[3,44,11,45],[17,21,4,22],[9,13,16,14]],\n /* v20 */ [[3,107,5,108],[3,41,13,42],[15,24,5,25],[15,15,10,16]],\n /* v21 */ [[4,116,4,117],[17,42,0,0],[17,22,6,23],[19,16,6,17]],\n /* v22 */ [[2,111,7,112],[17,46,0,0],[7,24,16,25],[34,13,0,0]],\n /* v23 */ [[4,121,5,122],[4,47,14,48],[11,24,14,25],[16,15,14,16]],\n /* v24 */ [[6,117,4,118],[6,45,14,46],[11,24,16,25],[30,16,2,17]],\n /* v25 */ [[8,106,4,107],[8,47,13,48],[7,24,22,25],[22,15,13,16]],\n /* v26 */ [[10,114,2,115],[19,46,4,47],[28,22,6,23],[33,16,4,17]],\n /* v27 */ [[8,122,4,123],[22,45,3,46],[8,23,26,24],[12,15,28,16]],\n /* v28 */ [[3,117,10,118],[3,45,23,46],[4,24,31,25],[11,15,31,16]],\n /* v29 */ [[7,116,7,117],[21,45,7,46],[1,23,37,24],[19,15,26,16]],\n /* v30 */ [[5,115,10,116],[19,47,10,48],[15,24,25,25],[23,15,25,16]],\n /* v31 */ [[13,115,3,116],[2,46,29,47],[42,24,1,25],[23,15,28,16]],\n /* v32 */ [[17,115,0,0],[10,46,23,47],[10,24,35,25],[19,15,35,16]],\n /* v33 */ [[17,115,1,116],[14,46,21,47],[29,24,19,25],[11,15,46,16]],\n /* v34 */ [[13,115,6,116],[14,46,23,47],[44,24,7,25],[59,16,1,17]],\n /* v35 */ [[12,121,7,122],[12,47,26,48],[39,24,14,25],[22,15,41,16]],\n /* v36 */ [[6,121,14,122],[6,47,34,48],[46,24,10,25],[2,15,64,16]],\n /* v37 */ [[17,122,4,123],[29,46,14,47],[49,24,10,25],[24,15,46,16]],\n /* v38 */ [[4,122,18,123],[13,46,32,47],[48,24,14,25],[42,15,32,16]],\n /* v39 */ [[20,117,4,118],[40,47,7,48],[43,24,22,25],[10,15,67,16]],\n /* v40 */ [[19,118,6,119],[18,47,31,48],[34,24,34,25],[20,15,61,16]],\n];\n\n/**\n * Alignment-pattern center coordinates per version (empty for v1).\n */\nconst ALIGNMENT_COORDS: number[][] = [\n [],\n [6, 18],\n [6, 22],\n [6, 26],\n [6, 30],\n [6, 34],\n [6, 22, 38],\n [6, 24, 42],\n [6, 26, 46],\n [6, 28, 50],\n [6, 30, 54],\n [6, 32, 58],\n [6, 34, 62],\n [6, 26, 46, 66],\n [6, 26, 48, 70],\n [6, 26, 50, 74],\n [6, 30, 54, 78],\n [6, 30, 56, 82],\n [6, 30, 58, 86],\n [6, 34, 62, 90],\n [6, 28, 50, 72, 94],\n [6, 26, 50, 74, 98],\n [6, 30, 54, 78, 102],\n [6, 28, 54, 80, 106],\n [6, 32, 58, 84, 110],\n [6, 30, 58, 86, 114],\n [6, 34, 62, 90, 118],\n [6, 26, 50, 74, 98, 122],\n [6, 30, 54, 78, 102, 126],\n [6, 26, 52, 78, 104, 130],\n [6, 30, 56, 82, 108, 134],\n [6, 34, 60, 86, 112, 138],\n [6, 30, 58, 86, 114, 142],\n [6, 34, 62, 90, 118, 146],\n [6, 30, 54, 78, 102, 126, 150],\n [6, 24, 50, 76, 102, 128, 154],\n [6, 28, 54, 80, 106, 132, 158],\n [6, 32, 58, 84, 110, 136, 162],\n [6, 26, 54, 82, 110, 138, 166],\n [6, 30, 58, 86, 114, 142, 170],\n];\n\n/** Format information bits (15-bit BCH) for each (ecl, mask) pair. */\nconst FORMAT_INFO: number[][] = [\n /* L */ [0x77C4, 0x72F3, 0x7DAA, 0x789D, 0x662F, 0x6318, 0x6C41, 0x6976],\n /* M */ [0x5412, 0x5125, 0x5E7C, 0x5B4B, 0x45F9, 0x40CE, 0x4F97, 0x4AA0],\n /* Q */ [0x355F, 0x3068, 0x3F31, 0x3A06, 0x24B4, 0x2183, 0x2EDA, 0x2BED],\n /* H */ [0x1689, 0x13BE, 0x1CE7, 0x19D0, 0x0762, 0x0255, 0x0D0C, 0x083B],\n];\n\n/** Version information bits (18-bit BCH) for versions 7–40. */\nconst VERSION_INFO: number[] = [\n 0x07C94, 0x085BC, 0x09A99, 0x0A4D3, 0x0BBF6, 0x0C762, 0x0D847, 0x0E60D,\n 0x0F928, 0x10B78, 0x1145D, 0x12A17, 0x13532, 0x149A6, 0x15683, 0x168C9,\n 0x177EC, 0x18EC4, 0x191E1, 0x1AFAB, 0x1B08E, 0x1CC1A, 0x1D33F, 0x1ED75,\n 0x1F250, 0x209D5, 0x216F0, 0x228BA, 0x2379F, 0x24B0B, 0x2542E, 0x26A64,\n 0x27541, 0x28C69,\n];\n\n// ---------------------------------------------------------------------------\n// GF(256) arithmetic for Reed-Solomon\n// ---------------------------------------------------------------------------\n\nconst GF_EXP = new Uint8Array(512);\nconst GF_LOG = new Uint8Array(256);\n\n(function initGF() {\n let x = 1;\n for (let i = 0; i < 255; i++) {\n GF_EXP[i] = x;\n GF_LOG[x] = i;\n x <<= 1;\n if (x >= 256) x ^= 0x11D; // primitive polynomial\n }\n for (let i = 255; i < 512; i++) {\n GF_EXP[i] = GF_EXP[i - 255];\n }\n})();\n\nfunction gfMul(a: number, b: number): number {\n if (a === 0 || b === 0) return 0;\n return GF_EXP[GF_LOG[a] + GF_LOG[b]];\n}\n\n// ---------------------------------------------------------------------------\n// Reed-Solomon EC codeword generation\n// ---------------------------------------------------------------------------\n\nfunction rsGeneratorPoly(degree: number): Uint8Array {\n const gen = new Uint8Array(degree + 1);\n gen[0] = 1;\n for (let i = 0; i < degree; i++) {\n for (let j = degree; j >= 1; j--) {\n gen[j] = gen[j] ^ gfMul(gen[j - 1], GF_EXP[i]);\n }\n // gen[0] stays 1 (leading coeff)\n }\n return gen;\n}\n\nfunction rsEncode(data: Uint8Array, ecCount: number): Uint8Array {\n const gen = rsGeneratorPoly(ecCount);\n const result = new Uint8Array(ecCount);\n for (let i = 0; i < data.length; i++) {\n const coeff = data[i] ^ result[0];\n // shift result left\n for (let j = 0; j < ecCount - 1; j++) {\n result[j] = result[j + 1] ^ gfMul(gen[j + 1], coeff);\n }\n result[ecCount - 1] = gfMul(gen[ecCount], coeff);\n }\n return result;\n}\n\n// ---------------------------------------------------------------------------\n// Data encoding (Byte mode only)\n// ---------------------------------------------------------------------------\n\nfunction encodeData(text: string, version: number, ecl: ErrorCorrectionLevel): Uint8Array {\n const eclOrd = EC_ORDINALS[ecl];\n const totalDataCw = DATA_CODEWORDS[version - 1][eclOrd];\n const bytes = new TextEncoder().encode(text);\n\n // Build bit stream\n const bits: number[] = [];\n const pushBits = (value: number, length: number) => {\n for (let i = length - 1; i >= 0; i--) {\n bits.push((value >>> i) & 1);\n }\n };\n\n // Mode indicator: byte = 0100\n pushBits(0b0100, 4);\n\n // Character count indicator\n const ccBits = version <= 9 ? 8 : 16;\n pushBits(bytes.length, ccBits);\n\n // Data\n for (const b of bytes) {\n pushBits(b, 8);\n }\n\n // Terminator (up to 4 bits of zeros)\n const totalDataBits = totalDataCw * 8;\n const terminatorLen = Math.min(4, totalDataBits - bits.length);\n pushBits(0, terminatorLen);\n\n // Pad to byte boundary\n while (bits.length % 8 !== 0) {\n bits.push(0);\n }\n\n // Pad codewords\n const padBytes = [0xEC, 0x11];\n let padIdx = 0;\n while (bits.length < totalDataBits) {\n pushBits(padBytes[padIdx], 8);\n padIdx ^= 1;\n }\n\n // Convert to byte array\n const codewords = new Uint8Array(totalDataCw);\n for (let i = 0; i < totalDataCw; i++) {\n let byte = 0;\n for (let b = 0; b < 8; b++) {\n byte = (byte << 1) | bits[i * 8 + b];\n }\n codewords[i] = byte;\n }\n\n return codewords;\n}\n\n// ---------------------------------------------------------------------------\n// Interleave data + EC blocks\n// ---------------------------------------------------------------------------\n\nfunction buildFinalMessage(data: Uint8Array, version: number, ecl: ErrorCorrectionLevel): Uint8Array {\n const eclOrd = EC_ORDINALS[ecl];\n const [g1Count, g1DataCw, g2Count, g2DataCw] = EC_BLOCKS[version - 1][eclOrd];\n const totalCw = TOTAL_CODEWORDS[version - 1];\n const totalBlocks = g1Count + g2Count;\n const ecCwPerBlock = Math.floor((totalCw - DATA_CODEWORDS[version - 1][eclOrd]) / totalBlocks);\n\n // Split data into blocks\n const dataBlocks: Uint8Array[] = [];\n const ecBlocks: Uint8Array[] = [];\n let offset = 0;\n\n for (let i = 0; i < g1Count; i++) {\n const block = data.slice(offset, offset + g1DataCw);\n dataBlocks.push(block);\n ecBlocks.push(rsEncode(block, ecCwPerBlock));\n offset += g1DataCw;\n }\n for (let i = 0; i < g2Count; i++) {\n const block = data.slice(offset, offset + g2DataCw);\n dataBlocks.push(block);\n ecBlocks.push(rsEncode(block, ecCwPerBlock));\n offset += g2DataCw;\n }\n\n // Interleave data codewords\n const result: number[] = [];\n const maxDataCw = Math.max(g1DataCw, g2DataCw);\n for (let i = 0; i < maxDataCw; i++) {\n for (let j = 0; j < totalBlocks; j++) {\n if (i < dataBlocks[j].length) {\n result.push(dataBlocks[j][i]);\n }\n }\n }\n\n // Interleave EC codewords\n for (let i = 0; i < ecCwPerBlock; i++) {\n for (let j = 0; j < totalBlocks; j++) {\n result.push(ecBlocks[j][i]);\n }\n }\n\n return new Uint8Array(result);\n}\n\n// ---------------------------------------------------------------------------\n// QR matrix construction\n// ---------------------------------------------------------------------------\n\n/** Module size = 4 * version + 17 */\nfunction getModuleCount(version: number): number {\n return version * 4 + 17;\n}\n\n/** Create a blank matrix (-1 = unset). */\nfunction createMatrix(size: number): number[][] {\n return Array.from({ length: size }, () => Array(size).fill(-1));\n}\n\nfunction setModule(matrix: number[][], row: number, col: number, value: number): void {\n if (row >= 0 && row < matrix.length && col >= 0 && col < matrix.length) {\n matrix[row][col] = value;\n }\n}\n\n/** Place a finder pattern with its separator. */\nfunction placeFinderPattern(matrix: number[][], row: number, col: number): void {\n for (let r = -1; r <= 7; r++) {\n for (let c = -1; c <= 7; c++) {\n const isPattern = r >= 0 && r <= 6 && c >= 0 && c <= 6;\n let value = 0;\n if (isPattern) {\n if (r === 0 || r === 6 || c === 0 || c === 6 ||\n (r >= 2 && r <= 4 && c >= 2 && c <= 4)) {\n value = 1;\n }\n }\n setModule(matrix, row + r, col + c, value);\n }\n }\n}\n\n/** Place alignment patterns. */\nfunction placeAlignmentPatterns(matrix: number[][], version: number): void {\n if (version < 2) return;\n const coords = ALIGNMENT_COORDS[version - 1];\n for (const r of coords) {\n for (const c of coords) {\n // Skip if overlapping finder patterns\n if (matrix[r][c] !== -1) continue;\n for (let dr = -2; dr <= 2; dr++) {\n for (let dc = -2; dc <= 2; dc++) {\n const value = (Math.abs(dr) === 2 || Math.abs(dc) === 2 ||\n (dr === 0 && dc === 0)) ? 1 : 0;\n setModule(matrix, r + dr, c + dc, value);\n }\n }\n }\n }\n}\n\n/** Place timing patterns. */\nfunction placeTimingPatterns(matrix: number[][]): void {\n const size = matrix.length;\n for (let i = 8; i < size - 8; i++) {\n if (matrix[6][i] === -1) matrix[6][i] = (i + 1) % 2;\n if (matrix[i][6] === -1) matrix[i][6] = (i + 1) % 2;\n }\n}\n\n/** Reserve format info areas (filled later). */\nfunction reserveFormatAreas(matrix: number[][]): void {\n const size = matrix.length;\n // Around top-left finder\n for (let i = 0; i <= 8; i++) {\n if (matrix[8][i] === -1) matrix[8][i] = 0;\n if (matrix[i][8] === -1) matrix[i][8] = 0;\n }\n // Around top-right finder\n for (let i = 0; i <= 7; i++) {\n if (matrix[8][size - 1 - i] === -1) matrix[8][size - 1 - i] = 0;\n }\n // Around bottom-left finder\n for (let i = 0; i <= 7; i++) {\n if (matrix[size - 1 - i][8] === -1) matrix[size - 1 - i][8] = 0;\n }\n // Dark module\n matrix[size - 8][8] = 1;\n}\n\n/** Reserve version info areas (versions >= 7). */\nfunction reserveVersionAreas(matrix: number[][], version: number): void {\n if (version < 7) return;\n const size = matrix.length;\n for (let i = 0; i < 6; i++) {\n for (let j = 0; j < 3; j++) {\n if (matrix[i][size - 11 + j] === -1) matrix[i][size - 11 + j] = 0;\n if (matrix[size - 11 + j][i] === -1) matrix[size - 11 + j][i] = 0;\n }\n }\n}\n\n/** Place data bits in the matrix using the zigzag pattern. */\nfunction placeDataBits(matrix: number[][], data: Uint8Array): void {\n const size = matrix.length;\n let bitIndex = 0;\n const totalBits = data.length * 8;\n let upward = true;\n\n for (let right = size - 1; right >= 1; right -= 2) {\n // Skip timing pattern column\n if (right === 6) right = 5;\n\n for (let vert = 0; vert < size; vert++) {\n const row = upward ? size - 1 - vert : vert;\n for (let colOffset = 0; colOffset <= 1; colOffset++) {\n const col = right - colOffset;\n if (matrix[row][col] !== -1) continue;\n if (bitIndex < totalBits) {\n const byteIdx = bitIndex >>> 3;\n const bitIdx = 7 - (bitIndex & 7);\n matrix[row][col] = (data[byteIdx] >>> bitIdx) & 1;\n bitIndex++;\n } else {\n matrix[row][col] = 0;\n }\n }\n }\n upward = !upward;\n }\n}\n\n// ---------------------------------------------------------------------------\n// Masking\n// ---------------------------------------------------------------------------\n\ntype MaskFn = (row: number, col: number) => boolean;\n\nconst MASK_FUNCTIONS: MaskFn[] = [\n (r, c) => (r + c) % 2 === 0,\n (r, _c) => r % 2 === 0,\n (_r, c) => c % 3 === 0,\n (r, c) => (r + c) % 3 === 0,\n (r, c) => (Math.floor(r / 2) + Math.floor(c / 3)) % 2 === 0,\n (r, c) => ((r * c) % 2 + (r * c) % 3) === 0,\n (r, c) => ((r * c) % 2 + (r * c) % 3) % 2 === 0,\n (r, c) => ((r + c) % 2 + (r * c) % 3) % 2 === 0,\n];\n\n/** Check if a module is a function pattern (not data). */\nfunction isFunctionModule(matrix: number[][], reserved: number[][], row: number, col: number): boolean {\n return reserved[row][col] !== -1;\n}\n\nfunction applyMask(matrix: number[][], reserved: number[][], maskIdx: number): number[][] {\n const size = matrix.length;\n const result = matrix.map(row => [...row]);\n const fn = MASK_FUNCTIONS[maskIdx];\n for (let r = 0; r < size; r++) {\n for (let c = 0; c < size; c++) {\n if (!isFunctionModule(result, reserved, r, c) && fn(r, c)) {\n result[r][c] ^= 1;\n }\n }\n }\n return result;\n}\n\n// ---------------------------------------------------------------------------\n// Format & version info writing\n// ---------------------------------------------------------------------------\n\nfunction writeFormatInfo(matrix: number[][], ecl: ErrorCorrectionLevel, maskIdx: number): void {\n const eclOrd = EC_ORDINALS[ecl];\n const bits = FORMAT_INFO[eclOrd][maskIdx];\n const size = matrix.length;\n\n for (let i = 0; i <= 5; i++) {\n matrix[8][i] = (bits >>> (14 - i)) & 1;\n }\n matrix[8][7] = (bits >>> 8) & 1;\n matrix[8][8] = (bits >>> 7) & 1;\n matrix[7][8] = (bits >>> 6) & 1;\n for (let i = 0; i <= 5; i++) {\n matrix[5 - i][8] = (bits >>> (i)) & 1;\n }\n\n for (let i = 0; i <= 7; i++) {\n matrix[8][size - 1 - i] = (bits >>> i) & 1;\n }\n for (let i = 0; i <= 6; i++) {\n matrix[size - 1 - i][8] = (bits >>> (14 - i)) & 1;\n }\n\n matrix[size - 8][8] = 1; // dark module\n}\n\nfunction writeVersionInfo(matrix: number[][], version: number): void {\n if (version < 7) return;\n const bits = VERSION_INFO[version - 7];\n const size = matrix.length;\n for (let i = 0; i < 6; i++) {\n for (let j = 0; j < 3; j++) {\n const bitIdx = i * 3 + j;\n const bit = (bits >>> bitIdx) & 1;\n matrix[i][size - 11 + j] = bit;\n matrix[size - 11 + j][i] = bit;\n }\n }\n}\n\n// ---------------------------------------------------------------------------\n// Penalty scoring\n// ---------------------------------------------------------------------------\n\nfunction penaltyScore(matrix: number[][]): number {\n const size = matrix.length;\n let score = 0;\n\n // Rule 1: 5+ consecutive same-color modules in row/col\n for (let r = 0; r < size; r++) {\n let count = 1;\n for (let c = 1; c < size; c++) {\n if (matrix[r][c] === matrix[r][c - 1]) {\n count++;\n } else {\n if (count >= 5) score += count - 2;\n count = 1;\n }\n }\n if (count >= 5) score += count - 2;\n }\n for (let c = 0; c < size; c++) {\n let count = 1;\n for (let r = 1; r < size; r++) {\n if (matrix[r][c] === matrix[r - 1][c]) {\n count++;\n } else {\n if (count >= 5) score += count - 2;\n count = 1;\n }\n }\n if (count >= 5) score += count - 2;\n }\n\n // Rule 2: 2x2 blocks of same color\n for (let r = 0; r < size - 1; r++) {\n for (let c = 0; c < size - 1; c++) {\n const val = matrix[r][c];\n if (val === matrix[r][c + 1] && val === matrix[r + 1][c] && val === matrix[r + 1][c + 1]) {\n score += 3;\n }\n }\n }\n\n // Rule 3: Finder-like patterns\n const pattern1 = [1, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0];\n const pattern2 = [0, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1];\n for (let r = 0; r < size; r++) {\n for (let c = 0; c <= size - 11; c++) {\n let match1 = true;\n let match2 = true;\n for (let i = 0; i < 11; i++) {\n if (matrix[r][c + i] !== pattern1[i]) match1 = false;\n if (matrix[r][c + i] !== pattern2[i]) match2 = false;\n }\n if (match1 || match2) score += 40;\n }\n }\n for (let c = 0; c < size; c++) {\n for (let r = 0; r <= size - 11; r++) {\n let match1 = true;\n let match2 = true;\n for (let i = 0; i < 11; i++) {\n if (matrix[r + i][c] !== pattern1[i]) match1 = false;\n if (matrix[r + i][c] !== pattern2[i]) match2 = false;\n }\n if (match1 || match2) score += 40;\n }\n }\n\n // Rule 4: Proportion of dark modules\n let dark = 0;\n for (let r = 0; r < size; r++) {\n for (let c = 0; c < size; c++) {\n if (matrix[r][c] === 1) dark++;\n }\n }\n const total = size * size;\n const percent = (dark / total) * 100;\n const prev5 = Math.floor(percent / 5) * 5;\n const next5 = prev5 + 5;\n score += Math.min(Math.abs(prev5 - 50) / 5, Math.abs(next5 - 50) / 5) * 10;\n\n return score;\n}\n\n// ---------------------------------------------------------------------------\n// Public API\n// ---------------------------------------------------------------------------\n\n/**\n * Find the minimum version that can hold the given data.\n */\nfunction findMinVersion(text: string, ecl: ErrorCorrectionLevel): number {\n const bytes = new TextEncoder().encode(text);\n const dataLen = bytes.length;\n const eclOrd = EC_ORDINALS[ecl];\n\n for (let v = 1; v <= 40; v++) {\n const ccBits = v <= 9 ? 8 : 16;\n const totalBits = 4 + ccBits + dataLen * 8;\n const capacity = DATA_CODEWORDS[v - 1][eclOrd] * 8;\n if (totalBits <= capacity) return v;\n }\n throw new Error('Data too long for any QR version');\n}\n\n/**\n * Generate a QR code matrix from a string.\n *\n * @param text The text to encode.\n * @param ecl Error-correction level (L, M, Q, H).\n * @returns A 2-D boolean-like matrix where `1` = dark module.\n */\nexport function generateQR(text: string, ecl: ErrorCorrectionLevel = 'H'): number[][] {\n if (!text) {\n // Return a minimal empty 21x21 (version 1) blank grid\n return Array.from({ length: 21 }, () => Array(21).fill(0));\n }\n\n const version = findMinVersion(text, ecl);\n const moduleCount = getModuleCount(version);\n\n // 1. Build function-pattern matrix (reserved areas)\n const reserved = createMatrix(moduleCount);\n placeFinderPattern(reserved, 0, 0);\n placeFinderPattern(reserved, 0, moduleCount - 7);\n placeFinderPattern(reserved, moduleCount - 7, 0);\n placeAlignmentPatterns(reserved, version);\n placeTimingPatterns(reserved);\n reserveFormatAreas(reserved);\n reserveVersionAreas(reserved, version);\n\n // 2. Build actual matrix with function patterns\n const matrix = createMatrix(moduleCount);\n placeFinderPattern(matrix, 0, 0);\n placeFinderPattern(matrix, 0, moduleCount - 7);\n placeFinderPattern(matrix, moduleCount - 7, 0);\n placeAlignmentPatterns(matrix, version);\n placeTimingPatterns(matrix);\n reserveFormatAreas(matrix);\n reserveVersionAreas(matrix, version);\n\n // 3. Encode & place data\n const dataCw = encodeData(text, version, ecl);\n const finalMsg = buildFinalMessage(dataCw, version, ecl);\n placeDataBits(matrix, finalMsg);\n\n // 4. Try all 8 masks, pick the best\n let bestMask = 0;\n let bestScore = Infinity;\n let bestMatrix = matrix;\n\n for (let mask = 0; mask < 8; mask++) {\n const candidate = applyMask(matrix, reserved, mask);\n writeFormatInfo(candidate, ecl, mask);\n writeVersionInfo(candidate, version);\n const score = penaltyScore(candidate);\n if (score < bestScore) {\n bestScore = score;\n bestMask = mask;\n bestMatrix = candidate;\n }\n }\n\n // Re-apply best mask (already stored)\n writeFormatInfo(bestMatrix, ecl, bestMask);\n writeVersionInfo(bestMatrix, version);\n\n return bestMatrix;\n}\n"],"names":["gfMul","a","b","GF_EXP","GF_LOG","rsEncode","data","ecCount","gen","degree","Uint8Array","i","j","rsGeneratorPoly","result","length","coeff","createMatrix","size","Array","from","fill","setModule","matrix","row","col","value","placeFinderPattern","r","c","placeAlignmentPatterns","version","coords","ALIGNMENT_COORDS","_iterator","_createForOfIteratorHelper","s","_step","n","done","_iterator2","_step2","dr","dc","Math","abs","err","e","f","placeTimingPatterns","reserveFormatAreas","reserveVersionAreas","isFunctionModule","reserved","applyMask","maskIdx","map","fn","MASK_FUNCTIONS","writeFormatInfo","ecl","bits","FORMAT_INFO","EC_ORDINALS","t","writeVersionInfo","VERSION_INFO","bit","penaltyScore","score","count","val","pattern1","pattern2","match1","match2","dark","percent","prev5","floor","next5","min","generateQR","text","dataLen","TextEncoder","encode","eclOrd","v","DATA_CODEWORDS","Error","findMinVersion","moduleCount","getModuleCount","dataCw","totalDataCw","bytes","pushBits","push","ccBits","_iterator3","_step3","totalDataBits","padBytes","padIdx","codewords","byte","encodeData","finalMsg","EC_BLOCKS","g1Count","g1DataCw","g2Count","g2DataCw","totalCw","TOTAL_CODEWORDS","totalBlocks","ecCwPerBlock","dataBlocks","ecBlocks","offset","block","slice","maxDataCw","max","buildFinalMessage","bitIndex","totalBits","upward","right","vert","colOffset","byteIdx","bitIdx","placeDataBits","bestMask","bestScore","Infinity","bestMatrix","mask","candidate","L","M","Q","H","x","_c","_r"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ const t={L:0,M:1,Q:2,H:3},o=[[19,16,13,9],[34,28,22,16],[55,44,34,26],[80,64,48,36],[108,86,62,46],[136,108,76,60],[156,124,88,66],[194,154,110,86],[232,182,132,100],[274,216,154,122],[324,254,180,140],[370,290,206,158],[428,334,244,180],[461,365,261,197],[523,415,295,223],[589,453,325,253],[647,507,367,283],[721,563,397,313],[795,627,445,341],[861,669,485,385],[932,714,512,406],[1006,782,568,442],[1094,860,614,464],[1174,914,664,514],[1276,1e3,718,538],[1370,1062,754,596],[1468,1128,808,628],[1531,1193,871,661],[1631,1267,911,701],[1735,1373,985,745],[1843,1455,1033,793],[1955,1541,1115,845],[2071,1631,1171,901],[2191,1725,1231,961],[2306,1812,1286,986],[2434,1914,1354,1054],[2566,1992,1426,1096],[2702,2102,1502,1142],[2812,2216,1582,1222],[2956,2334,1666,1276]],n=[26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706],r=[[[1,19,0,0],[1,16,0,0],[1,13,0,0],[1,9,0,0]],[[1,34,0,0],[1,28,0,0],[1,22,0,0],[1,16,0,0]],[[1,55,0,0],[1,44,0,0],[2,17,0,0],[2,13,0,0]],[[1,80,0,0],[2,32,0,0],[2,24,0,0],[4,9,0,0]],[[1,108,0,0],[2,43,0,0],[2,15,2,16],[2,11,2,12]],[[2,68,0,0],[4,27,0,0],[4,19,0,0],[4,15,0,0]],[[2,78,0,0],[4,31,0,0],[2,14,4,15],[4,13,1,14]],[[2,97,0,0],[2,38,2,39],[4,18,2,19],[4,14,2,15]],[[2,116,0,0],[3,36,2,37],[4,16,4,17],[4,12,4,13]],[[2,68,2,69],[4,43,1,44],[6,19,2,20],[6,15,2,16]],[[4,81,0,0],[1,50,4,51],[4,22,4,23],[3,12,8,13]],[[2,92,2,93],[6,36,2,37],[4,20,6,21],[7,14,4,15]],[[4,107,0,0],[8,37,1,38],[8,20,4,21],[12,11,4,12]],[[3,115,1,116],[4,40,5,41],[11,16,5,17],[11,12,5,13]],[[5,87,1,88],[5,41,5,42],[5,24,7,25],[11,12,7,13]],[[5,98,1,99],[7,45,3,46],[15,19,2,20],[3,15,13,16]],[[1,107,5,108],[10,46,1,47],[1,22,15,23],[2,14,17,15]],[[5,120,1,121],[9,43,4,44],[17,22,1,23],[2,14,19,15]],[[3,113,4,114],[3,44,11,45],[17,21,4,22],[9,13,16,14]],[[3,107,5,108],[3,41,13,42],[15,24,5,25],[15,15,10,16]],[[4,116,4,117],[17,42,0,0],[17,22,6,23],[19,16,6,17]],[[2,111,7,112],[17,46,0,0],[7,24,16,25],[34,13,0,0]],[[4,121,5,122],[4,47,14,48],[11,24,14,25],[16,15,14,16]],[[6,117,4,118],[6,45,14,46],[11,24,16,25],[30,16,2,17]],[[8,106,4,107],[8,47,13,48],[7,24,22,25],[22,15,13,16]],[[10,114,2,115],[19,46,4,47],[28,22,6,23],[33,16,4,17]],[[8,122,4,123],[22,45,3,46],[8,23,26,24],[12,15,28,16]],[[3,117,10,118],[3,45,23,46],[4,24,31,25],[11,15,31,16]],[[7,116,7,117],[21,45,7,46],[1,23,37,24],[19,15,26,16]],[[5,115,10,116],[19,47,10,48],[15,24,25,25],[23,15,25,16]],[[13,115,3,116],[2,46,29,47],[42,24,1,25],[23,15,28,16]],[[17,115,0,0],[10,46,23,47],[10,24,35,25],[19,15,35,16]],[[17,115,1,116],[14,46,21,47],[29,24,19,25],[11,15,46,16]],[[13,115,6,116],[14,46,23,47],[44,24,7,25],[59,16,1,17]],[[12,121,7,122],[12,47,26,48],[39,24,14,25],[22,15,41,16]],[[6,121,14,122],[6,47,34,48],[46,24,10,25],[2,15,64,16]],[[17,122,4,123],[29,46,14,47],[49,24,10,25],[24,15,46,16]],[[4,122,18,123],[13,46,32,47],[48,24,14,25],[42,15,32,16]],[[20,117,4,118],[40,47,7,48],[43,24,22,25],[10,15,67,16]],[[19,118,6,119],[18,47,31,48],[34,24,34,25],[20,15,61,16]]],e=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],f=[[30660,29427,32170,30877,26159,25368,27713,26998],[21522,20773,24188,23371,17913,16590,20375,19104],[13663,12392,16177,14854,9396,8579,11994,11245],[5769,5054,7399,6608,1890,597,3340,2107]],l=[31892,34236,39577,42195,48118,51042,55367,58893,63784,68472,70749,76311,79154,84390,87683,92361,96236,102084,102881,110507,110734,117786,119615,126325,127568,133589,136944,141498,145311,150283,152622,158308,161089,167017],c=new Uint8Array(512),s=new Uint8Array(256);function u(t,o){return 0===t||0===o?0:c[s[t]+s[o]]}function i(t,o){const n=function(t){const o=new Uint8Array(t+1);o[0]=1;for(let n=0;n<t;n++)for(let r=t;r>=1;r--)o[r]=o[r]^u(o[r-1],c[n]);return o}(o),r=new Uint8Array(o);for(let e=0;e<t.length;e++){const f=t[e]^r[0];for(let t=0;t<o-1;t++)r[t]=r[t+1]^u(n[t+1],f);r[o-1]=u(n[o],f)}return r}function a(t){return Array.from({length:t},(()=>Array(t).fill(-1)))}function h(t,o,n,r){o>=0&&o<t.length&&n>=0&&n<t.length&&(t[o][n]=r)}function M(t,o,n){for(let r=-1;r<=7;r++)for(let e=-1;e<=7;e++){let f=0;r>=0&&r<=6&&e>=0&&e<=6&&(0===r||6===r||0===e||6===e||r>=2&&r<=4&&e>=2&&e<=4)&&(f=1),h(t,o+r,n+e,f)}}function y(t,o){if(o<2)return;const n=e[o-1];for(const o of n)for(const r of n)if(-1===t[o][r])for(let n=-2;n<=2;n++)for(let e=-2;e<=2;e++){h(t,o+n,r+e,2===Math.abs(n)||2===Math.abs(e)||0===n&&0===e?1:0)}}function w(t){const o=t.length;for(let n=8;n<o-8;n++)-1===t[6][n]&&(t[6][n]=(n+1)%2),-1===t[n][6]&&(t[n][6]=(n+1)%2)}function A(t){const o=t.length;for(let o=0;o<=8;o++)-1===t[8][o]&&(t[8][o]=0),-1===t[o][8]&&(t[o][8]=0);for(let n=0;n<=7;n++)-1===t[8][o-1-n]&&(t[8][o-1-n]=0);for(let n=0;n<=7;n++)-1===t[o-1-n][8]&&(t[o-1-n][8]=0);t[o-8][8]=1}function U(t,o){if(o<7)return;const n=t.length;for(let o=0;o<6;o++)for(let r=0;r<3;r++)-1===t[o][n-11+r]&&(t[o][n-11+r]=0),-1===t[n-11+r][o]&&(t[n-11+r][o]=0)}!function(){let t=1;for(let o=0;o<255;o++)c[o]=t,s[t]=o,t<<=1,t>=256&&(t^=285);for(let t=255;t<512;t++)c[t]=c[t-255]}();const g=[(t,o)=>(t+o)%2==0,(t,o)=>t%2==0,(t,o)=>o%3==0,(t,o)=>(t+o)%3==0,(t,o)=>(Math.floor(t/2)+Math.floor(o/3))%2==0,(t,o)=>t*o%2+t*o%3==0,(t,o)=>(t*o%2+t*o%3)%2==0,(t,o)=>((t+o)%2+t*o%3)%2==0];function x(t,o,n,r){return-1!==o[n][r]}function E(t,o,n){const r=t.length,e=t.map((t=>[...t])),f=g[n];for(let t=0;t<r;t++)for(let n=0;n<r;n++)!x(0,o,t,n)&&f(t,n)&&(e[t][n]^=1);return e}function d(o,n,r){const e=f[t[n]][r],l=o.length;for(let t=0;t<=5;t++)o[8][t]=e>>>14-t&1;o[8][7]=e>>>8&1,o[8][8]=e>>>7&1,o[7][8]=e>>>6&1;for(let t=0;t<=5;t++)o[5-t][8]=e>>>t&1;for(let t=0;t<=7;t++)o[8][l-1-t]=e>>>t&1;for(let t=0;t<=6;t++)o[l-1-t][8]=e>>>14-t&1;o[l-8][8]=1}function H(t,o){if(o<7)return;const n=l[o-7],r=t.length;for(let o=0;o<6;o++)for(let e=0;e<3;e++){const f=n>>>3*o+e&1;t[o][r-11+e]=f,t[r-11+e][o]=f}}function Q(t){const o=t.length;let n=0;for(let r=0;r<o;r++){let e=1;for(let f=1;f<o;f++)t[r][f]===t[r][f-1]?e++:(e>=5&&(n+=e-2),e=1);e>=5&&(n+=e-2)}for(let r=0;r<o;r++){let e=1;for(let f=1;f<o;f++)t[f][r]===t[f-1][r]?e++:(e>=5&&(n+=e-2),e=1);e>=5&&(n+=e-2)}for(let r=0;r<o-1;r++)for(let e=0;e<o-1;e++){const o=t[r][e];o===t[r][e+1]&&o===t[r+1][e]&&o===t[r+1][e+1]&&(n+=3)}const r=[1,0,1,1,1,0,1,0,0,0,0],e=[0,0,0,0,1,0,1,1,1,0,1];for(let f=0;f<o;f++)for(let l=0;l<=o-11;l++){let o=!0,c=!0;for(let n=0;n<11;n++)t[f][l+n]!==r[n]&&(o=!1),t[f][l+n]!==e[n]&&(c=!1);(o||c)&&(n+=40)}for(let f=0;f<o;f++)for(let l=0;l<=o-11;l++){let o=!0,c=!0;for(let n=0;n<11;n++)t[l+n][f]!==r[n]&&(o=!1),t[l+n][f]!==e[n]&&(c=!1);(o||c)&&(n+=40)}let f=0;for(let n=0;n<o;n++)for(let r=0;r<o;r++)1===t[n][r]&&f++;const l=f/(o*o)*100,c=5*Math.floor(l/5),s=c+5;return n+=10*Math.min(Math.abs(c-50)/5,Math.abs(s-50)/5),n}function T(e,f="H"){if(!e)return Array.from({length:21},(()=>Array(21).fill(0)));const l=function(n,r){const e=(new TextEncoder).encode(n).length,f=t[r];for(let t=1;t<=40;t++)if(4+(t<=9?8:16)+8*e<=8*o[t-1][f])return t;throw new Error("Data too long for any QR version")}(e,f),c=function(t){return 4*t+17}(l),s=a(c);M(s,0,0),M(s,0,c-7),M(s,c-7,0),y(s,l),w(s),A(s),U(s,l);const u=a(c);M(u,0,0),M(u,0,c-7),M(u,c-7,0),y(u,l),w(u),A(u),U(u,l);const h=function(n,r,e){const f=o[r-1][t[e]],l=(new TextEncoder).encode(n),c=[],s=(t,o)=>{for(let n=o-1;n>=0;n--)c.push(t>>>n&1)};s(4,4);const u=r<=9?8:16;s(l.length,u);for(const t of l)s(t,8);const i=8*f;for(s(0,Math.min(4,i-c.length));c.length%8!=0;)c.push(0);const a=[236,17];let h=0;for(;c.length<i;)s(a[h],8),h^=1;const M=new Uint8Array(f);for(let t=0;t<f;t++){let o=0;for(let n=0;n<8;n++)o=o<<1|c[8*t+n];M[t]=o}return M}(e,l,f),g=function(e,f,l){const c=t[l],[s,u,a,h]=r[f-1][c],M=n[f-1],y=s+a,w=Math.floor((M-o[f-1][c])/y),A=[],U=[];let g=0;for(let t=0;t<s;t++){const t=e.slice(g,g+u);A.push(t),U.push(i(t,w)),g+=u}for(let t=0;t<a;t++){const t=e.slice(g,g+h);A.push(t),U.push(i(t,w)),g+=h}const x=[],E=Math.max(u,h);for(let t=0;t<E;t++)for(let o=0;o<y;o++)t<A[o].length&&x.push(A[o][t]);for(let t=0;t<w;t++)for(let o=0;o<y;o++)x.push(U[o][t]);return new Uint8Array(x)}(h,l,f);!function(t,o){const n=t.length;let r=0;const e=8*o.length;let f=!0;for(let l=n-1;l>=1;l-=2){6===l&&(l=5);for(let c=0;c<n;c++){const s=f?n-1-c:c;for(let n=0;n<=1;n++){const f=l-n;if(-1===t[s][f])if(r<e){const n=r>>>3,e=7-(7&r);t[s][f]=o[n]>>>e&1,r++}else t[s][f]=0}}f=!f}}(u,g);let x=0,T=1/0,p=u;for(let t=0;t<8;t++){const o=E(u,s,t);d(o,f,t),H(o,l);const n=Q(o);n<T&&(T=n,x=t,p=o)}return d(p,f,x),H(p,l),p}export{T as g};
@@ -0,0 +1,2 @@
1
+ function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}System.register(["tslib","lit","lit/decorators.js","./nile-qr-code.css.cjs.js","./nile-qr-code-utils.cjs.js","../internal/nile-element.cjs.js"],function(_export,_context){"use strict";var t,i,e,r,s,a,n,o,_templateObject,h;function _taggedTemplateLiteral(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}));}function _classCallCheck(a,n){if(!(a instanceof n))throw new TypeError("Cannot call a class as a function");}function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,_toPropertyKey(o.key),o);}}function _createClass(e,r,t){return r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==_typeof(i)?i:i+"";}function _toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return("string"===r?String:Number)(t);}function _callSuper(t,o,e){return o=_getPrototypeOf(o),_possibleConstructorReturn(t,_isNativeReflectConstruct()?Reflect.construct(o,e||[],_getPrototypeOf(t).constructor):o.apply(t,e));}function _possibleConstructorReturn(t,e){if(e&&("object"==_typeof(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(t);}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e;}function _isNativeReflectConstruct(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));}catch(t){}return(_isNativeReflectConstruct=function _isNativeReflectConstruct(){return!!t;})();}function _superPropGet(t,o,e,r){var p=_get(_getPrototypeOf(1&r?t.prototype:t),o,e);return 2&r&&"function"==typeof p?function(t){return p.apply(e,t);}:p;}function _get(){return _get="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,t,r){var p=_superPropBase(e,t);if(p){var n=Object.getOwnPropertyDescriptor(p,t);return n.get?n.get.call(arguments.length<3?e:r):n.value;}},_get.apply(null,arguments);}function _superPropBase(t,o){for(;!{}.hasOwnProperty.call(t,o)&&null!==(t=_getPrototypeOf(t)););return t;}function _getPrototypeOf(t){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t);},_getPrototypeOf(t);}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&_setPrototypeOf(t,e);}function _setPrototypeOf(t,e){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t;},_setPrototypeOf(t,e);}return{setters:[function(_tslib){t=_tslib.__decorate;},function(_lit){i=_lit.html;},function(_litDecoratorsJs){e=_litDecoratorsJs.property;r=_litDecoratorsJs.query;s=_litDecoratorsJs.customElement;},function(_nileQrCodeCssCjsJs){a=_nileQrCodeCssCjsJs.s;},function(_nileQrCodeUtilsCjsJs){n=_nileQrCodeUtilsCjsJs.g;},function(_internalNileElementCjsJs){o=_internalNileElementCjsJs.N;}],execute:function execute(){_export("N",h=/*#__PURE__*/function(_o){function h(){var _this;_classCallCheck(this,h);_this=_callSuper(this,h,arguments),_this.value="",_this.size=128,_this.fill="black",_this.background="white",_this.radius=0,_this.errorCorrection="H",_this.label="",_this.image="",_this.imageSize=.25,_this.imagePadding=4,_this.imageRadius=4,_this.fillGradient="",_this._loadedImage=null,_this._imageLoadPromise=null;return _this;}_inherits(h,_o);return _createClass(h,[{key:"updated",value:function updated(t){if(_superPropGet(h,"updated",this,3)([t]),t.has("image")&&(this._loadedImage=null,this._imageLoadPromise=null,this.image))return void this.loadImage(this.image);["value","size","fill","background","radius","errorCorrection","imageSize","imagePadding","imageRadius","fillGradient"].some(function(i){return t.has(i);})&&this.drawQrCode();}},{key:"render",value:function render(){var t=this.label||this.value||"QR Code";return i(_templateObject||(_templateObject=_taggedTemplateLiteral(["\n <canvas\n part=\"base\"\n role=\"img\"\n aria-label=","\n width=","\n height=","\n ></canvas>\n "])),t,this.size,this.size);}},{key:"download",value:function download(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"qr-code.png";if(!this.canvas)return;var i=document.createElement("a");i.download=t,i.href=this.canvas.toDataURL("image/png"),i.click();}},{key:"toDataURL",value:function toDataURL(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"image/png";return this.canvas?this.canvas.toDataURL(t):"";}},{key:"loadImage",value:function loadImage(t){var _this2=this;var i=new Image();i.crossOrigin="anonymous",this._imageLoadPromise=new Promise(function(e){i.onload=function(){_this2._loadedImage=i,_this2._imageLoadPromise=null,_this2.drawQrCode(),e();},i.onerror=function(){_this2._loadedImage=null,_this2._imageLoadPromise=null,_this2.emit("nile-qr-image-error",{src:t}),_this2.drawQrCode(),e();};}),i.src=t;}},{key:"drawQrCode",value:function drawQrCode(){if(!this.canvas)return;var t=this.canvas.getContext("2d");if(!t)return;var i=this.size,e=this.fill,r=this.background,s=this.radius,a=this.errorCorrection,o=this.value,_h=Math.max(0,Math.min(.5,s)),l=n(o,a),d=l.length,c=i/d;t.clearRect(0,0,i,i),r&&"transparent"!==r&&(t.fillStyle=r,t.fillRect(0,0,i,i));var u=Math.max(.1,Math.min(.4,this.imageSize)),m=this._loadedImage?i*u:0,f=m+(this._loadedImage?2*this.imagePadding:0),g=(i-f)/2,p=g+f,v=this.resolveModuleFill(t,i);t.fillStyle=v;for(var _i=0;_i<d;_i++)for(var _e=0;_e<d;_e++){if(1!==l[_i][_e])continue;var _r=_e*c,_s=_i*c;if(this._loadedImage){if(_r>=g&&_r+c<=p&&_s>=g&&_s+c<=p)continue;}_h>0?this.drawRoundedModule(t,_r,_s,c,c,_h*c):t.fillRect(_r,_s,c,c);}this._loadedImage&&this.drawCenterImage(t,i,m);}},{key:"resolveModuleFill",value:function resolveModuleFill(t,i){if(!this.fillGradient)return this.fill;var e=this.fillGradient.split(",").map(function(t){return t.trim();});if(e.length<3)return this.fill;var r=parseFloat(e[0]);if(Number.isNaN(r))return this.fill;var s=r*Math.PI/180,a=i/2,n=i/2,o=i/2,_h2=a-Math.cos(s)*o,l=n-Math.sin(s)*o,d=a+Math.cos(s)*o,c=n+Math.sin(s)*o,u=t.createLinearGradient(_h2,l,d,c),m=e.slice(1);for(var _t=0;_t<m.length;_t++)u.addColorStop(_t/(m.length-1),m[_t]);return u;}},{key:"drawCenterImage",value:function drawCenterImage(t,i,e){if(!this._loadedImage)return;var r=(i-e)/2,s=(i-e)/2,a=Math.min(this.imageRadius,e/2),n=this.imagePadding;if(n>0&&this.background&&"transparent"!==this.background){t.fillStyle=this.background;var _i2=r-n,_o2=s-n,_h3=e+2*n,l=e+2*n,d=a+.5*n;this.drawRoundedRect(t,_i2,_o2,_h3,l,d),t.fill();}t.save(),this.clipRoundedRect(t,r,s,e,e,a),t.drawImage(this._loadedImage,r,s,e,e),t.restore();}},{key:"drawRoundedModule",value:function drawRoundedModule(t,i,e,r,s,a){t.beginPath(),t.moveTo(i+a,e),t.lineTo(i+r-a,e),t.arcTo(i+r,e,i+r,e+a,a),t.lineTo(i+r,e+s-a),t.arcTo(i+r,e+s,i+r-a,e+s,a),t.lineTo(i+a,e+s),t.arcTo(i,e+s,i,e+s-a,a),t.lineTo(i,e+a),t.arcTo(i,e,i+a,e,a),t.closePath(),t.fill();}},{key:"drawRoundedRect",value:function drawRoundedRect(t,i,e,r,s,a){t.beginPath(),t.moveTo(i+a,e),t.lineTo(i+r-a,e),t.arcTo(i+r,e,i+r,e+a,a),t.lineTo(i+r,e+s-a),t.arcTo(i+r,e+s,i+r-a,e+s,a),t.lineTo(i+a,e+s),t.arcTo(i,e+s,i,e+s-a,a),t.lineTo(i,e+a),t.arcTo(i,e,i+a,e,a),t.closePath();}},{key:"clipRoundedRect",value:function clipRoundedRect(t,i,e,r,s,a){t.beginPath(),t.moveTo(i+a,e),t.lineTo(i+r-a,e),t.arcTo(i+r,e,i+r,e+a,a),t.lineTo(i+r,e+s-a),t.arcTo(i+r,e+s,i+r-a,e+s,a),t.lineTo(i+a,e+s),t.arcTo(i,e+s,i,e+s-a,a),t.lineTo(i,e+a),t.arcTo(i,e,i+a,e,a),t.closePath(),t.clip();}}],[{key:"styles",get:function get(){return[a];}}]);}(o));t([e({type:String,reflect:!0})],h.prototype,"value",void 0),t([e({type:Number,reflect:!0})],h.prototype,"size",void 0),t([e({type:String,reflect:!0})],h.prototype,"fill",void 0),t([e({type:String,reflect:!0})],h.prototype,"background",void 0),t([e({type:Number,reflect:!0})],h.prototype,"radius",void 0),t([e({attribute:"error-correction",reflect:!0})],h.prototype,"errorCorrection",void 0),t([e({type:String,reflect:!0})],h.prototype,"label",void 0),t([e({type:String,reflect:!0})],h.prototype,"image",void 0),t([e({attribute:"image-size",type:Number,reflect:!0})],h.prototype,"imageSize",void 0),t([e({attribute:"image-padding",type:Number,reflect:!0})],h.prototype,"imagePadding",void 0),t([e({attribute:"image-radius",type:Number,reflect:!0})],h.prototype,"imageRadius",void 0),t([e({attribute:"fill-gradient",type:String,reflect:!0})],h.prototype,"fillGradient",void 0),t([r("canvas")],h.prototype,"canvas",void 0),_export("N",h=t([s("nile-qr-code")],h));}};});
2
+ //# sourceMappingURL=nile-qr-code.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nile-qr-code.cjs.js","sources":["../../../src/nile-qr-code/nile-qr-code.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, CSSResultArray, TemplateResult, PropertyValues } from 'lit';\nimport { customElement, property, query } from 'lit/decorators.js';\nimport { styles } from './nile-qr-code.css.js';\nimport { generateQR, ErrorCorrectionLevel } from './nile-qr-code-utils.js';\nimport NileElement from '../internal/nile-element.js';\n\n/**\n * Nile QR Code component.\n *\n \n * @tag nile-qr-code\n *\n * @csspart base - The canvas element used to draw the QR code.\n *\n * @fires nile-qr-image-error - Emitted when the center image fails to load.\n *\n * @example\n \n *\n \n */\n@customElement('nile-qr-code')\nexport class NileQrCode extends NileElement {\n\n /**\n * The styles for QR Code.\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n // -------------------------------------------------------------------------\n // Properties\n // -------------------------------------------------------------------------\n\n /**\n * The QR code's value — the text or URL to encode.\n */\n @property({ type: String, reflect: true })\n value = '';\n\n /**\n * The size of the QR code, in pixels.\n */\n @property({ type: Number, reflect: true })\n size = 128;\n\n /**\n * The fill color. This can be any valid CSS color, but not a CSS custom property.\n */\n @property({ type: String, reflect: true })\n fill = 'black';\n\n /**\n * The background color. This can be any valid CSS color or `'transparent'`.\n * It cannot be a CSS custom property.\n */\n @property({ type: String, reflect: true })\n background = 'white';\n\n /**\n * The edge radius of each module. Must be between 0 and 0.5.\n * Use this to create a rounded effect.\n */\n @property({ type: Number, reflect: true })\n radius = 0;\n\n /**\n * The level of error correction to use.\n * - `'L'` — Low (~7%)\n * - `'M'` — Medium (~15%)\n * - `'Q'` — Quartile (~25%)\n * - `'H'` — High (~30%)\n *\n * When using an image overlay, `'H'` is recommended so the QR remains scannable.\n */\n @property({ attribute: 'error-correction', reflect: true })\n errorCorrection: ErrorCorrectionLevel = 'H';\n\n /**\n * The label for assistive devices to announce.\n * If unspecified, the `value` will be used instead.\n */\n @property({ type: String, reflect: true })\n label = '';\n\n /**\n * URL of an image to overlay in the center of the QR code (e.g. a logo).\n * The image is drawn on top of the QR modules, so use `error-correction=\"H\"`\n * to ensure the code remains scannable.\n */\n @property({ type: String, reflect: true })\n image = '';\n\n /**\n * Size of the center image as a fraction of the overall QR code size\n * (0.1 – 0.4). Defaults to 0.25 (25% of the QR code).\n */\n @property({ attribute: 'image-size', type: Number, reflect: true })\n imageSize = 0.25;\n\n /**\n * Padding around the center image in pixels. Creates a clear area\n * between the image and the surrounding QR modules.\n */\n @property({ attribute: 'image-padding', type: Number, reflect: true })\n imagePadding = 4;\n\n /**\n * Optional border radius for the center image in pixels.\n * Set to a high value for a circular mask.\n */\n @property({ attribute: 'image-radius', type: Number, reflect: true })\n imageRadius = 4;\n\n /**\n * Apply a linear gradient to the QR modules instead of a flat color.\n * Format: `\"direction, color1, color2[, ...]\"` where direction is an\n * angle in degrees (e.g. `\"135, #6366f1, #ec4899\"`).\n * When set, this overrides the `fill` property for module rendering.\n */\n @property({ attribute: 'fill-gradient', type: String, reflect: true })\n fillGradient = '';\n\n // -------------------------------------------------------------------------\n // Internal state\n // -------------------------------------------------------------------------\n\n private _loadedImage: HTMLImageElement | null = null;\n\n private _imageLoadPromise: Promise<void> | null = null;\n\n // -------------------------------------------------------------------------\n // Refs\n // -------------------------------------------------------------------------\n\n @query('canvas')\n private canvas!: HTMLCanvasElement;\n\n // -------------------------------------------------------------------------\n // Lifecycle\n // -------------------------------------------------------------------------\n\n protected override updated(changedProperties: PropertyValues): void {\n super.updated(changedProperties);\n\n if (changedProperties.has('image')) {\n this._loadedImage = null;\n this._imageLoadPromise = null;\n if (this.image) {\n this.loadImage(this.image);\n return;\n }\n }\n\n const relevantProps: (keyof NileQrCode)[] = [\n 'value', 'size', 'fill', 'background', 'radius', 'errorCorrection',\n 'imageSize', 'imagePadding', 'imageRadius', 'fillGradient',\n ];\n\n const needsRedraw = relevantProps.some(p => changedProperties.has(p));\n if (needsRedraw) {\n this.drawQrCode();\n }\n }\n\n // -------------------------------------------------------------------------\n // Rendering\n // -------------------------------------------------------------------------\n\n public render(): TemplateResult {\n const ariaLabel = this.label || this.value || 'QR Code';\n\n return html`\n <canvas\n part=\"base\"\n role=\"img\"\n aria-label=${ariaLabel}\n width=${this.size}\n height=${this.size}\n ></canvas>\n `;\n }\n\n // -------------------------------------------------------------------------\n // Public methods\n // -------------------------------------------------------------------------\n\n /**\n * Downloads the QR code as a PNG image.\n * @param filename - The name of the downloaded file (defaults to `'qr-code.png'`).\n */\n public download(filename = 'qr-code.png'): void {\n if (!this.canvas) return;\n const link = document.createElement('a');\n link.download = filename;\n link.href = this.canvas.toDataURL('image/png');\n link.click();\n }\n\n /**\n * Returns the QR code canvas content as a data URL.\n * @param type - MIME type (defaults to `'image/png'`).\n */\n public toDataURL(type = 'image/png'): string {\n if (!this.canvas) return '';\n return this.canvas.toDataURL(type);\n }\n\n // -------------------------------------------------------------------------\n // Private methods\n // -------------------------------------------------------------------------\n\n private loadImage(src: string): void {\n const img = new Image();\n img.crossOrigin = 'anonymous';\n\n this._imageLoadPromise = new Promise<void>((resolve) => {\n img.onload = () => {\n this._loadedImage = img;\n this._imageLoadPromise = null;\n this.drawQrCode();\n resolve();\n };\n img.onerror = () => {\n this._loadedImage = null;\n this._imageLoadPromise = null;\n this.emit('nile-qr-image-error', { src });\n this.drawQrCode();\n resolve();\n };\n });\n\n img.src = src;\n }\n\n private drawQrCode(): void {\n if (!this.canvas) return;\n\n const ctx = this.canvas.getContext('2d');\n if (!ctx) return;\n\n const { size, fill, background, radius: rawRadius, errorCorrection, value } = this;\n\n const clampedRadius = Math.max(0, Math.min(0.5, rawRadius));\n\n const matrix = generateQR(value, errorCorrection);\n const moduleCount = matrix.length;\n const moduleSize = size / moduleCount;\n\n ctx.clearRect(0, 0, size, size);\n\n if (background && background !== 'transparent') {\n ctx.fillStyle = background;\n ctx.fillRect(0, 0, size, size);\n }\n\n const imgFraction = Math.max(0.1, Math.min(0.4, this.imageSize));\n const imgPixelSize = this._loadedImage ? size * imgFraction : 0;\n const padTotal = this._loadedImage ? this.imagePadding * 2 : 0;\n const exclusionSize = imgPixelSize + padTotal;\n const exclusionStart = (size - exclusionSize) / 2;\n const exclusionEnd = exclusionStart + exclusionSize;\n\n const useFill = this.resolveModuleFill(ctx, size);\n ctx.fillStyle = useFill;\n\n for (let row = 0; row < moduleCount; row++) {\n for (let col = 0; col < moduleCount; col++) {\n if (matrix[row][col] !== 1) continue;\n\n const x = col * moduleSize;\n const y = row * moduleSize;\n\n if (this._loadedImage) {\n const modRight = x + moduleSize;\n const modBottom = y + moduleSize;\n if (x >= exclusionStart && modRight <= exclusionEnd &&\n y >= exclusionStart && modBottom <= exclusionEnd) {\n continue;\n }\n }\n\n if (clampedRadius > 0) {\n this.drawRoundedModule(ctx, x, y, moduleSize, moduleSize, clampedRadius * moduleSize);\n } else {\n ctx.fillRect(x, y, moduleSize, moduleSize);\n }\n }\n }\n\n if (this._loadedImage) {\n this.drawCenterImage(ctx, size, imgPixelSize);\n }\n }\n\n /**\n * Returns the fill style for QR modules — either a gradient or the flat fill color.\n */\n private resolveModuleFill(ctx: CanvasRenderingContext2D, size: number): string | CanvasGradient {\n if (!this.fillGradient) return this.fill;\n\n const parts = this.fillGradient.split(',').map(s => s.trim());\n if (parts.length < 3) return this.fill;\n\n const angleDeg = parseFloat(parts[0]);\n if (Number.isNaN(angleDeg)) return this.fill;\n\n const angleRad = (angleDeg * Math.PI) / 180;\n const cx = size / 2;\n const cy = size / 2;\n const len = size / 2;\n const x0 = cx - Math.cos(angleRad) * len;\n const y0 = cy - Math.sin(angleRad) * len;\n const x1 = cx + Math.cos(angleRad) * len;\n const y1 = cy + Math.sin(angleRad) * len;\n\n const gradient = ctx.createLinearGradient(x0, y0, x1, y1);\n const colors = parts.slice(1);\n for (let i = 0; i < colors.length; i++) {\n gradient.addColorStop(i / (colors.length - 1), colors[i]);\n }\n return gradient;\n }\n\n private drawCenterImage(ctx: CanvasRenderingContext2D, size: number, imgPixelSize: number): void {\n if (!this._loadedImage) return;\n\n const x = (size - imgPixelSize) / 2;\n const y = (size - imgPixelSize) / 2;\n const r = Math.min(this.imageRadius, imgPixelSize / 2);\n\n const pad = this.imagePadding;\n if (pad > 0 && this.background && this.background !== 'transparent') {\n ctx.fillStyle = this.background;\n const bx = x - pad;\n const by = y - pad;\n const bw = imgPixelSize + pad * 2;\n const bh = imgPixelSize + pad * 2;\n const br = r + pad * 0.5;\n this.drawRoundedRect(ctx, bx, by, bw, bh, br);\n ctx.fill();\n }\n\n ctx.save();\n this.clipRoundedRect(ctx, x, y, imgPixelSize, imgPixelSize, r);\n ctx.drawImage(this._loadedImage, x, y, imgPixelSize, imgPixelSize);\n ctx.restore();\n }\n\n private drawRoundedModule(\n ctx: CanvasRenderingContext2D,\n x: number,\n y: number,\n w: number,\n h: number,\n r: number\n ): void {\n ctx.beginPath();\n ctx.moveTo(x + r, y);\n ctx.lineTo(x + w - r, y);\n ctx.arcTo(x + w, y, x + w, y + r, r);\n ctx.lineTo(x + w, y + h - r);\n ctx.arcTo(x + w, y + h, x + w - r, y + h, r);\n ctx.lineTo(x + r, y + h);\n ctx.arcTo(x, y + h, x, y + h - r, r);\n ctx.lineTo(x, y + r);\n ctx.arcTo(x, y, x + r, y, r);\n ctx.closePath();\n ctx.fill();\n }\n\n private drawRoundedRect(\n ctx: CanvasRenderingContext2D,\n x: number,\n y: number,\n w: number,\n h: number,\n r: number\n ): void {\n ctx.beginPath();\n ctx.moveTo(x + r, y);\n ctx.lineTo(x + w - r, y);\n ctx.arcTo(x + w, y, x + w, y + r, r);\n ctx.lineTo(x + w, y + h - r);\n ctx.arcTo(x + w, y + h, x + w - r, y + h, r);\n ctx.lineTo(x + r, y + h);\n ctx.arcTo(x, y + h, x, y + h - r, r);\n ctx.lineTo(x, y + r);\n ctx.arcTo(x, y, x + r, y, r);\n ctx.closePath();\n }\n\n private clipRoundedRect(\n ctx: CanvasRenderingContext2D,\n x: number,\n y: number,\n w: number,\n h: number,\n r: number\n ): void {\n ctx.beginPath();\n ctx.moveTo(x + r, y);\n ctx.lineTo(x + w - r, y);\n ctx.arcTo(x + w, y, x + w, y + r, r);\n ctx.lineTo(x + w, y + h - r);\n ctx.arcTo(x + w, y + h, x + w - r, y + h, r);\n ctx.lineTo(x + r, y + h);\n ctx.arcTo(x, y + h, x, y + h - r, r);\n ctx.lineTo(x, y + r);\n ctx.arcTo(x, y, x + r, y, r);\n ctx.closePath();\n ctx.clip();\n }\n}\n\nexport default NileQrCode;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-qr-code': NileQrCode;\n }\n}\n"],"names":["NileQrCode","h","constructor","this","value","size","fill","background","radius","errorCorrection","label","image","imageSize","imagePadding","imageRadius","fillGradient","_loadedImage","_imageLoadPromise","_this","_inherits","_o","_createClass","key","updated","changedProperties","super","has","loadImage","some","p","drawQrCode","render","ariaLabel","html","_templateObject","_taggedTemplateLiteral","download","filename","arguments","length","undefined","canvas","link","document","createElement","href","toDataURL","click","type","src","_this2","img","Image","crossOrigin","Promise","resolve","onload","onerror","emit","ctx","getContext","clampedRadius","rawRadius","Math","max","min","matrix","generateQR","moduleCount","moduleSize","clearRect","fillStyle","fillRect","imgFraction","imgPixelSize","exclusionSize","exclusionStart","exclusionEnd","useFill","resolveModuleFill","row","col","x","y","drawRoundedModule","drawCenterImage","parts","split","map","s","trim","angleDeg","parseFloat","Number","isNaN","angleRad","PI","cx","cy","len","x0","cos","y0","sin","x1","y1","gradient","createLinearGradient","colors","slice","i","addColorStop","r","pad","bx","by","bw","bh","br","drawRoundedRect","save","clipRoundedRect","drawImage","restore","w","beginPath","moveTo","lineTo","arcTo","closePath","clip","__decorate","get","styles","NileElement","property","String","reflect","prototype","attribute","query","_export","customElement"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ System.register(["lit"],function(_export,_context){"use strict";var o,_templateObject,n;function _taggedTemplateLiteral(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}));}return{setters:[function(_lit){o=_lit.css;}],execute:function execute(){_export("s",n=o(_templateObject||(_templateObject=_taggedTemplateLiteral(["\n :host {\n display: inline-block;\n -webkit-font-smoothing: var(--nile-webkit-font-smoothing, var(--ng-webkit-font-smoothing));\n -moz-osx-font-smoothing: var(--nile-moz-osx-font-smoothing, var(--ng-moz-osx-font-smoothing));\n text-rendering: var(--nile-text-rendering, var(--ng-text-rendering));\n }\n\n canvas {\n display: block;\n }\n"]))));}};});
2
+ //# sourceMappingURL=nile-qr-code.css.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nile-qr-code.css.cjs.js","sources":["../../../src/nile-qr-code/nile-qr-code.css.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { css } from 'lit';\n\n/**\n * QR Code CSS\n */\nexport const styles = css`\n :host {\n display: inline-block;\n -webkit-font-smoothing: var(--nile-webkit-font-smoothing, var(--ng-webkit-font-smoothing));\n -moz-osx-font-smoothing: var(--nile-moz-osx-font-smoothing, var(--ng-moz-osx-font-smoothing));\n text-rendering: var(--nile-text-rendering, var(--ng-text-rendering));\n }\n\n canvas {\n display: block;\n }\n`;\n\nexport default [styles];\n"],"names":["styles","css","_templateObject","_taggedTemplateLiteral"],"mappings":"oTAYaA,CAAAA,CAASC,CAAG,CAAAC,eAAA,GAAAA,eAAA,CAAAC,sBAAA"}
@@ -0,0 +1,12 @@
1
+ import{css as o}from"lit";const n=o`
2
+ :host {
3
+ display: inline-block;
4
+ -webkit-font-smoothing: var(--nile-webkit-font-smoothing, var(--ng-webkit-font-smoothing));
5
+ -moz-osx-font-smoothing: var(--nile-moz-osx-font-smoothing, var(--ng-moz-osx-font-smoothing));
6
+ text-rendering: var(--nile-text-rendering, var(--ng-text-rendering));
7
+ }
8
+
9
+ canvas {
10
+ display: block;
11
+ }
12
+ `;export{n as s};
@@ -0,0 +1,9 @@
1
+ import{__decorate as t}from"tslib";import{html as i}from"lit";import{property as e,query as r,customElement as s}from"lit/decorators.js";import{s as a}from"./nile-qr-code.css.esm.js";import{g as n}from"./nile-qr-code-utils.esm.js";import{N as o}from"../internal/nile-element.esm.js";let h=class extends o{constructor(){super(...arguments),this.value="",this.size=128,this.fill="black",this.background="white",this.radius=0,this.errorCorrection="H",this.label="",this.image="",this.imageSize=.25,this.imagePadding=4,this.imageRadius=4,this.fillGradient="",this._loadedImage=null,this._imageLoadPromise=null}static get styles(){return[a]}updated(t){if(super.updated(t),t.has("image")&&(this._loadedImage=null,this._imageLoadPromise=null,this.image))return void this.loadImage(this.image);["value","size","fill","background","radius","errorCorrection","imageSize","imagePadding","imageRadius","fillGradient"].some((i=>t.has(i)))&&this.drawQrCode()}render(){const t=this.label||this.value||"QR Code";return i`
2
+ <canvas
3
+ part="base"
4
+ role="img"
5
+ aria-label=${t}
6
+ width=${this.size}
7
+ height=${this.size}
8
+ ></canvas>
9
+ `}download(t="qr-code.png"){if(!this.canvas)return;const i=document.createElement("a");i.download=t,i.href=this.canvas.toDataURL("image/png"),i.click()}toDataURL(t="image/png"){return this.canvas?this.canvas.toDataURL(t):""}loadImage(t){const i=new Image;i.crossOrigin="anonymous",this._imageLoadPromise=new Promise((e=>{i.onload=()=>{this._loadedImage=i,this._imageLoadPromise=null,this.drawQrCode(),e()},i.onerror=()=>{this._loadedImage=null,this._imageLoadPromise=null,this.emit("nile-qr-image-error",{src:t}),this.drawQrCode(),e()}})),i.src=t}drawQrCode(){if(!this.canvas)return;const t=this.canvas.getContext("2d");if(!t)return;const{size:i,fill:e,background:r,radius:s,errorCorrection:a,value:o}=this,h=Math.max(0,Math.min(.5,s)),l=n(o,a),d=l.length,u=i/d;t.clearRect(0,0,i,i),r&&"transparent"!==r&&(t.fillStyle=r,t.fillRect(0,0,i,i));const c=Math.max(.1,Math.min(.4,this.imageSize)),m=this._loadedImage?i*c:0,f=m+(this._loadedImage?2*this.imagePadding:0),g=(i-f)/2,p=g+f,v=this.resolveModuleFill(t,i);t.fillStyle=v;for(let i=0;i<d;i++)for(let e=0;e<d;e++){if(1!==l[i][e])continue;const r=e*u,s=i*u;if(this._loadedImage){if(r>=g&&r+u<=p&&s>=g&&s+u<=p)continue}h>0?this.drawRoundedModule(t,r,s,u,u,h*u):t.fillRect(r,s,u,u)}this._loadedImage&&this.drawCenterImage(t,i,m)}resolveModuleFill(t,i){if(!this.fillGradient)return this.fill;const e=this.fillGradient.split(",").map((t=>t.trim()));if(e.length<3)return this.fill;const r=parseFloat(e[0]);if(Number.isNaN(r))return this.fill;const s=r*Math.PI/180,a=i/2,n=i/2,o=i/2,h=a-Math.cos(s)*o,l=n-Math.sin(s)*o,d=a+Math.cos(s)*o,u=n+Math.sin(s)*o,c=t.createLinearGradient(h,l,d,u),m=e.slice(1);for(let t=0;t<m.length;t++)c.addColorStop(t/(m.length-1),m[t]);return c}drawCenterImage(t,i,e){if(!this._loadedImage)return;const r=(i-e)/2,s=(i-e)/2,a=Math.min(this.imageRadius,e/2),n=this.imagePadding;if(n>0&&this.background&&"transparent"!==this.background){t.fillStyle=this.background;const i=r-n,o=s-n,h=e+2*n,l=e+2*n,d=a+.5*n;this.drawRoundedRect(t,i,o,h,l,d),t.fill()}t.save(),this.clipRoundedRect(t,r,s,e,e,a),t.drawImage(this._loadedImage,r,s,e,e),t.restore()}drawRoundedModule(t,i,e,r,s,a){t.beginPath(),t.moveTo(i+a,e),t.lineTo(i+r-a,e),t.arcTo(i+r,e,i+r,e+a,a),t.lineTo(i+r,e+s-a),t.arcTo(i+r,e+s,i+r-a,e+s,a),t.lineTo(i+a,e+s),t.arcTo(i,e+s,i,e+s-a,a),t.lineTo(i,e+a),t.arcTo(i,e,i+a,e,a),t.closePath(),t.fill()}drawRoundedRect(t,i,e,r,s,a){t.beginPath(),t.moveTo(i+a,e),t.lineTo(i+r-a,e),t.arcTo(i+r,e,i+r,e+a,a),t.lineTo(i+r,e+s-a),t.arcTo(i+r,e+s,i+r-a,e+s,a),t.lineTo(i+a,e+s),t.arcTo(i,e+s,i,e+s-a,a),t.lineTo(i,e+a),t.arcTo(i,e,i+a,e,a),t.closePath()}clipRoundedRect(t,i,e,r,s,a){t.beginPath(),t.moveTo(i+a,e),t.lineTo(i+r-a,e),t.arcTo(i+r,e,i+r,e+a,a),t.lineTo(i+r,e+s-a),t.arcTo(i+r,e+s,i+r-a,e+s,a),t.lineTo(i+a,e+s),t.arcTo(i,e+s,i,e+s-a,a),t.lineTo(i,e+a),t.arcTo(i,e,i+a,e,a),t.closePath(),t.clip()}};t([e({type:String,reflect:!0})],h.prototype,"value",void 0),t([e({type:Number,reflect:!0})],h.prototype,"size",void 0),t([e({type:String,reflect:!0})],h.prototype,"fill",void 0),t([e({type:String,reflect:!0})],h.prototype,"background",void 0),t([e({type:Number,reflect:!0})],h.prototype,"radius",void 0),t([e({attribute:"error-correction",reflect:!0})],h.prototype,"errorCorrection",void 0),t([e({type:String,reflect:!0})],h.prototype,"label",void 0),t([e({type:String,reflect:!0})],h.prototype,"image",void 0),t([e({attribute:"image-size",type:Number,reflect:!0})],h.prototype,"imageSize",void 0),t([e({attribute:"image-padding",type:Number,reflect:!0})],h.prototype,"imagePadding",void 0),t([e({attribute:"image-radius",type:Number,reflect:!0})],h.prototype,"imageRadius",void 0),t([e({attribute:"fill-gradient",type:String,reflect:!0})],h.prototype,"fillGradient",void 0),t([r("canvas")],h.prototype,"canvas",void 0),h=t([s("nile-qr-code")],h);export{h as N};