@nanoporetech-digital/components 2.9.0 → 2.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (660) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/dist/cjs/{algoliasearch.umd-dcf18a4a.js → algoliasearch.umd-7ee60729.js} +3 -3
  3. package/dist/cjs/{algoliasearch.umd-dcf18a4a.js.map → algoliasearch.umd-7ee60729.js.map} +1 -1
  4. package/dist/cjs/{component-store-722032a5.js → component-store-19844199.js} +37 -25
  5. package/dist/cjs/component-store-19844199.js.map +1 -0
  6. package/dist/cjs/{date-utils-0ae9a12d.js → date-utils-b3af910d.js} +2 -2
  7. package/dist/cjs/date-utils-b3af910d.js.map +1 -0
  8. package/dist/cjs/{global-0d4f3b77.js → global-989678ec.js} +1 -8
  9. package/dist/cjs/global-989678ec.js.map +1 -0
  10. package/dist/cjs/index-cb62df44.js +5 -0
  11. package/dist/cjs/loader.cjs.js +2 -2
  12. package/dist/cjs/nano-algolia-filter.cjs.entry.js +1 -1
  13. package/dist/cjs/nano-algolia-input.cjs.entry.js +2 -2
  14. package/dist/cjs/nano-algolia.cjs.entry.js +2 -2
  15. package/dist/cjs/nano-checkbox-group.cjs.entry.js +58 -20
  16. package/dist/cjs/nano-checkbox-group.cjs.entry.js.map +1 -1
  17. package/dist/cjs/nano-checkbox.cjs.entry.js +27 -15
  18. package/dist/cjs/nano-checkbox.cjs.entry.js.map +1 -1
  19. package/dist/cjs/nano-components.cjs.js +2 -2
  20. package/dist/cjs/nano-datalist_3.cjs.entry.js +4 -1
  21. package/dist/cjs/nano-datalist_3.cjs.entry.js.map +1 -1
  22. package/dist/cjs/nano-date-input.cjs.entry.js +30 -9
  23. package/dist/cjs/nano-date-input.cjs.entry.js.map +1 -1
  24. package/dist/cjs/nano-date-picker.cjs.entry.js +2 -2
  25. package/dist/cjs/nano-date-picker.cjs.entry.js.map +1 -1
  26. package/dist/cjs/nano-details.cjs.entry.js +1 -2
  27. package/dist/cjs/nano-details.cjs.entry.js.map +1 -1
  28. package/dist/cjs/nano-dialog.cjs.entry.js +13 -2
  29. package/dist/cjs/nano-dialog.cjs.entry.js.map +1 -1
  30. package/dist/cjs/nano-field-validator.cjs.entry.js +531 -0
  31. package/dist/cjs/nano-field-validator.cjs.entry.js.map +1 -0
  32. package/dist/cjs/nano-file-upload.cjs.entry.js +59 -36
  33. package/dist/cjs/nano-file-upload.cjs.entry.js.map +1 -1
  34. package/dist/cjs/nano-global-nav.cjs.entry.js +2 -2
  35. package/dist/cjs/nano-global-search-results.cjs.entry.js +1 -2
  36. package/dist/cjs/nano-global-search-results.cjs.entry.js.map +1 -1
  37. package/dist/cjs/nano-grid_3.cjs.entry.js +1 -2
  38. package/dist/cjs/nano-grid_3.cjs.entry.js.map +1 -1
  39. package/dist/cjs/nano-icon-button.cjs.entry.js +4 -0
  40. package/dist/cjs/nano-icon-button.cjs.entry.js.map +1 -1
  41. package/dist/cjs/nano-icon.cjs.entry.js.map +1 -1
  42. package/dist/cjs/nano-input.cjs.entry.js +25 -13
  43. package/dist/cjs/nano-input.cjs.entry.js.map +1 -1
  44. package/dist/cjs/nano-nav-item_2.cjs.entry.js +52 -16
  45. package/dist/cjs/nano-nav-item_2.cjs.entry.js.map +1 -1
  46. package/dist/cjs/nano-resize-observe_2.cjs.entry.js +1 -2
  47. package/dist/cjs/nano-resize-observe_2.cjs.entry.js.map +1 -1
  48. package/dist/cjs/nano-slides.cjs.entry.js +1 -2
  49. package/dist/cjs/nano-slides.cjs.entry.js.map +1 -1
  50. package/dist/cjs/nano-sticker.cjs.entry.js +4 -5
  51. package/dist/cjs/nano-sticker.cjs.entry.js.map +1 -1
  52. package/dist/cjs/nano-tab-group.cjs.entry.js +5 -3
  53. package/dist/cjs/nano-tab-group.cjs.entry.js.map +1 -1
  54. package/dist/cjs/nano-tab.cjs.entry.js +5 -1
  55. package/dist/cjs/nano-tab.cjs.entry.js.map +1 -1
  56. package/dist/cjs/nano-tooltip.cjs.entry.js +1 -1
  57. package/dist/cjs/nano-tooltip.cjs.entry.js.map +1 -1
  58. package/dist/collection/collection-manifest.json +2 -1
  59. package/dist/collection/components/accordion/accordion.js +1 -1
  60. package/dist/collection/components/alert/alert.js +1 -1
  61. package/dist/collection/components/algolia/algolia-filter.js +2 -2
  62. package/dist/collection/components/algolia/algolia-input.js +5 -5
  63. package/dist/collection/components/algolia/algolia-results.js +1 -1
  64. package/dist/collection/components/algolia/algolia.js +6 -6
  65. package/dist/collection/components/checkbox/checkbox-group.css +5 -5
  66. package/dist/collection/components/checkbox/checkbox-group.js +119 -25
  67. package/dist/collection/components/checkbox/checkbox-group.js.map +1 -1
  68. package/dist/collection/components/checkbox/checkbox.css +1 -1
  69. package/dist/collection/components/checkbox/checkbox.js +83 -22
  70. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  71. package/dist/collection/components/datalist/datalist.js +5 -2
  72. package/dist/collection/components/datalist/datalist.js.map +1 -1
  73. package/dist/collection/components/date-input/date-input.js +99 -16
  74. package/dist/collection/components/date-input/date-input.js.map +1 -1
  75. package/dist/collection/components/date-picker/date-picker.css +1 -1
  76. package/dist/collection/components/date-picker/date-picker.js +5 -5
  77. package/dist/collection/components/details/details.js +1 -2
  78. package/dist/collection/components/details/details.js.map +1 -1
  79. package/dist/collection/components/dialog/dialog.js +34 -1
  80. package/dist/collection/components/dialog/dialog.js.map +1 -1
  81. package/dist/collection/components/dropdown/dropdown.js +1 -1
  82. package/dist/collection/components/field-validator/field-validator.js +579 -0
  83. package/dist/collection/components/field-validator/field-validator.js.map +1 -0
  84. package/dist/collection/components/file-upload/file-upload.css +17 -5
  85. package/dist/collection/components/file-upload/file-upload.js +111 -44
  86. package/dist/collection/components/file-upload/file-upload.js.map +1 -1
  87. package/dist/collection/components/global-nav/global-nav.js +4 -4
  88. package/dist/collection/components/global-search-results/global-search-results.js +0 -1
  89. package/dist/collection/components/global-search-results/global-search-results.js.map +1 -1
  90. package/dist/collection/components/grid/grid-item.js +1 -1
  91. package/dist/collection/components/grid/grid.js +0 -1
  92. package/dist/collection/components/grid/grid.js.map +1 -1
  93. package/dist/collection/components/icon/icon.js +2 -2
  94. package/dist/collection/components/icon/icon.js.map +1 -1
  95. package/dist/collection/components/icon-button/icon-button.js +23 -1
  96. package/dist/collection/components/icon-button/icon-button.js.map +1 -1
  97. package/dist/collection/components/input/input.css +3 -2
  98. package/dist/collection/components/input/input.js +51 -22
  99. package/dist/collection/components/input/input.js.map +1 -1
  100. package/dist/collection/components/nav-item/nav-item.js +4 -4
  101. package/dist/collection/components/range/range.js +4 -4
  102. package/dist/collection/components/resize-observe/resize-observe.js +1 -2
  103. package/dist/collection/components/resize-observe/resize-observe.js.map +1 -1
  104. package/dist/collection/components/select/select.css +4 -3
  105. package/dist/collection/components/select/select.js +86 -26
  106. package/dist/collection/components/select/select.js.map +1 -1
  107. package/dist/collection/components/slides/slides.js +7 -8
  108. package/dist/collection/components/slides/slides.js.map +1 -1
  109. package/dist/collection/components/{sticky → sticker}/sticker.css +0 -0
  110. package/dist/collection/components/{sticky → sticker}/sticker.js +2 -3
  111. package/dist/collection/components/sticker/sticker.js.map +1 -0
  112. package/dist/collection/components/tabs/tab-group.js +5 -3
  113. package/dist/collection/components/tabs/tab-group.js.map +1 -1
  114. package/dist/collection/components/tabs/tab.js +5 -1
  115. package/dist/collection/components/tabs/tab.js.map +1 -1
  116. package/dist/collection/components/tooltip/tooltip.css +0 -1
  117. package/dist/collection/global/script/global.js +0 -7
  118. package/dist/collection/global/script/global.js.map +1 -1
  119. package/dist/collection/utils/date-utils.js +1 -1
  120. package/dist/collection/utils/date-utils.js.map +1 -1
  121. package/dist/collection/utils/store/component-store.js +4 -13
  122. package/dist/collection/utils/store/component-store.js.map +1 -1
  123. package/dist/collection/utils/store/get-set.js +15 -1
  124. package/dist/collection/utils/store/get-set.js.map +1 -1
  125. package/dist/components/algoliasearch.umd.js +2 -2
  126. package/dist/components/algoliasearch.umd.js.map +1 -1
  127. package/dist/components/component-store.js +36 -24
  128. package/dist/components/component-store.js.map +1 -1
  129. package/dist/components/datalist.js +4 -1
  130. package/dist/components/datalist.js.map +1 -1
  131. package/dist/components/date-picker.js +2 -2
  132. package/dist/components/date-picker.js.map +1 -1
  133. package/dist/components/grid.js +1 -2
  134. package/dist/components/grid.js.map +1 -1
  135. package/dist/components/icon-button.js +6 -1
  136. package/dist/components/icon-button.js.map +1 -1
  137. package/dist/components/icon.js.map +1 -1
  138. package/dist/components/index.js +0 -7
  139. package/dist/components/index.js.map +1 -1
  140. package/dist/components/input.js +27 -14
  141. package/dist/components/input.js.map +1 -1
  142. package/dist/components/nano-checkbox-group.js +62 -21
  143. package/dist/components/nano-checkbox-group.js.map +1 -1
  144. package/dist/components/nano-checkbox.js +31 -17
  145. package/dist/components/nano-checkbox.js.map +1 -1
  146. package/dist/components/nano-date-input.js +32 -8
  147. package/dist/components/nano-date-input.js.map +1 -1
  148. package/dist/components/nano-details.js +1 -2
  149. package/dist/components/nano-details.js.map +1 -1
  150. package/dist/components/nano-dialog.js +13 -1
  151. package/dist/components/nano-dialog.js.map +1 -1
  152. package/dist/components/nano-field-validator.d.ts +11 -0
  153. package/dist/components/nano-field-validator.js +559 -0
  154. package/dist/components/nano-field-validator.js.map +1 -0
  155. package/dist/components/nano-file-upload.js +62 -37
  156. package/dist/components/nano-file-upload.js.map +1 -1
  157. package/dist/components/nano-global-search-results.js +1 -2
  158. package/dist/components/nano-global-search-results.js.map +1 -1
  159. package/dist/components/nano-slides.js +1 -2
  160. package/dist/components/nano-slides.js.map +1 -1
  161. package/dist/components/nano-tab-group.js +4 -2
  162. package/dist/components/nano-tab-group.js.map +1 -1
  163. package/dist/components/nano-tab.js +5 -1
  164. package/dist/components/nano-tab.js.map +1 -1
  165. package/dist/components/resize-observe.js +1 -2
  166. package/dist/components/resize-observe.js.map +1 -1
  167. package/dist/components/select.js +56 -18
  168. package/dist/components/select.js.map +1 -1
  169. package/dist/components/sticker.js +4 -5
  170. package/dist/components/sticker.js.map +1 -1
  171. package/dist/components/tooltip.js +1 -1
  172. package/dist/components/tooltip.js.map +1 -1
  173. package/dist/custom-elements/index.d.ts +6 -0
  174. package/dist/custom-elements/index.js +20842 -20843
  175. package/dist/custom-elements/index.js.map +1 -1
  176. package/dist/esm/{algolia-data-dd72d1b7.js → algolia-data-80c1169a.js} +2 -2
  177. package/dist/esm/{algolia-data-dd72d1b7.js.map → algolia-data-80c1169a.js.map} +1 -1
  178. package/dist/esm/{algoliasearch.umd-6143495f.js → algoliasearch.umd-86359963.js} +3 -3
  179. package/dist/esm/{algoliasearch.umd-6143495f.js.map → algoliasearch.umd-86359963.js.map} +1 -1
  180. package/dist/esm/{component-store-b6fbfa35.js → component-store-d238fee4.js} +38 -26
  181. package/dist/esm/component-store-d238fee4.js.map +1 -0
  182. package/dist/esm/{date-utils-e4b757ff.js → date-utils-839cb010.js} +2 -2
  183. package/dist/esm/date-utils-839cb010.js.map +1 -0
  184. package/dist/esm/{form-control-cf23c6a2.js → form-control-ad05507c.js} +2 -2
  185. package/dist/esm/{form-control-cf23c6a2.js.map → form-control-ad05507c.js.map} +1 -1
  186. package/dist/esm/{global-d5ec4d53.js → global-8047b4ff.js} +1 -8
  187. package/dist/esm/global-8047b4ff.js.map +1 -0
  188. package/dist/esm/{index-5f8d16e7.js → index-c42becad.js} +7 -2
  189. package/dist/esm/{index-5f8d16e7.js.map → index-c42becad.js.map} +1 -1
  190. package/dist/esm/loader.js +3 -3
  191. package/dist/esm/nano-accordion.entry.js +1 -1
  192. package/dist/esm/nano-alert.entry.js +1 -1
  193. package/dist/esm/nano-algolia-filter.entry.js +3 -3
  194. package/dist/esm/nano-algolia-input.entry.js +4 -4
  195. package/dist/esm/nano-algolia-pagination.entry.js +2 -2
  196. package/dist/esm/nano-algolia-results.entry.js +2 -2
  197. package/dist/esm/nano-algolia.entry.js +4 -4
  198. package/dist/esm/nano-aspect-ratio.entry.js +1 -1
  199. package/dist/esm/nano-checkbox-group.entry.js +59 -21
  200. package/dist/esm/nano-checkbox-group.entry.js.map +1 -1
  201. package/dist/esm/nano-checkbox.entry.js +28 -16
  202. package/dist/esm/nano-checkbox.entry.js.map +1 -1
  203. package/dist/esm/nano-components.js +3 -3
  204. package/dist/esm/nano-datalist_3.entry.js +5 -2
  205. package/dist/esm/nano-datalist_3.entry.js.map +1 -1
  206. package/dist/esm/nano-date-input.entry.js +31 -10
  207. package/dist/esm/nano-date-input.entry.js.map +1 -1
  208. package/dist/esm/nano-date-picker.entry.js +3 -3
  209. package/dist/esm/nano-date-picker.entry.js.map +1 -1
  210. package/dist/esm/nano-details.entry.js +2 -3
  211. package/dist/esm/nano-details.entry.js.map +1 -1
  212. package/dist/esm/nano-dialog.entry.js +14 -3
  213. package/dist/esm/nano-dialog.entry.js.map +1 -1
  214. package/dist/esm/nano-drawer.entry.js +1 -1
  215. package/dist/esm/nano-dropdown.entry.js +1 -1
  216. package/dist/esm/nano-field-validator.entry.js +527 -0
  217. package/dist/esm/nano-field-validator.entry.js.map +1 -0
  218. package/dist/esm/nano-file-upload.entry.js +60 -37
  219. package/dist/esm/nano-file-upload.entry.js.map +1 -1
  220. package/dist/esm/nano-global-nav.entry.js +3 -3
  221. package/dist/esm/nano-global-search-results.entry.js +2 -3
  222. package/dist/esm/nano-global-search-results.entry.js.map +1 -1
  223. package/dist/esm/nano-grid_3.entry.js +2 -3
  224. package/dist/esm/nano-grid_3.entry.js.map +1 -1
  225. package/dist/esm/nano-hero.entry.js +1 -1
  226. package/dist/esm/nano-icon-button.entry.js +5 -1
  227. package/dist/esm/nano-icon-button.entry.js.map +1 -1
  228. package/dist/esm/nano-icon.entry.js +1 -1
  229. package/dist/esm/nano-icon.entry.js.map +1 -1
  230. package/dist/esm/nano-input.entry.js +28 -16
  231. package/dist/esm/nano-input.entry.js.map +1 -1
  232. package/dist/esm/nano-menu-drawer.entry.js +1 -1
  233. package/dist/esm/nano-nav-item_2.entry.js +55 -19
  234. package/dist/esm/nano-nav-item_2.entry.js.map +1 -1
  235. package/dist/esm/nano-range.entry.js +1 -1
  236. package/dist/esm/nano-rating.entry.js +1 -1
  237. package/dist/esm/nano-resize-observe_2.entry.js +2 -3
  238. package/dist/esm/nano-resize-observe_2.entry.js.map +1 -1
  239. package/dist/esm/nano-slide.entry.js +1 -1
  240. package/dist/esm/nano-slides.entry.js +2 -3
  241. package/dist/esm/nano-slides.entry.js.map +1 -1
  242. package/dist/esm/nano-spinner.entry.js +1 -1
  243. package/dist/esm/nano-split-pane.entry.js +1 -1
  244. package/dist/esm/nano-sticker.entry.js +5 -6
  245. package/dist/esm/nano-sticker.entry.js.map +1 -1
  246. package/dist/esm/nano-tab-content.entry.js +1 -1
  247. package/dist/esm/nano-tab-group.entry.js +6 -4
  248. package/dist/esm/nano-tab-group.entry.js.map +1 -1
  249. package/dist/esm/nano-tab.entry.js +6 -2
  250. package/dist/esm/nano-tab.entry.js.map +1 -1
  251. package/dist/esm/nano-tooltip.entry.js +2 -2
  252. package/dist/esm/nano-tooltip.entry.js.map +1 -1
  253. package/dist/esm-es5/{algolia-data-dd72d1b7.js → algolia-data-80c1169a.js} +2 -2
  254. package/dist/esm-es5/{algolia-data-dd72d1b7.js.map → algolia-data-80c1169a.js.map} +0 -0
  255. package/dist/esm-es5/{algoliasearch.umd-6143495f.js → algoliasearch.umd-86359963.js} +3 -3
  256. package/dist/esm-es5/{algoliasearch.umd-6143495f.js.map → algoliasearch.umd-86359963.js.map} +1 -1
  257. package/dist/esm-es5/component-store-d238fee4.js +5 -0
  258. package/dist/esm-es5/component-store-d238fee4.js.map +1 -0
  259. package/dist/esm-es5/date-utils-839cb010.js +5 -0
  260. package/dist/esm-es5/date-utils-839cb010.js.map +1 -0
  261. package/dist/esm-es5/{form-control-cf23c6a2.js → form-control-ad05507c.js} +2 -2
  262. package/dist/esm-es5/{form-control-cf23c6a2.js.map → form-control-ad05507c.js.map} +0 -0
  263. package/dist/esm-es5/{global-d5ec4d53.js → global-8047b4ff.js} +2 -2
  264. package/dist/esm-es5/global-8047b4ff.js.map +1 -0
  265. package/dist/esm-es5/{index-5f8d16e7.js → index-c42becad.js} +2 -2
  266. package/dist/esm-es5/{index-5f8d16e7.js.map → index-c42becad.js.map} +0 -0
  267. package/dist/esm-es5/loader.js +1 -1
  268. package/dist/esm-es5/loader.js.map +1 -1
  269. package/dist/esm-es5/nano-accordion.entry.js +1 -1
  270. package/dist/esm-es5/nano-alert.entry.js +1 -1
  271. package/dist/esm-es5/nano-algolia-filter.entry.js +1 -1
  272. package/dist/esm-es5/nano-algolia-input.entry.js +1 -1
  273. package/dist/esm-es5/nano-algolia-pagination.entry.js +1 -1
  274. package/dist/esm-es5/nano-algolia-results.entry.js +1 -1
  275. package/dist/esm-es5/nano-algolia.entry.js +1 -1
  276. package/dist/esm-es5/nano-aspect-ratio.entry.js +1 -1
  277. package/dist/esm-es5/nano-checkbox-group.entry.js +2 -2
  278. package/dist/esm-es5/nano-checkbox-group.entry.js.map +1 -1
  279. package/dist/esm-es5/nano-checkbox.entry.js +1 -1
  280. package/dist/esm-es5/nano-checkbox.entry.js.map +1 -1
  281. package/dist/esm-es5/nano-components.js +1 -1
  282. package/dist/esm-es5/nano-components.js.map +1 -1
  283. package/dist/esm-es5/nano-datalist_3.entry.js +1 -1
  284. package/dist/esm-es5/nano-datalist_3.entry.js.map +1 -1
  285. package/dist/esm-es5/nano-date-input.entry.js +1 -1
  286. package/dist/esm-es5/nano-date-input.entry.js.map +1 -1
  287. package/dist/esm-es5/nano-date-picker.entry.js +1 -1
  288. package/dist/esm-es5/nano-date-picker.entry.js.map +1 -1
  289. package/dist/esm-es5/nano-details.entry.js +1 -1
  290. package/dist/esm-es5/nano-details.entry.js.map +1 -1
  291. package/dist/esm-es5/nano-dialog.entry.js +1 -1
  292. package/dist/esm-es5/nano-dialog.entry.js.map +1 -1
  293. package/dist/esm-es5/nano-drawer.entry.js +1 -1
  294. package/dist/esm-es5/nano-dropdown.entry.js +1 -1
  295. package/dist/esm-es5/nano-field-validator.entry.js +5 -0
  296. package/dist/esm-es5/nano-field-validator.entry.js.map +1 -0
  297. package/dist/esm-es5/nano-file-upload.entry.js +2 -2
  298. package/dist/esm-es5/nano-file-upload.entry.js.map +1 -1
  299. package/dist/esm-es5/nano-global-nav.entry.js +1 -1
  300. package/dist/esm-es5/nano-global-search-results.entry.js +1 -1
  301. package/dist/esm-es5/nano-global-search-results.entry.js.map +1 -1
  302. package/dist/esm-es5/nano-grid_3.entry.js +1 -1
  303. package/dist/esm-es5/nano-grid_3.entry.js.map +1 -1
  304. package/dist/esm-es5/nano-hero.entry.js +1 -1
  305. package/dist/esm-es5/nano-icon-button.entry.js +2 -2
  306. package/dist/esm-es5/nano-icon-button.entry.js.map +1 -1
  307. package/dist/esm-es5/nano-icon.entry.js +1 -1
  308. package/dist/esm-es5/nano-icon.entry.js.map +1 -1
  309. package/dist/esm-es5/nano-input.entry.js +1 -1
  310. package/dist/esm-es5/nano-input.entry.js.map +1 -1
  311. package/dist/esm-es5/nano-menu-drawer.entry.js +1 -1
  312. package/dist/esm-es5/nano-nav-item_2.entry.js +1 -1
  313. package/dist/esm-es5/nano-nav-item_2.entry.js.map +1 -1
  314. package/dist/esm-es5/nano-range.entry.js +1 -1
  315. package/dist/esm-es5/nano-rating.entry.js +1 -1
  316. package/dist/esm-es5/nano-resize-observe_2.entry.js +1 -1
  317. package/dist/esm-es5/nano-resize-observe_2.entry.js.map +1 -1
  318. package/dist/esm-es5/nano-slide.entry.js +1 -1
  319. package/dist/esm-es5/nano-slides.entry.js +2 -2
  320. package/dist/esm-es5/nano-slides.entry.js.map +1 -1
  321. package/dist/esm-es5/nano-spinner.entry.js +1 -1
  322. package/dist/esm-es5/nano-split-pane.entry.js +1 -1
  323. package/dist/esm-es5/nano-sticker.entry.js +1 -1
  324. package/dist/esm-es5/nano-sticker.entry.js.map +1 -1
  325. package/dist/esm-es5/nano-tab-content.entry.js +1 -1
  326. package/dist/esm-es5/nano-tab-group.entry.js +2 -2
  327. package/dist/esm-es5/nano-tab-group.entry.js.map +1 -1
  328. package/dist/esm-es5/nano-tab.entry.js +1 -1
  329. package/dist/esm-es5/nano-tab.entry.js.map +1 -1
  330. package/dist/esm-es5/nano-tooltip.entry.js +1 -1
  331. package/dist/esm-es5/nano-tooltip.entry.js.map +1 -1
  332. package/dist/nano-components/nano-components.css +1 -1
  333. package/dist/nano-components/nano-components.esm.js +1 -1
  334. package/dist/nano-components/nano-components.esm.js.map +1 -1
  335. package/dist/nano-components/nano-components.js +1 -1
  336. package/dist/nano-components/p-01667573.entry.js +5 -0
  337. package/dist/nano-components/p-01667573.entry.js.map +1 -0
  338. package/dist/nano-components/p-0193a282.entry.js +5 -0
  339. package/dist/nano-components/p-0193a282.entry.js.map +1 -0
  340. package/dist/nano-components/p-0320410c.entry.js +5 -0
  341. package/dist/nano-components/p-0320410c.entry.js.map +1 -0
  342. package/dist/nano-components/{p-4429caac.system.entry.js → p-0c6c2141.system.entry.js} +2 -2
  343. package/dist/nano-components/{p-4429caac.system.entry.js.map → p-0c6c2141.system.entry.js.map} +0 -0
  344. package/dist/nano-components/{p-7232c046.system.entry.js → p-0d0dfc06.system.entry.js} +2 -2
  345. package/dist/nano-components/{p-7232c046.system.entry.js.map → p-0d0dfc06.system.entry.js.map} +0 -0
  346. package/dist/nano-components/{p-e562bffd.entry.js → p-0e2e3f4a.entry.js} +2 -2
  347. package/dist/nano-components/{p-e562bffd.entry.js.map → p-0e2e3f4a.entry.js.map} +0 -0
  348. package/dist/nano-components/p-129e2b4b.system.js +5 -0
  349. package/dist/nano-components/p-129e2b4b.system.js.map +1 -0
  350. package/dist/nano-components/{p-c0ddb4c3.entry.js → p-166ade3e.entry.js} +2 -2
  351. package/dist/nano-components/{p-c0ddb4c3.entry.js.map → p-166ade3e.entry.js.map} +0 -0
  352. package/dist/nano-components/p-1b120f53.entry.js +5 -0
  353. package/dist/nano-components/p-1b120f53.entry.js.map +1 -0
  354. package/dist/nano-components/{p-7d351076.system.entry.js → p-21af2a5e.system.entry.js} +2 -2
  355. package/dist/nano-components/{p-7d351076.system.entry.js.map → p-21af2a5e.system.entry.js.map} +0 -0
  356. package/dist/nano-components/p-21d6d31e.system.entry.js +5 -0
  357. package/dist/nano-components/p-21d6d31e.system.entry.js.map +1 -0
  358. package/dist/nano-components/{p-040b6cda.entry.js → p-2649fc8e.entry.js} +2 -2
  359. package/dist/nano-components/{p-040b6cda.entry.js.map → p-2649fc8e.entry.js.map} +0 -0
  360. package/dist/nano-components/p-2720ee8f.entry.js +5 -0
  361. package/dist/nano-components/p-2720ee8f.entry.js.map +1 -0
  362. package/dist/nano-components/{p-3456db01.entry.js → p-27efac97.entry.js} +2 -2
  363. package/dist/nano-components/{p-3456db01.entry.js.map → p-27efac97.entry.js.map} +0 -0
  364. package/dist/nano-components/{p-2e6c55e2.entry.js → p-2d53d1a0.entry.js} +2 -2
  365. package/dist/nano-components/{p-2e6c55e2.entry.js.map → p-2d53d1a0.entry.js.map} +0 -0
  366. package/dist/nano-components/{p-8a8f893b.system.entry.js → p-316f83a9.system.entry.js} +2 -2
  367. package/dist/nano-components/{p-8a8f893b.system.entry.js.map → p-316f83a9.system.entry.js.map} +0 -0
  368. package/dist/nano-components/p-32900c91.entry.js +5 -0
  369. package/dist/nano-components/p-32900c91.entry.js.map +1 -0
  370. package/dist/nano-components/p-32f4516e.js +5 -0
  371. package/dist/nano-components/p-32f4516e.js.map +1 -0
  372. package/dist/nano-components/{p-43543d18.entry.js → p-333237e8.entry.js} +2 -2
  373. package/dist/nano-components/{p-43543d18.entry.js.map → p-333237e8.entry.js.map} +0 -0
  374. package/dist/nano-components/p-33fce1a6.js +5 -0
  375. package/dist/nano-components/p-33fce1a6.js.map +1 -0
  376. package/dist/nano-components/p-371aebe7.system.entry.js +23 -0
  377. package/dist/nano-components/p-371aebe7.system.entry.js.map +1 -0
  378. package/dist/nano-components/{p-a898bf92.system.entry.js → p-379e21d9.system.entry.js} +2 -2
  379. package/dist/nano-components/{p-a898bf92.system.entry.js.map → p-379e21d9.system.entry.js.map} +0 -0
  380. package/dist/nano-components/{p-3ad1d5aa.system.entry.js → p-39d36fd1.system.entry.js} +2 -2
  381. package/dist/nano-components/{p-3ad1d5aa.system.entry.js.map → p-39d36fd1.system.entry.js.map} +0 -0
  382. package/dist/nano-components/{p-41a2e2e4.system.js → p-3a00de47.system.js} +2 -2
  383. package/dist/nano-components/{p-41a2e2e4.system.js.map → p-3a00de47.system.js.map} +0 -0
  384. package/dist/nano-components/p-41899a31.system.entry.js +5 -0
  385. package/dist/nano-components/p-41899a31.system.entry.js.map +1 -0
  386. package/dist/nano-components/{p-3ef30ded.system.entry.js → p-48874481.system.entry.js} +2 -2
  387. package/dist/nano-components/{p-3ef30ded.system.entry.js.map → p-48874481.system.entry.js.map} +0 -0
  388. package/dist/nano-components/{p-08ffc9a1.entry.js → p-4e2c0abb.entry.js} +2 -2
  389. package/dist/nano-components/{p-08ffc9a1.entry.js.map → p-4e2c0abb.entry.js.map} +0 -0
  390. package/dist/nano-components/{p-090f22a9.system.entry.js → p-5100ae70.system.entry.js} +2 -2
  391. package/dist/nano-components/{p-090f22a9.system.entry.js.map → p-5100ae70.system.entry.js.map} +0 -0
  392. package/dist/nano-components/{p-593de29b.system.entry.js → p-52769304.system.entry.js} +2 -2
  393. package/dist/nano-components/{p-593de29b.system.entry.js.map → p-52769304.system.entry.js.map} +0 -0
  394. package/dist/nano-components/p-53957ec6.system.js +5 -0
  395. package/dist/nano-components/p-53957ec6.system.js.map +1 -0
  396. package/dist/nano-components/p-561500f0.system.entry.js +5 -0
  397. package/dist/nano-components/p-561500f0.system.entry.js.map +1 -0
  398. package/dist/nano-components/{p-8278c5d2.system.entry.js → p-56f86047.system.entry.js} +2 -2
  399. package/dist/nano-components/{p-8278c5d2.system.entry.js.map → p-56f86047.system.entry.js.map} +0 -0
  400. package/dist/nano-components/{p-2057d480.system.entry.js → p-5b66bb8f.system.entry.js} +2 -2
  401. package/dist/nano-components/{p-2057d480.system.entry.js.map → p-5b66bb8f.system.entry.js.map} +0 -0
  402. package/dist/nano-components/{p-20387cde.system.entry.js → p-6b4dd158.system.entry.js} +2 -2
  403. package/dist/nano-components/{p-20387cde.system.entry.js.map → p-6b4dd158.system.entry.js.map} +0 -0
  404. package/dist/nano-components/{p-d24811c8.system.js → p-6b5760b1.system.js} +3 -3
  405. package/dist/nano-components/{p-d24811c8.system.js.map → p-6b5760b1.system.js.map} +1 -1
  406. package/dist/nano-components/{p-5066e563.system.entry.js → p-6dad332b.system.entry.js} +2 -2
  407. package/dist/nano-components/{p-5066e563.system.entry.js.map → p-6dad332b.system.entry.js.map} +0 -0
  408. package/dist/nano-components/{p-730f60ea.entry.js → p-6ddb51e4.entry.js} +2 -2
  409. package/dist/nano-components/p-6ddb51e4.entry.js.map +1 -0
  410. package/dist/nano-components/p-70272eae.js +5 -0
  411. package/dist/nano-components/p-70272eae.js.map +1 -0
  412. package/dist/nano-components/{p-a6c84740.js → p-71e9fa33.js} +2 -2
  413. package/dist/nano-components/{p-a6c84740.js.map → p-71e9fa33.js.map} +0 -0
  414. package/dist/nano-components/{p-313970ff.entry.js → p-73985eda.entry.js} +2 -2
  415. package/dist/nano-components/{p-313970ff.entry.js.map → p-73985eda.entry.js.map} +0 -0
  416. package/dist/nano-components/p-755d9227.entry.js +5 -0
  417. package/dist/nano-components/p-755d9227.entry.js.map +1 -0
  418. package/dist/nano-components/{p-58d7f10f.entry.js → p-76c903db.entry.js} +2 -2
  419. package/dist/nano-components/{p-58d7f10f.entry.js.map → p-76c903db.entry.js.map} +0 -0
  420. package/dist/nano-components/{p-f53989c3.system.entry.js → p-7aa7425d.system.entry.js} +2 -2
  421. package/dist/nano-components/{p-f53989c3.system.entry.js.map → p-7aa7425d.system.entry.js.map} +1 -1
  422. package/dist/nano-components/{p-531d5275.system.entry.js → p-7ad4a27a.system.entry.js} +2 -2
  423. package/dist/nano-components/p-7ad4a27a.system.entry.js.map +1 -0
  424. package/dist/nano-components/p-7bd25494.entry.js +5 -0
  425. package/dist/nano-components/p-7bd25494.entry.js.map +1 -0
  426. package/dist/nano-components/p-7c837460.entry.js +5 -0
  427. package/dist/nano-components/p-7c837460.entry.js.map +1 -0
  428. package/dist/nano-components/{p-2ae4918d.system.entry.js → p-7e55b214.system.entry.js} +2 -2
  429. package/dist/nano-components/{p-2ae4918d.system.entry.js.map → p-7e55b214.system.entry.js.map} +0 -0
  430. package/dist/nano-components/{p-62ecd3a1.system.entry.js → p-7f1374b6.system.entry.js} +2 -2
  431. package/dist/nano-components/{p-62ecd3a1.system.entry.js.map → p-7f1374b6.system.entry.js.map} +0 -0
  432. package/dist/nano-components/{p-1e974cad.entry.js → p-7fe9d769.entry.js} +2 -2
  433. package/dist/nano-components/{p-1e974cad.entry.js.map → p-7fe9d769.entry.js.map} +0 -0
  434. package/dist/nano-components/{p-93880c28.system.js → p-82e28afd.system.js} +2 -2
  435. package/dist/nano-components/p-82e28afd.system.js.map +1 -0
  436. package/dist/nano-components/p-8378428e.system.js +5 -0
  437. package/dist/nano-components/p-8378428e.system.js.map +1 -0
  438. package/dist/nano-components/p-85c8b070.system.entry.js +5 -0
  439. package/dist/nano-components/p-85c8b070.system.entry.js.map +1 -0
  440. package/dist/nano-components/p-86bd5194.entry.js +5 -0
  441. package/dist/nano-components/p-86bd5194.entry.js.map +1 -0
  442. package/dist/nano-components/{p-4535e3bb.entry.js → p-8b6fcd6d.entry.js} +2 -2
  443. package/dist/nano-components/{p-4535e3bb.entry.js.map → p-8b6fcd6d.entry.js.map} +0 -0
  444. package/dist/nano-components/p-8df4f125.system.entry.js +5 -0
  445. package/dist/nano-components/p-8df4f125.system.entry.js.map +1 -0
  446. package/dist/nano-components/{p-6ade3290.entry.js → p-8eb4f24a.entry.js} +2 -2
  447. package/dist/nano-components/{p-6ade3290.entry.js.map → p-8eb4f24a.entry.js.map} +0 -0
  448. package/dist/nano-components/{p-07bdf44d.entry.js → p-8fe2f846.entry.js} +2 -2
  449. package/dist/nano-components/{p-07bdf44d.entry.js.map → p-8fe2f846.entry.js.map} +0 -0
  450. package/dist/nano-components/{p-1238f0fc.system.entry.js → p-93596c3d.system.entry.js} +2 -2
  451. package/dist/nano-components/p-93596c3d.system.entry.js.map +1 -0
  452. package/dist/nano-components/p-96d9b8b9.system.entry.js +5 -0
  453. package/dist/nano-components/p-96d9b8b9.system.entry.js.map +1 -0
  454. package/dist/nano-components/{p-08b43111.entry.js → p-9d9b0b66.entry.js} +2 -2
  455. package/dist/nano-components/p-9d9b0b66.entry.js.map +1 -0
  456. package/dist/nano-components/p-9ffdf6cc.entry.js +5 -0
  457. package/dist/nano-components/{p-346588cc.entry.js.map → p-9ffdf6cc.entry.js.map} +1 -1
  458. package/dist/nano-components/{p-c9c1a345.system.entry.js → p-a02cc654.system.entry.js} +2 -2
  459. package/dist/nano-components/{p-c9c1a345.system.entry.js.map → p-a02cc654.system.entry.js.map} +0 -0
  460. package/dist/nano-components/{p-a77e3fbb.js → p-a0b93616.js} +3 -3
  461. package/dist/nano-components/{p-a77e3fbb.js.map → p-a0b93616.js.map} +1 -1
  462. package/dist/nano-components/p-a1444980.entry.js +5 -0
  463. package/dist/nano-components/p-a1444980.entry.js.map +1 -0
  464. package/dist/nano-components/p-a4969844.entry.js +5 -0
  465. package/dist/nano-components/p-a4969844.entry.js.map +1 -0
  466. package/dist/nano-components/{p-70dec19f.entry.js → p-a6327a9a.entry.js} +2 -2
  467. package/dist/nano-components/{p-70dec19f.entry.js.map → p-a6327a9a.entry.js.map} +0 -0
  468. package/dist/nano-components/{p-a315ed2c.entry.js → p-a9a4fc3e.entry.js} +2 -2
  469. package/dist/nano-components/{p-a315ed2c.entry.js.map → p-a9a4fc3e.entry.js.map} +1 -1
  470. package/dist/nano-components/p-aa84c727.system.entry.js +5 -0
  471. package/dist/nano-components/p-aa84c727.system.entry.js.map +1 -0
  472. package/dist/nano-components/{p-98222c39.system.entry.js → p-ab07c1fa.system.entry.js} +2 -2
  473. package/dist/nano-components/{p-98222c39.system.entry.js.map → p-ab07c1fa.system.entry.js.map} +0 -0
  474. package/dist/nano-components/p-ac5e3775.system.entry.js +5 -0
  475. package/dist/nano-components/p-ac5e3775.system.entry.js.map +1 -0
  476. package/dist/nano-components/{p-ab5813a7.js → p-b5c33aff.js} +2 -2
  477. package/dist/nano-components/{p-ab5813a7.js.map → p-b5c33aff.js.map} +0 -0
  478. package/dist/nano-components/p-b85cf493.system.entry.js +5 -0
  479. package/dist/nano-components/{p-69439aa1.system.entry.js.map → p-b85cf493.system.entry.js.map} +1 -1
  480. package/dist/nano-components/p-bc394857.system.entry.js +5 -0
  481. package/dist/nano-components/p-bc394857.system.entry.js.map +1 -0
  482. package/dist/nano-components/{p-b4f8e541.entry.js → p-bce998f2.entry.js} +2 -2
  483. package/dist/nano-components/{p-b4f8e541.entry.js.map → p-bce998f2.entry.js.map} +0 -0
  484. package/dist/nano-components/{p-92f85aaf.system.entry.js → p-bf9aa89d.system.entry.js} +2 -2
  485. package/dist/nano-components/{p-92f85aaf.system.entry.js.map → p-bf9aa89d.system.entry.js.map} +0 -0
  486. package/dist/nano-components/p-c070ffd3.system.entry.js +5 -0
  487. package/dist/nano-components/p-c070ffd3.system.entry.js.map +1 -0
  488. package/dist/nano-components/p-c3830c43.entry.js +5 -0
  489. package/dist/nano-components/p-c3830c43.entry.js.map +1 -0
  490. package/dist/nano-components/{p-50514e5e.entry.js → p-c4156fea.entry.js} +2 -2
  491. package/dist/nano-components/{p-50514e5e.entry.js.map → p-c4156fea.entry.js.map} +0 -0
  492. package/dist/nano-components/{p-6eb25600.system.js → p-d01bd3c3.system.js} +2 -2
  493. package/dist/nano-components/{p-6eb25600.system.js.map → p-d01bd3c3.system.js.map} +0 -0
  494. package/dist/nano-components/{p-b59d2bd5.entry.js → p-d122b1ff.entry.js} +2 -2
  495. package/dist/nano-components/{p-b59d2bd5.entry.js.map → p-d122b1ff.entry.js.map} +0 -0
  496. package/dist/nano-components/{p-56ba0d63.entry.js → p-d37e1489.entry.js} +2 -2
  497. package/dist/nano-components/p-d37e1489.entry.js.map +1 -0
  498. package/dist/nano-components/p-d61ae833.system.entry.js +5 -0
  499. package/dist/nano-components/p-d61ae833.system.entry.js.map +1 -0
  500. package/dist/nano-components/p-d93274de.entry.js +5 -0
  501. package/dist/nano-components/p-d93274de.entry.js.map +1 -0
  502. package/dist/nano-components/p-da88981f.entry.js +23 -0
  503. package/dist/nano-components/p-da88981f.entry.js.map +1 -0
  504. package/dist/nano-components/{p-394c3c19.entry.js → p-defd4552.entry.js} +2 -2
  505. package/dist/nano-components/{p-394c3c19.entry.js.map → p-defd4552.entry.js.map} +0 -0
  506. package/dist/nano-components/p-e8a913ac.system.entry.js +5 -0
  507. package/dist/nano-components/p-e8a913ac.system.entry.js.map +1 -0
  508. package/dist/nano-components/p-e9a279ee.system.entry.js +5 -0
  509. package/dist/nano-components/p-e9a279ee.system.entry.js.map +1 -0
  510. package/dist/nano-components/{p-22884654.system.entry.js → p-eacf5b5b.system.entry.js} +2 -2
  511. package/dist/nano-components/{p-22884654.system.entry.js.map → p-eacf5b5b.system.entry.js.map} +0 -0
  512. package/dist/nano-components/p-ed336501.entry.js +5 -0
  513. package/dist/nano-components/p-ed336501.entry.js.map +1 -0
  514. package/dist/nano-components/{p-5ae80fd7.js → p-ef7f1e9c.js} +2 -2
  515. package/dist/nano-components/{p-5ae80fd7.js.map → p-ef7f1e9c.js.map} +0 -0
  516. package/dist/nano-components/{p-59b3d24b.system.js → p-f48be9f5.system.js} +2 -2
  517. package/dist/nano-components/{p-59b3d24b.system.js.map → p-f48be9f5.system.js.map} +0 -0
  518. package/dist/nano-components/p-f780d2f6.system.entry.js +5 -0
  519. package/dist/nano-components/p-f780d2f6.system.entry.js.map +1 -0
  520. package/dist/nano-components/p-faba2fc1.system.entry.js +5 -0
  521. package/dist/nano-components/p-faba2fc1.system.entry.js.map +1 -0
  522. package/dist/nano-components/{p-65c10b3f.entry.js → p-fbe3c89e.entry.js} +2 -2
  523. package/dist/nano-components/{p-65c10b3f.entry.js.map → p-fbe3c89e.entry.js.map} +0 -0
  524. package/dist/nano-components/p-ff026352.system.entry.js +5 -0
  525. package/dist/nano-components/p-ff026352.system.entry.js.map +1 -0
  526. package/dist/types/components/checkbox/checkbox-group.d.ts +12 -1
  527. package/dist/types/components/checkbox/checkbox.d.ts +11 -3
  528. package/dist/types/components/date-input/date-input.d.ts +10 -1
  529. package/dist/types/components/dialog/dialog.d.ts +4 -1
  530. package/dist/types/components/field-validator/field-validator.d.ts +125 -0
  531. package/dist/types/components/file-upload/file-upload.d.ts +8 -0
  532. package/dist/types/components/icon/icon.d.ts +1 -1
  533. package/dist/types/components/icon-button/icon-button.d.ts +2 -0
  534. package/dist/types/components/input/input.d.ts +6 -1
  535. package/dist/types/components/select/select.d.ts +10 -2
  536. package/dist/types/components/{sticky → sticker}/sticker.d.ts +0 -0
  537. package/dist/types/components/tabs/tab.d.ts +1 -0
  538. package/dist/types/components.d.ts +207 -4
  539. package/dist/types/utils/store/get-set.d.ts +1 -1
  540. package/docs-json.json +489 -15
  541. package/docs-vscode.json +77 -1
  542. package/package.json +3 -4
  543. package/dist/cjs/ResizeObserver.es-09b81a1b.js +0 -935
  544. package/dist/cjs/ResizeObserver.es-09b81a1b.js.map +0 -1
  545. package/dist/cjs/component-store-722032a5.js.map +0 -1
  546. package/dist/cjs/date-utils-0ae9a12d.js.map +0 -1
  547. package/dist/cjs/global-0d4f3b77.js.map +0 -1
  548. package/dist/cjs/intersection-observer-1822c787.js +0 -987
  549. package/dist/cjs/intersection-observer-1822c787.js.map +0 -1
  550. package/dist/collection/components/sticky/sticker.js.map +0 -1
  551. package/dist/components/ResizeObserver.es.js +0 -933
  552. package/dist/components/ResizeObserver.es.js.map +0 -1
  553. package/dist/components/intersection-observer.js +0 -985
  554. package/dist/components/intersection-observer.js.map +0 -1
  555. package/dist/esm/ResizeObserver.es-724af9fd.js +0 -933
  556. package/dist/esm/ResizeObserver.es-724af9fd.js.map +0 -1
  557. package/dist/esm/component-store-b6fbfa35.js.map +0 -1
  558. package/dist/esm/date-utils-e4b757ff.js.map +0 -1
  559. package/dist/esm/global-d5ec4d53.js.map +0 -1
  560. package/dist/esm/intersection-observer-dff9fb5b.js +0 -985
  561. package/dist/esm/intersection-observer-dff9fb5b.js.map +0 -1
  562. package/dist/esm-es5/ResizeObserver.es-724af9fd.js +0 -5
  563. package/dist/esm-es5/ResizeObserver.es-724af9fd.js.map +0 -1
  564. package/dist/esm-es5/component-store-b6fbfa35.js +0 -5
  565. package/dist/esm-es5/component-store-b6fbfa35.js.map +0 -1
  566. package/dist/esm-es5/date-utils-e4b757ff.js +0 -5
  567. package/dist/esm-es5/date-utils-e4b757ff.js.map +0 -1
  568. package/dist/esm-es5/global-d5ec4d53.js.map +0 -1
  569. package/dist/esm-es5/intersection-observer-dff9fb5b.js +0 -5
  570. package/dist/esm-es5/intersection-observer-dff9fb5b.js.map +0 -1
  571. package/dist/nano-components/p-033296c7.system.entry.js +0 -23
  572. package/dist/nano-components/p-033296c7.system.entry.js.map +0 -1
  573. package/dist/nano-components/p-08b43111.entry.js.map +0 -1
  574. package/dist/nano-components/p-096682d9.system.js +0 -5
  575. package/dist/nano-components/p-096682d9.system.js.map +0 -1
  576. package/dist/nano-components/p-09e38c5f.system.entry.js +0 -5
  577. package/dist/nano-components/p-09e38c5f.system.entry.js.map +0 -1
  578. package/dist/nano-components/p-10a6216d.system.entry.js +0 -5
  579. package/dist/nano-components/p-10a6216d.system.entry.js.map +0 -1
  580. package/dist/nano-components/p-11a2dcce.js +0 -5
  581. package/dist/nano-components/p-11a2dcce.js.map +0 -1
  582. package/dist/nano-components/p-1238f0fc.system.entry.js.map +0 -1
  583. package/dist/nano-components/p-1ca46443.entry.js +0 -5
  584. package/dist/nano-components/p-1ca46443.entry.js.map +0 -1
  585. package/dist/nano-components/p-1e8321ea.entry.js +0 -5
  586. package/dist/nano-components/p-1e8321ea.entry.js.map +0 -1
  587. package/dist/nano-components/p-1f99d776.entry.js +0 -5
  588. package/dist/nano-components/p-1f99d776.entry.js.map +0 -1
  589. package/dist/nano-components/p-346588cc.entry.js +0 -5
  590. package/dist/nano-components/p-39a5280e.system.entry.js +0 -5
  591. package/dist/nano-components/p-39a5280e.system.entry.js.map +0 -1
  592. package/dist/nano-components/p-3aa1d07d.entry.js +0 -5
  593. package/dist/nano-components/p-3aa1d07d.entry.js.map +0 -1
  594. package/dist/nano-components/p-4265cf95.system.entry.js +0 -5
  595. package/dist/nano-components/p-4265cf95.system.entry.js.map +0 -1
  596. package/dist/nano-components/p-44c08842.system.entry.js +0 -5
  597. package/dist/nano-components/p-44c08842.system.entry.js.map +0 -1
  598. package/dist/nano-components/p-457d4893.entry.js +0 -5
  599. package/dist/nano-components/p-457d4893.entry.js.map +0 -1
  600. package/dist/nano-components/p-462ad4f1.entry.js +0 -5
  601. package/dist/nano-components/p-462ad4f1.entry.js.map +0 -1
  602. package/dist/nano-components/p-4870e76d.system.entry.js +0 -5
  603. package/dist/nano-components/p-4870e76d.system.entry.js.map +0 -1
  604. package/dist/nano-components/p-531d5275.system.entry.js.map +0 -1
  605. package/dist/nano-components/p-5653961d.system.entry.js +0 -5
  606. package/dist/nano-components/p-5653961d.system.entry.js.map +0 -1
  607. package/dist/nano-components/p-56ba0d63.entry.js.map +0 -1
  608. package/dist/nano-components/p-5a0095f9.js +0 -5
  609. package/dist/nano-components/p-5a0095f9.js.map +0 -1
  610. package/dist/nano-components/p-5a315696.entry.js +0 -5
  611. package/dist/nano-components/p-5a315696.entry.js.map +0 -1
  612. package/dist/nano-components/p-69439aa1.system.entry.js +0 -5
  613. package/dist/nano-components/p-6afdb510.system.entry.js +0 -5
  614. package/dist/nano-components/p-6afdb510.system.entry.js.map +0 -1
  615. package/dist/nano-components/p-6f94d755.entry.js +0 -5
  616. package/dist/nano-components/p-6f94d755.entry.js.map +0 -1
  617. package/dist/nano-components/p-7246bef5.entry.js +0 -5
  618. package/dist/nano-components/p-7246bef5.entry.js.map +0 -1
  619. package/dist/nano-components/p-730f60ea.entry.js.map +0 -1
  620. package/dist/nano-components/p-802e1416.system.entry.js +0 -5
  621. package/dist/nano-components/p-802e1416.system.entry.js.map +0 -1
  622. package/dist/nano-components/p-84767e87.entry.js +0 -5
  623. package/dist/nano-components/p-84767e87.entry.js.map +0 -1
  624. package/dist/nano-components/p-88f17c86.system.entry.js +0 -5
  625. package/dist/nano-components/p-88f17c86.system.entry.js.map +0 -1
  626. package/dist/nano-components/p-933c35a6.system.entry.js +0 -5
  627. package/dist/nano-components/p-933c35a6.system.entry.js.map +0 -1
  628. package/dist/nano-components/p-93880c28.system.js.map +0 -1
  629. package/dist/nano-components/p-971b40a4.system.entry.js +0 -5
  630. package/dist/nano-components/p-971b40a4.system.entry.js.map +0 -1
  631. package/dist/nano-components/p-9d35768b.entry.js +0 -5
  632. package/dist/nano-components/p-9d35768b.entry.js.map +0 -1
  633. package/dist/nano-components/p-9ea13fbe.entry.js +0 -5
  634. package/dist/nano-components/p-9ea13fbe.entry.js.map +0 -1
  635. package/dist/nano-components/p-b430a9b6.system.js +0 -5
  636. package/dist/nano-components/p-b430a9b6.system.js.map +0 -1
  637. package/dist/nano-components/p-ba13bb56.entry.js +0 -23
  638. package/dist/nano-components/p-ba13bb56.entry.js.map +0 -1
  639. package/dist/nano-components/p-bcd69559.entry.js +0 -5
  640. package/dist/nano-components/p-bcd69559.entry.js.map +0 -1
  641. package/dist/nano-components/p-d8d8bac6.system.entry.js +0 -5
  642. package/dist/nano-components/p-d8d8bac6.system.entry.js.map +0 -1
  643. package/dist/nano-components/p-debd9efc.js +0 -5
  644. package/dist/nano-components/p-debd9efc.js.map +0 -1
  645. package/dist/nano-components/p-e195ab77.system.js +0 -5
  646. package/dist/nano-components/p-e195ab77.system.js.map +0 -1
  647. package/dist/nano-components/p-e1f46998.system.js +0 -5
  648. package/dist/nano-components/p-e1f46998.system.js.map +0 -1
  649. package/dist/nano-components/p-e7c69d4f.entry.js +0 -5
  650. package/dist/nano-components/p-e7c69d4f.entry.js.map +0 -1
  651. package/dist/nano-components/p-ec39b143.system.entry.js +0 -5
  652. package/dist/nano-components/p-ec39b143.system.entry.js.map +0 -1
  653. package/dist/nano-components/p-f2e7d2f9.system.entry.js +0 -5
  654. package/dist/nano-components/p-f2e7d2f9.system.entry.js.map +0 -1
  655. package/dist/nano-components/p-f5d4d13b.system.js +0 -5
  656. package/dist/nano-components/p-f5d4d13b.system.js.map +0 -1
  657. package/dist/nano-components/p-f66958c1.js +0 -5
  658. package/dist/nano-components/p-f66958c1.js.map +0 -1
  659. package/dist/nano-components/p-f9c7d961.js +0 -5
  660. package/dist/nano-components/p-f9c7d961.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["node_modules/has-symbols/shams.js","node_modules/has-symbols/index.js","node_modules/function-bind/implementation.js","node_modules/function-bind/index.js","node_modules/has/src/index.js","node_modules/get-intrinsic/index.js","node_modules/call-bind/index.js","node_modules/call-bind/callBound.js","node_modules/object-inspect/index.js","node_modules/side-channel/index.js","node_modules/qs/lib/formats.js","node_modules/qs/lib/utils.js","node_modules/qs/lib/stringify.js","node_modules/qs/lib/parse.js","node_modules/qs/lib/index.js","src/utils/store/get-set.ts","src/utils/store/component-store.ts"],"names":["shams","hasSymbols","Symbol","Object","getOwnPropertySymbols","iterator","obj","sym","symObj","prototype","toString","call","symVal","keys","length","getOwnPropertyNames","syms","propertyIsEnumerable","getOwnPropertyDescriptor","descriptor","value","enumerable","origSymbol","hasSymbols$1","hasNativeSymbols","hasSymbolSham","ERROR_MESSAGE","slice","Array","toStr","funcType","implementation","bind","that","target","this","TypeError","args","arguments","bound","binder","result","apply","concat","boundLength","Math","max","boundArgs","i","push","Function","join","Empty","functionBind","src","hasOwnProperty","undefined","$SyntaxError","SyntaxError","$Function","$TypeError","getEvalledConstructor","expressionSyntax","e","$gOPD","throwTypeError","ThrowTypeError","calleeThrows","get","gOPDthrows","require$$0","getProto","getPrototypeOf","x","__proto__","needsEval","TypedArray","Uint8Array","INTRINSICS","%AggregateError%","AggregateError","%Array%","%ArrayBuffer%","ArrayBuffer","%ArrayIteratorPrototype%","%AsyncFromSyncIteratorPrototype%","%AsyncFunction%","%AsyncGenerator%","%AsyncGeneratorFunction%","%AsyncIteratorPrototype%","%Atomics%","Atomics","%BigInt%","BigInt","%Boolean%","Boolean","%DataView%","DataView","%Date%","Date","%decodeURI%","decodeURI","%decodeURIComponent%","decodeURIComponent","%encodeURI%","encodeURI","%encodeURIComponent%","encodeURIComponent","%Error%","Error","%eval%","eval","%EvalError%","EvalError","%Float32Array%","Float32Array","%Float64Array%","Float64Array","%FinalizationRegistry%","FinalizationRegistry","%Function%","%GeneratorFunction%","%Int8Array%","Int8Array","%Int16Array%","Int16Array","%Int32Array%","Int32Array","%isFinite%","isFinite","%isNaN%","isNaN","%IteratorPrototype%","%JSON%","JSON","%Map%","Map","%MapIteratorPrototype%","%Math%","%Number%","Number","%Object%","%parseFloat%","parseFloat","%parseInt%","parseInt","%Promise%","Promise","%Proxy%","Proxy","%RangeError%","RangeError","%ReferenceError%","ReferenceError","%Reflect%","Reflect","%RegExp%","RegExp","%Set%","Set","%SetIteratorPrototype%","%SharedArrayBuffer%","SharedArrayBuffer","%String%","String","%StringIteratorPrototype%","%Symbol%","%SyntaxError%","%ThrowTypeError%","%TypedArray%","%TypeError%","%Uint8Array%","%Uint8ClampedArray%","Uint8ClampedArray","%Uint16Array%","Uint16Array","%Uint32Array%","Uint32Array","%URIError%","URIError","%WeakMap%","WeakMap","%WeakRef%","WeakRef","%WeakSet%","WeakSet","doEval","name","fn","gen","LEGACY_ALIASES","%ArrayBufferPrototype%","%ArrayPrototype%","%ArrayProto_entries%","%ArrayProto_forEach%","%ArrayProto_keys%","%ArrayProto_values%","%AsyncFunctionPrototype%","%AsyncGeneratorPrototype%","%BooleanPrototype%","%DataViewPrototype%","%DatePrototype%","%ErrorPrototype%","%EvalErrorPrototype%","%Float32ArrayPrototype%","%Float64ArrayPrototype%","%FunctionPrototype%","%Generator%","%GeneratorPrototype%","%Int8ArrayPrototype%","%Int16ArrayPrototype%","%Int32ArrayPrototype%","%JSONParse%","%JSONStringify%","%MapPrototype%","%NumberPrototype%","%ObjectPrototype%","%ObjProto_toString%","%ObjProto_valueOf%","%PromisePrototype%","%PromiseProto_then%","%Promise_all%","%Promise_reject%","%Promise_resolve%","%RangeErrorPrototype%","%ReferenceErrorPrototype%","%RegExpPrototype%","%SetPrototype%","%SharedArrayBufferPrototype%","%StringPrototype%","%SymbolPrototype%","%SyntaxErrorPrototype%","%TypedArrayPrototype%","%TypeErrorPrototype%","%Uint8ArrayPrototype%","%Uint8ClampedArrayPrototype%","%Uint16ArrayPrototype%","%Uint32ArrayPrototype%","%URIErrorPrototype%","%WeakMapPrototype%","%WeakSetPrototype%","$concat","$spliceApply","splice","$replace","replace","$strSlice","$exec","exec","rePropName","reEscapeChar","stringToPath","string","first","last","match","number","quote","subString","getBaseIntrinsic","allowMissing","intrinsicName","alias","hasOwn","getIntrinsic","GetIntrinsic","parts","intrinsicBaseName","intrinsic","intrinsicRealName","skipFurtherCaching","isOwn","part","desc","$apply","$call","$reflectApply","$defineProperty","$max","module","exports","callBind","originalFunction","func","configurable","applyBind","$indexOf","callBound","callBoundIntrinsic","hasMap","mapSizeDescriptor","mapSize","mapForEach","forEach","hasSet","setSizeDescriptor","setSize","setForEach","hasWeakMap","weakMapHas","has","hasWeakSet","weakSetHas","hasWeakRef","weakRefDeref","deref","booleanValueOf","valueOf","objectToString","functionToString","$match","$slice","$toUpperCase","toUpperCase","$toLowerCase","toLowerCase","$test","test","$join","$arrSlice","$floor","floor","bigIntValueOf","gOPS","symToString","hasShammedSymbols","toStringTag","isEnumerable","gPO","O","addNumericSeparator","num","str","Infinity","sepRegex","int","intStr","dec","inspectCustom","utilInspect","custom","inspectSymbol","isSymbol","objectInspect","inspect_","options","depth","seen","opts","quoteStyle","maxStringLength","customInspect","indent","numericSeparator","inspectString","bigIntStr","maxDepth","isArray","getIndent","indexOf","inspect","from","noIndent","newOpts","isRegExp","nameOf","arrObjKeys","symString","markBoxed","isElement","s","nodeName","attrs","attributes","wrapQuotes","childNodes","xs","singleLineValues","indentedJoin","isError","cause","isMap","mapParts","key","collectionOf","isSet","setParts","isWeakMap","weakCollectionOf","isWeakSet","isWeakRef","isNumber","isBigInt","isBoolean","isString","isDate","ys","isPlainObject","constructor","protoTag","stringTag","constructorTag","tag","defaultStyle","quoteChar","f","m","l","HTMLElement","getAttribute","remaining","trailer","lowbyte","c","n","charCodeAt","8","9","10","12","13","type","size","entries","joinedEntries","baseIndent","base","prev","lineJoiner","isArr","symMap","k","j","$WeakMap","$Map","$weakMapGet","$weakMapSet","$weakMapHas","$mapGet","$mapSet","$mapHas","listGetNode","list","curr","next","listGet","objects","node","listSet","listHas","sideChannel","getSideChannel","$wm","$m","$o","channel","assert","set","percentTwenties","Format","RFC1738","RFC3986","formats","default","formatters","hexTable","array","compactQueue","queue","item","pop","prop","compacted","arrayToObject","source","plainObjects","create","merge","allowPrototypes","mergeTarget","targetItem","reduce","acc","assign","assignSingleSource","decode","decoder","charset","strWithoutPlus","unescape","encode","defaultEncoder","kind","format","escape","$0","out","charAt","compact","o","refs","val","isBuffer","combine","a","b","maybeMap","mapped","utils","arrayPrefixGenerators","brackets","prefix","comma","indices","repeat","split","pushToArray","arr","valueOrArray","toISO","toISOString","defaultFormat","defaults","addQueryPrefix","allowDots","charsetSentinel","delimiter","encoder","encodeValuesOnly","formatter","serializeDate","date","skipNulls","strictNullHandling","isNonNullishPrimitive","v","sentinel","stringify","object","generateArrayPrefix","filter","sort","tmpSc","step","findFlag","pos","keyValue","valuesArray","valuesJoined","values","objKeys","adjustedPrefix","keyPrefix","valueSideChannel","normalizeStringifyOptions","stringify_1","arrayFormat","joined","allowSparse","arrayLimit","ignoreQueryPrefix","interpretNumericEntities","parameterLimit","parseArrays","numberStr","fromCharCode","parseArrayValue","isoSentinel","parseValues","parseQueryStringValues","cleanStr","limit","skipIndex","bracketEqualsPos","encodedVal","parseObject","chain","valuesParsed","leaf","root","cleanRoot","index","0","parseKeys","parseQueryStringKeys","givenKey","child","segment","parent","normalizeParseOptions","parse","tempObj","newObj","lib","STORAGE_NAME_SPACE","urlRead","win","window","location","hash","qs","search","urlSave","to","method","history","oldQuery","basePath","pathname","queryStr","replaceState","pushState","document","querySelector","focus","urlSet","id","data","currentData","urlGet","sessionSet","sessionStorage","removeItem","setItem","sessionGet","configStr","getItem","storageSet","localStorage","storageGet","store","ComponentStore","init","component","getId","storeId","getElement","console","error","initialState","Store","componentstore","dispatchToProps","connectedCallback","componentDidRender","savePropsToStore","disconnectedCallback","delete","_this","updateStore","onUrlChange","save","getData","savedData","retrieve","removeEventListener","debounce","addEventListener","equality","val1","val2","defineProperty","isEqual","getset.urlGet","getset.storageGet","getset.sessionGet","getset.urlSet","getset.storageSet","getset.sessionSet"],"mappings":"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","sourcesContent":["'use strict';\n\n/* eslint complexity: [2, 18], max-statements: [2, 33] */\nmodule.exports = function hasSymbols() {\n\tif (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }\n\tif (typeof Symbol.iterator === 'symbol') { return true; }\n\n\tvar obj = {};\n\tvar sym = Symbol('test');\n\tvar symObj = Object(sym);\n\tif (typeof sym === 'string') { return false; }\n\n\tif (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }\n\tif (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }\n\n\t// temp disabled per https://github.com/ljharb/object.assign/issues/17\n\t// if (sym instanceof Symbol) { return false; }\n\t// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4\n\t// if (!(symObj instanceof Symbol)) { return false; }\n\n\t// if (typeof Symbol.prototype.toString !== 'function') { return false; }\n\t// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }\n\n\tvar symVal = 42;\n\tobj[sym] = symVal;\n\tfor (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop\n\tif (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }\n\n\tif (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }\n\n\tvar syms = Object.getOwnPropertySymbols(obj);\n\tif (syms.length !== 1 || syms[0] !== sym) { return false; }\n\n\tif (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }\n\n\tif (typeof Object.getOwnPropertyDescriptor === 'function') {\n\t\tvar descriptor = Object.getOwnPropertyDescriptor(obj, sym);\n\t\tif (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }\n\t}\n\n\treturn true;\n};\n","'use strict';\n\nvar origSymbol = typeof Symbol !== 'undefined' && Symbol;\nvar hasSymbolSham = require('./shams');\n\nmodule.exports = function hasNativeSymbols() {\n\tif (typeof origSymbol !== 'function') { return false; }\n\tif (typeof Symbol !== 'function') { return false; }\n\tif (typeof origSymbol('foo') !== 'symbol') { return false; }\n\tif (typeof Symbol('bar') !== 'symbol') { return false; }\n\n\treturn hasSymbolSham();\n};\n","'use strict';\n\n/* eslint no-invalid-this: 1 */\n\nvar ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';\nvar slice = Array.prototype.slice;\nvar toStr = Object.prototype.toString;\nvar funcType = '[object Function]';\n\nmodule.exports = function bind(that) {\n var target = this;\n if (typeof target !== 'function' || toStr.call(target) !== funcType) {\n throw new TypeError(ERROR_MESSAGE + target);\n }\n var args = slice.call(arguments, 1);\n\n var bound;\n var binder = function () {\n if (this instanceof bound) {\n var result = target.apply(\n this,\n args.concat(slice.call(arguments))\n );\n if (Object(result) === result) {\n return result;\n }\n return this;\n } else {\n return target.apply(\n that,\n args.concat(slice.call(arguments))\n );\n }\n };\n\n var boundLength = Math.max(0, target.length - args.length);\n var boundArgs = [];\n for (var i = 0; i < boundLength; i++) {\n boundArgs.push('$' + i);\n }\n\n bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder);\n\n if (target.prototype) {\n var Empty = function Empty() {};\n Empty.prototype = target.prototype;\n bound.prototype = new Empty();\n Empty.prototype = null;\n }\n\n return bound;\n};\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = Function.prototype.bind || implementation;\n","'use strict';\n\nvar bind = require('function-bind');\n\nmodule.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);\n","'use strict';\n\nvar undefined;\n\nvar $SyntaxError = SyntaxError;\nvar $Function = Function;\nvar $TypeError = TypeError;\n\n// eslint-disable-next-line consistent-return\nvar getEvalledConstructor = function (expressionSyntax) {\n\ttry {\n\t\treturn $Function('\"use strict\"; return (' + expressionSyntax + ').constructor;')();\n\t} catch (e) {}\n};\n\nvar $gOPD = Object.getOwnPropertyDescriptor;\nif ($gOPD) {\n\ttry {\n\t\t$gOPD({}, '');\n\t} catch (e) {\n\t\t$gOPD = null; // this is IE 8, which has a broken gOPD\n\t}\n}\n\nvar throwTypeError = function () {\n\tthrow new $TypeError();\n};\nvar ThrowTypeError = $gOPD\n\t? (function () {\n\t\ttry {\n\t\t\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\n\t\t\targuments.callee; // IE 8 does not throw here\n\t\t\treturn throwTypeError;\n\t\t} catch (calleeThrows) {\n\t\t\ttry {\n\t\t\t\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\n\t\t\t\treturn $gOPD(arguments, 'callee').get;\n\t\t\t} catch (gOPDthrows) {\n\t\t\t\treturn throwTypeError;\n\t\t\t}\n\t\t}\n\t}())\n\t: throwTypeError;\n\nvar hasSymbols = require('has-symbols')();\n\nvar getProto = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto\n\nvar needsEval = {};\n\nvar TypedArray = typeof Uint8Array === 'undefined' ? undefined : getProto(Uint8Array);\n\nvar INTRINSICS = {\n\t'%AggregateError%': typeof AggregateError === 'undefined' ? undefined : AggregateError,\n\t'%Array%': Array,\n\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,\n\t'%ArrayIteratorPrototype%': hasSymbols ? getProto([][Symbol.iterator]()) : undefined,\n\t'%AsyncFromSyncIteratorPrototype%': undefined,\n\t'%AsyncFunction%': needsEval,\n\t'%AsyncGenerator%': needsEval,\n\t'%AsyncGeneratorFunction%': needsEval,\n\t'%AsyncIteratorPrototype%': needsEval,\n\t'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,\n\t'%BigInt%': typeof BigInt === 'undefined' ? undefined : BigInt,\n\t'%Boolean%': Boolean,\n\t'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,\n\t'%Date%': Date,\n\t'%decodeURI%': decodeURI,\n\t'%decodeURIComponent%': decodeURIComponent,\n\t'%encodeURI%': encodeURI,\n\t'%encodeURIComponent%': encodeURIComponent,\n\t'%Error%': Error,\n\t'%eval%': eval, // eslint-disable-line no-eval\n\t'%EvalError%': EvalError,\n\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,\n\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,\n\t'%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined : FinalizationRegistry,\n\t'%Function%': $Function,\n\t'%GeneratorFunction%': needsEval,\n\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,\n\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,\n\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,\n\t'%isFinite%': isFinite,\n\t'%isNaN%': isNaN,\n\t'%IteratorPrototype%': hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined,\n\t'%JSON%': typeof JSON === 'object' ? JSON : undefined,\n\t'%Map%': typeof Map === 'undefined' ? undefined : Map,\n\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols ? undefined : getProto(new Map()[Symbol.iterator]()),\n\t'%Math%': Math,\n\t'%Number%': Number,\n\t'%Object%': Object,\n\t'%parseFloat%': parseFloat,\n\t'%parseInt%': parseInt,\n\t'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,\n\t'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,\n\t'%RangeError%': RangeError,\n\t'%ReferenceError%': ReferenceError,\n\t'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,\n\t'%RegExp%': RegExp,\n\t'%Set%': typeof Set === 'undefined' ? undefined : Set,\n\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols ? undefined : getProto(new Set()[Symbol.iterator]()),\n\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,\n\t'%String%': String,\n\t'%StringIteratorPrototype%': hasSymbols ? getProto(''[Symbol.iterator]()) : undefined,\n\t'%Symbol%': hasSymbols ? Symbol : undefined,\n\t'%SyntaxError%': $SyntaxError,\n\t'%ThrowTypeError%': ThrowTypeError,\n\t'%TypedArray%': TypedArray,\n\t'%TypeError%': $TypeError,\n\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,\n\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,\n\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,\n\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,\n\t'%URIError%': URIError,\n\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,\n\t'%WeakRef%': typeof WeakRef === 'undefined' ? undefined : WeakRef,\n\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet\n};\n\nvar doEval = function doEval(name) {\n\tvar value;\n\tif (name === '%AsyncFunction%') {\n\t\tvalue = getEvalledConstructor('async function () {}');\n\t} else if (name === '%GeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('function* () {}');\n\t} else if (name === '%AsyncGeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('async function* () {}');\n\t} else if (name === '%AsyncGenerator%') {\n\t\tvar fn = doEval('%AsyncGeneratorFunction%');\n\t\tif (fn) {\n\t\t\tvalue = fn.prototype;\n\t\t}\n\t} else if (name === '%AsyncIteratorPrototype%') {\n\t\tvar gen = doEval('%AsyncGenerator%');\n\t\tif (gen) {\n\t\t\tvalue = getProto(gen.prototype);\n\t\t}\n\t}\n\n\tINTRINSICS[name] = value;\n\n\treturn value;\n};\n\nvar LEGACY_ALIASES = {\n\t'%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],\n\t'%ArrayPrototype%': ['Array', 'prototype'],\n\t'%ArrayProto_entries%': ['Array', 'prototype', 'entries'],\n\t'%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'],\n\t'%ArrayProto_keys%': ['Array', 'prototype', 'keys'],\n\t'%ArrayProto_values%': ['Array', 'prototype', 'values'],\n\t'%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'],\n\t'%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'],\n\t'%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'],\n\t'%BooleanPrototype%': ['Boolean', 'prototype'],\n\t'%DataViewPrototype%': ['DataView', 'prototype'],\n\t'%DatePrototype%': ['Date', 'prototype'],\n\t'%ErrorPrototype%': ['Error', 'prototype'],\n\t'%EvalErrorPrototype%': ['EvalError', 'prototype'],\n\t'%Float32ArrayPrototype%': ['Float32Array', 'prototype'],\n\t'%Float64ArrayPrototype%': ['Float64Array', 'prototype'],\n\t'%FunctionPrototype%': ['Function', 'prototype'],\n\t'%Generator%': ['GeneratorFunction', 'prototype'],\n\t'%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'],\n\t'%Int8ArrayPrototype%': ['Int8Array', 'prototype'],\n\t'%Int16ArrayPrototype%': ['Int16Array', 'prototype'],\n\t'%Int32ArrayPrototype%': ['Int32Array', 'prototype'],\n\t'%JSONParse%': ['JSON', 'parse'],\n\t'%JSONStringify%': ['JSON', 'stringify'],\n\t'%MapPrototype%': ['Map', 'prototype'],\n\t'%NumberPrototype%': ['Number', 'prototype'],\n\t'%ObjectPrototype%': ['Object', 'prototype'],\n\t'%ObjProto_toString%': ['Object', 'prototype', 'toString'],\n\t'%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'],\n\t'%PromisePrototype%': ['Promise', 'prototype'],\n\t'%PromiseProto_then%': ['Promise', 'prototype', 'then'],\n\t'%Promise_all%': ['Promise', 'all'],\n\t'%Promise_reject%': ['Promise', 'reject'],\n\t'%Promise_resolve%': ['Promise', 'resolve'],\n\t'%RangeErrorPrototype%': ['RangeError', 'prototype'],\n\t'%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'],\n\t'%RegExpPrototype%': ['RegExp', 'prototype'],\n\t'%SetPrototype%': ['Set', 'prototype'],\n\t'%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'],\n\t'%StringPrototype%': ['String', 'prototype'],\n\t'%SymbolPrototype%': ['Symbol', 'prototype'],\n\t'%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'],\n\t'%TypedArrayPrototype%': ['TypedArray', 'prototype'],\n\t'%TypeErrorPrototype%': ['TypeError', 'prototype'],\n\t'%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'],\n\t'%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'],\n\t'%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'],\n\t'%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'],\n\t'%URIErrorPrototype%': ['URIError', 'prototype'],\n\t'%WeakMapPrototype%': ['WeakMap', 'prototype'],\n\t'%WeakSetPrototype%': ['WeakSet', 'prototype']\n};\n\nvar bind = require('function-bind');\nvar hasOwn = require('has');\nvar $concat = bind.call(Function.call, Array.prototype.concat);\nvar $spliceApply = bind.call(Function.apply, Array.prototype.splice);\nvar $replace = bind.call(Function.call, String.prototype.replace);\nvar $strSlice = bind.call(Function.call, String.prototype.slice);\nvar $exec = bind.call(Function.call, RegExp.prototype.exec);\n\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\nvar rePropName = /[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g;\nvar reEscapeChar = /\\\\(\\\\)?/g; /** Used to match backslashes in property paths. */\nvar stringToPath = function stringToPath(string) {\n\tvar first = $strSlice(string, 0, 1);\n\tvar last = $strSlice(string, -1);\n\tif (first === '%' && last !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected closing `%`');\n\t} else if (last === '%' && first !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected opening `%`');\n\t}\n\tvar result = [];\n\t$replace(string, rePropName, function (match, number, quote, subString) {\n\t\tresult[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match;\n\t});\n\treturn result;\n};\n/* end adaptation */\n\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\n\tvar intrinsicName = name;\n\tvar alias;\n\tif (hasOwn(LEGACY_ALIASES, intrinsicName)) {\n\t\talias = LEGACY_ALIASES[intrinsicName];\n\t\tintrinsicName = '%' + alias[0] + '%';\n\t}\n\n\tif (hasOwn(INTRINSICS, intrinsicName)) {\n\t\tvar value = INTRINSICS[intrinsicName];\n\t\tif (value === needsEval) {\n\t\t\tvalue = doEval(intrinsicName);\n\t\t}\n\t\tif (typeof value === 'undefined' && !allowMissing) {\n\t\t\tthrow new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\n\t\t}\n\n\t\treturn {\n\t\t\talias: alias,\n\t\t\tname: intrinsicName,\n\t\t\tvalue: value\n\t\t};\n\t}\n\n\tthrow new $SyntaxError('intrinsic ' + name + ' does not exist!');\n};\n\nmodule.exports = function GetIntrinsic(name, allowMissing) {\n\tif (typeof name !== 'string' || name.length === 0) {\n\t\tthrow new $TypeError('intrinsic name must be a non-empty string');\n\t}\n\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\n\t\tthrow new $TypeError('\"allowMissing\" argument must be a boolean');\n\t}\n\n\tif ($exec(/^%?[^%]*%?$/g, name) === null) {\n\t\tthrow new $SyntaxError('`%` may not be present anywhere but at the beginning and end of the intrinsic name');\n\t}\n\tvar parts = stringToPath(name);\n\tvar intrinsicBaseName = parts.length > 0 ? parts[0] : '';\n\n\tvar intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);\n\tvar intrinsicRealName = intrinsic.name;\n\tvar value = intrinsic.value;\n\tvar skipFurtherCaching = false;\n\n\tvar alias = intrinsic.alias;\n\tif (alias) {\n\t\tintrinsicBaseName = alias[0];\n\t\t$spliceApply(parts, $concat([0, 1], alias));\n\t}\n\n\tfor (var i = 1, isOwn = true; i < parts.length; i += 1) {\n\t\tvar part = parts[i];\n\t\tvar first = $strSlice(part, 0, 1);\n\t\tvar last = $strSlice(part, -1);\n\t\tif (\n\t\t\t(\n\t\t\t\t(first === '\"' || first === \"'\" || first === '`')\n\t\t\t\t|| (last === '\"' || last === \"'\" || last === '`')\n\t\t\t)\n\t\t\t&& first !== last\n\t\t) {\n\t\t\tthrow new $SyntaxError('property names with quotes must have matching quotes');\n\t\t}\n\t\tif (part === 'constructor' || !isOwn) {\n\t\t\tskipFurtherCaching = true;\n\t\t}\n\n\t\tintrinsicBaseName += '.' + part;\n\t\tintrinsicRealName = '%' + intrinsicBaseName + '%';\n\n\t\tif (hasOwn(INTRINSICS, intrinsicRealName)) {\n\t\t\tvalue = INTRINSICS[intrinsicRealName];\n\t\t} else if (value != null) {\n\t\t\tif (!(part in value)) {\n\t\t\t\tif (!allowMissing) {\n\t\t\t\t\tthrow new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');\n\t\t\t\t}\n\t\t\t\treturn void undefined;\n\t\t\t}\n\t\t\tif ($gOPD && (i + 1) >= parts.length) {\n\t\t\t\tvar desc = $gOPD(value, part);\n\t\t\t\tisOwn = !!desc;\n\n\t\t\t\t// By convention, when a data property is converted to an accessor\n\t\t\t\t// property to emulate a data property that does not suffer from\n\t\t\t\t// the override mistake, that accessor's getter is marked with\n\t\t\t\t// an `originalValue` property. Here, when we detect this, we\n\t\t\t\t// uphold the illusion by pretending to see that original data\n\t\t\t\t// property, i.e., returning the value rather than the getter\n\t\t\t\t// itself.\n\t\t\t\tif (isOwn && 'get' in desc && !('originalValue' in desc.get)) {\n\t\t\t\t\tvalue = desc.get;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = value[part];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tisOwn = hasOwn(value, part);\n\t\t\t\tvalue = value[part];\n\t\t\t}\n\n\t\t\tif (isOwn && !skipFurtherCaching) {\n\t\t\t\tINTRINSICS[intrinsicRealName] = value;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n","'use strict';\n\nvar bind = require('function-bind');\nvar GetIntrinsic = require('get-intrinsic');\n\nvar $apply = GetIntrinsic('%Function.prototype.apply%');\nvar $call = GetIntrinsic('%Function.prototype.call%');\nvar $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);\n\nvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);\nvar $defineProperty = GetIntrinsic('%Object.defineProperty%', true);\nvar $max = GetIntrinsic('%Math.max%');\n\nif ($defineProperty) {\n\ttry {\n\t\t$defineProperty({}, 'a', { value: 1 });\n\t} catch (e) {\n\t\t// IE 8 has a broken defineProperty\n\t\t$defineProperty = null;\n\t}\n}\n\nmodule.exports = function callBind(originalFunction) {\n\tvar func = $reflectApply(bind, $call, arguments);\n\tif ($gOPD && $defineProperty) {\n\t\tvar desc = $gOPD(func, 'length');\n\t\tif (desc.configurable) {\n\t\t\t// original length, plus the receiver, minus any additional arguments (after the receiver)\n\t\t\t$defineProperty(\n\t\t\t\tfunc,\n\t\t\t\t'length',\n\t\t\t\t{ value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) }\n\t\t\t);\n\t\t}\n\t}\n\treturn func;\n};\n\nvar applyBind = function applyBind() {\n\treturn $reflectApply(bind, $apply, arguments);\n};\n\nif ($defineProperty) {\n\t$defineProperty(module.exports, 'apply', { value: applyBind });\n} else {\n\tmodule.exports.apply = applyBind;\n}\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar callBind = require('./');\n\nvar $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));\n\nmodule.exports = function callBoundIntrinsic(name, allowMissing) {\n\tvar intrinsic = GetIntrinsic(name, !!allowMissing);\n\tif (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) {\n\t\treturn callBind(intrinsic);\n\t}\n\treturn intrinsic;\n};\n","var hasMap = typeof Map === 'function' && Map.prototype;\nvar mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, 'size') : null;\nvar mapSize = hasMap && mapSizeDescriptor && typeof mapSizeDescriptor.get === 'function' ? mapSizeDescriptor.get : null;\nvar mapForEach = hasMap && Map.prototype.forEach;\nvar hasSet = typeof Set === 'function' && Set.prototype;\nvar setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, 'size') : null;\nvar setSize = hasSet && setSizeDescriptor && typeof setSizeDescriptor.get === 'function' ? setSizeDescriptor.get : null;\nvar setForEach = hasSet && Set.prototype.forEach;\nvar hasWeakMap = typeof WeakMap === 'function' && WeakMap.prototype;\nvar weakMapHas = hasWeakMap ? WeakMap.prototype.has : null;\nvar hasWeakSet = typeof WeakSet === 'function' && WeakSet.prototype;\nvar weakSetHas = hasWeakSet ? WeakSet.prototype.has : null;\nvar hasWeakRef = typeof WeakRef === 'function' && WeakRef.prototype;\nvar weakRefDeref = hasWeakRef ? WeakRef.prototype.deref : null;\nvar booleanValueOf = Boolean.prototype.valueOf;\nvar objectToString = Object.prototype.toString;\nvar functionToString = Function.prototype.toString;\nvar $match = String.prototype.match;\nvar $slice = String.prototype.slice;\nvar $replace = String.prototype.replace;\nvar $toUpperCase = String.prototype.toUpperCase;\nvar $toLowerCase = String.prototype.toLowerCase;\nvar $test = RegExp.prototype.test;\nvar $concat = Array.prototype.concat;\nvar $join = Array.prototype.join;\nvar $arrSlice = Array.prototype.slice;\nvar $floor = Math.floor;\nvar bigIntValueOf = typeof BigInt === 'function' ? BigInt.prototype.valueOf : null;\nvar gOPS = Object.getOwnPropertySymbols;\nvar symToString = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? Symbol.prototype.toString : null;\nvar hasShammedSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'object';\n// ie, `has-tostringtag/shams\nvar toStringTag = typeof Symbol === 'function' && Symbol.toStringTag && (typeof Symbol.toStringTag === hasShammedSymbols ? 'object' : 'symbol')\n ? Symbol.toStringTag\n : null;\nvar isEnumerable = Object.prototype.propertyIsEnumerable;\n\nvar gPO = (typeof Reflect === 'function' ? Reflect.getPrototypeOf : Object.getPrototypeOf) || (\n [].__proto__ === Array.prototype // eslint-disable-line no-proto\n ? function (O) {\n return O.__proto__; // eslint-disable-line no-proto\n }\n : null\n);\n\nfunction addNumericSeparator(num, str) {\n if (\n num === Infinity\n || num === -Infinity\n || num !== num\n || (num && num > -1000 && num < 1000)\n || $test.call(/e/, str)\n ) {\n return str;\n }\n var sepRegex = /[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;\n if (typeof num === 'number') {\n var int = num < 0 ? -$floor(-num) : $floor(num); // trunc(num)\n if (int !== num) {\n var intStr = String(int);\n var dec = $slice.call(str, intStr.length + 1);\n return $replace.call(intStr, sepRegex, '$&_') + '.' + $replace.call($replace.call(dec, /([0-9]{3})/g, '$&_'), /_$/, '');\n }\n }\n return $replace.call(str, sepRegex, '$&_');\n}\n\nvar utilInspect = require('./util.inspect');\nvar inspectCustom = utilInspect.custom;\nvar inspectSymbol = isSymbol(inspectCustom) ? inspectCustom : null;\n\nmodule.exports = function inspect_(obj, options, depth, seen) {\n var opts = options || {};\n\n if (has(opts, 'quoteStyle') && (opts.quoteStyle !== 'single' && opts.quoteStyle !== 'double')) {\n throw new TypeError('option \"quoteStyle\" must be \"single\" or \"double\"');\n }\n if (\n has(opts, 'maxStringLength') && (typeof opts.maxStringLength === 'number'\n ? opts.maxStringLength < 0 && opts.maxStringLength !== Infinity\n : opts.maxStringLength !== null\n )\n ) {\n throw new TypeError('option \"maxStringLength\", if provided, must be a positive integer, Infinity, or `null`');\n }\n var customInspect = has(opts, 'customInspect') ? opts.customInspect : true;\n if (typeof customInspect !== 'boolean' && customInspect !== 'symbol') {\n throw new TypeError('option \"customInspect\", if provided, must be `true`, `false`, or `\\'symbol\\'`');\n }\n\n if (\n has(opts, 'indent')\n && opts.indent !== null\n && opts.indent !== '\\t'\n && !(parseInt(opts.indent, 10) === opts.indent && opts.indent > 0)\n ) {\n throw new TypeError('option \"indent\" must be \"\\\\t\", an integer > 0, or `null`');\n }\n if (has(opts, 'numericSeparator') && typeof opts.numericSeparator !== 'boolean') {\n throw new TypeError('option \"numericSeparator\", if provided, must be `true` or `false`');\n }\n var numericSeparator = opts.numericSeparator;\n\n if (typeof obj === 'undefined') {\n return 'undefined';\n }\n if (obj === null) {\n return 'null';\n }\n if (typeof obj === 'boolean') {\n return obj ? 'true' : 'false';\n }\n\n if (typeof obj === 'string') {\n return inspectString(obj, opts);\n }\n if (typeof obj === 'number') {\n if (obj === 0) {\n return Infinity / obj > 0 ? '0' : '-0';\n }\n var str = String(obj);\n return numericSeparator ? addNumericSeparator(obj, str) : str;\n }\n if (typeof obj === 'bigint') {\n var bigIntStr = String(obj) + 'n';\n return numericSeparator ? addNumericSeparator(obj, bigIntStr) : bigIntStr;\n }\n\n var maxDepth = typeof opts.depth === 'undefined' ? 5 : opts.depth;\n if (typeof depth === 'undefined') { depth = 0; }\n if (depth >= maxDepth && maxDepth > 0 && typeof obj === 'object') {\n return isArray(obj) ? '[Array]' : '[Object]';\n }\n\n var indent = getIndent(opts, depth);\n\n if (typeof seen === 'undefined') {\n seen = [];\n } else if (indexOf(seen, obj) >= 0) {\n return '[Circular]';\n }\n\n function inspect(value, from, noIndent) {\n if (from) {\n seen = $arrSlice.call(seen);\n seen.push(from);\n }\n if (noIndent) {\n var newOpts = {\n depth: opts.depth\n };\n if (has(opts, 'quoteStyle')) {\n newOpts.quoteStyle = opts.quoteStyle;\n }\n return inspect_(value, newOpts, depth + 1, seen);\n }\n return inspect_(value, opts, depth + 1, seen);\n }\n\n if (typeof obj === 'function' && !isRegExp(obj)) { // in older engines, regexes are callable\n var name = nameOf(obj);\n var keys = arrObjKeys(obj, inspect);\n return '[Function' + (name ? ': ' + name : ' (anonymous)') + ']' + (keys.length > 0 ? ' { ' + $join.call(keys, ', ') + ' }' : '');\n }\n if (isSymbol(obj)) {\n var symString = hasShammedSymbols ? $replace.call(String(obj), /^(Symbol\\(.*\\))_[^)]*$/, '$1') : symToString.call(obj);\n return typeof obj === 'object' && !hasShammedSymbols ? markBoxed(symString) : symString;\n }\n if (isElement(obj)) {\n var s = '<' + $toLowerCase.call(String(obj.nodeName));\n var attrs = obj.attributes || [];\n for (var i = 0; i < attrs.length; i++) {\n s += ' ' + attrs[i].name + '=' + wrapQuotes(quote(attrs[i].value), 'double', opts);\n }\n s += '>';\n if (obj.childNodes && obj.childNodes.length) { s += '...'; }\n s += '</' + $toLowerCase.call(String(obj.nodeName)) + '>';\n return s;\n }\n if (isArray(obj)) {\n if (obj.length === 0) { return '[]'; }\n var xs = arrObjKeys(obj, inspect);\n if (indent && !singleLineValues(xs)) {\n return '[' + indentedJoin(xs, indent) + ']';\n }\n return '[ ' + $join.call(xs, ', ') + ' ]';\n }\n if (isError(obj)) {\n var parts = arrObjKeys(obj, inspect);\n if (!('cause' in Error.prototype) && 'cause' in obj && !isEnumerable.call(obj, 'cause')) {\n return '{ [' + String(obj) + '] ' + $join.call($concat.call('[cause]: ' + inspect(obj.cause), parts), ', ') + ' }';\n }\n if (parts.length === 0) { return '[' + String(obj) + ']'; }\n return '{ [' + String(obj) + '] ' + $join.call(parts, ', ') + ' }';\n }\n if (typeof obj === 'object' && customInspect) {\n if (inspectSymbol && typeof obj[inspectSymbol] === 'function' && utilInspect) {\n return utilInspect(obj, { depth: maxDepth - depth });\n } else if (customInspect !== 'symbol' && typeof obj.inspect === 'function') {\n return obj.inspect();\n }\n }\n if (isMap(obj)) {\n var mapParts = [];\n mapForEach.call(obj, function (value, key) {\n mapParts.push(inspect(key, obj, true) + ' => ' + inspect(value, obj));\n });\n return collectionOf('Map', mapSize.call(obj), mapParts, indent);\n }\n if (isSet(obj)) {\n var setParts = [];\n setForEach.call(obj, function (value) {\n setParts.push(inspect(value, obj));\n });\n return collectionOf('Set', setSize.call(obj), setParts, indent);\n }\n if (isWeakMap(obj)) {\n return weakCollectionOf('WeakMap');\n }\n if (isWeakSet(obj)) {\n return weakCollectionOf('WeakSet');\n }\n if (isWeakRef(obj)) {\n return weakCollectionOf('WeakRef');\n }\n if (isNumber(obj)) {\n return markBoxed(inspect(Number(obj)));\n }\n if (isBigInt(obj)) {\n return markBoxed(inspect(bigIntValueOf.call(obj)));\n }\n if (isBoolean(obj)) {\n return markBoxed(booleanValueOf.call(obj));\n }\n if (isString(obj)) {\n return markBoxed(inspect(String(obj)));\n }\n if (!isDate(obj) && !isRegExp(obj)) {\n var ys = arrObjKeys(obj, inspect);\n var isPlainObject = gPO ? gPO(obj) === Object.prototype : obj instanceof Object || obj.constructor === Object;\n var protoTag = obj instanceof Object ? '' : 'null prototype';\n var stringTag = !isPlainObject && toStringTag && Object(obj) === obj && toStringTag in obj ? $slice.call(toStr(obj), 8, -1) : protoTag ? 'Object' : '';\n var constructorTag = isPlainObject || typeof obj.constructor !== 'function' ? '' : obj.constructor.name ? obj.constructor.name + ' ' : '';\n var tag = constructorTag + (stringTag || protoTag ? '[' + $join.call($concat.call([], stringTag || [], protoTag || []), ': ') + '] ' : '');\n if (ys.length === 0) { return tag + '{}'; }\n if (indent) {\n return tag + '{' + indentedJoin(ys, indent) + '}';\n }\n return tag + '{ ' + $join.call(ys, ', ') + ' }';\n }\n return String(obj);\n};\n\nfunction wrapQuotes(s, defaultStyle, opts) {\n var quoteChar = (opts.quoteStyle || defaultStyle) === 'double' ? '\"' : \"'\";\n return quoteChar + s + quoteChar;\n}\n\nfunction quote(s) {\n return $replace.call(String(s), /\"/g, '&quot;');\n}\n\nfunction isArray(obj) { return toStr(obj) === '[object Array]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isDate(obj) { return toStr(obj) === '[object Date]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isRegExp(obj) { return toStr(obj) === '[object RegExp]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isError(obj) { return toStr(obj) === '[object Error]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isString(obj) { return toStr(obj) === '[object String]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isNumber(obj) { return toStr(obj) === '[object Number]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\nfunction isBoolean(obj) { return toStr(obj) === '[object Boolean]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }\n\n// Symbol and BigInt do have Symbol.toStringTag by spec, so that can't be used to eliminate false positives\nfunction isSymbol(obj) {\n if (hasShammedSymbols) {\n return obj && typeof obj === 'object' && obj instanceof Symbol;\n }\n if (typeof obj === 'symbol') {\n return true;\n }\n if (!obj || typeof obj !== 'object' || !symToString) {\n return false;\n }\n try {\n symToString.call(obj);\n return true;\n } catch (e) {}\n return false;\n}\n\nfunction isBigInt(obj) {\n if (!obj || typeof obj !== 'object' || !bigIntValueOf) {\n return false;\n }\n try {\n bigIntValueOf.call(obj);\n return true;\n } catch (e) {}\n return false;\n}\n\nvar hasOwn = Object.prototype.hasOwnProperty || function (key) { return key in this; };\nfunction has(obj, key) {\n return hasOwn.call(obj, key);\n}\n\nfunction toStr(obj) {\n return objectToString.call(obj);\n}\n\nfunction nameOf(f) {\n if (f.name) { return f.name; }\n var m = $match.call(functionToString.call(f), /^function\\s*([\\w$]+)/);\n if (m) { return m[1]; }\n return null;\n}\n\nfunction indexOf(xs, x) {\n if (xs.indexOf) { return xs.indexOf(x); }\n for (var i = 0, l = xs.length; i < l; i++) {\n if (xs[i] === x) { return i; }\n }\n return -1;\n}\n\nfunction isMap(x) {\n if (!mapSize || !x || typeof x !== 'object') {\n return false;\n }\n try {\n mapSize.call(x);\n try {\n setSize.call(x);\n } catch (s) {\n return true;\n }\n return x instanceof Map; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakMap(x) {\n if (!weakMapHas || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakMapHas.call(x, weakMapHas);\n try {\n weakSetHas.call(x, weakSetHas);\n } catch (s) {\n return true;\n }\n return x instanceof WeakMap; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakRef(x) {\n if (!weakRefDeref || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakRefDeref.call(x);\n return true;\n } catch (e) {}\n return false;\n}\n\nfunction isSet(x) {\n if (!setSize || !x || typeof x !== 'object') {\n return false;\n }\n try {\n setSize.call(x);\n try {\n mapSize.call(x);\n } catch (m) {\n return true;\n }\n return x instanceof Set; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isWeakSet(x) {\n if (!weakSetHas || !x || typeof x !== 'object') {\n return false;\n }\n try {\n weakSetHas.call(x, weakSetHas);\n try {\n weakMapHas.call(x, weakMapHas);\n } catch (s) {\n return true;\n }\n return x instanceof WeakSet; // core-js workaround, pre-v2.5.0\n } catch (e) {}\n return false;\n}\n\nfunction isElement(x) {\n if (!x || typeof x !== 'object') { return false; }\n if (typeof HTMLElement !== 'undefined' && x instanceof HTMLElement) {\n return true;\n }\n return typeof x.nodeName === 'string' && typeof x.getAttribute === 'function';\n}\n\nfunction inspectString(str, opts) {\n if (str.length > opts.maxStringLength) {\n var remaining = str.length - opts.maxStringLength;\n var trailer = '... ' + remaining + ' more character' + (remaining > 1 ? 's' : '');\n return inspectString($slice.call(str, 0, opts.maxStringLength), opts) + trailer;\n }\n // eslint-disable-next-line no-control-regex\n var s = $replace.call($replace.call(str, /(['\\\\])/g, '\\\\$1'), /[\\x00-\\x1f]/g, lowbyte);\n return wrapQuotes(s, 'single', opts);\n}\n\nfunction lowbyte(c) {\n var n = c.charCodeAt(0);\n var x = {\n 8: 'b',\n 9: 't',\n 10: 'n',\n 12: 'f',\n 13: 'r'\n }[n];\n if (x) { return '\\\\' + x; }\n return '\\\\x' + (n < 0x10 ? '0' : '') + $toUpperCase.call(n.toString(16));\n}\n\nfunction markBoxed(str) {\n return 'Object(' + str + ')';\n}\n\nfunction weakCollectionOf(type) {\n return type + ' { ? }';\n}\n\nfunction collectionOf(type, size, entries, indent) {\n var joinedEntries = indent ? indentedJoin(entries, indent) : $join.call(entries, ', ');\n return type + ' (' + size + ') {' + joinedEntries + '}';\n}\n\nfunction singleLineValues(xs) {\n for (var i = 0; i < xs.length; i++) {\n if (indexOf(xs[i], '\\n') >= 0) {\n return false;\n }\n }\n return true;\n}\n\nfunction getIndent(opts, depth) {\n var baseIndent;\n if (opts.indent === '\\t') {\n baseIndent = '\\t';\n } else if (typeof opts.indent === 'number' && opts.indent > 0) {\n baseIndent = $join.call(Array(opts.indent + 1), ' ');\n } else {\n return null;\n }\n return {\n base: baseIndent,\n prev: $join.call(Array(depth + 1), baseIndent)\n };\n}\n\nfunction indentedJoin(xs, indent) {\n if (xs.length === 0) { return ''; }\n var lineJoiner = '\\n' + indent.prev + indent.base;\n return lineJoiner + $join.call(xs, ',' + lineJoiner) + '\\n' + indent.prev;\n}\n\nfunction arrObjKeys(obj, inspect) {\n var isArr = isArray(obj);\n var xs = [];\n if (isArr) {\n xs.length = obj.length;\n for (var i = 0; i < obj.length; i++) {\n xs[i] = has(obj, i) ? inspect(obj[i], obj) : '';\n }\n }\n var syms = typeof gOPS === 'function' ? gOPS(obj) : [];\n var symMap;\n if (hasShammedSymbols) {\n symMap = {};\n for (var k = 0; k < syms.length; k++) {\n symMap['$' + syms[k]] = syms[k];\n }\n }\n\n for (var key in obj) { // eslint-disable-line no-restricted-syntax\n if (!has(obj, key)) { continue; } // eslint-disable-line no-restricted-syntax, no-continue\n if (isArr && String(Number(key)) === key && key < obj.length) { continue; } // eslint-disable-line no-restricted-syntax, no-continue\n if (hasShammedSymbols && symMap['$' + key] instanceof Symbol) {\n // this is to prevent shammed Symbols, which are stored as strings, from being included in the string key section\n continue; // eslint-disable-line no-restricted-syntax, no-continue\n } else if ($test.call(/[^\\w$]/, key)) {\n xs.push(inspect(key, obj) + ': ' + inspect(obj[key], obj));\n } else {\n xs.push(key + ': ' + inspect(obj[key], obj));\n }\n }\n if (typeof gOPS === 'function') {\n for (var j = 0; j < syms.length; j++) {\n if (isEnumerable.call(obj, syms[j])) {\n xs.push('[' + inspect(syms[j]) + ']: ' + inspect(obj[syms[j]], obj));\n }\n }\n }\n return xs;\n}\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\nvar callBound = require('call-bind/callBound');\nvar inspect = require('object-inspect');\n\nvar $TypeError = GetIntrinsic('%TypeError%');\nvar $WeakMap = GetIntrinsic('%WeakMap%', true);\nvar $Map = GetIntrinsic('%Map%', true);\n\nvar $weakMapGet = callBound('WeakMap.prototype.get', true);\nvar $weakMapSet = callBound('WeakMap.prototype.set', true);\nvar $weakMapHas = callBound('WeakMap.prototype.has', true);\nvar $mapGet = callBound('Map.prototype.get', true);\nvar $mapSet = callBound('Map.prototype.set', true);\nvar $mapHas = callBound('Map.prototype.has', true);\n\n/*\n * This function traverses the list returning the node corresponding to the\n * given key.\n *\n * That node is also moved to the head of the list, so that if it's accessed\n * again we don't need to traverse the whole list. By doing so, all the recently\n * used nodes can be accessed relatively quickly.\n */\nvar listGetNode = function (list, key) { // eslint-disable-line consistent-return\n\tfor (var prev = list, curr; (curr = prev.next) !== null; prev = curr) {\n\t\tif (curr.key === key) {\n\t\t\tprev.next = curr.next;\n\t\t\tcurr.next = list.next;\n\t\t\tlist.next = curr; // eslint-disable-line no-param-reassign\n\t\t\treturn curr;\n\t\t}\n\t}\n};\n\nvar listGet = function (objects, key) {\n\tvar node = listGetNode(objects, key);\n\treturn node && node.value;\n};\nvar listSet = function (objects, key, value) {\n\tvar node = listGetNode(objects, key);\n\tif (node) {\n\t\tnode.value = value;\n\t} else {\n\t\t// Prepend the new node to the beginning of the list\n\t\tobjects.next = { // eslint-disable-line no-param-reassign\n\t\t\tkey: key,\n\t\t\tnext: objects.next,\n\t\t\tvalue: value\n\t\t};\n\t}\n};\nvar listHas = function (objects, key) {\n\treturn !!listGetNode(objects, key);\n};\n\nmodule.exports = function getSideChannel() {\n\tvar $wm;\n\tvar $m;\n\tvar $o;\n\tvar channel = {\n\t\tassert: function (key) {\n\t\t\tif (!channel.has(key)) {\n\t\t\t\tthrow new $TypeError('Side channel does not contain ' + inspect(key));\n\t\t\t}\n\t\t},\n\t\tget: function (key) { // eslint-disable-line consistent-return\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif ($wm) {\n\t\t\t\t\treturn $weakMapGet($wm, key);\n\t\t\t\t}\n\t\t\t} else if ($Map) {\n\t\t\t\tif ($m) {\n\t\t\t\t\treturn $mapGet($m, key);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif ($o) { // eslint-disable-line no-lonely-if\n\t\t\t\t\treturn listGet($o, key);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\thas: function (key) {\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif ($wm) {\n\t\t\t\t\treturn $weakMapHas($wm, key);\n\t\t\t\t}\n\t\t\t} else if ($Map) {\n\t\t\t\tif ($m) {\n\t\t\t\t\treturn $mapHas($m, key);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif ($o) { // eslint-disable-line no-lonely-if\n\t\t\t\t\treturn listHas($o, key);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t},\n\t\tset: function (key, value) {\n\t\t\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\n\t\t\t\tif (!$wm) {\n\t\t\t\t\t$wm = new $WeakMap();\n\t\t\t\t}\n\t\t\t\t$weakMapSet($wm, key, value);\n\t\t\t} else if ($Map) {\n\t\t\t\tif (!$m) {\n\t\t\t\t\t$m = new $Map();\n\t\t\t\t}\n\t\t\t\t$mapSet($m, key, value);\n\t\t\t} else {\n\t\t\t\tif (!$o) {\n\t\t\t\t\t/*\n\t\t\t\t\t * Initialize the linked list as an empty node, so that we don't have\n\t\t\t\t\t * to special-case handling of the first node: we can always refer to\n\t\t\t\t\t * it as (previous node).next, instead of something like (list).head\n\t\t\t\t\t */\n\t\t\t\t\t$o = { key: {}, next: null };\n\t\t\t\t}\n\t\t\t\tlistSet($o, key, value);\n\t\t\t}\n\t\t}\n\t};\n\treturn channel;\n};\n","'use strict';\n\nvar replace = String.prototype.replace;\nvar percentTwenties = /%20/g;\n\nvar Format = {\n RFC1738: 'RFC1738',\n RFC3986: 'RFC3986'\n};\n\nmodule.exports = {\n 'default': Format.RFC3986,\n formatters: {\n RFC1738: function (value) {\n return replace.call(value, percentTwenties, '+');\n },\n RFC3986: function (value) {\n return String(value);\n }\n },\n RFC1738: Format.RFC1738,\n RFC3986: Format.RFC3986\n};\n","'use strict';\n\nvar formats = require('./formats');\n\nvar has = Object.prototype.hasOwnProperty;\nvar isArray = Array.isArray;\n\nvar hexTable = (function () {\n var array = [];\n for (var i = 0; i < 256; ++i) {\n array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase());\n }\n\n return array;\n}());\n\nvar compactQueue = function compactQueue(queue) {\n while (queue.length > 1) {\n var item = queue.pop();\n var obj = item.obj[item.prop];\n\n if (isArray(obj)) {\n var compacted = [];\n\n for (var j = 0; j < obj.length; ++j) {\n if (typeof obj[j] !== 'undefined') {\n compacted.push(obj[j]);\n }\n }\n\n item.obj[item.prop] = compacted;\n }\n }\n};\n\nvar arrayToObject = function arrayToObject(source, options) {\n var obj = options && options.plainObjects ? Object.create(null) : {};\n for (var i = 0; i < source.length; ++i) {\n if (typeof source[i] !== 'undefined') {\n obj[i] = source[i];\n }\n }\n\n return obj;\n};\n\nvar merge = function merge(target, source, options) {\n /* eslint no-param-reassign: 0 */\n if (!source) {\n return target;\n }\n\n if (typeof source !== 'object') {\n if (isArray(target)) {\n target.push(source);\n } else if (target && typeof target === 'object') {\n if ((options && (options.plainObjects || options.allowPrototypes)) || !has.call(Object.prototype, source)) {\n target[source] = true;\n }\n } else {\n return [target, source];\n }\n\n return target;\n }\n\n if (!target || typeof target !== 'object') {\n return [target].concat(source);\n }\n\n var mergeTarget = target;\n if (isArray(target) && !isArray(source)) {\n mergeTarget = arrayToObject(target, options);\n }\n\n if (isArray(target) && isArray(source)) {\n source.forEach(function (item, i) {\n if (has.call(target, i)) {\n var targetItem = target[i];\n if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') {\n target[i] = merge(targetItem, item, options);\n } else {\n target.push(item);\n }\n } else {\n target[i] = item;\n }\n });\n return target;\n }\n\n return Object.keys(source).reduce(function (acc, key) {\n var value = source[key];\n\n if (has.call(acc, key)) {\n acc[key] = merge(acc[key], value, options);\n } else {\n acc[key] = value;\n }\n return acc;\n }, mergeTarget);\n};\n\nvar assign = function assignSingleSource(target, source) {\n return Object.keys(source).reduce(function (acc, key) {\n acc[key] = source[key];\n return acc;\n }, target);\n};\n\nvar decode = function (str, decoder, charset) {\n var strWithoutPlus = str.replace(/\\+/g, ' ');\n if (charset === 'iso-8859-1') {\n // unescape never throws, no try...catch needed:\n return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape);\n }\n // utf-8\n try {\n return decodeURIComponent(strWithoutPlus);\n } catch (e) {\n return strWithoutPlus;\n }\n};\n\nvar encode = function encode(str, defaultEncoder, charset, kind, format) {\n // This code was originally written by Brian White (mscdex) for the io.js core querystring library.\n // It has been adapted here for stricter adherence to RFC 3986\n if (str.length === 0) {\n return str;\n }\n\n var string = str;\n if (typeof str === 'symbol') {\n string = Symbol.prototype.toString.call(str);\n } else if (typeof str !== 'string') {\n string = String(str);\n }\n\n if (charset === 'iso-8859-1') {\n return escape(string).replace(/%u[0-9a-f]{4}/gi, function ($0) {\n return '%26%23' + parseInt($0.slice(2), 16) + '%3B';\n });\n }\n\n var out = '';\n for (var i = 0; i < string.length; ++i) {\n var c = string.charCodeAt(i);\n\n if (\n c === 0x2D // -\n || c === 0x2E // .\n || c === 0x5F // _\n || c === 0x7E // ~\n || (c >= 0x30 && c <= 0x39) // 0-9\n || (c >= 0x41 && c <= 0x5A) // a-z\n || (c >= 0x61 && c <= 0x7A) // A-Z\n || (format === formats.RFC1738 && (c === 0x28 || c === 0x29)) // ( )\n ) {\n out += string.charAt(i);\n continue;\n }\n\n if (c < 0x80) {\n out = out + hexTable[c];\n continue;\n }\n\n if (c < 0x800) {\n out = out + (hexTable[0xC0 | (c >> 6)] + hexTable[0x80 | (c & 0x3F)]);\n continue;\n }\n\n if (c < 0xD800 || c >= 0xE000) {\n out = out + (hexTable[0xE0 | (c >> 12)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]);\n continue;\n }\n\n i += 1;\n c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF));\n /* eslint operator-linebreak: [2, \"before\"] */\n out += hexTable[0xF0 | (c >> 18)]\n + hexTable[0x80 | ((c >> 12) & 0x3F)]\n + hexTable[0x80 | ((c >> 6) & 0x3F)]\n + hexTable[0x80 | (c & 0x3F)];\n }\n\n return out;\n};\n\nvar compact = function compact(value) {\n var queue = [{ obj: { o: value }, prop: 'o' }];\n var refs = [];\n\n for (var i = 0; i < queue.length; ++i) {\n var item = queue[i];\n var obj = item.obj[item.prop];\n\n var keys = Object.keys(obj);\n for (var j = 0; j < keys.length; ++j) {\n var key = keys[j];\n var val = obj[key];\n if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {\n queue.push({ obj: obj, prop: key });\n refs.push(val);\n }\n }\n }\n\n compactQueue(queue);\n\n return value;\n};\n\nvar isRegExp = function isRegExp(obj) {\n return Object.prototype.toString.call(obj) === '[object RegExp]';\n};\n\nvar isBuffer = function isBuffer(obj) {\n if (!obj || typeof obj !== 'object') {\n return false;\n }\n\n return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));\n};\n\nvar combine = function combine(a, b) {\n return [].concat(a, b);\n};\n\nvar maybeMap = function maybeMap(val, fn) {\n if (isArray(val)) {\n var mapped = [];\n for (var i = 0; i < val.length; i += 1) {\n mapped.push(fn(val[i]));\n }\n return mapped;\n }\n return fn(val);\n};\n\nmodule.exports = {\n arrayToObject: arrayToObject,\n assign: assign,\n combine: combine,\n compact: compact,\n decode: decode,\n encode: encode,\n isBuffer: isBuffer,\n isRegExp: isRegExp,\n maybeMap: maybeMap,\n merge: merge\n};\n","'use strict';\n\nvar getSideChannel = require('side-channel');\nvar utils = require('./utils');\nvar formats = require('./formats');\nvar has = Object.prototype.hasOwnProperty;\n\nvar arrayPrefixGenerators = {\n brackets: function brackets(prefix) {\n return prefix + '[]';\n },\n comma: 'comma',\n indices: function indices(prefix, key) {\n return prefix + '[' + key + ']';\n },\n repeat: function repeat(prefix) {\n return prefix;\n }\n};\n\nvar isArray = Array.isArray;\nvar split = String.prototype.split;\nvar push = Array.prototype.push;\nvar pushToArray = function (arr, valueOrArray) {\n push.apply(arr, isArray(valueOrArray) ? valueOrArray : [valueOrArray]);\n};\n\nvar toISO = Date.prototype.toISOString;\n\nvar defaultFormat = formats['default'];\nvar defaults = {\n addQueryPrefix: false,\n allowDots: false,\n charset: 'utf-8',\n charsetSentinel: false,\n delimiter: '&',\n encode: true,\n encoder: utils.encode,\n encodeValuesOnly: false,\n format: defaultFormat,\n formatter: formats.formatters[defaultFormat],\n // deprecated\n indices: false,\n serializeDate: function serializeDate(date) {\n return toISO.call(date);\n },\n skipNulls: false,\n strictNullHandling: false\n};\n\nvar isNonNullishPrimitive = function isNonNullishPrimitive(v) {\n return typeof v === 'string'\n || typeof v === 'number'\n || typeof v === 'boolean'\n || typeof v === 'symbol'\n || typeof v === 'bigint';\n};\n\nvar sentinel = {};\n\nvar stringify = function stringify(\n object,\n prefix,\n generateArrayPrefix,\n strictNullHandling,\n skipNulls,\n encoder,\n filter,\n sort,\n allowDots,\n serializeDate,\n format,\n formatter,\n encodeValuesOnly,\n charset,\n sideChannel\n) {\n var obj = object;\n\n var tmpSc = sideChannel;\n var step = 0;\n var findFlag = false;\n while ((tmpSc = tmpSc.get(sentinel)) !== void undefined && !findFlag) {\n // Where object last appeared in the ref tree\n var pos = tmpSc.get(object);\n step += 1;\n if (typeof pos !== 'undefined') {\n if (pos === step) {\n throw new RangeError('Cyclic object value');\n } else {\n findFlag = true; // Break while\n }\n }\n if (typeof tmpSc.get(sentinel) === 'undefined') {\n step = 0;\n }\n }\n\n if (typeof filter === 'function') {\n obj = filter(prefix, obj);\n } else if (obj instanceof Date) {\n obj = serializeDate(obj);\n } else if (generateArrayPrefix === 'comma' && isArray(obj)) {\n obj = utils.maybeMap(obj, function (value) {\n if (value instanceof Date) {\n return serializeDate(value);\n }\n return value;\n });\n }\n\n if (obj === null) {\n if (strictNullHandling) {\n return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder, charset, 'key', format) : prefix;\n }\n\n obj = '';\n }\n\n if (isNonNullishPrimitive(obj) || utils.isBuffer(obj)) {\n if (encoder) {\n var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder, charset, 'key', format);\n if (generateArrayPrefix === 'comma' && encodeValuesOnly) {\n var valuesArray = split.call(String(obj), ',');\n var valuesJoined = '';\n for (var i = 0; i < valuesArray.length; ++i) {\n valuesJoined += (i === 0 ? '' : ',') + formatter(encoder(valuesArray[i], defaults.encoder, charset, 'value', format));\n }\n return [formatter(keyValue) + (isArray(obj) && valuesArray.length === 1 ? '[]' : '') + '=' + valuesJoined];\n }\n return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults.encoder, charset, 'value', format))];\n }\n return [formatter(prefix) + '=' + formatter(String(obj))];\n }\n\n var values = [];\n\n if (typeof obj === 'undefined') {\n return values;\n }\n\n var objKeys;\n if (generateArrayPrefix === 'comma' && isArray(obj)) {\n // we need to join elements in\n objKeys = [{ value: obj.length > 0 ? obj.join(',') || null : void undefined }];\n } else if (isArray(filter)) {\n objKeys = filter;\n } else {\n var keys = Object.keys(obj);\n objKeys = sort ? keys.sort(sort) : keys;\n }\n\n var adjustedPrefix = generateArrayPrefix === 'comma' && isArray(obj) && obj.length === 1 ? prefix + '[]' : prefix;\n\n for (var j = 0; j < objKeys.length; ++j) {\n var key = objKeys[j];\n var value = typeof key === 'object' && typeof key.value !== 'undefined' ? key.value : obj[key];\n\n if (skipNulls && value === null) {\n continue;\n }\n\n var keyPrefix = isArray(obj)\n ? typeof generateArrayPrefix === 'function' ? generateArrayPrefix(adjustedPrefix, key) : adjustedPrefix\n : adjustedPrefix + (allowDots ? '.' + key : '[' + key + ']');\n\n sideChannel.set(object, step);\n var valueSideChannel = getSideChannel();\n valueSideChannel.set(sentinel, sideChannel);\n pushToArray(values, stringify(\n value,\n keyPrefix,\n generateArrayPrefix,\n strictNullHandling,\n skipNulls,\n encoder,\n filter,\n sort,\n allowDots,\n serializeDate,\n format,\n formatter,\n encodeValuesOnly,\n charset,\n valueSideChannel\n ));\n }\n\n return values;\n};\n\nvar normalizeStringifyOptions = function normalizeStringifyOptions(opts) {\n if (!opts) {\n return defaults;\n }\n\n if (opts.encoder !== null && typeof opts.encoder !== 'undefined' && typeof opts.encoder !== 'function') {\n throw new TypeError('Encoder has to be a function.');\n }\n\n var charset = opts.charset || defaults.charset;\n if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {\n throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');\n }\n\n var format = formats['default'];\n if (typeof opts.format !== 'undefined') {\n if (!has.call(formats.formatters, opts.format)) {\n throw new TypeError('Unknown format option provided.');\n }\n format = opts.format;\n }\n var formatter = formats.formatters[format];\n\n var filter = defaults.filter;\n if (typeof opts.filter === 'function' || isArray(opts.filter)) {\n filter = opts.filter;\n }\n\n return {\n addQueryPrefix: typeof opts.addQueryPrefix === 'boolean' ? opts.addQueryPrefix : defaults.addQueryPrefix,\n allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,\n charset: charset,\n charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,\n delimiter: typeof opts.delimiter === 'undefined' ? defaults.delimiter : opts.delimiter,\n encode: typeof opts.encode === 'boolean' ? opts.encode : defaults.encode,\n encoder: typeof opts.encoder === 'function' ? opts.encoder : defaults.encoder,\n encodeValuesOnly: typeof opts.encodeValuesOnly === 'boolean' ? opts.encodeValuesOnly : defaults.encodeValuesOnly,\n filter: filter,\n format: format,\n formatter: formatter,\n serializeDate: typeof opts.serializeDate === 'function' ? opts.serializeDate : defaults.serializeDate,\n skipNulls: typeof opts.skipNulls === 'boolean' ? opts.skipNulls : defaults.skipNulls,\n sort: typeof opts.sort === 'function' ? opts.sort : null,\n strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling\n };\n};\n\nmodule.exports = function (object, opts) {\n var obj = object;\n var options = normalizeStringifyOptions(opts);\n\n var objKeys;\n var filter;\n\n if (typeof options.filter === 'function') {\n filter = options.filter;\n obj = filter('', obj);\n } else if (isArray(options.filter)) {\n filter = options.filter;\n objKeys = filter;\n }\n\n var keys = [];\n\n if (typeof obj !== 'object' || obj === null) {\n return '';\n }\n\n var arrayFormat;\n if (opts && opts.arrayFormat in arrayPrefixGenerators) {\n arrayFormat = opts.arrayFormat;\n } else if (opts && 'indices' in opts) {\n arrayFormat = opts.indices ? 'indices' : 'repeat';\n } else {\n arrayFormat = 'indices';\n }\n\n var generateArrayPrefix = arrayPrefixGenerators[arrayFormat];\n\n if (!objKeys) {\n objKeys = Object.keys(obj);\n }\n\n if (options.sort) {\n objKeys.sort(options.sort);\n }\n\n var sideChannel = getSideChannel();\n for (var i = 0; i < objKeys.length; ++i) {\n var key = objKeys[i];\n\n if (options.skipNulls && obj[key] === null) {\n continue;\n }\n pushToArray(keys, stringify(\n obj[key],\n key,\n generateArrayPrefix,\n options.strictNullHandling,\n options.skipNulls,\n options.encode ? options.encoder : null,\n options.filter,\n options.sort,\n options.allowDots,\n options.serializeDate,\n options.format,\n options.formatter,\n options.encodeValuesOnly,\n options.charset,\n sideChannel\n ));\n }\n\n var joined = keys.join(options.delimiter);\n var prefix = options.addQueryPrefix === true ? '?' : '';\n\n if (options.charsetSentinel) {\n if (options.charset === 'iso-8859-1') {\n // encodeURIComponent('&#10003;'), the \"numeric entity\" representation of a checkmark\n prefix += 'utf8=%26%2310003%3B&';\n } else {\n // encodeURIComponent('✓')\n prefix += 'utf8=%E2%9C%93&';\n }\n }\n\n return joined.length > 0 ? prefix + joined : '';\n};\n","'use strict';\n\nvar utils = require('./utils');\n\nvar has = Object.prototype.hasOwnProperty;\nvar isArray = Array.isArray;\n\nvar defaults = {\n allowDots: false,\n allowPrototypes: false,\n allowSparse: false,\n arrayLimit: 20,\n charset: 'utf-8',\n charsetSentinel: false,\n comma: false,\n decoder: utils.decode,\n delimiter: '&',\n depth: 5,\n ignoreQueryPrefix: false,\n interpretNumericEntities: false,\n parameterLimit: 1000,\n parseArrays: true,\n plainObjects: false,\n strictNullHandling: false\n};\n\nvar interpretNumericEntities = function (str) {\n return str.replace(/&#(\\d+);/g, function ($0, numberStr) {\n return String.fromCharCode(parseInt(numberStr, 10));\n });\n};\n\nvar parseArrayValue = function (val, options) {\n if (val && typeof val === 'string' && options.comma && val.indexOf(',') > -1) {\n return val.split(',');\n }\n\n return val;\n};\n\n// This is what browsers will submit when the ✓ character occurs in an\n// application/x-www-form-urlencoded body and the encoding of the page containing\n// the form is iso-8859-1, or when the submitted form has an accept-charset\n// attribute of iso-8859-1. Presumably also with other charsets that do not contain\n// the ✓ character, such as us-ascii.\nvar isoSentinel = 'utf8=%26%2310003%3B'; // encodeURIComponent('&#10003;')\n\n// These are the percent-encoded utf-8 octets representing a checkmark, indicating that the request actually is utf-8 encoded.\nvar charsetSentinel = 'utf8=%E2%9C%93'; // encodeURIComponent('✓')\n\nvar parseValues = function parseQueryStringValues(str, options) {\n var obj = {};\n var cleanStr = options.ignoreQueryPrefix ? str.replace(/^\\?/, '') : str;\n var limit = options.parameterLimit === Infinity ? undefined : options.parameterLimit;\n var parts = cleanStr.split(options.delimiter, limit);\n var skipIndex = -1; // Keep track of where the utf8 sentinel was found\n var i;\n\n var charset = options.charset;\n if (options.charsetSentinel) {\n for (i = 0; i < parts.length; ++i) {\n if (parts[i].indexOf('utf8=') === 0) {\n if (parts[i] === charsetSentinel) {\n charset = 'utf-8';\n } else if (parts[i] === isoSentinel) {\n charset = 'iso-8859-1';\n }\n skipIndex = i;\n i = parts.length; // The eslint settings do not allow break;\n }\n }\n }\n\n for (i = 0; i < parts.length; ++i) {\n if (i === skipIndex) {\n continue;\n }\n var part = parts[i];\n\n var bracketEqualsPos = part.indexOf(']=');\n var pos = bracketEqualsPos === -1 ? part.indexOf('=') : bracketEqualsPos + 1;\n\n var key, val;\n if (pos === -1) {\n key = options.decoder(part, defaults.decoder, charset, 'key');\n val = options.strictNullHandling ? null : '';\n } else {\n key = options.decoder(part.slice(0, pos), defaults.decoder, charset, 'key');\n val = utils.maybeMap(\n parseArrayValue(part.slice(pos + 1), options),\n function (encodedVal) {\n return options.decoder(encodedVal, defaults.decoder, charset, 'value');\n }\n );\n }\n\n if (val && options.interpretNumericEntities && charset === 'iso-8859-1') {\n val = interpretNumericEntities(val);\n }\n\n if (part.indexOf('[]=') > -1) {\n val = isArray(val) ? [val] : val;\n }\n\n if (has.call(obj, key)) {\n obj[key] = utils.combine(obj[key], val);\n } else {\n obj[key] = val;\n }\n }\n\n return obj;\n};\n\nvar parseObject = function (chain, val, options, valuesParsed) {\n var leaf = valuesParsed ? val : parseArrayValue(val, options);\n\n for (var i = chain.length - 1; i >= 0; --i) {\n var obj;\n var root = chain[i];\n\n if (root === '[]' && options.parseArrays) {\n obj = [].concat(leaf);\n } else {\n obj = options.plainObjects ? Object.create(null) : {};\n var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root;\n var index = parseInt(cleanRoot, 10);\n if (!options.parseArrays && cleanRoot === '') {\n obj = { 0: leaf };\n } else if (\n !isNaN(index)\n && root !== cleanRoot\n && String(index) === cleanRoot\n && index >= 0\n && (options.parseArrays && index <= options.arrayLimit)\n ) {\n obj = [];\n obj[index] = leaf;\n } else if (cleanRoot !== '__proto__') {\n obj[cleanRoot] = leaf;\n }\n }\n\n leaf = obj;\n }\n\n return leaf;\n};\n\nvar parseKeys = function parseQueryStringKeys(givenKey, val, options, valuesParsed) {\n if (!givenKey) {\n return;\n }\n\n // Transform dot notation to bracket notation\n var key = options.allowDots ? givenKey.replace(/\\.([^.[]+)/g, '[$1]') : givenKey;\n\n // The regex chunks\n\n var brackets = /(\\[[^[\\]]*])/;\n var child = /(\\[[^[\\]]*])/g;\n\n // Get the parent\n\n var segment = options.depth > 0 && brackets.exec(key);\n var parent = segment ? key.slice(0, segment.index) : key;\n\n // Stash the parent if it exists\n\n var keys = [];\n if (parent) {\n // If we aren't using plain objects, optionally prefix keys that would overwrite object prototype properties\n if (!options.plainObjects && has.call(Object.prototype, parent)) {\n if (!options.allowPrototypes) {\n return;\n }\n }\n\n keys.push(parent);\n }\n\n // Loop through children appending to the array until we hit depth\n\n var i = 0;\n while (options.depth > 0 && (segment = child.exec(key)) !== null && i < options.depth) {\n i += 1;\n if (!options.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) {\n if (!options.allowPrototypes) {\n return;\n }\n }\n keys.push(segment[1]);\n }\n\n // If there's a remainder, just add whatever is left\n\n if (segment) {\n keys.push('[' + key.slice(segment.index) + ']');\n }\n\n return parseObject(keys, val, options, valuesParsed);\n};\n\nvar normalizeParseOptions = function normalizeParseOptions(opts) {\n if (!opts) {\n return defaults;\n }\n\n if (opts.decoder !== null && opts.decoder !== undefined && typeof opts.decoder !== 'function') {\n throw new TypeError('Decoder has to be a function.');\n }\n\n if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {\n throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');\n }\n var charset = typeof opts.charset === 'undefined' ? defaults.charset : opts.charset;\n\n return {\n allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots,\n allowPrototypes: typeof opts.allowPrototypes === 'boolean' ? opts.allowPrototypes : defaults.allowPrototypes,\n allowSparse: typeof opts.allowSparse === 'boolean' ? opts.allowSparse : defaults.allowSparse,\n arrayLimit: typeof opts.arrayLimit === 'number' ? opts.arrayLimit : defaults.arrayLimit,\n charset: charset,\n charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,\n comma: typeof opts.comma === 'boolean' ? opts.comma : defaults.comma,\n decoder: typeof opts.decoder === 'function' ? opts.decoder : defaults.decoder,\n delimiter: typeof opts.delimiter === 'string' || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults.delimiter,\n // eslint-disable-next-line no-implicit-coercion, no-extra-parens\n depth: (typeof opts.depth === 'number' || opts.depth === false) ? +opts.depth : defaults.depth,\n ignoreQueryPrefix: opts.ignoreQueryPrefix === true,\n interpretNumericEntities: typeof opts.interpretNumericEntities === 'boolean' ? opts.interpretNumericEntities : defaults.interpretNumericEntities,\n parameterLimit: typeof opts.parameterLimit === 'number' ? opts.parameterLimit : defaults.parameterLimit,\n parseArrays: opts.parseArrays !== false,\n plainObjects: typeof opts.plainObjects === 'boolean' ? opts.plainObjects : defaults.plainObjects,\n strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling\n };\n};\n\nmodule.exports = function (str, opts) {\n var options = normalizeParseOptions(opts);\n\n if (str === '' || str === null || typeof str === 'undefined') {\n return options.plainObjects ? Object.create(null) : {};\n }\n\n var tempObj = typeof str === 'string' ? parseValues(str, options) : str;\n var obj = options.plainObjects ? Object.create(null) : {};\n\n // Iterate over the keys and setup the new object\n\n var keys = Object.keys(tempObj);\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n var newObj = parseKeys(key, tempObj[key], options, typeof str === 'string');\n obj = utils.merge(obj, newObj, options);\n }\n\n if (options.allowSparse === true) {\n return obj;\n }\n\n return utils.compact(obj);\n};\n","'use strict';\n\nvar stringify = require('./stringify');\nvar parse = require('./parse');\nvar formats = require('./formats');\n\nmodule.exports = {\n formats: formats,\n parse: parse,\n stringify: stringify\n};\n","import qs from 'qs';\n\nconst STORAGE_NAME_SPACE = 'nano-component-store:';\n\nconst urlRead = (\n from: 'hash' | 'query' = 'hash',\n win: Window = window\n): void | object => {\n if (!win || !win.location) return {};\n if (from === 'hash' && win.location.hash)\n return qs.parse(win.location.hash.replace(/^\\#/, ''), {\n strictNullHandling: true,\n });\n else if (from === 'query' && win.location.search)\n return qs.parse(win.location.search, { ignoreQueryPrefix: true });\n return {};\n};\n\nconst urlSave = (\n object: object,\n to: 'hash' | 'query' = 'hash',\n win: Window = window,\n method: 'replace' | 'push' = 'replace'\n) => {\n if (!win || !win.history) return;\n const oldQuery = to === 'query' ? win.location.search : win.location.hash;\n let basePath =\n to === 'query'\n ? win.location.pathname\n : win.location.pathname + win.location.search;\n let queryStr = qs.stringify(object, {\n strictNullHandling: true,\n addQueryPrefix: false,\n encodeValuesOnly: true,\n });\n\n if (!queryStr || !queryStr.length) {\n if (!oldQuery || !oldQuery.length) return;\n if (method === 'replace') win.history.replaceState(null, null, basePath);\n else win.history.pushState(null, null, basePath);\n return;\n }\n\n if (to === 'hash' && win.location.hash === '#' + queryStr) {\n try {\n (document.querySelector('#' + queryStr) as HTMLElement).focus();\n } catch (e) {}\n return;\n }\n queryStr = (to === 'hash' ? '#' : '?') + queryStr;\n if (queryStr === oldQuery) return;\n if (method === 'replace')\n win.history.replaceState(null, null, basePath + queryStr);\n else win.history.pushState(null, null, basePath + queryStr);\n};\n\nexport const urlSet = (\n id: string,\n data: object,\n to: 'hash' | 'query' = 'hash',\n win: Window = window,\n method: 'replace' | 'push' = 'replace'\n) => {\n // sanitize the incoming key\n id = Object.keys(qs.parse(id))[0];\n let object = {};\n object[id] = data;\n\n let currentData = urlRead(to, win);\n currentData = { ...currentData, ...object };\n urlSave(currentData, to, win, method);\n};\n\nexport const urlGet = (\n key: string,\n to: 'hash' | 'query' = 'hash',\n win: Window = window\n) => {\n // sanitize the incoming key\n key = Object.keys(qs.parse(key))[0];\n let currentData = urlRead(to, win);\n return currentData[key] || null;\n};\n\nexport const sessionSet = (\n key: string,\n object: object,\n win: Window = window\n) => {\n try {\n if (!object) {\n win.sessionStorage.removeItem(STORAGE_NAME_SPACE + key);\n return;\n }\n win.sessionStorage.setItem(\n STORAGE_NAME_SPACE + key,\n JSON.stringify(object)\n );\n } catch (e) {\n throw e;\n }\n};\n\nexport const sessionGet = (key: string, win: Window = window) => {\n try {\n const configStr = win.sessionStorage.getItem(STORAGE_NAME_SPACE + key);\n return configStr !== null ? JSON.parse(configStr) : null;\n } catch (e) {\n throw e;\n }\n};\n\nexport const storageSet = (\n key: string,\n object: object,\n win: Window = window\n) => {\n try {\n if (!object) {\n win.localStorage.removeItem(STORAGE_NAME_SPACE + key);\n return;\n }\n win.localStorage.setItem(STORAGE_NAME_SPACE + key, JSON.stringify(object));\n } catch (e) {\n throw e;\n }\n};\n\nexport const storageGet = (key: string, win: Window = window) => {\n try {\n const configStr = win.localStorage.getItem(STORAGE_NAME_SPACE + key);\n return configStr !== null ? JSON.parse(configStr) : null;\n } catch (e) {\n throw e;\n }\n};\n","import { getElement } from '@stencil/core';\nimport * as getset from './get-set';\nimport { debounce } from '..';\n\nexport type StorageParams = Record<string, any>;\n\nexport type StorageMethods =\n | 'url-hash'\n | 'url-query'\n | 'url-hash-push'\n | 'url-query-push'\n | 'local'\n | 'session';\n\ninterface Component {\n connectedCallback?(): void;\n disconnectedCallback?(): void;\n componentDidRender?(): void;\n [key: string]: any;\n}\n\nconst store = new Map<string, Store>();\n\nexport const ComponentStore = {\n init(\n component: Component,\n keys: string[],\n method?: StorageMethods,\n id?: string\n ) {\n const getId = id || component.storeId || getElement(component).id;\n if (!getId) {\n console.error(\n 'No id set. You can only instantiate a new component store with an id. '\n );\n return;\n }\n if (store.get(getId)) {\n console.error(\n 'Duplicate store id usage. A store ID must be unique!',\n getId\n );\n return;\n }\n\n const initialState = keys.reduce((acc, key) => {\n if (typeof component[key] !== undefined) acc[key] = component[key];\n return acc;\n }, {});\n\n store.set(getId, new Store(getId, component, keys, initialState, method));\n let componentstore = store.get(getId);\n componentstore.dispatchToProps();\n\n const connectedCallback = component.connectedCallback;\n component.connectedCallback = function () {\n store.set(getId, new Store(getId, component, keys, initialState, method));\n let componentstore = store.get(getId);\n if (connectedCallback) {\n connectedCallback.call(component);\n }\n if (componentstore) componentstore.dispatchToProps();\n };\n\n const componentDidRender = component.componentDidRender;\n component.componentDidRender = function () {\n let componentstore = store.get(getId);\n if (componentDidRender) {\n componentDidRender.call(component);\n }\n if (componentstore) componentstore.savePropsToStore();\n };\n\n const disconnectedCallback = component.disconnectedCallback;\n component.disconnectedCallback = function () {\n let componentstore = store.get(getId);\n if (componentstore) componentstore.delete();\n store.delete(getId);\n if (disconnectedCallback) {\n disconnectedCallback.call(component);\n }\n };\n },\n};\n\nclass Store {\n private method: StorageMethods = 'session';\n private keys: string[];\n private id: string;\n private component: Component;\n private initialState: { [key: string]: any } = {};\n private updateStore: boolean = true;\n\n constructor(\n id: string,\n component: Component,\n keys: string[],\n initialState?: any,\n method?: StorageMethods\n ) {\n if (!id)\n throw new Error(\n 'No id set. You can only instantiate a new component store with an id'\n );\n this.id = id;\n this.keys = keys;\n this.component = component;\n if (initialState) this.initialState = initialState;\n if (method) this.method = method;\n\n this.savePropsToStore = debounce(this.savePropsToStore, 500);\n\n if (this.method === 'url-hash-push' || this.method === 'url-query-push') {\n window.addEventListener('popstate', this.onUrlChange);\n }\n }\n\n private onUrlChange = () => {\n this.dispatchToProps(false);\n };\n\n private equality(val1: any, val2: any) {\n if (typeof val1 !== typeof val2) return false;\n if (typeof val1 !== 'object') return val1 === val2;\n return JSON.stringify(val1) === JSON.stringify(val2);\n }\n\n get getData() {\n const data = this.keys.reduce((acc, key) => {\n let isEqual = this.equality(this.component[key], this.initialState[key]);\n if (typeof this.component[key] !== 'undefined' && !isEqual) {\n acc[key] = this.component[key];\n } else if (isEqual) delete acc[key];\n return acc;\n }, {});\n return Object.keys(data).length ? data : undefined;\n }\n\n private retrieve() {\n switch (this.method) {\n case 'url-hash':\n case 'url-hash-push':\n return getset.urlGet(this.id, 'hash');\n case 'url-query':\n case 'url-query-push':\n return getset.urlGet(this.id, 'query');\n case 'local':\n return getset.storageGet(this.id);\n default:\n return getset.sessionGet(this.id);\n }\n }\n\n private save(data: any) {\n switch (this.method) {\n case 'url-hash':\n return getset.urlSet(this.id, data, 'hash');\n case 'url-query':\n return getset.urlSet(this.id, data, 'query');\n case 'url-hash-push':\n return getset.urlSet(this.id, data, 'hash', window, 'push');\n case 'url-query-push':\n return getset.urlSet(this.id, data, 'query', window, 'push');\n case 'local':\n return getset.storageSet(this.id, data);\n default:\n return getset.sessionSet(this.id, data);\n }\n }\n\n public savePropsToStore = () => {\n if (this.updateStore) {\n this.save(this.getData);\n } else if (!this.updateStore) this.updateStore = true;\n };\n\n public dispatchToProps = (updateStore = true) => {\n let savedData = this.retrieve();\n if (!savedData && updateStore) return;\n\n // console.log('dispatching', savedData, this.id, this.initialState);\n this.updateStore = updateStore;\n\n this.keys.forEach((key) => {\n this.component[key] = savedData ? savedData[key] : undefined;\n });\n };\n\n public delete = () => {\n if (this.method === 'url-hash-push' || this.method === 'url-query-push') {\n window.removeEventListener('popstate', this.onUrlChange);\n }\n };\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  /*!
2
2
  * Web Components for Nanopore digital Web Apps
3
3
  */
4
- import{r as t,f as i,h as o,e,g as n}from"./p-ab5813a7.js";import{c as s}from"./p-b619500f.js";const a=':host{-webkit-box-sizing:border-box;box-sizing:border-box}*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}[hidden]{display:none !important}:host(.legacy) ::slotted(*),:host(.legacy) *{--global-nav-height:61px;--padding-top:13px;--padding-end:13px;--padding-bottom:13px;--padding-start:13px;--secondary-padding-end:13px;--secondary-padding-bottom:13px;--secondary-padding-start:13px;--secondary-padding-top:61px;--icon-size:19px;--font-size:11px;--bg-color:#001a21;--bg-color-hover:rgba(28, 62, 72, 0.8);--bg-color-selected:#274048;--bg-color-open:#274048;--bg-color-focus:rgba(28, 62, 72, 0.8);--focus-outline:none;--content-color:#fff;--secondary-bg-color:rgb(28, 62, 72)}:host{--padding-top:13px;--padding-end:12px;--padding-bottom:13px;--padding-start:12px;--icon-size:19px;--font-size:11px;--global-nav-height:61px;--bg-color:#001a21;--bg-color-hover:rgba(28, 62, 72, 0.8);--bg-color-selected:#274048;--bg-color-focus:rgba(28, 62, 72, 0.8);--focus-outline:none;--content-color:#fff;--secondary-bg-color:rgb(28, 62, 72);font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;display:block;z-index:1;background:var(--bg-color)}:host ::slotted(nano-nav-item){--secondary-padding-top:var(--global-nav-height);--nano-icon-size:var(--icon-size);color:var(--content-color);font-size:var(--font-size);text-decoration:none;-webkit-box-sizing:border-box;box-sizing:border-box}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host(.hide){display:none}:host(.has-global-nav) .content-wrap{padding-top:var(--global-nav-height)}@supports ((position: -webkit-sticky) or (position: sticky)){:host(.has-global-nav) .content-wrap{margin-top:calc(var(--global-nav-height) * -1)}}.container{right:auto;-webkit-box-flex:0;-ms-flex:0 0 calc((var(--padding-end, 1em) * 2) + var(--icon-size));flex:0 0 calc((var(--padding-end, 1em) * 2) + var(--icon-size));background:var(--bg-color);color:var(--content-color);z-index:1;width:calc((var(--padding-end, 1em) * 2) + var(--icon-size));height:100%}:host(.open) .container{width:auto}:host(:not(.loading)) .container{-webkit-transition:width 0.3s ease;transition:width 0.3s ease}.content-wrap{left:0;top:0;width:inherit;max-width:inherit;background:var(--bg-color);color:#fff;position:fixed;position:-webkit-sticky;position:sticky;font-size:var(--icon-size);line-height:1;display:-webkit-box;display:-ms-flexbox;display:flex;min-height:calc(100vh - 61px);min-height:calc((var(--vh, 1vh) * 100) - 61px);z-index:1}:host([dir=rtl]) .content-wrap{right:0;left:auto}.content{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;overflow:hidden;background:var(--bg-color);-webkit-box-flex:1;-ms-flex:1;flex:1}.content::after{content:"";position:absolute;top:0;left:0;right:0;background:var(--bg-color);z-index:-1;height:100vh}.collapse-btn{background:var(--bg-color-selected);border:none;color:inherit;font-size:var(--icon-size);margin:var(--padding-top) auto var(--padding-bottom) calc(var(--padding-start) / 2);border-radius:4px;padding:6px 5px;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;width:30px;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.collapse-btn nano-icon{font-size:var(--icon-size);-webkit-transition:0.2s -webkit-transform ease-in-out;transition:0.2s -webkit-transform ease-in-out;transition:0.2s transform ease-in-out;transition:0.2s transform ease-in-out, 0.2s -webkit-transform ease-in-out;-webkit-transform:translateZ(0) rotate(0deg);transform:translateZ(0) rotate(0deg)}:host(.open) .collapse-btn nano-icon{-webkit-transform:translateZ(0) rotate(180deg);transform:translateZ(0) rotate(180deg)}.foot{margin-top:auto}.measure-ele{height:1px}';const r=!!document.head.attachShadow;let h=class{constructor(i){t(this,i);this.children=[];this.currHeight=window.innerHeight;this.reset=false;this.widthOk=true;this.heightOk=true;this.isLoading=true;this.hide=false;this.open=true;this.saveState=true;this.hideWidth=576;this.hideHeight=true;this.onWindowResize=()=>{if(window.innerWidth>this.hideWidth)this.widthOk=true;else this.widthOk=false;let t=window.innerHeight*.01;this.el.style.setProperty("--vh",`${t}px`);if(window.innerHeight>this.currHeight&&this.widthOk&&!this.heightOk){this.moveItemsToDrawer()}this.currHeight=window.innerHeight};this.toggle=t=>{t.preventDefault();this.open=!this.open};this.onToggleKeyDown=t=>{switch(t.key){case"Enter":case" ":this.open=!this.open;break}}}cancelNavItemEvents(t){if(!t.detail.secondaryMenu)return;t.stopPropagation()}openChange(){if(this.saveState)localStorage.setItem("nanoMenuDrawerOpen",this.open.toString());if(this.containerDiv){if(this.open)i((()=>this.containerDiv.style.width=this.contentDiv.scrollWidth+"px"));else i((()=>this.containerDiv.style.width=null))}}widthChange(){if(this.widthOk)this.moveItemsToDrawer();else this.moveItemsToGlobalNav()}hideHeightChange(){if(this.hideHeight&&!this.io)this.attachIO();else if(!this.hideHeight&&this.io){this.io.disconnect();this.io=undefined}}moveItemsToGlobalNav(){let t=this.el.querySelectorAll("nano-nav-item");t.forEach((t=>{this.children.push({slot:t.getAttribute("slot"),element:t});t.setAttribute("slot","overflow");t.classList.add("nano-global-nav-menu");this.globalNav.appendChild(t)}));this.hide=true}moveItemsToDrawer(){if(!this.children||!this.children.length)return;this.children.forEach((t=>{t.element.removeAttribute("slot");t.element.classList.remove("nano-global-nav-menu");if(t.slot&&t.slot.length)t.element.setAttribute("slot",t.slot);this.el.appendChild(t.element)}));this.children=[];this.hide=false;if(!this.io)this.attachIO()}attachIO(){if(!this.hideHeight)return;const t=this.io=new window.IntersectionObserver((t=>{this.heightOk=t[0].intersectionRatio!==0;if(!this.heightOk){this.moveItemsToGlobalNav();this.io.disconnect();this.io=undefined}}),{threshold:1});t.observe(this.measureEle)}handleGlobalNavReady(t){if(t.target.tagName!=="NANO-GLOBAL-NAV")return;setTimeout((()=>{this.attachIO();this.openChange();this.onWindowResize();this.isLoading=false}),500)}componentWillLoad(){this.globalNav=s("nano-global-nav",this.el);this.widthOk=window.innerWidth>this.hideWidth;this.currHeight=window.innerHeight;if(this.saveState){let t=localStorage.getItem("nanoMenuDrawerOpen");this.open=t?t==="true":this.open}}componentDidLoad(){{window.addEventListener("resize",this.onWindowResize)}}disconnectedCallback(){window.removeEventListener("resize",this.debounceResize);if(this.io){this.io.disconnect();this.io=null}}render(){return o(e,{class:{open:this.open,hide:this.hide,legacy:!r,loading:this.isLoading,"has-global-nav":!!this.globalNav},dir:this.el.ownerDocument.dir==="rtl"?"rtl":null},o("div",{ref:t=>this.containerDiv=t,class:"container"},o("div",{class:"content-wrap"},o("nav",{ref:t=>this.contentDiv=t,class:"content"},o("button",{onMouseDown:this.toggle,onKeyDown:this.onToggleKeyDown,class:"collapse-btn"},o("nano-icon",{name:"light/arrow-alt-to-right","aria-label":"collapse / expand"})),o("slot",null),o("div",{class:"foot"},o("div",{class:"measure-ele",ref:t=>this.measureEle=t}),o("slot",{name:"foot"}))))))}get el(){return n(this)}static get watchers(){return{open:["openChange"],widthOk:["widthChange"],hideHeight:["hideHeightChange"]}}};h.style=a;export{h as nano_menu_drawer};
5
- //# sourceMappingURL=p-c0ddb4c3.entry.js.map
4
+ import{r as t,f as i,h as o,e,g as n}from"./p-b5c33aff.js";import{c as s}from"./p-b619500f.js";const a=':host{-webkit-box-sizing:border-box;box-sizing:border-box}*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}[hidden]{display:none !important}:host(.legacy) ::slotted(*),:host(.legacy) *{--global-nav-height:61px;--padding-top:13px;--padding-end:13px;--padding-bottom:13px;--padding-start:13px;--secondary-padding-end:13px;--secondary-padding-bottom:13px;--secondary-padding-start:13px;--secondary-padding-top:61px;--icon-size:19px;--font-size:11px;--bg-color:#001a21;--bg-color-hover:rgba(28, 62, 72, 0.8);--bg-color-selected:#274048;--bg-color-open:#274048;--bg-color-focus:rgba(28, 62, 72, 0.8);--focus-outline:none;--content-color:#fff;--secondary-bg-color:rgb(28, 62, 72)}:host{--padding-top:13px;--padding-end:12px;--padding-bottom:13px;--padding-start:12px;--icon-size:19px;--font-size:11px;--global-nav-height:61px;--bg-color:#001a21;--bg-color-hover:rgba(28, 62, 72, 0.8);--bg-color-selected:#274048;--bg-color-focus:rgba(28, 62, 72, 0.8);--focus-outline:none;--content-color:#fff;--secondary-bg-color:rgb(28, 62, 72);font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;display:block;z-index:1;background:var(--bg-color)}:host ::slotted(nano-nav-item){--secondary-padding-top:var(--global-nav-height);--nano-icon-size:var(--icon-size);color:var(--content-color);font-size:var(--font-size);text-decoration:none;-webkit-box-sizing:border-box;box-sizing:border-box}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host(.hide){display:none}:host(.has-global-nav) .content-wrap{padding-top:var(--global-nav-height)}@supports ((position: -webkit-sticky) or (position: sticky)){:host(.has-global-nav) .content-wrap{margin-top:calc(var(--global-nav-height) * -1)}}.container{right:auto;-webkit-box-flex:0;-ms-flex:0 0 calc((var(--padding-end, 1em) * 2) + var(--icon-size));flex:0 0 calc((var(--padding-end, 1em) * 2) + var(--icon-size));background:var(--bg-color);color:var(--content-color);z-index:1;width:calc((var(--padding-end, 1em) * 2) + var(--icon-size));height:100%}:host(.open) .container{width:auto}:host(:not(.loading)) .container{-webkit-transition:width 0.3s ease;transition:width 0.3s ease}.content-wrap{left:0;top:0;width:inherit;max-width:inherit;background:var(--bg-color);color:#fff;position:fixed;position:-webkit-sticky;position:sticky;font-size:var(--icon-size);line-height:1;display:-webkit-box;display:-ms-flexbox;display:flex;min-height:calc(100vh - 61px);min-height:calc((var(--vh, 1vh) * 100) - 61px);z-index:1}:host([dir=rtl]) .content-wrap{right:0;left:auto}.content{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;overflow:hidden;background:var(--bg-color);-webkit-box-flex:1;-ms-flex:1;flex:1}.content::after{content:"";position:absolute;top:0;left:0;right:0;background:var(--bg-color);z-index:-1;height:100vh}.collapse-btn{background:var(--bg-color-selected);border:none;color:inherit;font-size:var(--icon-size);margin:var(--padding-top) auto var(--padding-bottom) calc(var(--padding-start) / 2);border-radius:4px;padding:6px 5px;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;width:30px;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.collapse-btn nano-icon{font-size:var(--icon-size);-webkit-transition:0.2s -webkit-transform ease-in-out;transition:0.2s -webkit-transform ease-in-out;transition:0.2s transform ease-in-out;transition:0.2s transform ease-in-out, 0.2s -webkit-transform ease-in-out;-webkit-transform:translateZ(0) rotate(0deg);transform:translateZ(0) rotate(0deg)}:host(.open) .collapse-btn nano-icon{-webkit-transform:translateZ(0) rotate(180deg);transform:translateZ(0) rotate(180deg)}.foot{margin-top:auto}.measure-ele{height:1px}';const r=!!document.head.attachShadow;let h=class{constructor(i){t(this,i);this.children=[];this.currHeight=window.innerHeight;this.reset=false;this.widthOk=true;this.heightOk=true;this.isLoading=true;this.hide=false;this.open=true;this.saveState=true;this.hideWidth=576;this.hideHeight=true;this.onWindowResize=()=>{if(window.innerWidth>this.hideWidth)this.widthOk=true;else this.widthOk=false;let t=window.innerHeight*.01;this.el.style.setProperty("--vh",`${t}px`);if(window.innerHeight>this.currHeight&&this.widthOk&&!this.heightOk){this.moveItemsToDrawer()}this.currHeight=window.innerHeight};this.toggle=t=>{t.preventDefault();this.open=!this.open};this.onToggleKeyDown=t=>{switch(t.key){case"Enter":case" ":this.open=!this.open;break}}}cancelNavItemEvents(t){if(!t.detail.secondaryMenu)return;t.stopPropagation()}openChange(){if(this.saveState)localStorage.setItem("nanoMenuDrawerOpen",this.open.toString());if(this.containerDiv){if(this.open)i((()=>this.containerDiv.style.width=this.contentDiv.scrollWidth+"px"));else i((()=>this.containerDiv.style.width=null))}}widthChange(){if(this.widthOk)this.moveItemsToDrawer();else this.moveItemsToGlobalNav()}hideHeightChange(){if(this.hideHeight&&!this.io)this.attachIO();else if(!this.hideHeight&&this.io){this.io.disconnect();this.io=undefined}}moveItemsToGlobalNav(){let t=this.el.querySelectorAll("nano-nav-item");t.forEach((t=>{this.children.push({slot:t.getAttribute("slot"),element:t});t.setAttribute("slot","overflow");t.classList.add("nano-global-nav-menu");this.globalNav.appendChild(t)}));this.hide=true}moveItemsToDrawer(){if(!this.children||!this.children.length)return;this.children.forEach((t=>{t.element.removeAttribute("slot");t.element.classList.remove("nano-global-nav-menu");if(t.slot&&t.slot.length)t.element.setAttribute("slot",t.slot);this.el.appendChild(t.element)}));this.children=[];this.hide=false;if(!this.io)this.attachIO()}attachIO(){if(!this.hideHeight)return;const t=this.io=new window.IntersectionObserver((t=>{this.heightOk=t[0].intersectionRatio!==0;if(!this.heightOk){this.moveItemsToGlobalNav();this.io.disconnect();this.io=undefined}}),{threshold:1});t.observe(this.measureEle)}handleGlobalNavReady(t){if(t.target.tagName!=="NANO-GLOBAL-NAV")return;setTimeout((()=>{this.attachIO();this.openChange();this.onWindowResize();this.isLoading=false}),500)}componentWillLoad(){this.globalNav=s("nano-global-nav",this.el);this.widthOk=window.innerWidth>this.hideWidth;this.currHeight=window.innerHeight;if(this.saveState){let t=localStorage.getItem("nanoMenuDrawerOpen");this.open=t?t==="true":this.open}}componentDidLoad(){{window.addEventListener("resize",this.onWindowResize)}}disconnectedCallback(){window.removeEventListener("resize",this.debounceResize);if(this.io){this.io.disconnect();this.io=null}}render(){return o(e,{class:{open:this.open,hide:this.hide,legacy:!r,loading:this.isLoading,"has-global-nav":!!this.globalNav},dir:this.el.ownerDocument.dir==="rtl"?"rtl":null},o("div",{ref:t=>this.containerDiv=t,class:"container"},o("div",{class:"content-wrap"},o("nav",{ref:t=>this.contentDiv=t,class:"content"},o("button",{onMouseDown:this.toggle,onKeyDown:this.onToggleKeyDown,class:"collapse-btn"},o("nano-icon",{name:"light/arrow-alt-to-right","aria-label":"collapse / expand"})),o("slot",null),o("div",{class:"foot"},o("div",{class:"measure-ele",ref:t=>this.measureEle=t}),o("slot",{name:"foot"}))))))}get el(){return n(this)}static get watchers(){return{open:["openChange"],widthOk:["widthChange"],hideHeight:["hideHeightChange"]}}};h.style=a;export{h as nano_menu_drawer};
5
+ //# sourceMappingURL=p-166ade3e.entry.js.map
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Web Components for Nanopore digital Web Apps
3
+ */
4
+ import{r as i,c as t,h as a,e as o,g as n}from"./p-b5c33aff.js";const e='.sc-nano-file-upload-h{-webkit-box-sizing:border-box;box-sizing:border-box}*.sc-nano-file-upload,*.sc-nano-file-upload::before,*.sc-nano-file-upload::after{-webkit-box-sizing:border-box;box-sizing:border-box}[hidden].sc-nano-file-upload{display:none !important}.sc-nano-file-upload-h{min-height:1rem;display:block;--invalid-msg-color:var(--nano-color-danger, #ef4135);--invalid-msg-font-size:var(--nano-input-help-font-size, 0.75em);--help-msg-color:var(--nano-input-help-color, #616d6e);--label-color:var(--nano-input-label-color, "currentColor");--label-font-size:var(--nano-input-label-color, 1em);--label-padding:var(--nano-input-padding-bottom, var(--nano-input-padding, 6px));--label-color--invalid:var(--nano-input-label-color-invalid, "currentColor");--drop-bg:#f2f7f9;--drop-text:#756f6a;--drop-height:3.5em;--drop-border-tint:var(--nano-color-primary-rgb, 0, 116, 149);--drop-border-width:2px;--drop-border-radius:5px;--drop-bg--invalid:var(--nano-input-background-color, white);--drop-border--invalid:var(--nano-color-danger-rgb, 239, 65, 53);--btn-bg:var(--nano-color-primary, #007495);--btn-text:var(--nano-color-primary-contrast, #fff);--btn-icon-size:var(--nano-btn-icon-size, 1.4em);--btn-padding-top:var(--nano-btn-padding-top, 0.5em);--btn-padding-bottom:var(--nano-btn-padding-bottom, 0.5em);--btn-padding-start:var(--nano-btn-padding-start, 1em);--btn-padding-end:var(--nano-btn-padding-end, 1em)}[disabled].sc-nano-file-upload-h:not([disabled=false]){opacity:0.7}[disabled].sc-nano-file-upload-h:not([disabled=false]) *.sc-nano-file-upload{pointer-events:none !important}.file-upload__label.sc-nano-file-upload{font-size:var(--label-font-size);padding:0 0 var(--label-padding);margin:0;line-height:1}[invalid].sc-nano-file-upload-h:not([invalid=false]) .file-upload__label.sc-nano-file-upload{color:var(--label-color--invalid)}.file-upload__input.sc-nano-file-upload{clip:rect(1px, 1px, 1px, 1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.file-upload__error.sc-nano-file-upload,.file-upload__help.sc-nano-file-upload,.file-upload__more.sc-nano-file-upload,.file-upload__label.sc-nano-file-upload{display:block;width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.file-upload__more.sc-nano-file-upload{height:1em;margin-left:3px;margin-right:0;margin-top:calc(var(--label-padding) / 2);margin-bottom:var(--label-padding);position:relative}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){.file-upload__more.sc-nano-file-upload{margin-left:unset;margin-right:unset;-webkit-margin-start:3px;margin-inline-start:3px;-webkit-margin-end:0;margin-inline-end:0}}.file-upload__error.sc-nano-file-upload,.file-upload__help.sc-nano-file-upload{top:0;left:0;position:absolute;font-size:var(--invalid-msg-font-size);line-height:1.2;-webkit-transition:0.3s ease-out opacity;transition:0.3s ease-out opacity}.file-upload--invalid.sc-nano-file-upload .file-upload__error.sc-nano-file-upload,.file-upload--invalid.sc-nano-file-upload .file-upload__help.sc-nano-file-upload{opacity:1}.file-upload__error.sc-nano-file-upload{color:var(--invalid-msg-color);font-stretch:condensed;opacity:0}.file-upload--invalid.sc-nano-file-upload .file-upload__error.sc-nano-file-upload{opacity:1}.file-upload__help.sc-nano-file-upload{font-style:italic;opacity:1;color:var(--help-msg-color)}.file-upload--invalid.sc-nano-file-upload .file-upload__help.sc-nano-file-upload{opacity:0}.file-upload__drop.sc-nano-file-upload{position:relative;width:100%;display:inline-block}.file-upload__drop-area.sc-nano-file-upload{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;background-color:var(--drop-bg);color:var(--drop-text);min-height:var(--drop-height);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:0.9em;position:relative;-webkit-transition:background-color 0.15s ease-in-out;transition:background-color 0.15s ease-in-out;padding:0.5rem}[disabled].sc-nano-file-upload-h:not([disabled=false]) .file-upload__drop-area.sc-nano-file-upload{opacity:0.7}.file-upload--invalid.sc-nano-file-upload .file-upload__drop-area.sc-nano-file-upload{background-color:var(--drop-bg--invalid)}.file-upload--dragging.sc-nano-file-upload .file-upload__drop-area.sc-nano-file-upload{background-color:#fff}.file-upload__drop-area.sc-nano-file-upload::after{content:"";position:absolute;border-radius:var(--drop-border-radius);border-width:var(--drop-border-width);border-color:rgba(var(--drop-border-tint), 0.5);border-style:dashed;top:0;bottom:0;left:0;right:0;-webkit-transition:top 0.1s ease-in-out, bottom 0.1s ease-in-out, left 0.1s ease-in-out, right 0.1s ease-in-out;transition:top 0.1s ease-in-out, bottom 0.1s ease-in-out, left 0.1s ease-in-out, right 0.1s ease-in-out}.file-upload--invalid.sc-nano-file-upload .file-upload__drop-area.sc-nano-file-upload::after{border-color:rgba(var(--drop-border--invalid), 1)}.file-upload--dragging.sc-nano-file-upload .file-upload__drop-area.sc-nano-file-upload::after{top:5px;bottom:5px;left:5px;right:5px}.file-upload__drop-area.sc-nano-file-upload span.sc-nano-file-upload{color:rgba(var(--drop-border-tint), 1);text-decoration:underline;border-radius:2px;z-index:1;cursor:pointer;position:relative}.file-upload--focus.sc-nano-file-upload .file-upload__drop-area.sc-nano-file-upload span.sc-nano-file-upload{-webkit-box-shadow:var(--nano-control-focus-shadow, 0 0 0 0.1875rem var(--nano-control-focus-color, rgba(144, 198, 231, 0.8)));box-shadow:var(--nano-control-focus-shadow, 0 0 0 0.1875rem var(--nano-control-focus-color, rgba(144, 198, 231, 0.8)))}.file-upload__list.sc-nano-file-upload{list-style:none;margin:0;padding:0}.file-upload__list-wrap.sc-nano-file-upload{position:relative;top:-4px}.file-upload__list-item.sc-nano-file-upload{width:100%;margin:0 0 2px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-animation:hideListItem 0.3s ease-in-out forwards;animation:hideListItem 0.3s ease-in-out forwards}@-webkit-keyframes hideListItem{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);-webkit-transform:translateZ(0);transform:translateZ(0)}100%{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px);-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes hideListItem{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);-webkit-transform:translateZ(0);transform:translateZ(0)}100%{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px);-webkit-transform:translateZ(0);transform:translateZ(0)}}.file-upload__list-item--active.sc-nano-file-upload{-webkit-animation:showListItem 0.3s ease-in-out forwards;animation:showListItem 0.3s ease-in-out forwards}@-webkit-keyframes showListItem{0%{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px);-webkit-transform:translateZ(0);transform:translateZ(0)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes showListItem{0%{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px);-webkit-transform:translateZ(0);transform:translateZ(0)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);-webkit-transform:translateZ(0);transform:translateZ(0)}}.file-upload__list.sc-nano-file-upload .list-title.sc-nano-file-upload{background:var(--nano-color-blue--faded);border-radius:5px;padding:5px 5px;margin-right:2px;display:block;width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:0.9em;color:var(--help-msg-color)}.file-upload__list.sc-nano-file-upload .list-button.sc-nano-file-upload{background:var(--nano-color-blue--faded);border-radius:5px;margin:2px}.file-upload__list.sc-nano-file-upload .list-error.sc-nano-file-upload{--color:rgba(var(--drop-border--invalid), 1)}.file-upload__button.sc-nano-file-upload{margin:0;padding:0;border:none;background-color:transparent;font:inherit;-webkit-box-align:center;text-decoration:none;color:inherit;-webkit-transition:background-color 100ms ease-in-out, border-color 100ms ease-in-out, color 100ms ease-in-out, -webkit-box-shadow 100ms ease-in-out;transition:background-color 100ms ease-in-out, border-color 100ms ease-in-out, color 100ms ease-in-out, -webkit-box-shadow 100ms ease-in-out;transition:background-color 100ms ease-in-out, box-shadow 100ms ease-in-out, border-color 100ms ease-in-out, color 100ms ease-in-out;transition:background-color 100ms ease-in-out, box-shadow 100ms ease-in-out, border-color 100ms ease-in-out, color 100ms ease-in-out, -webkit-box-shadow 100ms ease-in-out;padding-left:var(--nano-btn-padding-start, 1rem);padding-right:var(--nano-btn-padding-end, 1rem);padding-top:var(--nano-btn-padding-top, 0.5rem);padding-bottom:var(--nano-btn-padding-bottom, 0.5rem);-webkit-box-shadow:var(--nano-layer-shadow-medium, 0 2px 4px rgba(0, 0, 0, 0.2));box-shadow:var(--nano-layer-shadow-medium, 0 2px 4px rgba(0, 0, 0, 0.2));display:inline-block;border-radius:var(--nano-btn-border-radius, 5px);line-height:var(--nano-btn-line-height, 1.5rem);font-weight:500;cursor:pointer;background:rgba(0, 0, 0, 0.02);background-color:var(--btn-bg);color:var(--btn-text);--nano-btn-icon-size:var(--btn-icon-size);--nano-btn-line-height:var(--btn-icon-size);--nano-btn-padding-top:var(--btn-padding-top);--nano-btn-padding-bottom:var(--btn-padding-bottom);--nano-btn-padding-start:var(--btn-padding-start);--nano-btn-padding-end:var(--btn-padding-end);max-width:100%;font-size:0.9em}.file-upload__button.sc-nano-file-upload::-moz-focus-inner{border:0;padding:0}.file-upload__button.sc-nano-file-upload:hover,.file-upload__button.sc-nano-file-upload:focus{text-decoration:none;color:inherit}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){.file-upload__button.sc-nano-file-upload{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--nano-btn-padding-start, 1rem);padding-inline-start:var(--nano-btn-padding-start, 1rem);-webkit-padding-end:var(--nano-btn-padding-end, 1rem);padding-inline-end:var(--nano-btn-padding-end, 1rem)}}@media print{.file-upload__button.sc-nano-file-upload{display:none}}.file-upload__button.sc-nano-file-upload:focus,.file-upload__button.button--focus.sc-nano-file-upload{outline:none;-webkit-box-shadow:var(--nano-control-focus-shadow, 0 0 0 0.1875rem var(--nano-control-focus-color, rgba(144, 198, 231, 0.8)));box-shadow:var(--nano-control-focus-shadow, 0 0 0 0.1875rem var(--nano-control-focus-color, rgba(144, 198, 231, 0.8)))}.file-upload__button.sc-nano-file-upload nano-icon.sc-nano-file-upload{margin-left:0.5rem;margin-right:0;font-size:var(--nano-btn-icon-size, 1rem);vertical-align:middle;margin-top:-0.188rem;display:inline-block}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){.file-upload__button.sc-nano-file-upload nano-icon.sc-nano-file-upload{margin-left:unset;margin-right:unset;-webkit-margin-start:0.5rem;margin-inline-start:0.5rem;-webkit-margin-end:0;margin-inline-end:0}}.file-upload__button.button--icon-start.sc-nano-file-upload nano-icon.sc-nano-file-upload{margin-left:0;margin-right:0.5rem}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){.file-upload__button.button--icon-start.sc-nano-file-upload nano-icon.sc-nano-file-upload{margin-left:unset;margin-right:unset;-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:0.5rem;margin-inline-end:0.5rem}}.file-upload__button.sc-nano-file-upload:hover:not(.file-upload__button--disabled){-webkit-box-shadow:var(--nano-layer-shadow-large, 0 2px 8px rgba(0, 0, 0, 0.2));box-shadow:var(--nano-layer-shadow-large, 0 2px 8px rgba(0, 0, 0, 0.2))}.file-upload__button.sc-nano-file-upload:active:not(.button--disabled):not(:disabled){-webkit-box-shadow:none;box-shadow:none}.file-upload__button--disabled.sc-nano-file-upload,.file-upload__button.sc-nano-file-upload:disabled{opacity:0.6}.file-upload__button--disabled.sc-nano-file-upload:hover,.file-upload__button.sc-nano-file-upload:disabled:hover{cursor:default}.file-upload__button.sc-nano-file-upload:hover:not(.button--disabled):not(:disabled),.file-upload__button.button--active.sc-nano-file-upload{background-color:var(--nano-color-primary-shade, #00637f);color:var(--btn-text)}.file-upload__button.sc-nano-file-upload:hover:not(.button--disabled):not(:disabled).button--keyline,.file-upload__button.button--active.button--keyline.sc-nano-file-upload{background-color:var(--btn-bg);color:var(--btn-text)}.file-upload__button.sc-nano-file-upload:focus{color:var(--btn-text)}.file-upload__button.button--keyline.sc-nano-file-upload{background:transparent;border-style:var(--nano-btn-border-style, solid);border-width:var(--nano-btn-border-width, 2px);border-radius:var(--nano-btn-border-radius, 5px);color:var(--btn-bg);border-color:var(--btn-bg)}.file-upload__button.button--keyline.sc-nano-file-upload:hover:not(.button--disabled):not(:disabled),.file-upload__button.button--keyline.sc-nano-file-upload:not(.button--focus),.file-upload__button.button--keyline.button--active.sc-nano-file-upload{-webkit-box-shadow:none;box-shadow:none}[disabled].sc-nano-file-upload-h:not([disabled=false]) .file-upload__button.sc-nano-file-upload{opacity:0.4}.file-upload--dragging.sc-nano-file-upload .file-upload__button.sc-nano-file-upload{--nano-btn-border-style:dashed}.file-upload__button.sc-nano-file-upload .file-upload__clear-btn.sc-nano-file-upload{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;font-size:inherit;padding:0;border:0;outline:none;background-color:transparent;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:auto;color:var(--clear-btn-color)}.is-invalid.sc-nano-file-upload-h .file-upload__button.sc-nano-file-upload .file-upload__clear-btn.sc-nano-file-upload{color:var(--clear-btn-color--invalid)}.file-upload__button.sc-nano-file-upload .file-upload__clear-btn.sc-nano-file-upload nano-icon.sc-nano-file-upload{margin-left:0.4rem;margin-right:0;margin-top:0;margin-bottom:0}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){.file-upload__button.sc-nano-file-upload .file-upload__clear-btn.sc-nano-file-upload nano-icon.sc-nano-file-upload{margin-left:unset;margin-right:unset;-webkit-margin-start:0.4rem;margin-inline-start:0.4rem;-webkit-margin-end:0;margin-inline-end:0}}.file-upload__button.sc-nano-file-upload .file-upload__btn-content.sc-nano-file-upload{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.file-upload__button.sc-nano-file-upload .file-upload__btn-content.sc-nano-file-upload span.sc-nano-file-upload{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}';let l=0;let s=()=>new DataTransfer;try{s()}catch(d){try{s=()=>new ClipboardEvent("").clipboardData;s()}catch(p){s=null}}let r=class{constructor(o){i(this,o);this.nanoChange=t(this,"nanoChange",7);this.nanoFocus=t(this,"nanoFocus",7);this.nanoBlur=t(this,"nanoBlur",7);this.nanoValidate=t(this,"nanoValidate",7);this.fileInputId=`nano-file-upload-${l++}`;this.canChangeFileList=!!s;this.removeFiles=[];this.errorMessage="";this.isDragging=false;this.fileList=[];this.maxFileSize=1;this.maxFiles=1;this.placeholder="Choose a file...";this.hideLabel=false;this.required=false;this.disabled=false;this.clearInput=false;this.showInlineError=true;this.validateOn="submit";this._invalid=false;this.onClearClick=()=>{this.value=""};this.onBlur=()=>{this.hasFocus=false;this.validate();if(this.validateOn==="dirty")this.showInlineValidation();this.nanoBlur.emit()};this.onFocus=()=>{this.hasFocus=true;this.nanoFocus.emit()};this.validate=()=>{this.errorMessage="";this.inputEl.setCustomValidity("");let i;if(!this.inputEl.validity.valid){i=this.inputEl.validationMessage}else{this.fileList.forEach((t=>{i=null;if(!this.checkFileSize(t.file.size)){i="Maximum file size exceeded. Max file size is "+this.maxFileSize+"Mb"}else if(!this.checkFileType(t.file.type))i=`File type is not allowed (${this.accept})`;t.validationMessage=i;t.valid=!i}));if(this.fileList.length>this.maxFiles)i=`Maxinum number of files exceeded (${this.maxFiles})`}if(!!i)this.inputEl.setCustomValidity(i)};this.onInvalid=i=>{if(this.showInlineError)i.preventDefault();this.validate();this.showInlineValidation(i)};this.onFileChoose=i=>{const t=i.target.files;if(t&&t.length)this.addNewFiles(i.target.files)};this.onFileRemoveFileClick=(i,t)=>{if(!this.canChangeFileList)return;this.removeFiles.push(t);i.target.closest(".file-upload__list-item--active").classList.remove("file-upload__list-item--active")};this.onFileRemoveAnim=()=>{if(!this.canChangeFileList||!this.removeFiles.length)return;this.fileList=this.fileList.filter((i=>!this.removeFiles.find((t=>t===i))));this.removeFiles=[]};this.onInputChange=()=>{this.nanoChange.emit({value:this.value,files:this.files})};this.onDragStop=i=>{i.preventDefault();i.stopPropagation();this.isDragging=false};this.onDragStart=i=>{i.preventDefault();i.stopPropagation();this.isDragging=true};this.onDrop=i=>{this.onDragStop(i);if(i.dataTransfer.files&&i.dataTransfer.files.length)this.addNewFiles(i.dataTransfer.files)};this.FileUploadInput=(i,t)=>{const o=this.fileInputId+"-lbl";const n=this.showInlineError||this.hasHelperSlot?this.fileInputId+"-more":"";return[a("div",{class:"file-upload__"+i+"-wrap"},a("label",{class:`file-upload__`+i,htmlFor:this.fileInputId,id:o,onDrop:i=>{this.onDrop(i);this.onDragStop(i)},onDragEnd:this.onDragStop,onDragLeave:this.onDragStop,onDragEnter:this.onDragStart,onDragOver:this.onDragStart},(!!this.label||this.hasLabelSlot&&i!=="drop")&&a("div",{class:`file-upload__label ${this.hideLabel?"visually-hide":""}`},!!this.label&&!!this.label.length?this.label:"",!this.label&&this.hasLabelSlot&&i!=="drop"&&a("slot",{name:"label"})),i==="drop"&&a("div",{class:"file-upload__drop-area"},a("div",null,this.hasLabelSlot&&a("slot",{name:"label"})),a("div",null,"Drag and drop or ",a("span",null,"browse"))),i==="btn"&&a("div",{class:`file-upload__button button--keyline button--icon-start ${this.hasFocus?"button--focus":""}`},a("div",{class:`file-upload__btn-content`},a("nano-icon",{name:"regular/cloud-upload"}),a("span",null,!!this.fileList.length?this.fileList[0].file.name:this.placeholder),!!this.value&&this.clearInput&&!this.disabled&&a("button",{type:"button",class:"icon file-upload__clear-btn",tabindex:"-1",onClick:this.onClearClick},a("nano-icon",{name:"light/times"})))),a("input",{"aria-labelledby":o+" "+n+" "+t,type:"file",id:this.fileInputId,accept:this.accept,class:"file-upload__input",multiple:this.maxFiles>1,disabled:this.disabled,name:this.canChangeFileList?undefined:this.name,form:this.form,ref:i=>{if(this.canChangeFileList){this.publicInputEl=i;return}this.inputEl=i},onChange:this.onFileChoose,onFocus:this.onFocus,onReset:this.onInputChange})),a("input",{name:!this.canChangeFileList?undefined:this.name,form:this.form,ref:i=>{if(!this.canChangeFileList)return;this.inputEl=i},type:"file",id:this.fileInputId+"-hidden",tabIndex:-1,multiple:true,class:"file-upload__input",disabled:this.disabled,required:this.required,accept:this.accept,onInvalid:this.onInvalid,onChange:this.onInputChange})),this.showInlineError||this.hasHelperSlot?a("div",{class:"file-upload__more",id:n},this.showInlineError&&!!this.errorMessage.length?a("div",{class:"file-upload__error"},this.errorMessage):"",a("div",{class:"file-upload__help"},a("slot",{name:"helper"}))):""]};this.button=()=>this.FileUploadInput("btn");this.dropArea=()=>{const i=this.fileInputId+"-list";return[this.FileUploadInput("drop",i),a("output",{class:"file-upload__list-wrap",id:i},!!this.fileList&&this.fileList.length>0&&a("ul",{class:"file-upload__list list"},this.fileList.map((i=>a("li",{key:i.file.name,class:"file-upload__list-item file-upload__list-item--active list-item",onAnimationEnd:i=>this.onFileRemoveAnim()},a("span",{class:"list-title"},i.file.name),!i.valid&&a("nano-tooltip",{content:i.validationMessage,placement:"left"},a("nano-icon-button",{class:"list-button list-error",iconName:"light/exclamation-triangle",label:"File error"})),this.canChangeFileList&&a("nano-icon-button",{class:"list-button list-button--view",type:"button",iconName:"light/eye",label:"View file",target:"_blank",href:i.location}),this.canChangeFileList&&a("nano-icon-button",{onClick:t=>this.onFileRemoveFileClick(t,i),class:"list-button list-button--remove",iconName:"light/times",label:"Remove file"}))))))]}}fileListChange(){if(this.canChangeFileList){this.publicInputEl.value="";this.inputEl.files=this.arrToFileList(this.fileList.map((i=>i.file)));setTimeout((()=>{this.nanoChange.emit({value:this.value,files:this.files})}),20)}}shouldValidate(){if(!this.inputEl)return;this.validate();requestAnimationFrame((()=>{if(this.validateOn==="dirty")this.showInlineValidation()}))}get invalid(){return this._invalid}get validityMessage(){if(!this.inputEl)return"";return this.inputEl.validationMessage}get files(){return this.inputEl?Array.from(this.inputEl.files).map((i=>{i.objectURL=URL.createObjectURL(i);return i})):[]}get value(){return this.inputEl?this.inputEl.value:""}set value(i){if(i===""&&this.inputEl){this.fileList=[];this.inputEl.value=""}}async reportValidity(i){if(i){this.validate();this.showInlineValidation()}return{isValid:!this.invalid,errorMessage:this.inputEl.validationMessage}}async setFocus(){if(this.inputEl)this.inputEl.focus()}getInputElement(){return Promise.resolve(this.inputEl)}async showError(i){if(this.inputEl){this.inputEl.setCustomValidity(i);this.validate();this.showInlineValidation()}}globalClickHandler(i){if(!this.hasFocus)return;if(i.composedPath().every((i=>i!==this.host)))this.onBlur()}globalKeydownHandler(i){if(!this.hasFocus||i.key!=="Tab")return;if(i.target!==this.inputEl)this.onBlur()}onReset(i){const t=this.form?document.querySelector("#"+this.form):this.host.closest("form");if(!t||i.target!==this.host.closest("form"))return;this.value=""}arrToFileList(i){const t=s();for(var a=0,o=i.length;a<o;a++)t.items.add(i[a]);return t.files}checkFileSize(i){return i/1e6<=this.maxFileSize}checkFileType(i){if(!this.accept)return true;return this.accept.match(i)&&this.accept.match(i).length>0}showInlineValidation(i){if(this.validateOn==="submitThenDirty")this.validateOn="dirty";this._invalid=false;this.errorMessage="";if(!this.inputEl.validity.valid){this.errorMessage=this.inputEl.validationMessage;this._invalid=true}this.nanoValidate.emit({isValid:!this._invalid,errorMessage:this.inputEl.validationMessage,originalEvent:i})}slotChangeObserver(){if(this.mo)this.mo.disconnect();const i=this.mo=new MutationObserver((()=>this.processSlottedContent()));i.observe(this.host,{childList:true,subtree:true})}processSlottedContent(){this.hasLabelSlot=!!this.host.querySelectorAll('[slot="label"]');this.hasHelperSlot=!!this.host.querySelector('[slot="helper"]')}addNewFiles(i){const t=Array.from(i).map((i=>({file:i,location:URL.createObjectURL(i),valid:true,validationMessage:null})));if(this.canChangeFileList&&this.maxFiles>1){const i=t.filter((i=>!this.fileList.find((t=>t.file.name===i.file.name))));this.fileList=[...this.fileList,...i]}else this.fileList=t}disconnectedCallback(){if(this.mo)this.mo.disconnect()}componentDidLoad(){this.slotChangeObserver()}componentWillLoad(){this.processSlottedContent()}render(){return a(o,null,a("div",{class:{"file-upload":true,"file-upload--dragging":this.isDragging,"file-upload--focus":this.hasFocus,"file-upload--invalid":this._invalid}},this.maxFiles>1?a(this.dropArea,null):a(this.button,null)))}get host(){return n(this)}static get watchers(){return{fileList:["fileListChange","shouldValidate"],maxFiles:["shouldValidate"],maxFileSize:["shouldValidate"],capture:["shouldValidate"],accept:["shouldValidate"],required:["shouldValidate"],disabled:["shouldValidate"]}}};r.style=e;export{r as nano_file_upload};
5
+ //# sourceMappingURL=p-1b120f53.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["src/components/file-upload/file-upload.scss?tag=nano-file-upload&encapsulation=scoped","src/components/file-upload/file-upload.tsx"],"names":["fileUploadCss","fileInputIds","getDataTransfer","DataTransfer","_a","ClipboardEvent","clipboardData","_b","FileUpload","[object Object]","hostRef","this","fileInputId","canChangeFileList","removeFiles","errorMessage","isDragging","fileList","maxFileSize","maxFiles","placeholder","hideLabel","required","disabled","clearInput","showInlineError","validateOn","_invalid","onClearClick","value","onBlur","hasFocus","validate","showInlineValidation","nanoBlur","emit","onFocus","nanoFocus","inputEl","setCustomValidity","error","validity","valid","validationMessage","forEach","fileItem","checkFileSize","file","size","checkFileType","type","accept","length","onInvalid","ev","preventDefault","onFileChoose","e","files","target","addNewFiles","onFileRemoveFileClick","push","closest","classList","remove","onFileRemoveAnim","filter","find","rmFile","onInputChange","nanoChange","onDragStop","stopPropagation","onDragStart","onDrop","dataTransfer","FileUploadInput","eleType","listId","labelId","moreId","hasHelperSlot","h","class","htmlFor","id","onDragEnd","onDragLeave","onDragEnter","onDragOver","label","hasLabelSlot","name","tabindex","onClick","aria-labelledby","multiple","undefined","form","ref","input","publicInputEl","onChange","onReset","tabIndex","button","dropArea","map","key","onAnimationEnd","_","content","placement","iconName","href","location","arrToFileList","setTimeout","requestAnimationFrame","invalid","validityMessage","Array","from","objectURL","URL","createObjectURL","val","validateFirst","isValid","focus","Promise","resolve","message","composedPath","every","node","host","document","querySelector","i","len","items","add","match","nanoValidate","originalEvent","mo","disconnect","MutationObserver","processSlottedContent","observe","childList","subtree","querySelectorAll","newFiles","findFile","slotChangeObserver","Host","file-upload","file-upload--dragging","file-upload--focus","file-upload--invalid"],"mappings":"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","sourcesContent":["@use 'sass:map';\n@use 'sass:list';\n\n@import '../../global/style/utilities/globals';\n@import '../../global/style/nano-theme/form';\n@import '../../global/style/nano-theme/base';\n@import '../../global/style/nano-theme/button';\n\n:host {\n /**\n * @prop --invalid-msg-color: Default value #{nano-color(danger, base)};\n * @prop --invalid-msg-font-size: Default value #{$input-help-font-size};\n\n * @prop --help-msg-color: Default value #{$input-help-color};\n\n * @prop --label-color: Default value #{$label-color};\n * @prop --label-color--invalid: Default value #{$label-color-invalid};\n * @prop --label-font-size: Default value #{$label-font-size};\n * @prop --label-padding: Default value #{$input-padding-bottom};\n * @prop --label-color--invalid: Default value #{$label-color-invalid};\n\n * @prop --drop-bg: Default value #{map.get($colors, blue--faded)};\n * @prop --drop-text: Default value #{map.get($colors, dimgrey)};\n * @prop --drop-height: Default value 3.5em;\n * @prop --drop-border-tint: Default value #{nano-color(primary, base, null, true)};\n * @prop --drop-border-width: Default value 2px;\n * @prop --drop-border-radius: Default value 5px;\n * @prop --drop-bg--invalid: Default value #{$input-background-color--invalid};\n * @prop --drop-border--invalid: Default value #{nano-color(danger, base, null, true)};\n\n * @prop --btn-bg: Default value #{nano-color(primary, base)};\n * @prop --btn-text: Default value #{nano-color(primary, contrast)};\n * @prop --btn-icon-size: Default value var(--nano-btn-icon-size, 1.4em);\n * @prop --btn-padding-top: Default value var(--nano-btn-padding-top, .5em);\n * @prop --btn-padding-bottom: Default value var(--nano-btn-padding-bottom, .5em);\n * @prop --btn-padding-start: Default value var(--nano-btn-padding-start, 1em);\n * @prop --btn-padding-end: Default value var(--nano-btn-padding-end, 1em);\n */\n\n min-height: 1rem;\n display: block;\n\n --invalid-msg-color: #{nano-color(danger, base)};\n --invalid-msg-font-size: #{$input-help-font-size};\n --help-msg-color: #{$input-help-color};\n --label-color: #{$label-color};\n --label-font-size: #{$label-font-size};\n --label-padding: #{$input-padding-bottom};\n --label-color--invalid: #{$label-color-invalid};\n --drop-bg: #{map.get($colors, blue--faded)};\n --drop-text: #{darken(map.get($colors, dimgrey), 11%)};\n --drop-height: 3.5em;\n --drop-border-tint: #{nano-color(primary, base, null, true)};\n --drop-border-width: 2px;\n --drop-border-radius: 5px;\n --drop-bg--invalid: #{$input-background-color--invalid};\n --drop-border--invalid: #{nano-color(danger, base, null, true)};\n --btn-bg: #{nano-color(primary, base)};\n --btn-text: #{nano-color(primary, contrast)};\n --btn-icon-size: var(--nano-btn-icon-size, 1.4em);\n --btn-padding-top: var(--nano-btn-padding-top, 0.5em);\n --btn-padding-bottom: var(--nano-btn-padding-bottom, 0.5em);\n --btn-padding-start: var(--nano-btn-padding-start, 1em);\n --btn-padding-end: var(--nano-btn-padding-end, 1em);\n}\n\n:host([disabled]:not([disabled='false'])) {\n opacity: 0.7;\n\n * {\n pointer-events: none !important;\n }\n}\n\n.file-upload {\n $self: &;\n\n /* Common */\n\n &__label {\n font-size: var(--label-font-size);\n padding: 0 0 var(--label-padding);\n margin: 0;\n line-height: 1;\n\n :host([invalid]:not([invalid='false'])) & {\n color: var(--label-color--invalid);\n }\n }\n\n &__input {\n @include visually-hide();\n }\n\n &__error,\n &__help,\n &__more,\n &__label {\n display: block;\n width: 100%;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n\n &__more {\n height: 1em;\n\n @include margin(\n calc(var(--label-padding) / 2),\n 0,\n var(--label-padding),\n 3px\n );\n\n position: relative;\n }\n\n &__error,\n &__help {\n top: 0;\n left: 0;\n position: absolute;\n font-size: var(--invalid-msg-font-size);\n line-height: 1.2;\n transition: 0.3s ease-out opacity;\n\n .file-upload--invalid & {\n opacity: 1;\n }\n }\n\n &__error {\n color: var(--invalid-msg-color);\n font-stretch: condensed;\n opacity: 0;\n\n .file-upload--invalid & {\n opacity: 1;\n }\n }\n\n &__help {\n font-style: italic;\n opacity: 1;\n color: var(--help-msg-color);\n\n .file-upload--invalid & {\n opacity: 0;\n }\n }\n\n /* Drop area / Multi file upload */\n\n &__drop {\n position: relative;\n width: 100%;\n display: inline-block;\n }\n\n &__drop-area {\n flex-direction: column;\n background-color: var(--drop-bg);\n color: var(--drop-text);\n min-height: var(--drop-height);\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 0.9em;\n position: relative;\n transition: background-color 0.15s ease-in-out;\n padding: 0.5rem;\n\n :host([disabled]:not([disabled='false'])) & {\n opacity: 0.7;\n }\n\n .file-upload--invalid & {\n background-color: var(--drop-bg--invalid);\n }\n\n .file-upload--dragging & {\n background-color: #{map.get($colors, white)};\n }\n\n &::after {\n content: '';\n position: absolute;\n border-radius: var(--drop-border-radius);\n border-width: var(--drop-border-width);\n border-color: rgba(var(--drop-border-tint), 0.5);\n border-style: dashed;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n transition:\n top 0.1s ease-in-out,\n bottom 0.1s ease-in-out,\n left 0.1s ease-in-out,\n right 0.1s ease-in-out;\n\n .file-upload--invalid & {\n border-color: rgba(var(--drop-border--invalid), 1);\n }\n\n .file-upload--dragging & {\n top: 5px;\n bottom: 5px;\n left: 5px;\n right: 5px;\n }\n }\n\n span {\n color: rgba(var(--drop-border-tint), 1);\n text-decoration: underline;\n border-radius: 2px;\n z-index: 1;\n cursor: pointer;\n position: relative;\n\n .file-upload--focus & {\n box-shadow: #{$control-focus-style};\n }\n }\n }\n\n &__list {\n list-style: none;\n margin: 0;\n padding: 0;\n\n &-wrap {\n position: relative;\n top: -4px;\n }\n\n &-item {\n width: 100%;\n margin: 0 0 2px;\n display: flex;\n align-items: center;\n transform: translateZ(0);\n animation: hideListItem 0.3s ease-in-out forwards;\n\n @keyframes hideListItem {\n 0% {\n opacity: 1;\n transform: translateY(0);\n transform: translateZ(0);\n }\n\n 100% {\n opacity: 0;\n transform: translateY(10px);\n transform: translateZ(0);\n }\n }\n\n &--active {\n animation: showListItem 0.3s ease-in-out forwards;\n\n @keyframes showListItem {\n 0% {\n opacity: 0;\n transform: translateY(10px);\n transform: translateZ(0);\n }\n\n 100% {\n opacity: 1;\n transform: translateY(0);\n transform: translateZ(0);\n }\n }\n }\n }\n\n .list-title {\n background: var(--nano-color-blue--faded);\n border-radius: 5px;\n padding: 5px 5px;\n margin-right: 2px;\n display: block;\n width: 100%;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n font-size: 0.9em;\n color: var(--help-msg-color);\n }\n\n .list-button {\n background: var(--nano-color-blue--faded);\n border-radius: 5px;\n margin: 2px;\n }\n\n .list-error {\n --color: rgba(var(--drop-border--invalid), 1);\n }\n }\n\n /* Button display / Single file upload */\n\n &__button {\n @include button-base;\n @include button-standard(\n var(--btn-bg),\n var(--btn-text),\n #{nano-color(primary, shade)}\n );\n\n --nano-btn-icon-size: var(--btn-icon-size);\n --nano-btn-line-height: var(--btn-icon-size);\n --nano-btn-padding-top: var(--btn-padding-top);\n --nano-btn-padding-bottom: var(--btn-padding-bottom);\n --nano-btn-padding-start: var(--btn-padding-start);\n --nano-btn-padding-end: var(--btn-padding-end);\n\n max-width: 100%;\n font-size: 0.9em;\n\n :host([disabled]:not([disabled='false'])) & {\n opacity: 0.4;\n }\n\n .file-upload--dragging & {\n --nano-btn-border-style: dashed;\n }\n #{$self}__clear-btn {\n @include margin(0);\n\n font-size: inherit;\n padding: 0;\n border: 0;\n outline: none;\n background-color: transparent;\n display: flex;\n align-items: stretch;\n width: auto;\n color: var(--clear-btn-color);\n\n :host(.is-invalid) & {\n color: var(--clear-btn-color--invalid);\n }\n\n nano-icon {\n @include margin(0, 0, 0, 0.4rem);\n }\n }\n #{$self}__btn-content {\n display: flex;\n align-items: center;\n\n span {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n min-width: 0;\n }\n }\n }\n}\n","import {\n Component,\n Prop,\n h,\n Host,\n Element,\n ComponentInterface,\n State,\n Event,\n EventEmitter,\n Watch,\n VNode,\n Method,\n Listen,\n} from '@stencil/core';\nimport {\n ControlValidity,\n ControlValidityEventDetail,\n FileInputChangeEventDetail,\n FileWithUrl,\n} from '../../interface';\n\nlet fileInputIds = 0;\n\nlet getDataTransfer = () => new DataTransfer();\ntry {\n getDataTransfer();\n} catch {\n try {\n getDataTransfer = () => new ClipboardEvent('').clipboardData;\n getDataTransfer();\n } catch {\n getDataTransfer = null;\n }\n}\n\ninterface FileValidation {\n file: File;\n valid: boolean;\n validationMessage?: string;\n location?: string;\n}\n/**\n * A better UI experience for `input type=\"file\"` form controls.\n *\n * - Drag and Drop\n * - Validation options\n * - Preview and manage multiple files\n */\n@Component({\n tag: 'nano-file-upload',\n styleUrl: 'file-upload.scss',\n scoped: true,\n})\nexport class FileUpload implements ComponentInterface {\n private inputEl: HTMLInputElement;\n private publicInputEl: HTMLInputElement;\n private mo!: MutationObserver;\n private fileInputId = `nano-file-upload-${fileInputIds++}`;\n private canChangeFileList = !!getDataTransfer;\n private removeFiles: FileValidation[] = [];\n\n @State() hasHelperSlot: boolean;\n @State() hasLabelSlot: boolean;\n @State() errorMessage: string = '';\n @State() isDragging = false;\n @State() fileList: FileValidation[] = [];\n @Watch('fileList')\n fileListChange() {\n if (this.canChangeFileList) {\n this.publicInputEl.value = '';\n this.inputEl.files = this.arrToFileList(\n this.fileList.map((file) => file.file)\n );\n setTimeout(() => {\n this.nanoChange.emit({ value: this.value, files: this.files });\n }, 20);\n }\n }\n @State() hasFocus: boolean;\n\n @Element() host: HTMLNanoFileUploadElement;\n\n // public props\n\n /** Name of the form control. Submitted with the form as part of a name/value pair. */\n @Prop() name!: string;\n\n /** The accept attribute value is a string that defines the file types the file input should accept.\n * E.g. for a MS Word file: `.doc, .docx,application/msword, application/vnd.openxmlformats-officedocument.wordprocessingml.document` */\n @Prop() accept?: string;\n\n /** Specifies which camera to use for capture of image or video data. `user` for the user-facing camera and/or microphone.\n * `environment` specifies the the outward-facing camera and/or microphone. If the requested facing mode isn't available,\n * the user agent may fall back to its preferred default mode. */\n @Prop() capture?: 'user' | 'environment';\n\n /** The maximum file size allowed per file (Megabytes) */\n @Prop() maxFileSize: number = 1;\n\n /** The maximum file size allowed per file (bytes). */\n @Prop() maxFiles: number = 1;\n\n /** String to place within a label element. */\n @Prop() label!: string;\n\n /** Placeholder only used within single file uploads. */\n @Prop() placeholder: string = 'Choose a file...';\n\n /** Visually hide the label - but make it accessible. */\n @Prop() hideLabel?: boolean = false;\n\n /** If `true`, the user must select a file to upload before submitting a form. */\n @Prop() required = false;\n\n /** If `true`, the user cannot interact with the select. */\n @Prop({ reflect: true }) disabled = false;\n\n /** If `true`, a clear icon will appear in the input when there is a value.\n * Clicking it clears the input. Only used within single file uploads. */\n @Prop() clearInput = false;\n\n /** Whether to show validation errors underneath input */\n @Prop({ reflect: true }) showInlineError = true;\n\n /** When should the field perform validation */\n @Prop({ mutable: true }) validateOn?: 'dirty' | 'submit' | 'submitThenDirty' =\n 'submit';\n\n /** The form element to associate with this input (its form owner). Must be the id of a form. */\n @Prop() form?: string | null;\n\n @Watch('maxFiles')\n @Watch('maxFileSize')\n @Watch('capture')\n @Watch('accept')\n @Watch('required')\n @Watch('disabled')\n @Watch('fileList')\n protected shouldValidate() {\n if (!this.inputEl) return;\n\n this.validate();\n requestAnimationFrame(() => {\n if (this.validateOn === 'dirty') this.showInlineValidation();\n });\n }\n\n @State() _invalid = false;\n /** This will be true when the control is in an invalid state.\n * Validity is determined by the `required` prop. Or if custom validity message is set. @readonly */\n @Prop({ reflect: true })\n get invalid() {\n return this._invalid;\n }\n\n /**\n * Current validation message - if any. @readonly\n */\n @Prop()\n get validityMessage() {\n if (!this.inputEl) return '';\n return this.inputEl.validationMessage;\n }\n\n /** A File array that lists every selected file.\n * Has an added `objectURL` property returning a `DOMString`\n * containing an object URL that can be used to reference the contents of the specified source\n * This list has no more than one member unless the multiple attribute is specified. @readonly */\n @Prop()\n get files(): FileWithUrl[] {\n return this.inputEl\n ? Array.from(this.inputEl.files).map((file: FileWithUrl) => {\n file.objectURL = URL.createObjectURL(file);\n return file;\n })\n : [];\n }\n\n /** A file input's value attribute contains a DOMString that represents the path to the selected file(s).\n * If the user selected multiple files, the value represents the first file in the list of files they selected.\n * You can reset the file-upload control by setting the value to an emptry string e.g. `var input.value = ''` */\n @Prop()\n get value() {\n return this.inputEl ? this.inputEl.value : '';\n }\n set value(val: string) {\n if (val === '' && this.inputEl) {\n this.fileList = [];\n this.inputEl.value = '';\n }\n }\n\n // Events\n\n /** Emitted when the value has changed. */\n @Event() nanoChange!: EventEmitter<FileInputChangeEventDetail>;\n\n /** Emited when the checkbox is focused */\n @Event() nanoFocus: EventEmitter;\n\n /** Emited when the checkbox is blurred */\n @Event() nanoBlur: EventEmitter;\n\n /** Called when validation is performed (which depends on `validateOn`).\n * @returns event.detail: `{ isValid: boolean, errorMessage: string, originalEvent: Event }`. */\n @Event() nanoValidate: EventEmitter<ControlValidityEventDetail>;\n\n // Public methods\n\n /** Get the current state of the control.\n * @param validateFirst - perform validation first before reporting\n * @returns `{ isValid: boolean, errorMessage: string }` */\n @Method()\n async reportValidity(validateFirst: boolean): Promise<ControlValidity> {\n if (validateFirst) {\n this.validate();\n this.showInlineValidation();\n }\n return {\n isValid: !this.invalid,\n errorMessage: this.inputEl.validationMessage,\n };\n }\n\n /** Sets focus on the specified `nano-input`. Use this method instead of the global\n * `input.focus()`. */\n @Method()\n async setFocus() {\n if (this.inputEl) this.inputEl.focus();\n }\n\n /** Returns the native `<input>` element used under the hood */\n @Method()\n getInputElement(): Promise<HTMLInputElement | HTMLTextAreaElement> {\n return Promise.resolve(this.inputEl!);\n }\n\n /** Invalidate the field and show a custom error message. To clear the error you will need to re-call this method with an empty string.\n * @param message */\n @Method()\n async showError(message: string) {\n if (this.inputEl) {\n this.inputEl.setCustomValidity(message);\n this.validate();\n this.showInlineValidation();\n }\n }\n\n // Listeners\n\n @Listen('click', { target: 'window' })\n globalClickHandler(e: Event) {\n if (!this.hasFocus) return;\n if (e.composedPath().every((node) => node !== this.host)) this.onBlur();\n }\n\n @Listen('keydown', { target: 'window' })\n globalKeydownHandler(e: KeyboardEvent) {\n if (!this.hasFocus || e.key !== 'Tab') return;\n if (e.target !== this.inputEl) this.onBlur();\n }\n\n @Listen('reset', { target: 'body' })\n onReset(e) {\n const form = this.form\n ? document.querySelector('#' + this.form)\n : this.host.closest('form');\n if (!form || e.target !== this.host.closest('form')) return;\n\n this.value = '';\n }\n\n // Private methods\n\n private onClearClick = () => {\n this.value = '';\n };\n\n private onBlur = () => {\n this.hasFocus = false;\n this.validate();\n if (this.validateOn === 'dirty') this.showInlineValidation();\n this.nanoBlur.emit();\n };\n\n private onFocus = () => {\n this.hasFocus = true;\n this.nanoFocus.emit();\n };\n\n private arrToFileList(files: File[]): FileList {\n const fileList = getDataTransfer();\n for (var i = 0, len = files.length; i < len; i++)\n fileList.items.add(files[i]);\n return fileList.files;\n }\n\n private checkFileSize(size: number): boolean {\n return size / 1000000 <= this.maxFileSize;\n }\n\n private checkFileType(type: string): boolean {\n if (!this.accept) return true;\n return this.accept.match(type) && this.accept.match(type).length > 0;\n }\n\n private validate = () => {\n this.errorMessage = '';\n this.inputEl.setCustomValidity('');\n let error: string;\n\n if (!this.inputEl.validity.valid) {\n error = this.inputEl.validationMessage;\n } else {\n this.fileList.forEach((fileItem) => {\n error = null;\n if (!this.checkFileSize(fileItem.file.size)) {\n error =\n 'Maximum file size exceeded. Max file size is ' +\n this.maxFileSize +\n 'Mb';\n } else if (!this.checkFileType(fileItem.file.type))\n error = `File type is not allowed (${this.accept})`;\n\n fileItem.validationMessage = error;\n fileItem.valid = !error;\n });\n if (this.fileList.length > this.maxFiles)\n error = `Maxinum number of files exceeded (${this.maxFiles})`;\n }\n\n if (!!error) this.inputEl.setCustomValidity(error);\n };\n\n private showInlineValidation(ev?: Event) {\n if (this.validateOn === 'submitThenDirty') this.validateOn = 'dirty';\n\n this._invalid = false;\n this.errorMessage = '';\n\n if (!this.inputEl.validity.valid) {\n this.errorMessage = this.inputEl.validationMessage;\n this._invalid = true;\n }\n\n this.nanoValidate.emit({\n isValid: !this._invalid,\n errorMessage: this.inputEl.validationMessage,\n originalEvent: ev,\n });\n }\n\n private slotChangeObserver() {\n if (this.mo) this.mo.disconnect();\n const mo = (this.mo = new MutationObserver(() =>\n this.processSlottedContent()\n ));\n mo.observe(this.host, { childList: true, subtree: true });\n }\n\n private processSlottedContent() {\n // see if we have slot content\n this.hasLabelSlot = !!this.host.querySelectorAll('[slot=\"label\"]');\n this.hasHelperSlot = !!this.host.querySelector('[slot=\"helper\"]');\n }\n\n private addNewFiles(files: FileList) {\n const fileList: FileValidation[] = Array.from(files).map((file) => {\n return {\n file: file,\n location: URL.createObjectURL(file),\n valid: true,\n validationMessage: null,\n };\n });\n\n // if we have a list and we're in a browser that can amend files\n // append files to the list, otherwise replace\n if (this.canChangeFileList && this.maxFiles > 1) {\n const newFiles = fileList.filter(\n (findFile) =>\n !this.fileList.find((file) => file.file.name === findFile.file.name)\n );\n this.fileList = [...this.fileList, ...newFiles];\n } else this.fileList = fileList;\n }\n\n // event handlers & hooks\n\n private onInvalid = (ev: Event) => {\n if (this.showInlineError) ev.preventDefault();\n this.validate();\n this.showInlineValidation(ev);\n };\n\n private onFileChoose = (e: Event) => {\n const files = (e.target as HTMLInputElement).files;\n if (files && files.length)\n this.addNewFiles((e.target as HTMLInputElement).files);\n };\n\n private onFileRemoveFileClick = (e: Event, file: FileValidation) => {\n if (!this.canChangeFileList) return;\n this.removeFiles.push(file);\n\n (e.target as HTMLElement)\n .closest('.file-upload__list-item--active')\n .classList.remove('file-upload__list-item--active');\n };\n\n private onFileRemoveAnim = () => {\n if (!this.canChangeFileList || !this.removeFiles.length) return;\n this.fileList = this.fileList.filter(\n (fileItem) => !this.removeFiles.find((rmFile) => rmFile === fileItem)\n );\n this.removeFiles = [];\n };\n\n private onInputChange = () => {\n this.nanoChange.emit({ value: this.value, files: this.files });\n };\n\n private onDragStop = (e: DragEvent) => {\n e.preventDefault();\n e.stopPropagation();\n this.isDragging = false;\n };\n\n private onDragStart = (e: DragEvent) => {\n e.preventDefault();\n e.stopPropagation();\n this.isDragging = true;\n };\n\n private onDrop = (e: DragEvent) => {\n this.onDragStop(e);\n if (e.dataTransfer.files && e.dataTransfer.files.length)\n this.addNewFiles(e.dataTransfer.files);\n };\n\n // Component lifecycle\n\n disconnectedCallback() {\n if (this.mo) this.mo.disconnect();\n }\n\n componentDidLoad() {\n this.slotChangeObserver();\n }\n\n componentWillLoad() {\n this.processSlottedContent();\n }\n\n private FileUploadInput = (\n eleType: 'drop' | 'btn',\n listId?: string\n ): VNode[] => {\n const labelId = this.fileInputId + '-lbl';\n const moreId =\n this.showInlineError || this.hasHelperSlot\n ? this.fileInputId + '-more'\n : '';\n\n return [\n <div class={'file-upload__' + eleType + '-wrap'}>\n <label\n class={`file-upload__` + eleType}\n htmlFor={this.fileInputId}\n id={labelId}\n onDrop={(e) => {\n this.onDrop(e);\n this.onDragStop(e);\n }}\n onDragEnd={this.onDragStop}\n onDragLeave={this.onDragStop}\n onDragEnter={this.onDragStart}\n onDragOver={this.onDragStart}\n >\n {(!!this.label || (this.hasLabelSlot && eleType !== 'drop')) && (\n <div\n class={`file-upload__label ${\n this.hideLabel ? 'visually-hide' : ''\n }`}\n >\n {!!this.label && !!this.label.length ? this.label : ''}\n {!this.label && this.hasLabelSlot && eleType !== 'drop' && (\n <slot name=\"label\" />\n )}\n </div>\n )}\n {eleType === 'drop' && (\n <div class=\"file-upload__drop-area\">\n <div>{this.hasLabelSlot && <slot name=\"label\" />}</div>\n <div>\n Drag and drop or&nbsp;<span>browse</span>\n </div>\n </div>\n )}\n {eleType === 'btn' && (\n <div\n class={`file-upload__button button--keyline button--icon-start ${\n this.hasFocus ? 'button--focus' : ''\n }`}\n >\n <div class={`file-upload__btn-content`}>\n <nano-icon name=\"regular/cloud-upload\" />\n <span>\n {!!this.fileList.length\n ? this.fileList[0].file.name\n : this.placeholder}\n </span>\n {!!this.value && this.clearInput && !this.disabled && (\n <button\n type=\"button\"\n class=\"icon file-upload__clear-btn\"\n tabindex=\"-1\"\n onClick={this.onClearClick}\n >\n <nano-icon name=\"light/times\"></nano-icon>\n </button>\n )}\n </div>\n </div>\n )}\n <input\n aria-labelledby={labelId + ' ' + moreId + ' ' + listId}\n type=\"file\"\n id={this.fileInputId}\n accept={this.accept}\n class=\"file-upload__input\"\n multiple={this.maxFiles > 1}\n disabled={this.disabled}\n name={this.canChangeFileList ? undefined : this.name}\n form={this.form}\n ref={(input) => {\n if (this.canChangeFileList) {\n this.publicInputEl = input;\n return;\n }\n this.inputEl = input;\n }}\n onChange={this.onFileChoose}\n onFocus={this.onFocus}\n onReset={this.onInputChange}\n />\n </label>\n <input\n name={!this.canChangeFileList ? undefined : this.name}\n form={this.form}\n ref={(input) => {\n if (!this.canChangeFileList) return;\n this.inputEl = input;\n }}\n type=\"file\"\n id={this.fileInputId + '-hidden'}\n tabIndex={-1}\n multiple={true}\n class=\"file-upload__input\"\n disabled={this.disabled}\n required={this.required}\n accept={this.accept}\n onInvalid={this.onInvalid}\n onChange={this.onInputChange}\n />\n </div>,\n this.showInlineError || this.hasHelperSlot ? (\n <div class=\"file-upload__more\" id={moreId}>\n {this.showInlineError && !!this.errorMessage.length ? (\n <div class=\"file-upload__error\">{this.errorMessage}</div>\n ) : (\n ''\n )}\n <div class=\"file-upload__help\">\n <slot name=\"helper\" />\n </div>\n </div>\n ) : (\n ''\n ),\n ];\n };\n\n private button = (): VNode[] => {\n return this.FileUploadInput('btn');\n };\n\n private dropArea = (): VNode[] => {\n const listId = this.fileInputId + '-list';\n return [\n this.FileUploadInput('drop', listId),\n <output class=\"file-upload__list-wrap\" id={listId}>\n {!!this.fileList && this.fileList.length > 0 && (\n <ul class=\"file-upload__list list\">\n {this.fileList.map((file) => {\n return (\n <li\n key={file.file.name}\n class=\"file-upload__list-item file-upload__list-item--active list-item\"\n onAnimationEnd={(_) => this.onFileRemoveAnim()}\n >\n <span class=\"list-title\">{file.file.name}</span>\n {!file.valid && (\n <nano-tooltip\n content={file.validationMessage}\n placement=\"left\"\n >\n <nano-icon-button\n class=\"list-button list-error\"\n iconName=\"light/exclamation-triangle\"\n label=\"File error\"\n />\n </nano-tooltip>\n )}\n {this.canChangeFileList && (\n <nano-icon-button\n class=\"list-button list-button--view\"\n type=\"button\"\n iconName=\"light/eye\"\n label=\"View file\"\n target=\"_blank\"\n href={file.location}\n />\n )}\n {this.canChangeFileList && (\n <nano-icon-button\n onClick={(e) => this.onFileRemoveFileClick(e, file)}\n class=\"list-button list-button--remove\"\n iconName=\"light/times\"\n label=\"Remove file\"\n />\n )}\n </li>\n );\n })}\n </ul>\n )}\n </output>,\n ];\n };\n\n render() {\n return (\n <Host>\n <div\n class={{\n 'file-upload': true,\n 'file-upload--dragging': this.isDragging,\n 'file-upload--focus': this.hasFocus,\n 'file-upload--invalid': this._invalid,\n }}\n >\n {this.maxFiles > 1 ? <this.dropArea /> : <this.button />}\n </div>\n </Host>\n );\n }\n}\n"]}