@nanoporetech-digital/components 5.10.0 → 5.11.1

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 (737) hide show
  1. package/CHANGELOG.md +48 -0
  2. package/dist/cjs/{algolia-data-6841724e.js → algolia-data-dba27b97.js} +2 -2
  3. package/dist/cjs/{algolia-data-6841724e.js.map → algolia-data-dba27b97.js.map} +1 -1
  4. package/dist/cjs/{algoliasearch-lite.esm.browser-992a2eff.js → algoliasearch-lite.esm.browser-b74ca774.js} +30 -5
  5. package/dist/cjs/algoliasearch-lite.esm.browser-b74ca774.js.map +1 -0
  6. package/dist/cjs/{component-store-6d7b8855.js → component-store-149aeffe.js} +2 -2
  7. package/dist/cjs/{component-store-6d7b8855.js.map → component-store-149aeffe.js.map} +1 -1
  8. package/dist/cjs/fade-dcabf3c1.js +211 -0
  9. package/dist/cjs/fade-dcabf3c1.js.map +1 -0
  10. package/dist/cjs/{form-control-8db579a2.js → form-control-f100407e.js} +2 -2
  11. package/dist/cjs/{form-control-8db579a2.js.map → form-control-f100407e.js.map} +1 -1
  12. package/dist/cjs/fullscreen-d24940a1.js +133 -0
  13. package/dist/cjs/fullscreen-d24940a1.js.map +1 -0
  14. package/dist/cjs/{global-3a6a7873.js → global-a5710651.js} +7 -7
  15. package/dist/cjs/{global-3a6a7873.js.map → global-a5710651.js.map} +1 -1
  16. package/dist/cjs/{index-1d3ebe1a.js → index-14451c95.js} +8 -6
  17. package/dist/cjs/index-14451c95.js.map +1 -0
  18. package/dist/cjs/{index-0f470227.js → index-f6f89d47.js} +2 -2
  19. package/dist/cjs/{index-0f470227.js.map → index-f6f89d47.js.map} +1 -1
  20. package/dist/cjs/lazyload-f6be7590.js +95 -0
  21. package/dist/cjs/lazyload-f6be7590.js.map +1 -0
  22. package/dist/cjs/loader.cjs.js +4 -4
  23. package/dist/cjs/loader.cjs.js.map +1 -1
  24. package/dist/cjs/nano-accordion.cjs.entry.js +1 -1
  25. package/dist/cjs/nano-alert.cjs.entry.js +3 -3
  26. package/dist/cjs/nano-alert.cjs.entry.js.map +1 -1
  27. package/dist/cjs/nano-algolia-filter.cjs.entry.js +3 -3
  28. package/dist/cjs/nano-algolia-filter.cjs.entry.js.map +1 -1
  29. package/dist/cjs/nano-algolia-pagination.cjs.entry.js +2 -7
  30. package/dist/cjs/nano-algolia-pagination.cjs.entry.js.map +1 -1
  31. package/dist/cjs/nano-algolia-results.cjs.entry.js +2 -2
  32. package/dist/cjs/nano-algolia-results.cjs.entry.js.map +1 -1
  33. package/dist/cjs/nano-algolia.cjs.entry.js +982 -26
  34. package/dist/cjs/nano-algolia.cjs.entry.js.map +1 -1
  35. package/dist/cjs/nano-aspect-ratio.cjs.entry.js +1 -1
  36. package/dist/cjs/nano-checkbox-group.cjs.entry.js +10 -4
  37. package/dist/cjs/nano-checkbox-group.cjs.entry.js.map +1 -1
  38. package/dist/cjs/nano-checkbox.cjs.entry.js +4 -2
  39. package/dist/cjs/nano-checkbox.cjs.entry.js.map +1 -1
  40. package/dist/cjs/nano-components.cjs.js +4 -4
  41. package/dist/cjs/nano-components.cjs.js.map +1 -1
  42. package/dist/cjs/nano-datalist_3.cjs.entry.js +4 -4
  43. package/dist/cjs/nano-datalist_3.cjs.entry.js.map +1 -1
  44. package/dist/cjs/nano-date-input.cjs.entry.js +1 -1
  45. package/dist/cjs/nano-date-picker.cjs.entry.js +2 -2
  46. package/dist/cjs/nano-date-picker.cjs.entry.js.map +1 -1
  47. package/dist/cjs/nano-demo.cjs.entry.js +1 -1
  48. package/dist/cjs/nano-details.cjs.entry.js +2 -2
  49. package/dist/cjs/nano-details.cjs.entry.js.map +1 -1
  50. package/dist/cjs/nano-dialog.cjs.entry.js +5 -5
  51. package/dist/cjs/nano-dialog.cjs.entry.js.map +1 -1
  52. package/dist/cjs/nano-drawer.cjs.entry.js +5 -5
  53. package/dist/cjs/nano-drawer.cjs.entry.js.map +1 -1
  54. package/dist/cjs/nano-dropdown.cjs.entry.js +1 -1
  55. package/dist/cjs/nano-dropdown.cjs.entry.js.map +1 -1
  56. package/dist/cjs/nano-field-validator.cjs.entry.js +7 -5
  57. package/dist/cjs/nano-field-validator.cjs.entry.js.map +1 -1
  58. package/dist/cjs/nano-file-upload.cjs.entry.js +2 -2
  59. package/dist/cjs/nano-file-upload.cjs.entry.js.map +1 -1
  60. package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js +4 -4
  61. package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js.map +1 -1
  62. package/dist/cjs/nano-global-nav.cjs.entry.js +122 -153
  63. package/dist/cjs/nano-global-nav.cjs.entry.js.map +1 -1
  64. package/dist/cjs/nano-global-search-results.cjs.entry.js +4 -4
  65. package/dist/cjs/nano-global-search-results.cjs.entry.js.map +1 -1
  66. package/dist/cjs/nano-grid-item.cjs.entry.js +1 -1
  67. package/dist/cjs/nano-grid_2.cjs.entry.js +2 -2
  68. package/dist/cjs/nano-grid_2.cjs.entry.js.map +1 -1
  69. package/dist/cjs/nano-hero.cjs.entry.js +2 -2
  70. package/dist/cjs/nano-hero.cjs.entry.js.map +1 -1
  71. package/dist/cjs/nano-icon-button_2.cjs.entry.js +24 -4
  72. package/dist/cjs/nano-icon-button_2.cjs.entry.js.map +1 -1
  73. package/dist/cjs/nano-icon.cjs.entry.js +4 -4
  74. package/dist/cjs/nano-icon.cjs.entry.js.map +1 -1
  75. package/dist/cjs/nano-input.cjs.entry.js +3 -3
  76. package/dist/cjs/nano-input.cjs.entry.js.map +1 -1
  77. package/dist/cjs/nano-menu-drawer.cjs.entry.js +2 -2
  78. package/dist/cjs/nano-menu-drawer.cjs.entry.js.map +1 -1
  79. package/dist/cjs/nano-overflow-nav.cjs.entry.js +2 -2
  80. package/dist/cjs/nano-overflow-nav.cjs.entry.js.map +1 -1
  81. package/dist/cjs/nano-progress-bar.cjs.entry.js +2 -2
  82. package/dist/cjs/nano-progress-bar.cjs.entry.js.map +1 -1
  83. package/dist/cjs/nano-range.cjs.entry.js +2 -2
  84. package/dist/cjs/nano-range.cjs.entry.js.map +1 -1
  85. package/dist/cjs/nano-rating.cjs.entry.js +2 -2
  86. package/dist/cjs/nano-rating.cjs.entry.js.map +1 -1
  87. package/dist/cjs/nano-resize-observe_2.cjs.entry.js +1 -1
  88. package/dist/cjs/nano-slide.cjs.entry.js +1 -1
  89. package/dist/cjs/nano-slides-2f3dcc02.js +2975 -0
  90. package/dist/cjs/nano-slides-2f3dcc02.js.map +1 -0
  91. package/dist/cjs/nano-slides.cjs.entry.js +3 -4292
  92. package/dist/cjs/nano-slides.cjs.entry.js.map +1 -1
  93. package/dist/cjs/nano-sortable.cjs.entry.js +1 -1
  94. package/dist/cjs/nano-spinner.cjs.entry.js +2 -2
  95. package/dist/cjs/nano-spinner.cjs.entry.js.map +1 -1
  96. package/dist/cjs/nano-split-pane.cjs.entry.js +1 -1
  97. package/dist/cjs/nano-sticker.cjs.entry.js +3 -2
  98. package/dist/cjs/nano-sticker.cjs.entry.js.map +1 -1
  99. package/dist/cjs/nano-tab-content.cjs.entry.js +1 -1
  100. package/dist/cjs/nano-tab-group.cjs.entry.js +4 -4
  101. package/dist/cjs/nano-tab-group.cjs.entry.js.map +1 -1
  102. package/dist/cjs/nano-tab.cjs.entry.js +2 -2
  103. package/dist/cjs/nano-tab.cjs.entry.js.map +1 -1
  104. package/dist/cjs/{nano-table-72d5dc63.js → nano-table-bbd65636.js} +5 -5
  105. package/dist/cjs/{nano-table-72d5dc63.js.map → nano-table-bbd65636.js.map} +1 -1
  106. package/dist/cjs/nano-table.cjs.entry.js +3 -3
  107. package/dist/cjs/page-dots-ae2cefb4.js +140 -0
  108. package/dist/cjs/page-dots-ae2cefb4.js.map +1 -0
  109. package/dist/cjs/{scroll-fc1b8387.js → scroll-e8c21f80.js} +8 -4
  110. package/dist/cjs/scroll-e8c21f80.js.map +1 -0
  111. package/dist/cjs/{table.worker-3df34efe.js → table.worker-ea98a8dd.js} +4 -4
  112. package/dist/cjs/table.worker-ea98a8dd.js.map +1 -0
  113. package/dist/collection/collection-manifest.json +1 -1
  114. package/dist/collection/components/alert/alert.css +1 -2
  115. package/dist/collection/components/algolia/algolia-data.js.map +1 -1
  116. package/dist/collection/components/algolia/algolia-filter.js.map +1 -1
  117. package/dist/collection/components/algolia/algolia-pagination.js +0 -5
  118. package/dist/collection/components/algolia/algolia-pagination.js.map +1 -1
  119. package/dist/collection/components/algolia/algolia-results.js.map +1 -1
  120. package/dist/collection/components/algolia/algolia.js +4 -27
  121. package/dist/collection/components/algolia/algolia.js.map +1 -1
  122. package/dist/collection/components/algolia/lib/squirrelly/browser.js +10 -0
  123. package/dist/collection/components/algolia/lib/squirrelly/browser.js.map +1 -0
  124. package/dist/collection/components/algolia/lib/squirrelly/compile-string.js +151 -0
  125. package/dist/collection/components/algolia/lib/squirrelly/compile-string.js.map +1 -0
  126. package/dist/collection/components/algolia/lib/squirrelly/compile.js +44 -0
  127. package/dist/collection/components/algolia/lib/squirrelly/compile.js.map +1 -0
  128. package/dist/collection/components/algolia/lib/squirrelly/config.js +68 -0
  129. package/dist/collection/components/algolia/lib/squirrelly/config.js.map +1 -0
  130. package/dist/collection/components/algolia/lib/squirrelly/container-utils.js +57 -0
  131. package/dist/collection/components/algolia/lib/squirrelly/container-utils.js.map +1 -0
  132. package/dist/collection/components/algolia/lib/squirrelly/containers.js +128 -0
  133. package/dist/collection/components/algolia/lib/squirrelly/containers.js.map +1 -0
  134. package/dist/collection/components/algolia/lib/squirrelly/err.js +39 -0
  135. package/dist/collection/components/algolia/lib/squirrelly/err.js.map +1 -0
  136. package/dist/collection/components/algolia/lib/squirrelly/parse.js +327 -0
  137. package/dist/collection/components/algolia/lib/squirrelly/parse.js.map +1 -0
  138. package/dist/collection/components/algolia/lib/squirrelly/render.js +62 -0
  139. package/dist/collection/components/algolia/lib/squirrelly/render.js.map +1 -0
  140. package/dist/collection/components/algolia/lib/squirrelly/storage.js +32 -0
  141. package/dist/collection/components/algolia/lib/squirrelly/storage.js.map +1 -0
  142. package/dist/collection/components/algolia/lib/squirrelly/utils.js +102 -0
  143. package/dist/collection/components/algolia/lib/squirrelly/utils.js.map +1 -0
  144. package/dist/collection/{utils → components/algolia/lib}/template.js +1 -2
  145. package/dist/collection/components/algolia/lib/template.js.map +1 -0
  146. package/dist/collection/components/checkbox/checkbox-group.css +17 -15
  147. package/dist/collection/components/checkbox/checkbox-group.js +29 -2
  148. package/dist/collection/components/checkbox/checkbox-group.js.map +1 -1
  149. package/dist/collection/components/checkbox/checkbox.css +20 -22
  150. package/dist/collection/components/checkbox/checkbox.js +2 -0
  151. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  152. package/dist/collection/components/date-picker/date-picker.css +5 -10
  153. package/dist/collection/components/details/details.css +4 -4
  154. package/dist/collection/components/dialog/dialog.css +3 -6
  155. package/dist/collection/components/dialog/dialog.js +1 -1
  156. package/dist/collection/components/dialog/dialog.js.map +1 -1
  157. package/dist/collection/components/drawer/drawer.css +18 -24
  158. package/dist/collection/components/drawer/drawer.js +1 -1
  159. package/dist/collection/components/drawer/drawer.js.map +1 -1
  160. package/dist/collection/components/dropdown/dropdown.js +1 -1
  161. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  162. package/dist/collection/components/field-validator/field-validator.js +5 -3
  163. package/dist/collection/components/field-validator/field-validator.js.map +1 -1
  164. package/dist/collection/components/file-upload/file-upload.css +16 -30
  165. package/dist/collection/components/global-nav/global-nav.js +118 -157
  166. package/dist/collection/components/global-nav/global-nav.js.map +1 -1
  167. package/dist/collection/components/global-nav/style/global-nav.css +97 -138
  168. package/dist/collection/components/global-search-results/global-search-results.css +85 -127
  169. package/dist/collection/components/global-search-results/global-search-results.js +2 -2
  170. package/dist/collection/components/global-search-results/global-search-results.js.map +1 -1
  171. package/dist/collection/components/hero/hero.css +13 -26
  172. package/dist/collection/components/icon/icon.css +6 -6
  173. package/dist/collection/components/icon/icon.js +2 -2
  174. package/dist/collection/components/icon/icon.js.map +1 -1
  175. package/dist/collection/components/img/img.css +7 -17
  176. package/dist/collection/components/input/input.css +15 -36
  177. package/dist/collection/components/menu/menu.css +1 -1
  178. package/dist/collection/components/menu/menu.js +1 -1
  179. package/dist/collection/components/menu/menu.js.map +1 -1
  180. package/dist/collection/components/menu-drawer/menu-drawer.css +5 -14
  181. package/dist/collection/components/nav-item/nav-item.css +25 -46
  182. package/dist/collection/components/option/option.css +3 -5
  183. package/dist/collection/components/overflow-nav/overflow-nav.css +16 -27
  184. package/dist/collection/components/progress-bar/progress-bar.css +2 -2
  185. package/dist/collection/components/range/range.css +17 -19
  186. package/dist/collection/components/rating/rating.css +2 -8
  187. package/dist/collection/components/select/select.css +30 -53
  188. package/dist/collection/components/slides/lib/js/animate.js +29 -54
  189. package/dist/collection/components/slides/lib/js/animate.js.map +1 -0
  190. package/dist/collection/components/slides/lib/js/cell.js +12 -24
  191. package/dist/collection/components/slides/lib/js/cell.js.map +1 -0
  192. package/dist/collection/components/slides/lib/js/drag.js +65 -116
  193. package/dist/collection/components/slides/lib/js/drag.js.map +1 -0
  194. package/dist/collection/components/slides/lib/js/fade.js +52 -79
  195. package/dist/collection/components/slides/lib/js/fade.js.map +1 -0
  196. package/dist/collection/components/slides/lib/js/flickity.js +118 -206
  197. package/dist/collection/components/slides/lib/js/flickity.js.map +1 -0
  198. package/dist/collection/components/slides/lib/js/fullscreen.js +21 -40
  199. package/dist/collection/components/slides/lib/js/fullscreen.js.map +1 -0
  200. package/dist/collection/components/slides/lib/js/index.js +4 -6
  201. package/dist/collection/components/slides/lib/js/index.js.map +1 -0
  202. package/dist/collection/components/slides/lib/js/lazyload.js +21 -36
  203. package/dist/collection/components/slides/lib/js/lazyload.js.map +1 -0
  204. package/dist/collection/components/slides/lib/js/page-dots.js +21 -45
  205. package/dist/collection/components/slides/lib/js/page-dots.js.map +1 -0
  206. package/dist/collection/components/slides/lib/js/player.js +12 -40
  207. package/dist/collection/components/slides/lib/js/player.js.map +1 -0
  208. package/dist/collection/components/slides/lib/js/prev-next-button.js +24 -52
  209. package/dist/collection/components/slides/lib/js/prev-next-button.js.map +1 -0
  210. package/dist/collection/components/slides/lib/js/slide.js +10 -15
  211. package/dist/collection/components/slides/lib/js/slide.js.map +1 -0
  212. package/dist/collection/components/slides/lib/js/utils/event-emitter.js +75 -0
  213. package/dist/collection/components/slides/lib/js/utils/event-emitter.js.map +1 -0
  214. package/dist/collection/components/slides/lib/js/utils/gestures.js +436 -0
  215. package/dist/collection/components/slides/lib/js/utils/gestures.js.map +1 -0
  216. package/dist/collection/components/slides/lib/js/utils/get-size.js +160 -0
  217. package/dist/collection/components/slides/lib/js/utils/get-size.js.map +1 -0
  218. package/dist/collection/components/slides/lib/js/utils/utils.js +166 -0
  219. package/dist/collection/components/slides/lib/js/utils/utils.js.map +1 -0
  220. package/dist/collection/components/slides/slides.css +18 -19
  221. package/dist/collection/components/slides/slides.js +31 -5
  222. package/dist/collection/components/slides/slides.js.map +1 -1
  223. package/dist/collection/components/spinner/spinner.css +1 -2
  224. package/dist/collection/components/sticker/sticker.js +2 -1
  225. package/dist/collection/components/sticker/sticker.js.map +1 -1
  226. package/dist/collection/components/table/table.css +29 -48
  227. package/dist/collection/components/tabs/tab-group.css +10 -14
  228. package/dist/collection/components/tabs/tab.css +8 -18
  229. package/dist/collection/components/tooltip/tooltip.css +34 -31
  230. package/dist/collection/components/tooltip/tooltip.js +23 -3
  231. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  232. package/dist/collection/global/script/global.js +6 -6
  233. package/dist/collection/global/script/global.js.map +1 -1
  234. package/dist/collection/utils/scroll.js +7 -3
  235. package/dist/collection/utils/scroll.js.map +1 -1
  236. package/dist/components/algolia-data.js.map +1 -1
  237. package/dist/components/algolia.js +978 -23
  238. package/dist/components/algolia.js.map +1 -1
  239. package/dist/components/algoliasearch-lite.esm.browser.js +29 -4
  240. package/dist/components/algoliasearch-lite.esm.browser.js.map +1 -1
  241. package/dist/components/date-picker.js +1 -1
  242. package/dist/components/date-picker.js.map +1 -1
  243. package/dist/components/dropdown.js +1 -1
  244. package/dist/components/dropdown.js.map +1 -1
  245. package/dist/components/fade.js +208 -0
  246. package/dist/components/fade.js.map +1 -0
  247. package/dist/components/fullscreen.js +130 -0
  248. package/dist/components/fullscreen.js.map +1 -0
  249. package/dist/components/icon.js +3 -3
  250. package/dist/components/icon.js.map +1 -1
  251. package/dist/components/img.js +1 -1
  252. package/dist/components/img.js.map +1 -1
  253. package/dist/components/index.js +6 -6
  254. package/dist/components/index.js.map +1 -1
  255. package/dist/components/input.js +1 -1
  256. package/dist/components/input.js.map +1 -1
  257. package/dist/components/lazyload.js +92 -0
  258. package/dist/components/lazyload.js.map +1 -0
  259. package/dist/components/menu.js +2 -2
  260. package/dist/components/menu.js.map +1 -1
  261. package/dist/components/nano-alert.js +1 -1
  262. package/dist/components/nano-alert.js.map +1 -1
  263. package/dist/components/nano-algolia-filter.js.map +1 -1
  264. package/dist/components/nano-algolia-pagination.js +0 -5
  265. package/dist/components/nano-algolia-pagination.js.map +1 -1
  266. package/dist/components/nano-algolia-results.js.map +1 -1
  267. package/dist/components/nano-checkbox-group.js +10 -3
  268. package/dist/components/nano-checkbox-group.js.map +1 -1
  269. package/dist/components/nano-checkbox.js +3 -1
  270. package/dist/components/nano-checkbox.js.map +1 -1
  271. package/dist/components/nano-details.js +1 -1
  272. package/dist/components/nano-details.js.map +1 -1
  273. package/dist/components/nano-dialog.js +2 -2
  274. package/dist/components/nano-dialog.js.map +1 -1
  275. package/dist/components/nano-drawer.js +2 -2
  276. package/dist/components/nano-drawer.js.map +1 -1
  277. package/dist/components/nano-field-validator.js +5 -3
  278. package/dist/components/nano-field-validator.js.map +1 -1
  279. package/dist/components/nano-file-upload.js +1 -1
  280. package/dist/components/nano-file-upload.js.map +1 -1
  281. package/dist/components/nano-global-nav.js +119 -152
  282. package/dist/components/nano-global-nav.js.map +1 -1
  283. package/dist/components/nano-global-search-results.js +3 -3
  284. package/dist/components/nano-global-search-results.js.map +1 -1
  285. package/dist/components/nano-hero.js +1 -1
  286. package/dist/components/nano-hero.js.map +1 -1
  287. package/dist/components/nano-menu-drawer.js +1 -1
  288. package/dist/components/nano-menu-drawer.js.map +1 -1
  289. package/dist/components/nano-overflow-nav.js +1 -1
  290. package/dist/components/nano-overflow-nav.js.map +1 -1
  291. package/dist/components/nano-range.js +1 -1
  292. package/dist/components/nano-range.js.map +1 -1
  293. package/dist/components/nano-rating.js +1 -1
  294. package/dist/components/nano-rating.js.map +1 -1
  295. package/dist/components/nano-slides.js +760 -2090
  296. package/dist/components/nano-slides.js.map +1 -1
  297. package/dist/components/nano-tab-group.js +1 -1
  298. package/dist/components/nano-tab-group.js.map +1 -1
  299. package/dist/components/nano-tab.js +1 -1
  300. package/dist/components/nano-tab.js.map +1 -1
  301. package/dist/components/nav-item.js +1 -1
  302. package/dist/components/nav-item.js.map +1 -1
  303. package/dist/components/option.js +1 -1
  304. package/dist/components/option.js.map +1 -1
  305. package/dist/components/page-dots.js +137 -0
  306. package/dist/components/page-dots.js.map +1 -0
  307. package/dist/components/progress-bar.js +1 -1
  308. package/dist/components/progress-bar.js.map +1 -1
  309. package/dist/components/scroll.js +7 -3
  310. package/dist/components/scroll.js.map +1 -1
  311. package/dist/components/select.js +1 -1
  312. package/dist/components/select.js.map +1 -1
  313. package/dist/components/spinner.js +1 -1
  314. package/dist/components/spinner.js.map +1 -1
  315. package/dist/components/sticker.js +2 -1
  316. package/dist/components/sticker.js.map +1 -1
  317. package/dist/components/table.js +1 -1
  318. package/dist/components/table.js.map +1 -1
  319. package/dist/components/tooltip.js +24 -4
  320. package/dist/components/tooltip.js.map +1 -1
  321. package/dist/esm/{algolia-data-ebf2a439.js → algolia-data-1b42827c.js} +2 -2
  322. package/dist/esm/{algolia-data-ebf2a439.js.map → algolia-data-1b42827c.js.map} +1 -1
  323. package/dist/esm/{algoliasearch-lite.esm.browser-04891fdc.js → algoliasearch-lite.esm.browser-d71a28dc.js} +30 -5
  324. package/dist/esm/algoliasearch-lite.esm.browser-d71a28dc.js.map +1 -0
  325. package/dist/esm/{component-store-54df2005.js → component-store-f7eb0a56.js} +2 -2
  326. package/dist/esm/{component-store-54df2005.js.map → component-store-f7eb0a56.js.map} +1 -1
  327. package/dist/esm/fade-1aa7a6db.js +209 -0
  328. package/dist/esm/fade-1aa7a6db.js.map +1 -0
  329. package/dist/esm/{form-control-eb06e009.js → form-control-881fa3af.js} +2 -2
  330. package/dist/esm/{form-control-eb06e009.js.map → form-control-881fa3af.js.map} +1 -1
  331. package/dist/esm/fullscreen-86fa276a.js +131 -0
  332. package/dist/esm/fullscreen-86fa276a.js.map +1 -0
  333. package/dist/esm/{global-f6e05656.js → global-be484e8c.js} +7 -7
  334. package/dist/esm/{global-f6e05656.js.map → global-be484e8c.js.map} +1 -1
  335. package/dist/esm/{index-e8891229.js → index-3003356f.js} +2 -2
  336. package/dist/esm/{index-e8891229.js.map → index-3003356f.js.map} +1 -1
  337. package/dist/esm/{index-06666022.js → index-9695db0a.js} +8 -6
  338. package/dist/esm/index-9695db0a.js.map +1 -0
  339. package/dist/esm/lazyload-994232a6.js +93 -0
  340. package/dist/esm/lazyload-994232a6.js.map +1 -0
  341. package/dist/esm/loader.js +5 -5
  342. package/dist/esm/loader.js.map +1 -1
  343. package/dist/esm/nano-accordion.entry.js +1 -1
  344. package/dist/esm/nano-alert.entry.js +3 -3
  345. package/dist/esm/nano-alert.entry.js.map +1 -1
  346. package/dist/esm/nano-algolia-filter.entry.js +3 -3
  347. package/dist/esm/nano-algolia-filter.entry.js.map +1 -1
  348. package/dist/esm/nano-algolia-pagination.entry.js +2 -7
  349. package/dist/esm/nano-algolia-pagination.entry.js.map +1 -1
  350. package/dist/esm/nano-algolia-results.entry.js +2 -2
  351. package/dist/esm/nano-algolia-results.entry.js.map +1 -1
  352. package/dist/esm/nano-algolia.entry.js +982 -26
  353. package/dist/esm/nano-algolia.entry.js.map +1 -1
  354. package/dist/esm/nano-aspect-ratio.entry.js +1 -1
  355. package/dist/esm/nano-checkbox-group.entry.js +10 -4
  356. package/dist/esm/nano-checkbox-group.entry.js.map +1 -1
  357. package/dist/esm/nano-checkbox.entry.js +4 -2
  358. package/dist/esm/nano-checkbox.entry.js.map +1 -1
  359. package/dist/esm/nano-components.js +5 -5
  360. package/dist/esm/nano-components.js.map +1 -1
  361. package/dist/esm/nano-datalist_3.entry.js +4 -4
  362. package/dist/esm/nano-datalist_3.entry.js.map +1 -1
  363. package/dist/esm/nano-date-input.entry.js +1 -1
  364. package/dist/esm/nano-date-picker.entry.js +2 -2
  365. package/dist/esm/nano-date-picker.entry.js.map +1 -1
  366. package/dist/esm/nano-demo.entry.js +1 -1
  367. package/dist/esm/nano-details.entry.js +2 -2
  368. package/dist/esm/nano-details.entry.js.map +1 -1
  369. package/dist/esm/nano-dialog.entry.js +5 -5
  370. package/dist/esm/nano-dialog.entry.js.map +1 -1
  371. package/dist/esm/nano-drawer.entry.js +5 -5
  372. package/dist/esm/nano-drawer.entry.js.map +1 -1
  373. package/dist/esm/nano-dropdown.entry.js +1 -1
  374. package/dist/esm/nano-dropdown.entry.js.map +1 -1
  375. package/dist/esm/nano-field-validator.entry.js +7 -5
  376. package/dist/esm/nano-field-validator.entry.js.map +1 -1
  377. package/dist/esm/nano-file-upload.entry.js +2 -2
  378. package/dist/esm/nano-file-upload.entry.js.map +1 -1
  379. package/dist/esm/nano-global-nav-user-profile_3.entry.js +4 -4
  380. package/dist/esm/nano-global-nav-user-profile_3.entry.js.map +1 -1
  381. package/dist/esm/nano-global-nav.entry.js +122 -153
  382. package/dist/esm/nano-global-nav.entry.js.map +1 -1
  383. package/dist/esm/nano-global-search-results.entry.js +4 -4
  384. package/dist/esm/nano-global-search-results.entry.js.map +1 -1
  385. package/dist/esm/nano-grid-item.entry.js +1 -1
  386. package/dist/esm/nano-grid_2.entry.js +2 -2
  387. package/dist/esm/nano-grid_2.entry.js.map +1 -1
  388. package/dist/esm/nano-hero.entry.js +2 -2
  389. package/dist/esm/nano-hero.entry.js.map +1 -1
  390. package/dist/esm/nano-icon-button_2.entry.js +24 -4
  391. package/dist/esm/nano-icon-button_2.entry.js.map +1 -1
  392. package/dist/esm/nano-icon.entry.js +4 -4
  393. package/dist/esm/nano-icon.entry.js.map +1 -1
  394. package/dist/esm/nano-input.entry.js +3 -3
  395. package/dist/esm/nano-input.entry.js.map +1 -1
  396. package/dist/esm/nano-menu-drawer.entry.js +2 -2
  397. package/dist/esm/nano-menu-drawer.entry.js.map +1 -1
  398. package/dist/esm/nano-overflow-nav.entry.js +2 -2
  399. package/dist/esm/nano-overflow-nav.entry.js.map +1 -1
  400. package/dist/esm/nano-progress-bar.entry.js +2 -2
  401. package/dist/esm/nano-progress-bar.entry.js.map +1 -1
  402. package/dist/esm/nano-range.entry.js +2 -2
  403. package/dist/esm/nano-range.entry.js.map +1 -1
  404. package/dist/esm/nano-rating.entry.js +2 -2
  405. package/dist/esm/nano-rating.entry.js.map +1 -1
  406. package/dist/esm/nano-resize-observe_2.entry.js +1 -1
  407. package/dist/esm/nano-slide.entry.js +1 -1
  408. package/dist/esm/nano-slides-9908c44d.js +2970 -0
  409. package/dist/esm/nano-slides-9908c44d.js.map +1 -0
  410. package/dist/esm/nano-slides.entry.js +2 -4295
  411. package/dist/esm/nano-slides.entry.js.map +1 -1
  412. package/dist/esm/nano-sortable.entry.js +1 -1
  413. package/dist/esm/nano-spinner.entry.js +2 -2
  414. package/dist/esm/nano-spinner.entry.js.map +1 -1
  415. package/dist/esm/nano-split-pane.entry.js +1 -1
  416. package/dist/esm/nano-sticker.entry.js +3 -2
  417. package/dist/esm/nano-sticker.entry.js.map +1 -1
  418. package/dist/esm/nano-tab-content.entry.js +1 -1
  419. package/dist/esm/nano-tab-group.entry.js +4 -4
  420. package/dist/esm/nano-tab-group.entry.js.map +1 -1
  421. package/dist/esm/nano-tab.entry.js +2 -2
  422. package/dist/esm/nano-tab.entry.js.map +1 -1
  423. package/dist/esm/{nano-table-5af42ba4.js → nano-table-3ab8cd85.js} +5 -5
  424. package/dist/esm/{nano-table-5af42ba4.js.map → nano-table-3ab8cd85.js.map} +1 -1
  425. package/dist/esm/nano-table.entry.js +3 -3
  426. package/dist/esm/page-dots-467ace2e.js +138 -0
  427. package/dist/esm/page-dots-467ace2e.js.map +1 -0
  428. package/dist/esm/{scroll-ec7ac257.js → scroll-ac332213.js} +8 -4
  429. package/dist/esm/scroll-ac332213.js.map +1 -0
  430. package/dist/esm/{table.worker-3cae908c.js → table.worker-75d6e1d2.js} +4 -4
  431. package/dist/esm/table.worker-75d6e1d2.js.map +1 -0
  432. package/dist/nano-components/{p-74a7fc4f.js → active-element-75b7c8a0.js} +1 -1
  433. package/dist/nano-components/algolia-data-1b42827c.js +5 -0
  434. package/dist/nano-components/{p-a26bdb65.js.map → algolia-data-1b42827c.js.map} +1 -1
  435. package/dist/nano-components/algoliasearch-lite.esm.browser-d71a28dc.js +5 -0
  436. package/dist/nano-components/algoliasearch-lite.esm.browser-d71a28dc.js.map +1 -0
  437. package/dist/nano-components/component-store-f7eb0a56.js +5 -0
  438. package/dist/nano-components/{p-dd5687db.js.map → component-store-f7eb0a56.js.map} +1 -1
  439. package/dist/nano-components/{p-cecb9af1.js → date-utils-6b7a6e1f.js} +1 -1
  440. package/dist/nano-components/{p-cdfc507e.js → dom-8599fac1.js} +1 -1
  441. package/dist/nano-components/{p-842cf127.js → drag-1723a4cc.js} +1 -1
  442. package/dist/nano-components/{p-9bfdee71.js → events-6a805b42.js} +1 -1
  443. package/dist/nano-components/fade-1aa7a6db.js +5 -0
  444. package/dist/nano-components/fade-1aa7a6db.js.map +1 -0
  445. package/dist/nano-components/{p-f8f89998.js → focus-visible-8b2c14da.js} +1 -1
  446. package/dist/nano-components/form-control-881fa3af.js +5 -0
  447. package/dist/nano-components/{p-dc805ecc.js.map → form-control-881fa3af.js.map} +1 -1
  448. package/dist/nano-components/fullscreen-86fa276a.js +5 -0
  449. package/dist/nano-components/fullscreen-86fa276a.js.map +1 -0
  450. package/dist/nano-components/{p-d4f6ec9f.js → global-be484e8c.js} +2 -2
  451. package/dist/nano-components/{p-d4f6ec9f.js.map → global-be484e8c.js.map} +1 -1
  452. package/dist/nano-components/index-3003356f.js +5 -0
  453. package/dist/nano-components/{p-70747f20.js.map → index-3003356f.js.map} +1 -1
  454. package/dist/nano-components/{p-d6a04b3a.js → index-9695db0a.js} +2 -2
  455. package/dist/nano-components/{p-d6a04b3a.js.map → index-9695db0a.js.map} +1 -1
  456. package/dist/nano-components/{p-bb07c3d0.js → index-f626f476.js} +1 -1
  457. package/dist/nano-components/index.esm.js +1 -1
  458. package/dist/nano-components/index.esm.js.map +1 -1
  459. package/dist/nano-components/lazyload-994232a6.js +5 -0
  460. package/dist/nano-components/lazyload-994232a6.js.map +1 -0
  461. package/dist/nano-components/{p-2155fc2c.js → local-my-account-6662da72.js} +1 -1
  462. package/dist/nano-components/{p-ee045579.js → math-c02ddfda.js} +1 -1
  463. package/dist/nano-components/modal-bd9638c0.js +5 -0
  464. package/dist/nano-components/{p-2234694a.js.map → modal-bd9638c0.js.map} +1 -1
  465. package/dist/nano-components/nano-accordion.entry.js +5 -0
  466. package/dist/nano-components/{p-9f60ff14.entry.js.map → nano-accordion.entry.js.map} +1 -1
  467. package/dist/nano-components/nano-alert.entry.js +5 -0
  468. package/dist/nano-components/{p-191352c4.entry.js.map → nano-alert.entry.js.map} +1 -1
  469. package/dist/nano-components/nano-algolia-filter.entry.js +5 -0
  470. package/dist/nano-components/nano-algolia-filter.entry.js.map +1 -0
  471. package/dist/nano-components/nano-algolia-pagination.entry.js +5 -0
  472. package/dist/nano-components/nano-algolia-pagination.entry.js.map +1 -0
  473. package/dist/nano-components/nano-algolia-results.entry.js +5 -0
  474. package/dist/nano-components/nano-algolia-results.entry.js.map +1 -0
  475. package/dist/nano-components/nano-algolia.entry.js +5 -0
  476. package/dist/nano-components/nano-algolia.entry.js.map +1 -0
  477. package/dist/nano-components/nano-aspect-ratio.entry.js +5 -0
  478. package/dist/nano-components/{p-87329424.entry.js.map → nano-aspect-ratio.entry.js.map} +1 -1
  479. package/dist/nano-components/nano-checkbox-group.entry.js +5 -0
  480. package/dist/nano-components/nano-checkbox-group.entry.js.map +1 -0
  481. package/dist/nano-components/nano-checkbox.entry.js +5 -0
  482. package/dist/nano-components/nano-checkbox.entry.js.map +1 -0
  483. package/dist/nano-components/nano-components.css +1 -1
  484. package/dist/nano-components/nano-components.esm.js +1 -1
  485. package/dist/nano-components/nano-components.esm.js.map +1 -1
  486. package/dist/nano-components/nano-datalist_3.entry.js +5 -0
  487. package/dist/nano-components/nano-datalist_3.entry.js.map +1 -0
  488. package/dist/nano-components/nano-date-input.entry.js +5 -0
  489. package/dist/nano-components/{p-d4e44f93.entry.js.map → nano-date-input.entry.js.map} +1 -1
  490. package/dist/nano-components/nano-date-picker.entry.js +5 -0
  491. package/dist/nano-components/{p-efd3e121.entry.js.map → nano-date-picker.entry.js.map} +1 -1
  492. package/dist/nano-components/nano-demo.entry.js +5 -0
  493. package/dist/nano-components/{p-e98835e2.entry.js.map → nano-demo.entry.js.map} +1 -1
  494. package/dist/nano-components/nano-details.entry.js +5 -0
  495. package/dist/nano-components/nano-details.entry.js.map +1 -0
  496. package/dist/nano-components/nano-dialog.entry.js +5 -0
  497. package/dist/nano-components/{p-79fff4fd.entry.js.map → nano-dialog.entry.js.map} +1 -1
  498. package/dist/nano-components/nano-drawer.entry.js +5 -0
  499. package/dist/nano-components/nano-drawer.entry.js.map +1 -0
  500. package/dist/nano-components/nano-dropdown.entry.js +5 -0
  501. package/dist/nano-components/nano-dropdown.entry.js.map +1 -0
  502. package/dist/nano-components/nano-field-validator.entry.js +5 -0
  503. package/dist/nano-components/nano-field-validator.entry.js.map +1 -0
  504. package/dist/nano-components/nano-file-upload.entry.js +5 -0
  505. package/dist/nano-components/nano-file-upload.entry.js.map +1 -0
  506. package/dist/nano-components/nano-global-nav-user-profile_3.entry.js +5 -0
  507. package/dist/nano-components/nano-global-nav-user-profile_3.entry.js.map +1 -0
  508. package/dist/nano-components/nano-global-nav.entry.js +5 -0
  509. package/dist/nano-components/nano-global-nav.entry.js.map +1 -0
  510. package/dist/nano-components/nano-global-search-results.entry.js +5 -0
  511. package/dist/nano-components/nano-global-search-results.entry.js.map +1 -0
  512. package/dist/nano-components/nano-grid-item.entry.js +5 -0
  513. package/dist/nano-components/{p-9c290055.entry.js.map → nano-grid-item.entry.js.map} +1 -1
  514. package/dist/nano-components/nano-grid_2.entry.js +5 -0
  515. package/dist/nano-components/{p-7c82af28.entry.js.map → nano-grid_2.entry.js.map} +1 -1
  516. package/dist/nano-components/nano-hero.entry.js +5 -0
  517. package/dist/nano-components/{p-328ef9d3.entry.js.map → nano-hero.entry.js.map} +1 -1
  518. package/dist/nano-components/nano-icon-button_2.entry.js +5 -0
  519. package/dist/nano-components/nano-icon-button_2.entry.js.map +1 -0
  520. package/dist/nano-components/nano-icon.entry.js +5 -0
  521. package/dist/nano-components/nano-icon.entry.js.map +1 -0
  522. package/dist/nano-components/nano-input.entry.js +5 -0
  523. package/dist/nano-components/nano-input.entry.js.map +1 -0
  524. package/dist/nano-components/nano-menu-drawer.entry.js +5 -0
  525. package/dist/nano-components/nano-menu-drawer.entry.js.map +1 -0
  526. package/dist/nano-components/nano-overflow-nav.entry.js +5 -0
  527. package/dist/nano-components/nano-overflow-nav.entry.js.map +1 -0
  528. package/dist/nano-components/nano-progress-bar.entry.js +5 -0
  529. package/dist/nano-components/nano-progress-bar.entry.js.map +1 -0
  530. package/dist/nano-components/nano-range.entry.js +5 -0
  531. package/dist/nano-components/nano-range.entry.js.map +1 -0
  532. package/dist/nano-components/nano-rating.entry.js +5 -0
  533. package/dist/nano-components/nano-rating.entry.js.map +1 -0
  534. package/dist/nano-components/nano-resize-observe_2.entry.js +5 -0
  535. package/dist/nano-components/{p-e6a0675e.entry.js.map → nano-resize-observe_2.entry.js.map} +1 -1
  536. package/dist/nano-components/nano-slide.entry.js +5 -0
  537. package/dist/nano-components/{p-3d8fb8a1.entry.js.map → nano-slide.entry.js.map} +1 -1
  538. package/dist/nano-components/nano-slides-9908c44d.js +20 -0
  539. package/dist/nano-components/nano-slides-9908c44d.js.map +1 -0
  540. package/dist/nano-components/nano-slides.entry.js +5 -0
  541. package/dist/nano-components/nano-sortable.entry.js +5 -0
  542. package/dist/nano-components/{p-3ae362ae.entry.js.map → nano-sortable.entry.js.map} +1 -1
  543. package/dist/nano-components/nano-spinner.entry.js +5 -0
  544. package/dist/nano-components/{p-9925e504.entry.js.map → nano-spinner.entry.js.map} +1 -1
  545. package/dist/nano-components/nano-split-pane.entry.js +5 -0
  546. package/dist/nano-components/{p-6c4171fa.entry.js.map → nano-split-pane.entry.js.map} +1 -1
  547. package/dist/nano-components/nano-sticker.entry.js +5 -0
  548. package/dist/nano-components/nano-sticker.entry.js.map +1 -0
  549. package/dist/nano-components/nano-tab-content.entry.js +5 -0
  550. package/dist/nano-components/{p-3f40e370.entry.js.map → nano-tab-content.entry.js.map} +1 -1
  551. package/dist/nano-components/nano-tab-group.entry.js +5 -0
  552. package/dist/nano-components/nano-tab-group.entry.js.map +1 -0
  553. package/dist/nano-components/nano-tab.entry.js +5 -0
  554. package/dist/nano-components/{p-3cac5f6d.entry.js.map → nano-tab.entry.js.map} +1 -1
  555. package/dist/nano-components/nano-table-3ab8cd85.js +5 -0
  556. package/dist/nano-components/nano-table-3ab8cd85.js.map +1 -0
  557. package/dist/nano-components/nano-table.entry.js +5 -0
  558. package/dist/nano-components/page-dots-467ace2e.js +5 -0
  559. package/dist/nano-components/page-dots-467ace2e.js.map +1 -0
  560. package/dist/nano-components/{p-cd1fd454.js → popover-e5e7a641.js} +1 -1
  561. package/dist/nano-components/scroll-ac332213.js +5 -0
  562. package/dist/nano-components/scroll-ac332213.js.map +1 -0
  563. package/dist/nano-components/{p-dc565459.js → slot-8126e238.js} +1 -1
  564. package/dist/nano-components/{p-f88fa15c.js → tabbable-26a66a22.js} +1 -1
  565. package/dist/nano-components/table.worker-75d6e1d2.js +5 -0
  566. package/dist/nano-components/{p-411bb8f1.js → theme-82feb8cf.js} +1 -1
  567. package/dist/nano-components/{p-7bff5224.js → throttle-ac4fcefa.js} +1 -1
  568. package/dist/nano-components/{p-c3e8e3f9.js → transitions-fb09eb32.js} +1 -1
  569. package/dist/themes/nanopore.cn.css +1 -1
  570. package/dist/themes/nanopore.cn.css.map +1 -1
  571. package/dist/themes/nanopore.css +1 -1
  572. package/dist/themes/nanopore.css.map +1 -1
  573. package/dist/types/components/algolia/algolia-data.d.ts +1 -1
  574. package/dist/types/components/algolia/algolia-filter.d.ts +1 -1
  575. package/dist/types/components/algolia/algolia-pagination.d.ts +1 -1
  576. package/dist/types/components/algolia/algolia-results.d.ts +1 -1
  577. package/dist/types/components/algolia/algolia.d.ts +1 -7
  578. package/dist/types/components/algolia/lib/squirrelly/browser.d.ts +6 -0
  579. package/dist/types/components/algolia/lib/squirrelly/compile-string.d.ts +5 -0
  580. package/dist/types/components/algolia/lib/squirrelly/compile.d.ts +3 -0
  581. package/dist/types/components/algolia/lib/squirrelly/config.d.ts +48 -0
  582. package/dist/types/components/algolia/lib/squirrelly/container-utils.d.ts +8 -0
  583. package/dist/types/components/algolia/lib/squirrelly/containers.d.ts +18 -0
  584. package/dist/types/components/algolia/lib/squirrelly/err.d.ts +6 -0
  585. package/dist/types/components/algolia/lib/squirrelly/parse.d.ts +23 -0
  586. package/dist/types/components/algolia/lib/squirrelly/render.d.ts +3 -0
  587. package/dist/types/components/algolia/lib/squirrelly/storage.d.ts +13 -0
  588. package/dist/types/components/algolia/lib/squirrelly/utils.d.ts +8 -0
  589. package/dist/types/components/algolia/lib/template.d.ts +2 -0
  590. package/dist/types/components/checkbox/checkbox-group.d.ts +5 -0
  591. package/dist/types/components/global-nav/global-nav.d.ts +15 -20
  592. package/dist/types/components/slides/lib/js/animate.d.ts +2 -0
  593. package/dist/types/components/slides/lib/js/cell.d.ts +1 -0
  594. package/dist/types/components/slides/lib/js/drag.d.ts +1 -0
  595. package/dist/types/components/slides/lib/js/fade.d.ts +1 -0
  596. package/dist/types/components/slides/lib/js/flickity.d.ts +23 -0
  597. package/dist/types/components/slides/lib/js/fullscreen.d.ts +1 -0
  598. package/dist/types/components/slides/lib/js/index.d.ts +5 -0
  599. package/dist/types/components/slides/lib/js/lazyload.d.ts +1 -0
  600. package/dist/types/components/slides/lib/js/page-dots.d.ts +1 -0
  601. package/dist/types/components/slides/lib/js/player.d.ts +1 -0
  602. package/dist/types/components/slides/lib/js/prev-next-button.d.ts +1 -0
  603. package/dist/types/components/slides/lib/js/slide.d.ts +1 -0
  604. package/dist/types/components/slides/lib/js/utils/event-emitter.d.ts +1 -0
  605. package/dist/types/components/slides/lib/js/utils/gestures.d.ts +26 -0
  606. package/dist/types/components/slides/lib/js/utils/get-size.d.ts +6 -0
  607. package/dist/types/components/slides/lib/js/utils/utils.d.ts +5 -0
  608. package/dist/types/components/slides/slides-interface.d.ts +17 -7
  609. package/dist/types/components/slides/slides.d.ts +5 -0
  610. package/dist/types/components.d.ts +10 -10
  611. package/dist/types/utils/scroll.d.ts +5 -1
  612. package/docs-json.json +33 -24
  613. package/docs-vscode.json +4 -0
  614. package/hydrate/index.js +4147 -3953
  615. package/package.json +5 -8
  616. package/dist/cjs/_commonjsHelpers-29614748.js +0 -30
  617. package/dist/cjs/_commonjsHelpers-29614748.js.map +0 -1
  618. package/dist/cjs/algoliasearch-lite.esm.browser-992a2eff.js.map +0 -1
  619. package/dist/cjs/index-1d3ebe1a.js.map +0 -1
  620. package/dist/cjs/scroll-fc1b8387.js.map +0 -1
  621. package/dist/cjs/table.worker-3df34efe.js.map +0 -1
  622. package/dist/collection/components/slides/lib/js/add-remove-cell.js +0 -128
  623. package/dist/collection/components/slides/lib/js/images-loaded.js +0 -24
  624. package/dist/collection/components/slides/slides-interface.js +0 -2
  625. package/dist/collection/components/slides/slides-interface.js.map +0 -1
  626. package/dist/collection/utils/template.js.map +0 -1
  627. package/dist/components/_commonjsHelpers.js +0 -26
  628. package/dist/components/_commonjsHelpers.js.map +0 -1
  629. package/dist/esm/_commonjsHelpers-04a0e019.js +0 -26
  630. package/dist/esm/_commonjsHelpers-04a0e019.js.map +0 -1
  631. package/dist/esm/algoliasearch-lite.esm.browser-04891fdc.js.map +0 -1
  632. package/dist/esm/index-06666022.js.map +0 -1
  633. package/dist/esm/scroll-ec7ac257.js.map +0 -1
  634. package/dist/esm/table.worker-3cae908c.js.map +0 -1
  635. package/dist/nano-components/p-0563e812.entry.js +0 -5
  636. package/dist/nano-components/p-0563e812.entry.js.map +0 -1
  637. package/dist/nano-components/p-0bc40dd1.entry.js +0 -5
  638. package/dist/nano-components/p-0bc40dd1.entry.js.map +0 -1
  639. package/dist/nano-components/p-0e0f07f0.entry.js +0 -5
  640. package/dist/nano-components/p-0e0f07f0.entry.js.map +0 -1
  641. package/dist/nano-components/p-0e4da739.entry.js +0 -5
  642. package/dist/nano-components/p-0e4da739.entry.js.map +0 -1
  643. package/dist/nano-components/p-16e75af9.entry.js +0 -5
  644. package/dist/nano-components/p-16e75af9.entry.js.map +0 -1
  645. package/dist/nano-components/p-17eb456c.entry.js +0 -5
  646. package/dist/nano-components/p-17eb456c.entry.js.map +0 -1
  647. package/dist/nano-components/p-191352c4.entry.js +0 -5
  648. package/dist/nano-components/p-1987f7a9.js +0 -5
  649. package/dist/nano-components/p-1a55e282.entry.js +0 -5
  650. package/dist/nano-components/p-1a55e282.entry.js.map +0 -1
  651. package/dist/nano-components/p-2234694a.js +0 -5
  652. package/dist/nano-components/p-2a105609.entry.js +0 -5
  653. package/dist/nano-components/p-2a105609.entry.js.map +0 -1
  654. package/dist/nano-components/p-2c0218e6.entry.js +0 -5
  655. package/dist/nano-components/p-2c0218e6.entry.js.map +0 -1
  656. package/dist/nano-components/p-328ef9d3.entry.js +0 -5
  657. package/dist/nano-components/p-359b7cd2.entry.js +0 -5
  658. package/dist/nano-components/p-359b7cd2.entry.js.map +0 -1
  659. package/dist/nano-components/p-36c3ded8.entry.js +0 -5
  660. package/dist/nano-components/p-36c3ded8.entry.js.map +0 -1
  661. package/dist/nano-components/p-3ae362ae.entry.js +0 -5
  662. package/dist/nano-components/p-3cac5f6d.entry.js +0 -5
  663. package/dist/nano-components/p-3d8fb8a1.entry.js +0 -5
  664. package/dist/nano-components/p-3eeaba47.entry.js +0 -5
  665. package/dist/nano-components/p-3eeaba47.entry.js.map +0 -1
  666. package/dist/nano-components/p-3f40e370.entry.js +0 -5
  667. package/dist/nano-components/p-51133e62.entry.js +0 -5
  668. package/dist/nano-components/p-51133e62.entry.js.map +0 -1
  669. package/dist/nano-components/p-54c4a2f5.entry.js +0 -5
  670. package/dist/nano-components/p-54c4a2f5.entry.js.map +0 -1
  671. package/dist/nano-components/p-5fc3035d.entry.js +0 -5
  672. package/dist/nano-components/p-5fc3035d.entry.js.map +0 -1
  673. package/dist/nano-components/p-650aa197.entry.js +0 -5
  674. package/dist/nano-components/p-650aa197.entry.js.map +0 -1
  675. package/dist/nano-components/p-67ab5a5f.entry.js +0 -5
  676. package/dist/nano-components/p-67ab5a5f.entry.js.map +0 -1
  677. package/dist/nano-components/p-688f1a55.entry.js +0 -5
  678. package/dist/nano-components/p-688f1a55.entry.js.map +0 -1
  679. package/dist/nano-components/p-6c4171fa.entry.js +0 -5
  680. package/dist/nano-components/p-70747f20.js +0 -5
  681. package/dist/nano-components/p-7670058b.entry.js +0 -5
  682. package/dist/nano-components/p-7670058b.entry.js.map +0 -1
  683. package/dist/nano-components/p-79fff4fd.entry.js +0 -5
  684. package/dist/nano-components/p-7c82af28.entry.js +0 -5
  685. package/dist/nano-components/p-87329424.entry.js +0 -5
  686. package/dist/nano-components/p-8fe51abf.js +0 -5
  687. package/dist/nano-components/p-935968b8.entry.js +0 -23
  688. package/dist/nano-components/p-935968b8.entry.js.map +0 -1
  689. package/dist/nano-components/p-9925e504.entry.js +0 -5
  690. package/dist/nano-components/p-9c290055.entry.js +0 -5
  691. package/dist/nano-components/p-9f60ff14.entry.js +0 -5
  692. package/dist/nano-components/p-a225e976.entry.js +0 -5
  693. package/dist/nano-components/p-a225e976.entry.js.map +0 -1
  694. package/dist/nano-components/p-a26bdb65.js +0 -5
  695. package/dist/nano-components/p-abd11243.entry.js +0 -5
  696. package/dist/nano-components/p-abd11243.entry.js.map +0 -1
  697. package/dist/nano-components/p-b27b56d3.js +0 -5
  698. package/dist/nano-components/p-b27b56d3.js.map +0 -1
  699. package/dist/nano-components/p-c80336b2.entry.js +0 -5
  700. package/dist/nano-components/p-c80336b2.entry.js.map +0 -1
  701. package/dist/nano-components/p-cad86fb8.js +0 -5
  702. package/dist/nano-components/p-cad86fb8.js.map +0 -1
  703. package/dist/nano-components/p-d4e44f93.entry.js +0 -5
  704. package/dist/nano-components/p-dc4020f8.js +0 -5
  705. package/dist/nano-components/p-dc4020f8.js.map +0 -1
  706. package/dist/nano-components/p-dc6cb252.entry.js +0 -5
  707. package/dist/nano-components/p-dc6cb252.entry.js.map +0 -1
  708. package/dist/nano-components/p-dc805ecc.js +0 -5
  709. package/dist/nano-components/p-dd5687db.js +0 -5
  710. package/dist/nano-components/p-e6a0675e.entry.js +0 -5
  711. package/dist/nano-components/p-e98835e2.entry.js +0 -5
  712. package/dist/nano-components/p-efd3e121.entry.js +0 -5
  713. package/dist/nano-components/p-f73f52ed.entry.js +0 -5
  714. package/dist/nano-components/p-f73f52ed.entry.js.map +0 -1
  715. package/dist/nano-components/p-fbde7010.entry.js +0 -5
  716. package/dist/nano-components/p-fcbc9122.entry.js +0 -5
  717. package/dist/nano-components/p-fcbc9122.entry.js.map +0 -1
  718. package/dist/types/utils/template.d.ts +0 -2
  719. /package/dist/nano-components/{p-74a7fc4f.js.map → active-element-75b7c8a0.js.map} +0 -0
  720. /package/dist/nano-components/{p-cecb9af1.js.map → date-utils-6b7a6e1f.js.map} +0 -0
  721. /package/dist/nano-components/{p-cdfc507e.js.map → dom-8599fac1.js.map} +0 -0
  722. /package/dist/nano-components/{p-842cf127.js.map → drag-1723a4cc.js.map} +0 -0
  723. /package/dist/nano-components/{p-9bfdee71.js.map → events-6a805b42.js.map} +0 -0
  724. /package/dist/nano-components/{p-f8f89998.js.map → focus-visible-8b2c14da.js.map} +0 -0
  725. /package/dist/nano-components/{p-bb07c3d0.js.map → index-f626f476.js.map} +0 -0
  726. /package/dist/nano-components/{p-1987f7a9.js.map → local-my-account-6662da72.js.map} +0 -0
  727. /package/dist/nano-components/{p-ee045579.js.map → math-c02ddfda.js.map} +0 -0
  728. /package/dist/nano-components/{p-2155fc2c.js.map → nano-slides.entry.js.map} +0 -0
  729. /package/dist/nano-components/{p-8fe51abf.js.map → nano-table.entry.js.map} +0 -0
  730. /package/dist/nano-components/{p-cd1fd454.js.map → popover-e5e7a641.js.map} +0 -0
  731. /package/dist/nano-components/{p-dc565459.js.map → slot-8126e238.js.map} +0 -0
  732. /package/dist/nano-components/{p-f88fa15c.js.map → tabbable-26a66a22.js.map} +0 -0
  733. /package/dist/nano-components/{p-fbde7010.entry.js.map → table.worker-75d6e1d2.js.map} +0 -0
  734. /package/dist/nano-components/{p-f258383d.js → table.worker-f258383d.js} +0 -0
  735. /package/dist/nano-components/{p-411bb8f1.js.map → theme-82feb8cf.js.map} +0 -0
  736. /package/dist/nano-components/{p-7bff5224.js.map → throttle-ac4fcefa.js.map} +0 -0
  737. /package/dist/nano-components/{p-c3e8e3f9.js.map → transitions-fb09eb32.js.map} +0 -0
@@ -1,13 +1,12 @@
1
1
  /*!
2
2
  * Web Components for Nanopore digital Web Apps
3
3
  */
4
- import { g as getElement, e as getRenderingRef, r as registerInstance, c as createEvent, w as writeTask, d as readTask, h, a as Host } from './index-06666022.js';
5
- import { a as algoliasearch } from './algoliasearch-lite.esm.browser-04891fdc.js';
4
+ import { g as getElement, e as getRenderingRef, r as registerInstance, c as createEvent, w as writeTask, d as readTask, h, a as Host } from './index-9695db0a.js';
5
+ import { a as algoliasearch } from './algoliasearch-lite.esm.browser-d71a28dc.js';
6
6
  import { g as getDirectChildren } from './dom-8599fac1.js';
7
- import { C as ComponentStore } from './component-store-54df2005.js';
8
- import { g as getDefaultExportFromCjs, c as createCommonjsModule, a as commonjsGlobal } from './_commonjsHelpers-04a0e019.js';
7
+ import { C as ComponentStore } from './component-store-f7eb0a56.js';
9
8
  import { d as debounce } from './throttle-ac4fcefa.js';
10
- import { S as SearchChangeEvent } from './algolia-data-ebf2a439.js';
9
+ import { S as SearchChangeEvent } from './algolia-data-1b42827c.js';
11
10
 
12
11
  var multiverse = new Map();
13
12
  var updateConsumer = function (_a, state) {
@@ -130,19 +129,977 @@ class PromiseQueue {
130
129
  }
131
130
  PromiseQueue.pendingPromise = false;
132
131
 
133
- var squirrelly_min = createCommonjsModule(function (module, exports) {
134
- !function(e,t){t(exports);}(commonjsGlobal,(function(e){function t(e){var n,r,a=new Error(e);return n=a,r=t.prototype,Object.setPrototypeOf?Object.setPrototypeOf(n,r):n.__proto__=r,a}function n(e,n,r){var a=n.slice(0,r).split(/\n/),i=a.length,s=a[i-1].length+1;throw t(e+=" at line "+i+" col "+s+":\n\n "+n.split(/\n/)[i-1]+"\n "+Array(s).join(" ")+"^")}t.prototype=Object.create(Error.prototype,{name:{value:"Squirrelly Error",enumerable:!1}});var r=new Function("return this")().Promise,a=!1;try{a=new Function("return (async function(){}).constructor")();}catch(e){if(!(e instanceof SyntaxError))throw e}function i(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function s(e,t,n){for(var r in t)i(t,r)&&(null==t[r]||"object"!=typeof t[r]||"storage"!==r&&"prefixes"!==r||n?e[r]=t[r]:e[r]=s({},t[r]));return e}var c=/^async +/,o=/`(?:\\[\s\S]|\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})*}|(?!\${)[^\\`])*`/g,l=/'(?:\\[\s\w"'\\`]|[^\n\r'\\])*?'/g,f=/"(?:\\[\s\w"'\\`]|[^\n\r"\\])*?"/g,u=/[.*+\-?^${}()|[\]\\]/g;function p(e){return u.test(e)?e.replace(u,"\\$&"):e}function h(e,r){r.rmWhitespace&&(e=e.replace(/[\r\n]+/g,"\n").replace(/^\s+|\s+$/gm,"")),o.lastIndex=0,l.lastIndex=0,f.lastIndex=0;var a=r.prefixes,i=[a.h,a.b,a.i,a.r,a.c,a.e].reduce((function(e,t){return e&&t?e+"|"+p(t):t?p(t):e}),""),s=new RegExp("([|()]|=>)|('|\"|`|\\/\\*)|\\s*((\\/)?(-|_)?"+p(r.tags[1])+")","g"),u=new RegExp("([^]*?)"+p(r.tags[0])+"(-|_)?\\s*("+i+")?\\s*","g"),h=0,d=!1;function g(t,a){var i,p={f:[]},g=0,v="c";function m(t){var a=e.slice(h,t),i=a.trim();if("f"===v)"safe"===i?p.raw=!0:r.async&&c.test(i)?(i=i.replace(c,""),p.f.push([i,"",!0])):p.f.push([i,""]);else if("fp"===v)p.f[p.f.length-1][1]+=i;else if("err"===v){if(i){var s=a.search(/\S/);n("invalid syntax",e,h+s);}}else p[v]=i;h=t+1;}for("h"===a||"b"===a||"c"===a?v="n":"r"===a&&(p.raw=!0,a="i"),s.lastIndex=h;null!==(i=s.exec(e));){var y=i[1],x=i[2],b=i[3],w=i[4],F=i[5],S=i.index;if(y)"("===y?(0===g&&("n"===v?(m(S),v="p"):"f"===v&&(m(S),v="fp")),g++):")"===y?0===--g&&"c"!==v&&(m(S),v="err"):0===g&&"|"===y?(m(S),v="f"):"=>"===y&&(m(S),h+=1,v="res");else if(x){if("/*"===x){var I=e.indexOf("*/",s.lastIndex);-1===I&&n("unclosed comment",e,i.index),s.lastIndex=I+2;}else if("'"===x){l.lastIndex=i.index,l.exec(e)?s.lastIndex=l.lastIndex:n("unclosed string",e,i.index);}else if('"'===x){f.lastIndex=i.index,f.exec(e)?s.lastIndex=f.lastIndex:n("unclosed string",e,i.index);}else if("`"===x){o.lastIndex=i.index,o.exec(e)?s.lastIndex=o.lastIndex:n("unclosed string",e,i.index);}}else if(b)return m(S),h=S+i[0].length,u.lastIndex=h,d=F,w&&"h"===a&&(a="s"),p.t=a,p}return n("unclosed tag",e,t),p}var v=function i(s,o){s.b=[],s.d=[];var l,f=!1,p=[];function v(e,t){e&&(e=function(e,t,n,r){var a,i;return "string"==typeof t.autoTrim?a=i=t.autoTrim:Array.isArray(t.autoTrim)&&(a=t.autoTrim[1],i=t.autoTrim[0]),(n||!1===n)&&(a=n),(r||!1===r)&&(i=r),"slurp"===a&&"slurp"===i?e.trim():("_"===a||"slurp"===a?e=String.prototype.trimLeft?e.trimLeft():e.replace(/^[\s\uFEFF\xA0]+/,""):"-"!==a&&"nl"!==a||(e=e.replace(/^(?:\n|\r|\r\n)/,"")),"_"===i||"slurp"===i?e=String.prototype.trimRight?e.trimRight():e.replace(/[\s\uFEFF\xA0]+$/,""):"-"!==i&&"nl"!==i||(e=e.replace(/(?:\n|\r|\r\n)$/,"")),e)}(e,r,d,t))&&(e=e.replace(/\\|'/g,"\\$&").replace(/\r\n|\n|\r/g,"\\n"),p.push(e));}for(;null!==(l=u.exec(e));){var m,y=l[1],x=l[2],b=l[3]||"";for(var w in a)if(a[w]===b){m=w;break}v(y,x),h=l.index+l[0].length,m||n("unrecognized tag type: "+b,e,h);var F=g(l.index,m),S=F.t;if("h"===S){var I=F.n||"";r.async&&c.test(I)&&(F.a=!0,F.n=I.replace(c,"")),F=i(F),p.push(F);}else if("c"===S){if(s.n===F.n)return f?(f.d=p,s.b.push(f)):s.d=p,s;n("Helper start and end don't match",e,l.index+l[0].length);}else if("b"===S){f?(f.d=p,s.b.push(f)):s.d=p;var R=F.n||"";r.async&&c.test(R)&&(F.a=!0,F.n=R.replace(c,"")),f=F,p=[];}else if("s"===S){var T=F.n||"";r.async&&c.test(T)&&(F.a=!0,F.n=T.replace(c,"")),p.push(F);}else p.push(F);}if(!o)throw t('unclosed helper "'+s.n+'"');return v(e.slice(h,e.length),!1),s.d=p,s}({f:[]},!0);if(r.plugins)for(var m=0;m<r.plugins.length;m++){var y=r.plugins[m];y.processAST&&(v.d=y.processAST(v.d,r));}return v.d}function d(e,t){var n=h(e,t),r="var tR='';"+(t.useWith?"with("+t.varName+"||{}){":"")+x(n,t)+"if(cb){cb(null,tR)} return tR"+(t.useWith?"}":"");if(t.plugins)for(var a=0;a<t.plugins.length;a++){var i=t.plugins[a];i.processFnString&&(r=i.processFnString(r,t));}return r}function g(e,t){for(var n=0;n<t.length;n++){var r=t[n][0],a=t[n][1];e=(t[n][2]?"await ":"")+"c.l('F','"+r+"')("+e,a&&(e+=","+a),e+=")";}return e}function v(e,t,n,r,a,i){var s="{exec:"+(a?"async ":"")+y(n,t,e)+",params:["+r+"]";return i&&(s+=",name:'"+i+"'"),a&&(s+=",async:true"),s+="}"}function m(e,t){for(var n="[",r=0;r<e.length;r++){var a=e[r];n+=v(t,a.res||"",a.d,a.p||"",a.a,a.n),r<e.length&&(n+=",");}return n+="]"}function y(e,t,n){return "function("+t+"){var tR='';"+x(e,n)+"return tR}"}function x(e,t){for(var n=0,r=e.length,a="";n<r;n++){var i=e[n];if("string"==typeof i){a+="tR+='"+i+"';";}else {var s=i.t,c=i.c||"",o=i.f,l=i.n||"",f=i.p||"",u=i.res||"",p=i.b,h=!!i.a;if("i"===s){t.defaultFilter&&(c="c.l('F','"+t.defaultFilter+"')("+c+")");var d=g(c,o);!i.raw&&t.autoEscape&&(d="c.l('F','e')("+d+")"),a+="tR+="+d+";";}else if("h"===s)if(t.storage.nativeHelpers.get(l))a+=t.storage.nativeHelpers.get(l)(i,t);else {var y=(h?"await ":"")+"c.l('H','"+l+"')("+v(t,u,i.d,f,h);y+=p?","+m(p,t):",[]",a+="tR+="+g(y+=",c)",o)+";";}else "s"===s?a+="tR+="+g((h?"await ":"")+"c.l('H','"+l+"')({params:["+f+"]},[],c)",o)+";":"e"===s&&(a+=c+"\n");}}return a}var b=function(){function e(e){this.cache=e;}return e.prototype.define=function(e,t){this.cache[e]=t;},e.prototype.get=function(e){return this.cache[e]},e.prototype.remove=function(e){delete this.cache[e];},e.prototype.reset=function(){this.cache={};},e.prototype.load=function(e){s(this.cache,e,!0);},e}();function w(e,n,r,a){if(n&&n.length>0)throw t((a?"Native":"")+"Helper '"+e+"' doesn't accept blocks");if(r&&r.length>0)throw t((a?"Native":"")+"Helper '"+e+"' doesn't accept filters")}var F={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};function S(e){return F[e]}var I=new b({}),R=new b({each:function(e,t){var n="",r=e.params[0];if(w("each",t,!1),e.async)return new Promise((function(t){!function e(t,n,r,a,i){r(t[n],n).then((function(s){a+=s,n===t.length-1?i(a):e(t,n+1,r,a,i);}));}(r,0,e.exec,n,t);}));for(var a=0;a<r.length;a++)n+=e.exec(r[a],a);return n},foreach:function(e,t){var n=e.params[0];if(w("foreach",t,!1),e.async)return new Promise((function(t){!function e(t,n,r,a,i,s){a(n[r],t[n[r]]).then((function(c){i+=c,r===n.length-1?s(i):e(t,n,r+1,a,i,s);}));}(n,Object.keys(n),0,e.exec,"",t);}));var r="";for(var a in n)i(n,a)&&(r+=e.exec(a,n[a]));return r},include:function(e,n,r){w("include",n,!1);var a=r.storage.templates.get(e.params[0]);if(!a)throw t('Could not fetch template "'+e.params[0]+'"');return a(e.params[1],r)},extends:function(e,n,r){var a=e.params[1]||{};a.content=e.exec();for(var i=0;i<n.length;i++){var s=n[i];a[s.name]=s.exec();}var c=r.storage.templates.get(e.params[0]);if(!c)throw t('Could not fetch template "'+e.params[0]+'"');return c(a,r)},useScope:function(e,t){return w("useScope",t,!1),e.exec(e.params[0])}}),T=new b({if:function(e,t){w("if",!1,e.f,!0);var n="if("+e.p+"){"+x(e.d,t)+"}";if(e.b)for(var r=0;r<e.b.length;r++){var a=e.b[r];"else"===a.n?n+="else{"+x(a.d,t)+"}":"elif"===a.n&&(n+="else if("+a.p+"){"+x(a.d,t)+"}");}return n},try:function(e,n){if(w("try",!1,e.f,!0),!e.b||1!==e.b.length||"catch"!==e.b[0].n)throw t("native helper 'try' only accepts 1 block, 'catch'");var r="try{"+x(e.d,n)+"}",a=e.b[0];return r+="catch"+(a.res?"("+a.res+")":"")+"{"+x(a.d,n)+"}"},block:function(e,t){return w("block",e.b,e.f,!0),"if(!"+t.varName+"["+e.p+"]){tR+=("+y(e.d,"",t)+")()}else{tR+="+t.varName+"["+e.p+"]}"}}),E=new b({e:function(e){var t=String(e);return /[&<>"']/.test(t)?t.replace(/[&<>"']/g,S):t}}),j={varName:"it",autoTrim:[!1,"nl"],autoEscape:!0,defaultFilter:!1,tags:["{{","}}"],l:function(e,n){if("H"===e){var r=this.storage.helpers.get(n);if(r)return r;throw t("Can't find helper '"+n+"'")}if("F"===e){var a=this.storage.filters.get(n);if(a)return a;throw t("Can't find filter '"+n+"'")}},async:!1,storage:{helpers:R,nativeHelpers:T,filters:E,templates:I},prefixes:{h:"@",b:"#",i:"",r:"*",c:"/",e:"!"},cache:!1,plugins:[],useWith:!1};function H(e,t){var n={};return s(n,j),t&&s(n,t),e&&s(n,e),n.l.bind(n),n}function O(e,n){var r=H(n||{}),i=Function;if(r.async){if(!a)throw t("This environment doesn't support async/await");i=a;}try{return new i(r.varName,"c","cb",d(e,r))}catch(n){throw n instanceof SyntaxError?t("Bad template syntax\n\n"+n.message+"\n"+Array(n.message.length+1).join("=")+"\n"+d(e,r)):n}}function _(e,t){var n;return t.cache&&t.name&&t.storage.templates.get(t.name)?t.storage.templates.get(t.name):(n="function"==typeof e?e:O(e,t),t.cache&&t.name&&t.storage.templates.define(t.name,n),n)}j.l.bind(j),e.compile=O,e.compileScope=x,e.compileScopeIntoFunction=y,e.compileToString=d,e.defaultConfig=j,e.filters=E,e.getConfig=H,e.helpers=R,e.nativeHelpers=T,e.parse=h,e.render=function(e,n,a,i){var s=H(a||{});if(!s.async)return _(e,s)(n,s);if(!i){if("function"==typeof r)return new r((function(t,r){try{t(_(e,s)(n,s));}catch(e){r(e);}}));throw t("Please provide a callback function, this env doesn't support Promises")}try{_(e,s)(n,s,i);}catch(e){return i(e)}},e.templates=I,Object.defineProperty(e,"__esModule",{value:!0});}));
135
- //# sourceMappingURL=squirrelly.min.js.map
132
+ function setPrototypeOf(obj, proto) {
133
+ if (Object.setPrototypeOf) {
134
+ Object.setPrototypeOf(obj, proto);
135
+ }
136
+ else {
137
+ obj.__proto__ = proto;
138
+ }
139
+ }
140
+ function SqrlErr(message) {
141
+ const err = new Error(message);
142
+ setPrototypeOf(err, SqrlErr.prototype);
143
+ return err;
144
+ }
145
+ SqrlErr.prototype = Object.create(Error.prototype, {
146
+ name: { value: 'Squirrelly Error', enumerable: false },
147
+ });
148
+ // TODO: Class transpilation adds a lot to the bundle size
149
+ function ParseErr(message, str, indx) {
150
+ const whitespace = str.slice(0, indx).split(/\n/);
151
+ const lineNo = whitespace.length;
152
+ const colNo = whitespace[lineNo - 1].length + 1;
153
+ message +=
154
+ ' at line ' +
155
+ lineNo +
156
+ ' col ' +
157
+ colNo +
158
+ ':\n\n' +
159
+ ' ' +
160
+ str.split(/\n/)[lineNo - 1] +
161
+ '\n' +
162
+ ' ' +
163
+ Array(colNo).join(' ') +
164
+ '^';
165
+ throw SqrlErr(message);
166
+ }
167
+
168
+ // TODO: allow '-' to trim up until newline. Use [^\S\n\r] instead of \s
169
+ // TODO: only include trimLeft polyfill if not in ES6
170
+ /* END TYPES */
171
+ const promiseImpl = new Function('return this')().Promise;
172
+ let asyncFunc = false;
173
+ try {
174
+ asyncFunc = new Function('return (async function(){}).constructor')();
175
+ }
176
+ catch (e) {
177
+ // We shouldn't actually ever have any other errors, but...
178
+ if (!(e instanceof SyntaxError)) {
179
+ throw e;
180
+ }
181
+ }
182
+ function hasOwnProp(obj, prop) {
183
+ return Object.prototype.hasOwnProperty.call(obj, prop);
184
+ }
185
+ function copyProps(toObj, fromObj, notConfig) {
186
+ for (const key in fromObj) {
187
+ if (hasOwnProp(fromObj, key)) {
188
+ if (fromObj[key] != null &&
189
+ typeof fromObj[key] == 'object' &&
190
+ (key === 'storage' || key === 'prefixes') &&
191
+ !notConfig // not called from Cache.load
192
+ ) {
193
+ // plugins or storage
194
+ // Note: this doesn't merge from initial config!
195
+ // Deep clone instead of assigning
196
+ // TODO: run checks on this
197
+ toObj[key] = copyProps(
198
+ /*toObj[key] ||*/ {}, fromObj[key]);
199
+ }
200
+ else {
201
+ toObj[key] = fromObj[key];
202
+ }
203
+ }
204
+ }
205
+ return toObj;
206
+ }
207
+ function trimWS(str, env, wsLeft, wsRight) {
208
+ let leftTrim;
209
+ let rightTrim;
210
+ if (typeof env.autoTrim === 'string') {
211
+ leftTrim = rightTrim = env.autoTrim;
212
+ // Don't need to check if env.autoTrim is false
213
+ // Because leftTrim, rightTrim are initialized as falsy
214
+ }
215
+ else if (Array.isArray(env.autoTrim)) {
216
+ // kinda confusing
217
+ // but _}} will trim the left side of the following string
218
+ leftTrim = env.autoTrim[1];
219
+ rightTrim = env.autoTrim[0];
220
+ }
221
+ if (wsLeft || wsLeft === false) {
222
+ leftTrim = wsLeft;
223
+ }
224
+ if (wsRight || wsRight === false) {
225
+ rightTrim = wsRight;
226
+ }
227
+ if (leftTrim === 'slurp' && rightTrim === 'slurp') {
228
+ return str.trim();
229
+ }
230
+ if (leftTrim === '_' || leftTrim === 'slurp') {
231
+ // console.log('trimming left' + leftTrim)
232
+ // full slurp
233
+ // eslint-disable-next-line no-extra-boolean-cast
234
+ if (!!String.prototype.trimLeft) {
235
+ str = str.trimLeft();
236
+ }
237
+ else {
238
+ str = str.replace(/^[\s\uFEFF\xA0]+/, '');
239
+ }
240
+ }
241
+ else if (leftTrim === '-' || leftTrim === 'nl') {
242
+ // console.log('trimming left nl' + leftTrim)
243
+ // nl trim
244
+ str = str.replace(/^(?:\n|\r|\r\n)/, '');
245
+ }
246
+ if (rightTrim === '_' || rightTrim === 'slurp') {
247
+ // console.log('trimming right' + rightTrim)
248
+ // full slurp
249
+ // eslint-disable-next-line no-extra-boolean-cast
250
+ if (!!String.prototype.trimRight) {
251
+ str = str.trimRight();
252
+ }
253
+ else {
254
+ str = str.replace(/[\s\uFEFF\xA0]+$/, '');
255
+ }
256
+ }
257
+ else if (rightTrim === '-' || rightTrim === 'nl') {
258
+ // console.log('trimming right nl' + rightTrim)
259
+ // nl trim
260
+ str = str.replace(/(?:\n|\r|\r\n)$/, ''); // TODO: make sure this gets \r\n
261
+ }
262
+ return str;
263
+ }
264
+
265
+ /* END TYPES */
266
+ const asyncRegExp = /^async +/;
267
+ const templateLitReg = /`(?:\\[\s\S]|\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})*}|(?!\${)[^\\`])*`/g;
268
+ const singleQuoteReg = /'(?:\\[\s\w"'\\`]|[^\n\r'\\])*?'/g;
269
+ const doubleQuoteReg = /"(?:\\[\s\w"'\\`]|[^\n\r"\\])*?"/g;
270
+ const specialCharsReg = /[.*+\-?^${}()|[\]\\]/g;
271
+ function escapeRegExp(string) {
272
+ // From MDN
273
+ return specialCharsReg.test(string)
274
+ ? string.replace(specialCharsReg, '\\$&') // $& means the whole matched string
275
+ : string;
276
+ }
277
+ function parse(str, env) {
278
+ /* Adding for EJS compatibility */
279
+ if (env.rmWhitespace) {
280
+ // Code taken directly from EJS
281
+ // Have to use two separate replaces here as `^` and `$` operators don't
282
+ // work well with `\r` and empty lines don't work well with the `m` flag.
283
+ // Essentially, this replaces the whitespace at the beginning and end of
284
+ // each line and removes multiple newlines.
285
+ str = str.replace(/[\r\n]+/g, '\n').replace(/^\s+|\s+$/gm, '');
286
+ }
287
+ /* End rmWhitespace option */
288
+ templateLitReg.lastIndex = 0;
289
+ singleQuoteReg.lastIndex = 0;
290
+ doubleQuoteReg.lastIndex = 0;
291
+ const envPrefixes = env.prefixes;
292
+ const prefixes = [
293
+ envPrefixes.h,
294
+ envPrefixes.b,
295
+ envPrefixes.i,
296
+ envPrefixes.r,
297
+ envPrefixes.c,
298
+ envPrefixes.e,
299
+ ].reduce(function (accumulator, prefix) {
300
+ if (accumulator && prefix) {
301
+ return accumulator + '|' + escapeRegExp(prefix);
302
+ }
303
+ else if (prefix) {
304
+ // accumulator is empty
305
+ return escapeRegExp(prefix);
306
+ }
307
+ else {
308
+ // prefix and accumulator are both empty strings
309
+ return accumulator;
310
+ }
311
+ }, '');
312
+ const parseCloseReg = new RegExp('([|()]|=>)|' + // powerchars
313
+ '(\'|"|`|\\/\\*)|\\s*((\\/)?(-|_)?' + // comments, strings
314
+ escapeRegExp(env.tags[1]) +
315
+ ')', 'g');
316
+ const tagOpenReg = new RegExp('([^]*?)' + escapeRegExp(env.tags[0]) + '(-|_)?\\s*(' + prefixes + ')?\\s*', 'g');
317
+ let startInd = 0;
318
+ let trimNextLeftWs = false;
319
+ function parseTag(tagOpenIndex, currentType) {
320
+ const currentObj = { f: [] };
321
+ let numParens = 0;
322
+ let currentAttribute = 'c'; // default - Valid values: 'c'=content, 'f'=filter, 'fp'=filter params, 'p'=param, 'n'=name
323
+ if (currentType === 'h' || currentType === 'b' || currentType === 'c') {
324
+ currentAttribute = 'n';
325
+ }
326
+ else if (currentType === 'r') {
327
+ currentObj.raw = true;
328
+ currentType = 'i';
329
+ }
330
+ function addAttrValue(indx) {
331
+ const valUnprocessed = str.slice(startInd, indx);
332
+ // console.log(valUnprocessed)
333
+ let val = valUnprocessed.trim();
334
+ if (currentAttribute === 'f') {
335
+ if (val === 'safe') {
336
+ currentObj.raw = true;
337
+ }
338
+ else {
339
+ if (env.async && asyncRegExp.test(val)) {
340
+ val = val.replace(asyncRegExp, '');
341
+ currentObj.f.push([val, '', true]);
342
+ }
343
+ else {
344
+ currentObj.f.push([val, '']);
345
+ }
346
+ }
347
+ }
348
+ else if (currentAttribute === 'fp') {
349
+ currentObj.f[currentObj.f.length - 1][1] += val;
350
+ }
351
+ else if (currentAttribute === 'err') {
352
+ if (val) {
353
+ const found = valUnprocessed.search(/\S/);
354
+ ParseErr('invalid syntax', str, startInd + found);
355
+ }
356
+ }
357
+ else {
358
+ // if (currentObj[currentAttribute]) { // TODO make sure no errs
359
+ // currentObj[currentAttribute] += val
360
+ // } else {
361
+ currentObj[currentAttribute] = val;
362
+ // }
363
+ }
364
+ startInd = indx + 1;
365
+ }
366
+ parseCloseReg.lastIndex = startInd;
367
+ let m;
368
+ // tslint:disable-next-line:no-conditional-assignment
369
+ while ((m = parseCloseReg.exec(str)) !== null) {
370
+ const char = m[1];
371
+ const punctuator = m[2];
372
+ const tagClose = m[3];
373
+ const slash = m[4];
374
+ const wsControl = m[5];
375
+ const i = m.index;
376
+ if (char) {
377
+ // Power character
378
+ if (char === '(') {
379
+ if (numParens === 0) {
380
+ if (currentAttribute === 'n') {
381
+ addAttrValue(i);
382
+ currentAttribute = 'p';
383
+ }
384
+ else if (currentAttribute === 'f') {
385
+ addAttrValue(i);
386
+ currentAttribute = 'fp';
387
+ }
388
+ }
389
+ numParens++;
390
+ }
391
+ else if (char === ')') {
392
+ numParens--;
393
+ if (numParens === 0 && currentAttribute !== 'c') {
394
+ // Then it's closing a filter, block, or helper
395
+ addAttrValue(i);
396
+ currentAttribute = 'err'; // Reset the current attribute
397
+ }
398
+ }
399
+ else if (numParens === 0 && char === '|') {
400
+ addAttrValue(i); // this should actually always be whitespace or empty
401
+ currentAttribute = 'f';
402
+ }
403
+ else if (char === '=>') {
404
+ addAttrValue(i);
405
+ startInd += 1; // this is 2 chars
406
+ currentAttribute = 'res';
407
+ }
408
+ }
409
+ else if (punctuator) {
410
+ if (punctuator === '/*') {
411
+ const commentCloseInd = str.indexOf('*/', parseCloseReg.lastIndex);
412
+ if (commentCloseInd === -1) {
413
+ ParseErr('unclosed comment', str, m.index);
414
+ }
415
+ parseCloseReg.lastIndex = commentCloseInd + 2; // since */ is 2 characters, and we're using indexOf rather than a RegExp
416
+ }
417
+ else if (punctuator === "'") {
418
+ singleQuoteReg.lastIndex = m.index;
419
+ const singleQuoteMatch = singleQuoteReg.exec(str);
420
+ if (singleQuoteMatch) {
421
+ parseCloseReg.lastIndex = singleQuoteReg.lastIndex;
422
+ }
423
+ else {
424
+ ParseErr('unclosed string', str, m.index);
425
+ }
426
+ }
427
+ else if (punctuator === '"') {
428
+ doubleQuoteReg.lastIndex = m.index;
429
+ const doubleQuoteMatch = doubleQuoteReg.exec(str);
430
+ if (doubleQuoteMatch) {
431
+ parseCloseReg.lastIndex = doubleQuoteReg.lastIndex;
432
+ }
433
+ else {
434
+ ParseErr('unclosed string', str, m.index);
435
+ }
436
+ }
437
+ else if (punctuator === '`') {
438
+ templateLitReg.lastIndex = m.index;
439
+ const templateLitMatch = templateLitReg.exec(str);
440
+ if (templateLitMatch) {
441
+ parseCloseReg.lastIndex = templateLitReg.lastIndex;
442
+ }
443
+ else {
444
+ ParseErr('unclosed string', str, m.index);
445
+ }
446
+ }
447
+ }
448
+ else if (tagClose) {
449
+ addAttrValue(i);
450
+ startInd = i + m[0].length;
451
+ tagOpenReg.lastIndex = startInd;
452
+ // console.log('tagClose: ' + startInd)
453
+ trimNextLeftWs = wsControl;
454
+ if (slash && currentType === 'h') {
455
+ currentType = 's';
456
+ } // TODO throw err
457
+ currentObj.t = currentType;
458
+ return currentObj;
459
+ }
460
+ }
461
+ ParseErr('unclosed tag', str, tagOpenIndex);
462
+ return currentObj; // To prevent TypeScript from erroring
463
+ }
464
+ function parseContext(parentObj, firstParse) {
465
+ parentObj.b = []; // assume there will be blocks // TODO: perf optimize this
466
+ parentObj.d = [];
467
+ let lastBlock = false;
468
+ let buffer = [];
469
+ function pushString(strng, shouldTrimRightOfString) {
470
+ if (strng) {
471
+ // if string is truthy it must be of type 'string'
472
+ // TODO: benchmark replace( /(\\|')/g, '\\$1')
473
+ strng = trimWS(strng, env, trimNextLeftWs, // this will only be false on the first str, the next ones will be null or undefined
474
+ shouldTrimRightOfString);
475
+ if (strng) {
476
+ // replace \ with \\, ' with \'
477
+ strng = strng.replace(/\\|'/g, '\\$&').replace(/\r\n|\n|\r/g, '\\n');
478
+ // we're going to convert all CRLF to LF so it doesn't take more than one replace
479
+ buffer.push(strng);
480
+ }
481
+ }
482
+ }
483
+ // Random TODO: parentObj.b doesn't need to have t: #
484
+ let tagOpenMatch;
485
+ // tslint:disable-next-line:no-conditional-assignment
486
+ while ((tagOpenMatch = tagOpenReg.exec(str)) !== null) {
487
+ const precedingString = tagOpenMatch[1];
488
+ const shouldTrimRightPrecedingString = tagOpenMatch[2];
489
+ const prefix = tagOpenMatch[3] || '';
490
+ let prefixType;
491
+ for (const key in envPrefixes) {
492
+ if (envPrefixes[key] === prefix) {
493
+ prefixType = key;
494
+ break;
495
+ }
496
+ }
497
+ pushString(precedingString, shouldTrimRightPrecedingString);
498
+ startInd = tagOpenMatch.index + tagOpenMatch[0].length;
499
+ if (!prefixType) {
500
+ ParseErr('unrecognized tag type: ' + prefix, str, startInd);
501
+ }
502
+ let currentObj = parseTag(tagOpenMatch.index, prefixType);
503
+ // ===== NOW ADD THE OBJECT TO OUR BUFFER =====
504
+ const currentType = currentObj.t;
505
+ if (currentType === 'h') {
506
+ const hName = currentObj.n || '';
507
+ if (env.async && asyncRegExp.test(hName)) {
508
+ currentObj.a = true;
509
+ currentObj.n = hName.replace(asyncRegExp, '');
510
+ }
511
+ currentObj = parseContext(currentObj); // currentObj is the parent object
512
+ buffer.push(currentObj);
513
+ }
514
+ else if (currentType === 'c') {
515
+ // tag close
516
+ if (parentObj.n === currentObj.n) {
517
+ if (lastBlock) {
518
+ // If there's a previous block
519
+ lastBlock.d = buffer;
520
+ parentObj.b.push(lastBlock);
521
+ }
522
+ else {
523
+ parentObj.d = buffer;
524
+ }
525
+ // console.log('parentObj: ' + JSON.stringify(parentObj))
526
+ return parentObj;
527
+ }
528
+ else {
529
+ ParseErr("Helper start and end don't match", str, tagOpenMatch.index + tagOpenMatch[0].length);
530
+ }
531
+ }
532
+ else if (currentType === 'b') {
533
+ // block
534
+ // TODO: make sure async stuff inside blocks are recognized
535
+ if (lastBlock) {
536
+ // If there's a previous block
537
+ lastBlock.d = buffer;
538
+ parentObj.b.push(lastBlock);
539
+ }
540
+ else {
541
+ parentObj.d = buffer;
542
+ }
543
+ const blockName = currentObj.n || '';
544
+ if (env.async && asyncRegExp.test(blockName)) {
545
+ currentObj.a = true;
546
+ currentObj.n = blockName.replace(asyncRegExp, '');
547
+ }
548
+ lastBlock = currentObj; // Set the 'lastBlock' object to the value of the current block
549
+ buffer = [];
550
+ }
551
+ else if (currentType === 's') {
552
+ const selfClosingHName = currentObj.n || '';
553
+ if (env.async && asyncRegExp.test(selfClosingHName)) {
554
+ currentObj.a = true;
555
+ currentObj.n = selfClosingHName.replace(asyncRegExp, '');
556
+ }
557
+ buffer.push(currentObj);
558
+ }
559
+ else {
560
+ buffer.push(currentObj);
561
+ }
562
+ // ===== DONE ADDING OBJECT TO BUFFER =====
563
+ }
564
+ if (firstParse) {
565
+ pushString(str.slice(startInd, str.length), false);
566
+ parentObj.d = buffer;
567
+ }
568
+ else {
569
+ throw SqrlErr('unclosed helper "' + parentObj.n + '"');
570
+ // It should have returned by now
571
+ }
572
+ return parentObj;
573
+ }
574
+ const parseResult = parseContext({ f: [] }, true);
575
+ // console.log(JSON.stringify(parseResult))
576
+ if (env.plugins) {
577
+ for (let i = 0; i < env.plugins.length; i++) {
578
+ const plugin = env.plugins[i];
579
+ if (plugin.processAST) {
580
+ parseResult.d = plugin.processAST(parseResult.d, env);
581
+ }
582
+ }
583
+ }
584
+ return parseResult.d; // Parse the very outside context
585
+ }
586
+
587
+ // import SqrlErr from './err'
588
+ /* END TYPES */
589
+ function compileToString(str, env) {
590
+ const buffer = parse(str, env);
591
+ let res = "var tR='';" +
592
+ (env.useWith ? 'with(' + env.varName + '||{}){' : '') +
593
+ compileScope(buffer, env) +
594
+ 'if(cb){cb(null,tR)} return tR' +
595
+ (env.useWith ? '}' : '');
596
+ if (env.plugins) {
597
+ for (let i = 0; i < env.plugins.length; i++) {
598
+ const plugin = env.plugins[i];
599
+ if (plugin.processFnString) {
600
+ res = plugin.processFnString(res, env);
601
+ }
602
+ }
603
+ }
604
+ return res;
605
+ // TODO: is `return cb()` necessary, or could we just do `cb()`
606
+ }
607
+ function filter(str, filters) {
608
+ for (let i = 0; i < filters.length; i++) {
609
+ const name = filters[i][0];
610
+ const params = filters[i][1];
611
+ const isFilterAsync = filters[i][2];
612
+ // if (isFilterAsync && !env.async) {
613
+ // throw SqrlErr("Async filter '" + name + "' in non-async env")
614
+ // }
615
+ // Let the JS compiler do this, compile() will catch it
616
+ str = (isFilterAsync ? 'await ' : '') + "c.l('F','" + name + "')(" + str;
617
+ if (params) {
618
+ str += ',' + params;
619
+ }
620
+ str += ')';
621
+ }
622
+ return str;
623
+ }
624
+ // TODO: Use type intersections for TemplateObject, etc.
625
+ // so I don't have to make properties mandatory
626
+ function compileHelper(env, res, descendants, params, isAsync, name) {
627
+ let ret = '{exec:' +
628
+ (isAsync ? 'async ' : '') +
629
+ compileScopeIntoFunction(descendants, res, env) +
630
+ ',params:[' +
631
+ params +
632
+ ']';
633
+ if (name) {
634
+ ret += ",name:'" + name + "'";
635
+ }
636
+ if (isAsync) {
637
+ ret += ',async:true';
638
+ }
639
+ ret += '}';
640
+ return ret;
641
+ }
642
+ function compileBlocks(blocks, env) {
643
+ let ret = '[';
644
+ for (let i = 0; i < blocks.length; i++) {
645
+ const block = blocks[i];
646
+ ret += compileHelper(env, block.res || '', block.d, block.p || '', block.a, block.n);
647
+ if (i < blocks.length) {
648
+ ret += ',';
649
+ }
650
+ }
651
+ ret += ']';
652
+ return ret;
653
+ }
654
+ function compileScopeIntoFunction(buff, res, env) {
655
+ return ('function(' + res + "){var tR='';" + compileScope(buff, env) + 'return tR}');
656
+ }
657
+ function compileScope(buff, env) {
658
+ let i = 0;
659
+ const buffLength = buff.length;
660
+ let returnStr = '';
661
+ for (i; i < buffLength; i++) {
662
+ const currentBlock = buff[i];
663
+ if (typeof currentBlock === 'string') {
664
+ const str = currentBlock;
665
+ // we know string exists
666
+ returnStr += "tR+='" + str + "';";
667
+ }
668
+ else {
669
+ const type = currentBlock.t; // h, s, e, i
670
+ let content = currentBlock.c || '';
671
+ const filters = currentBlock.f;
672
+ const name = currentBlock.n || '';
673
+ const params = currentBlock.p || '';
674
+ const res = currentBlock.res || '';
675
+ const blocks = currentBlock.b;
676
+ const isAsync = !!currentBlock.a; // !! is to booleanize it
677
+ // if (isAsync && !env.async) {
678
+ // throw SqrlErr("Async block or helper '" + name + "' in non-async env")
679
+ // }
680
+ // Let compiler do this
681
+ if (type === 'i') {
682
+ if (env.defaultFilter) {
683
+ content = "c.l('F','" + env.defaultFilter + "')(" + content + ')';
684
+ }
685
+ let filtered = filter(content, filters);
686
+ if (!currentBlock.raw && env.autoEscape) {
687
+ filtered = "c.l('F','e')(" + filtered + ')';
688
+ }
689
+ returnStr += 'tR+=' + filtered + ';';
690
+ // reference
691
+ }
692
+ else if (type === 'h') {
693
+ // helper
694
+ if (env.storage.nativeHelpers.get(name)) {
695
+ returnStr += env.storage.nativeHelpers.get(name)(currentBlock, env);
696
+ }
697
+ else {
698
+ let helperReturn = (isAsync ? 'await ' : '') +
699
+ "c.l('H','" +
700
+ name +
701
+ "')(" +
702
+ compileHelper(env, res, currentBlock.d, params, isAsync);
703
+ if (blocks) {
704
+ helperReturn += ',' + compileBlocks(blocks, env);
705
+ }
706
+ else {
707
+ helperReturn += ',[]';
708
+ }
709
+ helperReturn += ',c)';
710
+ returnStr += 'tR+=' + filter(helperReturn, filters) + ';';
711
+ }
712
+ }
713
+ else if (type === 's') {
714
+ // self-closing helper
715
+ returnStr +=
716
+ 'tR+=' +
717
+ filter((isAsync ? 'await ' : '') +
718
+ "c.l('H','" +
719
+ name +
720
+ "')({params:[" +
721
+ params +
722
+ ']},[],c)', filters) +
723
+ ';';
724
+ }
725
+ else if (type === 'e') {
726
+ // execute
727
+ returnStr += content + '\n';
728
+ }
729
+ }
730
+ }
731
+ return returnStr;
732
+ }
733
+
734
+ /* END TYPES */
735
+ class Cacher {
736
+ constructor(cache) {
737
+ this.cache = cache;
738
+ }
739
+ define(key, val) {
740
+ this.cache[key] = val;
741
+ }
742
+ get(key) {
743
+ // string | array.
744
+ // TODO: allow array of keys to look down
745
+ // TODO: create plugin to allow referencing helpers, filters with dot notation
746
+ return this.cache[key];
747
+ }
748
+ remove(key) {
749
+ delete this.cache[key];
750
+ }
751
+ reset() {
752
+ this.cache = {};
753
+ }
754
+ load(cacheObj) {
755
+ // TODO: this will err with deep objects and `storage` or `plugins` keys.
756
+ // Update Feb 26: EDITED so it shouldn't err
757
+ copyProps(this.cache, cacheObj, true);
758
+ }
759
+ }
760
+
761
+ function errWithBlocksOrFilters(name, blocks, // false means don't check
762
+ filters, native) {
763
+ if (blocks && blocks.length > 0) {
764
+ throw SqrlErr((native ? 'Native' : '') + "Helper '" + name + "' doesn't accept blocks");
765
+ }
766
+ if (filters && filters.length > 0) {
767
+ throw SqrlErr((native ? 'Native' : '') + "Helper '" + name + "' doesn't accept filters");
768
+ }
769
+ }
770
+ /* ASYNC LOOP FNs */
771
+ function asyncArrLoop(arr, index, fn, res, cb) {
772
+ fn(arr[index], index).then(function (val) {
773
+ res += val;
774
+ if (index === arr.length - 1) {
775
+ cb(res);
776
+ }
777
+ else {
778
+ asyncArrLoop(arr, index + 1, fn, res, cb);
779
+ }
780
+ });
781
+ }
782
+ function asyncObjLoop(obj, keys, index, fn, res, cb) {
783
+ fn(keys[index], obj[keys[index]]).then(function (val) {
784
+ res += val;
785
+ if (index === keys.length - 1) {
786
+ cb(res);
787
+ }
788
+ else {
789
+ asyncObjLoop(obj, keys, index + 1, fn, res, cb);
790
+ }
791
+ });
792
+ }
793
+ const escMap = {
794
+ '&': '&amp;',
795
+ '<': '&lt;',
796
+ '>': '&gt;',
797
+ '"': '&quot;',
798
+ "'": '&#39;',
799
+ };
800
+ function replaceChar(s) {
801
+ return escMap[s];
802
+ }
803
+ function XMLEscape(str) {
804
+ // To deal with XSS. Based on Escape implementations of Mustache.JS and Marko, then customized.
805
+ const newStr = String(str);
806
+ if (/[&<>"']/.test(newStr)) {
807
+ return newStr.replace(/[&<>"']/g, replaceChar);
808
+ }
809
+ else {
810
+ return newStr;
811
+ }
812
+ }
813
+
814
+ /* END TYPES */
815
+ const templates = new Cacher({});
816
+ /* ASYNC LOOP FNs */
817
+ const helpers = new Cacher({
818
+ each: function (content, blocks) {
819
+ let res = '';
820
+ const arr = content.params[0];
821
+ errWithBlocksOrFilters('each', blocks, false);
822
+ if (content.async) {
823
+ return new Promise(function (resolve) {
824
+ asyncArrLoop(arr, 0, content.exec, res, resolve);
825
+ });
826
+ }
827
+ else {
828
+ for (let i = 0; i < arr.length; i++) {
829
+ res += content.exec(arr[i], i);
830
+ }
831
+ return res;
832
+ }
833
+ },
834
+ foreach: function (content, blocks) {
835
+ const obj = content.params[0];
836
+ errWithBlocksOrFilters('foreach', blocks, false);
837
+ if (content.async) {
838
+ return new Promise(function (resolve) {
839
+ asyncObjLoop(obj, Object.keys(obj), 0, content.exec, '', resolve);
840
+ });
841
+ }
842
+ else {
843
+ let res = '';
844
+ for (const key in obj) {
845
+ if (!hasOwnProp(obj, key))
846
+ continue;
847
+ res += content.exec(key, obj[key]); // todo: check on order
848
+ }
849
+ return res;
850
+ }
851
+ },
852
+ include: function (content, blocks, config) {
853
+ errWithBlocksOrFilters('include', blocks, false);
854
+ const template = config.storage.templates.get(content.params[0]);
855
+ if (!template) {
856
+ throw SqrlErr('Could not fetch template "' + content.params[0] + '"');
857
+ }
858
+ return template(content.params[1], config);
859
+ },
860
+ extends: function (content, blocks, config) {
861
+ const data = content.params[1] || {};
862
+ data.content = content.exec();
863
+ for (let i = 0; i < blocks.length; i++) {
864
+ const currentBlock = blocks[i];
865
+ data[currentBlock.name] = currentBlock.exec();
866
+ }
867
+ const template = config.storage.templates.get(content.params[0]);
868
+ if (!template) {
869
+ throw SqrlErr('Could not fetch template "' + content.params[0] + '"');
870
+ }
871
+ return template(data, config);
872
+ },
873
+ useScope: function (content, blocks) {
874
+ errWithBlocksOrFilters('useScope', blocks, false);
875
+ return content.exec(content.params[0]);
876
+ },
877
+ });
878
+ const nativeHelpers = new Cacher({
879
+ if: function (buffer, env) {
880
+ errWithBlocksOrFilters('if', false, buffer.f, true);
881
+ let returnStr = 'if(' + buffer.p + '){' + compileScope(buffer.d, env) + '}';
882
+ if (buffer.b) {
883
+ for (let i = 0; i < buffer.b.length; i++) {
884
+ const currentBlock = buffer.b[i];
885
+ if (currentBlock.n === 'else') {
886
+ returnStr += 'else{' + compileScope(currentBlock.d, env) + '}';
887
+ }
888
+ else if (currentBlock.n === 'elif') {
889
+ returnStr +=
890
+ 'else if(' +
891
+ currentBlock.p +
892
+ '){' +
893
+ compileScope(currentBlock.d, env) +
894
+ '}';
895
+ }
896
+ }
897
+ }
898
+ return returnStr;
899
+ },
900
+ try: function (buffer, env) {
901
+ errWithBlocksOrFilters('try', false, buffer.f, true);
902
+ if (!buffer.b || buffer.b.length !== 1 || buffer.b[0].n !== 'catch') {
903
+ throw SqrlErr("native helper 'try' only accepts 1 block, 'catch'");
904
+ }
905
+ let returnStr = 'try{' + compileScope(buffer.d, env) + '}';
906
+ const currentBlock = buffer.b[0];
907
+ returnStr +=
908
+ 'catch' +
909
+ (currentBlock.res ? '(' + currentBlock.res + ')' : '') +
910
+ '{' +
911
+ compileScope(currentBlock.d, env) +
912
+ '}';
913
+ return returnStr;
914
+ },
915
+ block: function (buffer, env) {
916
+ errWithBlocksOrFilters('block', buffer.b, buffer.f, true);
917
+ const returnStr = 'if(!' +
918
+ env.varName +
919
+ '[' +
920
+ buffer.p +
921
+ ']){tR+=(' +
922
+ compileScopeIntoFunction(buffer.d, '', env) +
923
+ ')()}else{tR+=' +
924
+ env.varName +
925
+ '[' +
926
+ buffer.p +
927
+ ']}';
928
+ return returnStr;
929
+ },
136
930
  });
931
+ const filters = new Cacher({ e: XMLEscape });
137
932
 
138
- const squirrelly_min$1 = /*@__PURE__*/getDefaultExportFromCjs(squirrelly_min);
933
+ /* END TYPES */
934
+ const defaultConfig = {
935
+ varName: 'it',
936
+ autoTrim: [false, 'nl'],
937
+ autoEscape: true,
938
+ defaultFilter: false,
939
+ tags: ['{{', '}}'],
940
+ l: function (container, name) {
941
+ if (container === 'H') {
942
+ const hRet = this.storage.helpers.get(name);
943
+ if (hRet) {
944
+ return hRet;
945
+ }
946
+ else {
947
+ throw SqrlErr("Can't find helper '" + name + "'");
948
+ }
949
+ }
950
+ else if (container === 'F') {
951
+ const fRet = this.storage.filters.get(name);
952
+ if (fRet) {
953
+ return fRet;
954
+ }
955
+ else {
956
+ throw SqrlErr("Can't find filter '" + name + "'");
957
+ }
958
+ }
959
+ },
960
+ async: false,
961
+ storage: {
962
+ helpers: helpers,
963
+ nativeHelpers: nativeHelpers,
964
+ filters: filters,
965
+ templates: templates,
966
+ },
967
+ prefixes: {
968
+ h: '@',
969
+ b: '#',
970
+ i: '',
971
+ r: '*',
972
+ c: '/',
973
+ e: '!',
974
+ },
975
+ cache: false,
976
+ plugins: [],
977
+ useWith: false,
978
+ };
979
+ defaultConfig.l.bind(defaultConfig);
980
+ function getConfig(override, baseConfig) {
981
+ // TODO: run more tests on this
982
+ const res = {}; // Linked
983
+ copyProps(res, defaultConfig); // Creates deep clone of res, 1 layer deep
984
+ if (baseConfig) {
985
+ copyProps(res, baseConfig);
986
+ }
987
+ if (override) {
988
+ copyProps(res, override);
989
+ }
990
+ res.l.bind(res);
991
+ return res;
992
+ }
139
993
 
140
- const Sqrl = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.assign(/*#__PURE__*/Object.create(null), squirrelly_min, {
141
- 'default': squirrelly_min$1
142
- }));
994
+ /* END TYPES */
995
+ function compile(str, env) {
996
+ const options = getConfig(env || {});
997
+ let ctor = Function; // constructor
998
+ /* ASYNC HANDLING */
999
+ // The below code is modified from mde/ejs. All credit should go to them.
1000
+ if (options.async) {
1001
+ // Have to use generated function for this, since in envs without support,
1002
+ // it breaks in parsing
1003
+ if (asyncFunc) {
1004
+ ctor = asyncFunc;
1005
+ }
1006
+ else {
1007
+ throw SqrlErr("This environment doesn't support async/await");
1008
+ }
1009
+ }
1010
+ /* END ASYNC HANDLING */
1011
+ try {
1012
+ return new ctor(options.varName, 'c', // SqrlConfig
1013
+ 'cb', // optional callback
1014
+ compileToString(str, options)); // eslint-disable-line no-new-func
1015
+ }
1016
+ catch (e) {
1017
+ if (e instanceof SyntaxError) {
1018
+ throw SqrlErr('Bad template syntax\n\n' +
1019
+ e.message +
1020
+ '\n' +
1021
+ Array(e.message.length + 1).join('=') +
1022
+ '\n' +
1023
+ compileToString(str, options));
1024
+ }
1025
+ else {
1026
+ throw e;
1027
+ }
1028
+ }
1029
+ }
1030
+
1031
+ /* TYPES */
1032
+ /* END TYPES */
1033
+ function handleCache(template, options) {
1034
+ let templateFunc;
1035
+ if (options.cache &&
1036
+ options.name &&
1037
+ options.storage.templates.get(options.name)) {
1038
+ return options.storage.templates.get(options.name);
1039
+ }
1040
+ if (typeof template === 'function') {
1041
+ templateFunc = template;
1042
+ }
1043
+ else {
1044
+ templateFunc = compile(template, options);
1045
+ }
1046
+ if (options.cache && options.name) {
1047
+ options.storage.templates.define(options.name, templateFunc);
1048
+ }
1049
+ return templateFunc;
1050
+ }
1051
+ function render(template, data, env, cb) {
1052
+ const options = getConfig(env || {});
1053
+ if (options.async) {
1054
+ let result;
1055
+ if (!cb) {
1056
+ // No callback, try returning a promise
1057
+ if (typeof promiseImpl === 'function') {
1058
+ return new promiseImpl(function (resolve, reject) {
1059
+ try {
1060
+ result = handleCache(template, options)(data, options);
1061
+ resolve(result);
1062
+ }
1063
+ catch (err) {
1064
+ reject(err);
1065
+ }
1066
+ });
1067
+ }
1068
+ else {
1069
+ throw SqrlErr("Please provide a callback function, this env doesn't support Promises");
1070
+ }
1071
+ }
1072
+ else {
1073
+ try {
1074
+ handleCache(template, options)(data, options, cb);
1075
+ }
1076
+ catch (err) {
1077
+ return cb(err);
1078
+ }
1079
+ }
1080
+ }
1081
+ else {
1082
+ return handleCache(template, options)(data, options);
1083
+ }
1084
+ }
1085
+
1086
+ const squirrel = /*#__PURE__*/Object.freeze({
1087
+ __proto__: null,
1088
+ compileToString: compileToString,
1089
+ compileScope: compileScope,
1090
+ compileScopeIntoFunction: compileScopeIntoFunction,
1091
+ compile: compile,
1092
+ parse: parse,
1093
+ render: render,
1094
+ helpers: helpers,
1095
+ nativeHelpers: nativeHelpers,
1096
+ filters: filters,
1097
+ templates: templates,
1098
+ defaultConfig: defaultConfig,
1099
+ getConfig: getConfig
1100
+ });
143
1101
 
144
- const squirrel = Sqrl;
145
- squirrel.filters.define('date_long', (str, options = {
1102
+ filters.define('date_long', (str, options = {
146
1103
  year: 'numeric',
147
1104
  month: 'long',
148
1105
  day: 'numeric',
@@ -153,7 +1110,7 @@ squirrel.filters.define('date_long', (str, options = {
153
1110
  str = date.toLocaleDateString('en-GB', options);
154
1111
  return str;
155
1112
  });
156
- squirrel.filters.define('date_short', (str, format = 'd/m/y') => {
1113
+ filters.define('date_short', (str, format = 'd/m/y') => {
157
1114
  if (!str)
158
1115
  return;
159
1116
  const date = new Date(parseInt(str) * 1000);
@@ -162,7 +1119,7 @@ squirrel.filters.define('date_short', (str, format = 'd/m/y') => {
162
1119
  str = str.replace(/(y)/, date.getFullYear().toString());
163
1120
  return str;
164
1121
  });
165
- squirrel.filters.define('public_name', (str) => {
1122
+ filters.define('public_name', (str) => {
166
1123
  if (!str)
167
1124
  return;
168
1125
  str = str
@@ -173,19 +1130,19 @@ squirrel.filters.define('public_name', (str) => {
173
1130
  .join(' ');
174
1131
  return str.charAt(0).toUpperCase() + str.slice(1);
175
1132
  });
176
- squirrel.filters.define('trim_to', (str, length = 100) => {
1133
+ filters.define('trim_to', (str, length = 100) => {
177
1134
  if (!str)
178
1135
  return;
179
1136
  if (str.length <= length)
180
1137
  return str;
181
1138
  return str.substr(0, length) + '...';
182
1139
  });
183
- squirrel.filters.define('classname', (str) => {
1140
+ filters.define('classname', (str) => {
184
1141
  if (!str)
185
1142
  return;
186
1143
  return str.replace(/[\W]+/g, '');
187
1144
  });
188
- squirrel.filters.define('abs_url', (str, index = null, result) => {
1145
+ filters.define('abs_url', (str, index = null, result) => {
189
1146
  if (!index)
190
1147
  return str;
191
1148
  if (!str)
@@ -201,11 +1158,11 @@ squirrel.filters.define('abs_url', (str, index = null, result) => {
201
1158
  return str;
202
1159
  return str.match(/^http/) ? str : location.protocol + '//' + domain + str;
203
1160
  });
204
- squirrel.filters.define('replace', (str, search, replace) => str.replace(search, replace));
205
- squirrel.filters.define('remove_spaces', (str) => str.replace(/ /g, '_'));
206
- squirrel.filters.define('add_spaces', (str) => (str = str.replace(/[_\-]/g, ' ')));
207
- squirrel.filters.define('capitalise', (str) => (str = str.charAt(0).toUpperCase() + str.slice(1)));
208
- squirrel.filters.define('lowercase', (str) => (str = str.toLowerCase()));
1161
+ filters.define('replace', (str, search, replace) => str.replace(search, replace));
1162
+ filters.define('remove_spaces', (str) => str.replace(/ /g, '_'));
1163
+ filters.define('add_spaces', (str) => (str = str.replace(/[_\-]/g, ' ')));
1164
+ filters.define('capitalise', (str) => (str = str.charAt(0).toUpperCase() + str.slice(1)));
1165
+ filters.define('lowercase', (str) => (str = str.toLowerCase()));
209
1166
  const Squirrel = squirrel;
210
1167
 
211
1168
  const algoliaCss = ":host{box-sizing:border-box}*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}:host{position:relative;display:block}:host ::slotted([slot=search-template]){display:none !important}.loader{opacity:0;position:fixed;block-size:100%;inline-size:100%;min-block-size:100%;max-block-size:100vh !important;max-inline-size:100vw !important;inset-inline-start:0;inset-block-start:0;z-index:-10;font-size:60px;display:flex;align-items:center;justify-content:center;transition:opacity 0.2s ease, z-index 0.01s ease 0.2s}.loader.loading{opacity:1;z-index:10;transition:z-index 0.01s ease, opacity 0.2s ease 0.01s}.default{block-size:100%}.default:focus{outline:none}.results{opacity:0;outline:none;overflow:auto;transition:transform 0.3s ease, opacity 0.3s ease, visibility 0.01s ease 0.3s, z-index 0.01s ease 0.3s;transform:translate(0, 100px);visibility:hidden;z-index:-1;position:absolute;inset-block-start:0;inset-inline-start:0;display:none}.results-container{position:relative}.results.show{transition:z-index 0.01s ease, visibility 0.01s ease, transform 0.3s ease 0.01s, opacity 0.3s ease 0.01s, overflow 0.01s ease 0.31s;transform:translate(0, 0);visibility:visible;opacity:1;z-index:10;overflow:hidden}.results.shown{block-size:auto !important;inline-size:auto !important;display:block;position:static;transform:none;z-index:auto;visibility:inherit;opacity:initial;overflow:visible}";
@@ -223,7 +1180,7 @@ const Algolia = class {
223
1180
  this.dynFacetFilters = {};
224
1181
  this.hasLoadSlot = false;
225
1182
  this.placedAlgoliaEles = [];
226
- // lots of stuff happens asynchronously. This makes sure they fire in the corrent order
1183
+ // lots of stuff happens asynchronously. This makes sure they fire in the correct order
227
1184
  this.promiseQueue = new PromiseQueue();
228
1185
  this.searchChange = async () => {
229
1186
  if (!this.algoliaIndex)
@@ -382,7 +1339,6 @@ const Algolia = class {
382
1339
  this.query = '';
383
1340
  this.operator = 'and';
384
1341
  this.filters = [];
385
- this.tplEngine = Squirrel;
386
1342
  this.tplRenderFn = Squirrel.render;
387
1343
  this.replicaIndex = '';
388
1344
  this.browseIndex = false;