@nanoporetech-digital/components 7.9.2 → 8.0.0-alpha.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 (1782) hide show
  1. package/dist/cjs/active-element-DB7WRcF-.js +69 -0
  2. package/dist/cjs/algolia-data-CFc_52My.js +49 -0
  3. package/dist/cjs/algoliasearch-lite.esm.browser-DWj6KfUw.js +951 -0
  4. package/dist/cjs/component-store-DdyLi-VY.js +326 -0
  5. package/dist/cjs/date-utils-DqYlulq4.js +232 -0
  6. package/dist/cjs/dom-CvQQBdol.js +71 -0
  7. package/dist/cjs/drag-B5XXLJW9.js +72 -0
  8. package/dist/cjs/events-pBdXJwIU.js +37 -0
  9. package/dist/cjs/fade-Bq3U8uF7.js +212 -0
  10. package/dist/cjs/form-control-gUYfW0n-.js +84 -0
  11. package/dist/cjs/fullscreen-Czdw-D-5.js +132 -0
  12. package/dist/cjs/index-B76C6Tm9.js +3299 -0
  13. package/dist/cjs/index-ChTXweZN.js +198 -0
  14. package/dist/cjs/index-D0X7QVou.js +655 -0
  15. package/dist/cjs/index-browser-3bwVgSYS.js +13 -0
  16. package/dist/cjs/index.cjs.js +41 -24
  17. package/dist/cjs/lazyload-BpoUFECt.js +94 -0
  18. package/dist/cjs/loader.cjs.js +4 -9
  19. package/dist/cjs/local-logged-in-C8Qr7Q7o.js +223 -0
  20. package/dist/cjs/local-logged-out-fCQ614s8.js +219 -0
  21. package/dist/cjs/math-DIjJ3V87.js +39 -0
  22. package/dist/cjs/modal-DddxtK2h.js +49 -0
  23. package/dist/cjs/nano-accordion.cjs.entry.js +13 -27
  24. package/dist/cjs/nano-alert.cjs.entry.js +85 -36
  25. package/dist/cjs/nano-algolia-filter.cjs.entry.js +10 -15
  26. package/dist/cjs/nano-algolia-pagination.cjs.entry.js +5 -9
  27. package/dist/cjs/nano-algolia-results.cjs.entry.js +7 -11
  28. package/dist/cjs/nano-algolia.cjs.entry.js +22 -27
  29. package/dist/cjs/nano-animation.cjs.entry.js +5 -9
  30. package/dist/cjs/nano-avatar_5.cjs.entry.js +1778 -0
  31. package/dist/cjs/nano-breadcrumb.cjs.entry.js +41 -0
  32. package/dist/cjs/nano-card-carousel.cjs.entry.js +95 -0
  33. package/dist/cjs/nano-card.cjs.entry.js +23 -0
  34. package/dist/cjs/nano-checkbox-group.cjs.entry.js +79 -47
  35. package/dist/cjs/nano-checkbox.cjs.entry.js +34 -24
  36. package/dist/cjs/nano-collapsible-comparison.cjs.entry.js +62 -0
  37. package/dist/cjs/nano-components.cjs.js +8 -11
  38. package/dist/cjs/nano-content-links.cjs.entry.js +17 -0
  39. package/dist/cjs/nano-cta.cjs.entry.js +42 -0
  40. package/dist/cjs/nano-data-table-BNwDI1rg.js +1847 -0
  41. package/dist/cjs/nano-data-table.cjs.entry.js +17 -0
  42. package/dist/cjs/nano-datalist_3.cjs.entry.js +89 -262
  43. package/dist/cjs/nano-date-input.cjs.entry.js +14 -27
  44. package/dist/cjs/nano-date-picker_2.cjs.entry.js +999 -0
  45. package/dist/cjs/nano-details.cjs.entry.js +64 -81
  46. package/dist/cjs/nano-dialog.cjs.entry.js +45 -42
  47. package/dist/cjs/nano-dropdown_2.cjs.entry.js +640 -0
  48. package/dist/cjs/nano-field-validator.cjs.entry.js +9 -17
  49. package/dist/cjs/nano-file-upload.cjs.entry.js +6 -11
  50. package/dist/cjs/nano-footer.cjs.entry.js +25 -0
  51. package/dist/cjs/nano-global-nav.cjs.entry.js +416 -1171
  52. package/dist/cjs/nano-grid-item.cjs.entry.js +3 -7
  53. package/dist/cjs/nano-grid_2.cjs.entry.js +12 -18
  54. package/dist/cjs/nano-hero.cjs.entry.js +9 -16
  55. package/dist/cjs/nano-icon-item.cjs.entry.js +21 -0
  56. package/dist/cjs/nano-icon_3.cjs.entry.js +655 -0
  57. package/dist/cjs/nano-in-page-nav.cjs.entry.js +212 -0
  58. package/dist/cjs/nano-intersection-observe.cjs.entry.js +19 -17
  59. package/dist/cjs/nano-masked-overflow.cjs.entry.js +351 -0
  60. package/dist/cjs/nano-menu-drawer.cjs.entry.js +8 -13
  61. package/dist/cjs/nano-more-less.cjs.entry.js +5 -9
  62. package/dist/cjs/nano-nav-item.cjs.entry.js +271 -0
  63. package/dist/cjs/nano-progress-bar.cjs.entry.js +8 -13
  64. package/dist/cjs/nano-range.cjs.entry.js +9 -14
  65. package/dist/cjs/nano-rating.cjs.entry.js +10 -20
  66. package/dist/cjs/nano-resize-observe_2.cjs.entry.js +8 -13
  67. package/dist/cjs/nano-slide.cjs.entry.js +6 -11
  68. package/dist/cjs/nano-slides-Cj4figHV.js +3050 -0
  69. package/dist/cjs/nano-slides.cjs.entry.js +4 -8
  70. package/dist/cjs/nano-sortable.cjs.entry.js +11 -14
  71. package/dist/cjs/nano-spinner.cjs.entry.js +6 -11
  72. package/dist/cjs/nano-split-pane.cjs.entry.js +9 -14
  73. package/dist/cjs/nano-sticker.cjs.entry.js +12 -20
  74. package/dist/cjs/nano-tab-content.cjs.entry.js +9 -14
  75. package/dist/cjs/nano-tab-group.cjs.entry.js +64 -228
  76. package/dist/cjs/nano-tab.cjs.entry.js +18 -20
  77. package/dist/cjs/nano-table.cjs.entry.js +232 -13
  78. package/dist/cjs/page-dots-E6b7S4vs.js +138 -0
  79. package/dist/cjs/popover-CpIMxMWJ.js +1947 -0
  80. package/dist/cjs/renderer-Z8wHFL4e.js +71 -0
  81. package/dist/cjs/scroll-DspYj7mY.js +185 -0
  82. package/dist/cjs/search-insights-BtxuX7Wv.js +50 -0
  83. package/dist/cjs/slot-B4QUWT-c.js +107 -0
  84. package/dist/cjs/style-BccHkuhC.js +58 -0
  85. package/dist/cjs/tabbable-YPytg5sg.js +124 -0
  86. package/dist/cjs/table.worker-BTF0UXAd.js +4 -0
  87. package/dist/cjs/table.worker-bFxUCos7.js +32 -0
  88. package/dist/cjs/theme-2potFCtG.js +46 -0
  89. package/dist/cjs/throttle-CrRDOkln.js +52 -0
  90. package/dist/collection/assets/img/bsi/27001.svg +188 -0
  91. package/dist/collection/assets/img/bsi/9001.svg +172 -0
  92. package/dist/collection/assets/img/bsi/mark-of-trust.svg +230 -0
  93. package/dist/collection/assets/img/flags/en.svg +15 -0
  94. package/dist/collection/assets/img/flags/es.svg +544 -0
  95. package/dist/collection/assets/img/flags/ja.svg +11 -0
  96. package/dist/collection/assets/img/flags/zh.svg +14 -0
  97. package/dist/collection/collection-manifest.json +16 -4
  98. package/dist/collection/components/accordion/accordion.css +24 -10
  99. package/dist/collection/components/accordion/accordion.js +20 -55
  100. package/dist/collection/components/alert/alert.css +127 -58
  101. package/dist/collection/components/alert/alert.helpers.js +19 -12
  102. package/dist/collection/components/alert/alert.js +147 -32
  103. package/dist/collection/components/algolia/algolia-data.js +1 -2
  104. package/dist/collection/components/algolia/algolia-filter.css +23 -9
  105. package/dist/collection/components/algolia/algolia-filter.js +8 -9
  106. package/dist/collection/components/algolia/algolia-interface.js +0 -1
  107. package/dist/collection/components/algolia/algolia-pagination.js +4 -5
  108. package/dist/collection/components/algolia/algolia-results.js +5 -6
  109. package/dist/collection/components/algolia/algolia.css +23 -9
  110. package/dist/collection/components/algolia/algolia.js +20 -18
  111. package/dist/collection/components/algolia/lib/squirrelly/browser.js +1 -2
  112. package/dist/collection/components/algolia/lib/squirrelly/compile-string.js +1 -2
  113. package/dist/collection/components/algolia/lib/squirrelly/compile.js +1 -2
  114. package/dist/collection/components/algolia/lib/squirrelly/config.js +1 -2
  115. package/dist/collection/components/algolia/lib/squirrelly/container-utils.js +1 -2
  116. package/dist/collection/components/algolia/lib/squirrelly/containers.js +1 -2
  117. package/dist/collection/components/algolia/lib/squirrelly/err.js +1 -2
  118. package/dist/collection/components/algolia/lib/squirrelly/parse.js +1 -2
  119. package/dist/collection/components/algolia/lib/squirrelly/render.js +1 -2
  120. package/dist/collection/components/algolia/lib/squirrelly/storage.js +1 -2
  121. package/dist/collection/components/algolia/lib/squirrelly/utils.js +1 -2
  122. package/dist/collection/components/algolia/lib/template.js +1 -2
  123. package/dist/collection/components/animation/animation.js +17 -17
  124. package/dist/collection/components/animation/animations/attention_seekers/bounce.js +1 -2
  125. package/dist/collection/components/animation/animations/attention_seekers/flash.js +1 -2
  126. package/dist/collection/components/animation/animations/attention_seekers/headShake.js +1 -2
  127. package/dist/collection/components/animation/animations/attention_seekers/heartBeat.js +1 -2
  128. package/dist/collection/components/animation/animations/attention_seekers/jello.js +1 -2
  129. package/dist/collection/components/animation/animations/attention_seekers/pulse.js +1 -2
  130. package/dist/collection/components/animation/animations/attention_seekers/rubberBand.js +1 -2
  131. package/dist/collection/components/animation/animations/attention_seekers/shake.js +1 -2
  132. package/dist/collection/components/animation/animations/attention_seekers/shakeX.js +1 -2
  133. package/dist/collection/components/animation/animations/attention_seekers/shakeY.js +1 -2
  134. package/dist/collection/components/animation/animations/attention_seekers/swing.js +1 -2
  135. package/dist/collection/components/animation/animations/attention_seekers/tada.js +1 -2
  136. package/dist/collection/components/animation/animations/attention_seekers/wobble.js +1 -2
  137. package/dist/collection/components/animation/animations/back_entrances/backInDown.js +1 -2
  138. package/dist/collection/components/animation/animations/back_entrances/backInLeft.js +1 -2
  139. package/dist/collection/components/animation/animations/back_entrances/backInRight.js +1 -2
  140. package/dist/collection/components/animation/animations/back_entrances/backInUp.js +1 -2
  141. package/dist/collection/components/animation/animations/back_exits/backOutDown.js +1 -2
  142. package/dist/collection/components/animation/animations/back_exits/backOutLeft.js +1 -2
  143. package/dist/collection/components/animation/animations/back_exits/backOutRight.js +1 -2
  144. package/dist/collection/components/animation/animations/back_exits/backOutUp.js +1 -2
  145. package/dist/collection/components/animation/animations/bouncing_entrances/bounceIn.js +1 -2
  146. package/dist/collection/components/animation/animations/bouncing_entrances/bounceInDown.js +1 -2
  147. package/dist/collection/components/animation/animations/bouncing_entrances/bounceInLeft.js +1 -2
  148. package/dist/collection/components/animation/animations/bouncing_entrances/bounceInRight.js +1 -2
  149. package/dist/collection/components/animation/animations/bouncing_entrances/bounceInUp.js +1 -2
  150. package/dist/collection/components/animation/animations/bouncing_exits/bounceOut.js +1 -2
  151. package/dist/collection/components/animation/animations/bouncing_exits/bounceOutDown.js +1 -2
  152. package/dist/collection/components/animation/animations/bouncing_exits/bounceOutLeft.js +1 -2
  153. package/dist/collection/components/animation/animations/bouncing_exits/bounceOutRight.js +1 -2
  154. package/dist/collection/components/animation/animations/bouncing_exits/bounceOutUp.js +1 -2
  155. package/dist/collection/components/animation/animations/easings/easings.js +1 -2
  156. package/dist/collection/components/animation/animations/fading_entrances/fadeIn.js +1 -2
  157. package/dist/collection/components/animation/animations/fading_entrances/fadeInBottomLeft.js +1 -2
  158. package/dist/collection/components/animation/animations/fading_entrances/fadeInBottomRight.js +1 -2
  159. package/dist/collection/components/animation/animations/fading_entrances/fadeInDown.js +1 -2
  160. package/dist/collection/components/animation/animations/fading_entrances/fadeInDownBig.js +1 -2
  161. package/dist/collection/components/animation/animations/fading_entrances/fadeInLeft.js +1 -2
  162. package/dist/collection/components/animation/animations/fading_entrances/fadeInLeftBig.js +1 -2
  163. package/dist/collection/components/animation/animations/fading_entrances/fadeInRight.js +1 -2
  164. package/dist/collection/components/animation/animations/fading_entrances/fadeInRightBig.js +1 -2
  165. package/dist/collection/components/animation/animations/fading_entrances/fadeInTopLeft.js +1 -2
  166. package/dist/collection/components/animation/animations/fading_entrances/fadeInTopRight.js +1 -2
  167. package/dist/collection/components/animation/animations/fading_entrances/fadeInUp.js +1 -2
  168. package/dist/collection/components/animation/animations/fading_entrances/fadeInUpBig.js +1 -2
  169. package/dist/collection/components/animation/animations/fading_exits/fadeOut.js +1 -2
  170. package/dist/collection/components/animation/animations/fading_exits/fadeOutBottomLeft.js +1 -2
  171. package/dist/collection/components/animation/animations/fading_exits/fadeOutBottomRight.js +1 -2
  172. package/dist/collection/components/animation/animations/fading_exits/fadeOutDown.js +1 -2
  173. package/dist/collection/components/animation/animations/fading_exits/fadeOutDownBig.js +1 -2
  174. package/dist/collection/components/animation/animations/fading_exits/fadeOutLeft.js +1 -2
  175. package/dist/collection/components/animation/animations/fading_exits/fadeOutLeftBig.js +1 -2
  176. package/dist/collection/components/animation/animations/fading_exits/fadeOutRight.js +1 -2
  177. package/dist/collection/components/animation/animations/fading_exits/fadeOutRightBig.js +1 -2
  178. package/dist/collection/components/animation/animations/fading_exits/fadeOutTopLeft.js +1 -2
  179. package/dist/collection/components/animation/animations/fading_exits/fadeOutTopRight.js +1 -2
  180. package/dist/collection/components/animation/animations/fading_exits/fadeOutUp.js +1 -2
  181. package/dist/collection/components/animation/animations/fading_exits/fadeOutUpBig.js +1 -2
  182. package/dist/collection/components/animation/animations/flippers/flip.js +1 -2
  183. package/dist/collection/components/animation/animations/flippers/flipInX.js +1 -2
  184. package/dist/collection/components/animation/animations/flippers/flipInY.js +1 -2
  185. package/dist/collection/components/animation/animations/flippers/flipOutX.js +1 -2
  186. package/dist/collection/components/animation/animations/flippers/flipOutY.js +1 -2
  187. package/dist/collection/components/animation/animations/index.js +1 -2
  188. package/dist/collection/components/animation/animations/lightspeed/lightSpeedInLeft.js +1 -2
  189. package/dist/collection/components/animation/animations/lightspeed/lightSpeedInRight.js +1 -2
  190. package/dist/collection/components/animation/animations/lightspeed/lightSpeedOutLeft.js +1 -2
  191. package/dist/collection/components/animation/animations/lightspeed/lightSpeedOutRight.js +1 -2
  192. package/dist/collection/components/animation/animations/rotating_entrances/rotateIn.js +1 -2
  193. package/dist/collection/components/animation/animations/rotating_entrances/rotateInDownLeft.js +1 -2
  194. package/dist/collection/components/animation/animations/rotating_entrances/rotateInDownRight.js +1 -2
  195. package/dist/collection/components/animation/animations/rotating_entrances/rotateInUpLeft.js +1 -2
  196. package/dist/collection/components/animation/animations/rotating_entrances/rotateInUpRight.js +1 -2
  197. package/dist/collection/components/animation/animations/rotating_exits/rotateOut.js +1 -2
  198. package/dist/collection/components/animation/animations/rotating_exits/rotateOutDownLeft.js +1 -2
  199. package/dist/collection/components/animation/animations/rotating_exits/rotateOutDownRight.js +1 -2
  200. package/dist/collection/components/animation/animations/rotating_exits/rotateOutUpLeft.js +1 -2
  201. package/dist/collection/components/animation/animations/rotating_exits/rotateOutUpRight.js +1 -2
  202. package/dist/collection/components/animation/animations/sliding_entrances/slideInDown.js +1 -2
  203. package/dist/collection/components/animation/animations/sliding_entrances/slideInLeft.js +1 -2
  204. package/dist/collection/components/animation/animations/sliding_entrances/slideInRight.js +1 -2
  205. package/dist/collection/components/animation/animations/sliding_entrances/slideInUp.js +1 -2
  206. package/dist/collection/components/animation/animations/sliding_exits/slideOutDown.js +1 -2
  207. package/dist/collection/components/animation/animations/sliding_exits/slideOutLeft.js +1 -2
  208. package/dist/collection/components/animation/animations/sliding_exits/slideOutRight.js +1 -2
  209. package/dist/collection/components/animation/animations/sliding_exits/slideOutUp.js +1 -2
  210. package/dist/collection/components/animation/animations/specials/hinge.js +1 -2
  211. package/dist/collection/components/animation/animations/specials/jackInTheBox.js +1 -2
  212. package/dist/collection/components/animation/animations/specials/rollIn.js +1 -2
  213. package/dist/collection/components/animation/animations/specials/rollOut.js +1 -2
  214. package/dist/collection/components/animation/animations/zooming_entrances/zoomIn.js +1 -2
  215. package/dist/collection/components/animation/animations/zooming_entrances/zoomInDown.js +1 -2
  216. package/dist/collection/components/animation/animations/zooming_entrances/zoomInLeft.js +1 -2
  217. package/dist/collection/components/animation/animations/zooming_entrances/zoomInRight.js +1 -2
  218. package/dist/collection/components/animation/animations/zooming_entrances/zoomInUp.js +1 -2
  219. package/dist/collection/components/animation/animations/zooming_exits/zoomOut.js +1 -2
  220. package/dist/collection/components/animation/animations/zooming_exits/zoomOutDown.js +1 -2
  221. package/dist/collection/components/animation/animations/zooming_exits/zoomOutLeft.js +1 -2
  222. package/dist/collection/components/animation/animations/zooming_exits/zoomOutRight.js +1 -2
  223. package/dist/collection/components/animation/animations/zooming_exits/zoomOutUp.js +1 -2
  224. package/dist/collection/components/avatar/avatar.css +41 -0
  225. package/dist/collection/components/avatar/avatar.js +47 -0
  226. package/dist/collection/components/badge/badge.js +84 -0
  227. package/dist/collection/components/breadcrumb/breadcrumb.css +169 -0
  228. package/dist/collection/components/breadcrumb/breadcrumb.js +83 -0
  229. package/dist/collection/components/card/card.css +43 -0
  230. package/dist/collection/components/card/card.js +92 -0
  231. package/dist/collection/components/card-carousel/card-carousel.css +167 -0
  232. package/dist/collection/components/card-carousel/card-carousel.js +144 -0
  233. package/dist/collection/components/checkbox/checkbox-group.css +96 -106
  234. package/dist/collection/components/checkbox/checkbox-group.js +95 -56
  235. package/dist/collection/components/checkbox/checkbox-interface.js +0 -1
  236. package/dist/collection/components/checkbox/checkbox.css +303 -305
  237. package/dist/collection/components/checkbox/checkbox.js +76 -59
  238. package/dist/collection/components/collapsible-comparison/collapsible-comparison.css +80 -0
  239. package/dist/collection/components/collapsible-comparison/collapsible-comparison.js +120 -0
  240. package/dist/collection/components/content-links/content-links.css +46 -0
  241. package/dist/collection/components/content-links/content-links.js +21 -0
  242. package/dist/collection/components/cta/cta.css +49 -0
  243. package/dist/collection/components/cta/cta.js +175 -0
  244. package/dist/collection/components/data-table/table.cell.js +114 -0
  245. package/dist/collection/components/data-table/table.constants.js +4 -0
  246. package/dist/collection/components/data-table/table.css +327 -0
  247. package/dist/collection/components/data-table/table.header.js +65 -0
  248. package/dist/collection/components/data-table/table.js +1721 -0
  249. package/dist/collection/components/data-table/table.pin-service.js +388 -0
  250. package/dist/collection/components/data-table/table.row.js +112 -0
  251. package/dist/collection/components/data-table/table.store.js +144 -0
  252. package/dist/collection/components/data-table/table.utils.js +133 -0
  253. package/dist/collection/components/data-table/table.worker.js +220 -0
  254. package/dist/collection/components/datalist/datalist.css +43 -26
  255. package/dist/collection/components/datalist/datalist.js +40 -39
  256. package/dist/collection/components/date-input/date-input.css +25 -13
  257. package/dist/collection/components/date-input/date-input.js +49 -48
  258. package/dist/collection/components/date-picker/date-picker.css +51 -53
  259. package/dist/collection/components/date-picker/date-picker.js +41 -73
  260. package/dist/collection/components/date-picker/duet-date-picker/date-adapter.js +1 -2
  261. package/dist/collection/components/date-picker/duet-date-picker/date-localization.js +1 -2
  262. package/dist/collection/components/date-picker/duet-date-picker/date-picker-day.js +1 -2
  263. package/dist/collection/components/date-picker/duet-date-picker/date-picker-month.js +2 -3
  264. package/dist/collection/components/details/details.css +80 -106
  265. package/dist/collection/components/details/details.js +86 -134
  266. package/dist/collection/components/dialog/dialog.css +89 -87
  267. package/dist/collection/components/dialog/dialog.helpers.js +18 -7
  268. package/dist/collection/components/dialog/dialog.js +47 -57
  269. package/dist/collection/components/drawer/drawer.css +119 -50
  270. package/dist/collection/components/drawer/drawer.js +144 -55
  271. package/dist/collection/components/dropdown/dropdown.css +46 -31
  272. package/dist/collection/components/dropdown/dropdown.js +82 -64
  273. package/dist/collection/components/field-validator/field-validator.js +22 -25
  274. package/dist/collection/components/file-upload/file-upload-list.js +1 -2
  275. package/dist/collection/components/file-upload/file-upload.css +29 -17
  276. package/dist/collection/components/file-upload/file-upload.js +20 -20
  277. package/dist/collection/components/footer/footer.css +185 -0
  278. package/dist/collection/components/footer/footer.js +43 -0
  279. package/dist/collection/components/form-control/form-control.js +8 -8
  280. package/dist/collection/components/global-nav/assets/local-logged-in.json +202 -0
  281. package/dist/collection/components/global-nav/assets/local-logged-out.json +198 -0
  282. package/dist/collection/components/global-nav/global-nav.css +435 -0
  283. package/dist/collection/components/global-nav/global-nav.js +573 -1468
  284. package/dist/collection/components/global-search-results/global-search-results.css +26 -14
  285. package/dist/collection/components/global-search-results/global-search-results.js +36 -27
  286. package/dist/collection/components/grid/grid-item.js +2 -3
  287. package/dist/collection/components/grid/grid.css +26 -9
  288. package/dist/collection/components/grid/grid.js +21 -24
  289. package/dist/collection/components/hero/hero.css +23 -9
  290. package/dist/collection/components/hero/hero.js +12 -13
  291. package/dist/collection/components/icon/device/elysion.svg +5 -0
  292. package/dist/collection/components/icon/device/flongle.svg +4 -0
  293. package/dist/collection/components/icon/device/gridion.svg +9 -0
  294. package/dist/collection/components/icon/device/minion-mk1d.svg +4 -0
  295. package/dist/collection/components/icon/device/p2-integrated.svg +7 -0
  296. package/dist/collection/components/icon/device/p2-solo.svg +5 -0
  297. package/dist/collection/components/icon/device/p24.svg +6 -0
  298. package/dist/collection/components/icon/device/q.svg +4 -0
  299. package/dist/collection/components/icon/icon.css +76 -37
  300. package/dist/collection/components/icon/icon.js +144 -103
  301. package/dist/collection/components/icon/pictogram/analyse.svg +10 -0
  302. package/dist/collection/components/icon/pictogram/animal-research.svg +4 -0
  303. package/dist/collection/components/icon/pictogram/assembly.svg +3 -0
  304. package/dist/collection/components/icon/pictogram/biopharma.svg +3 -0
  305. package/dist/collection/components/icon/pictogram/cancer-research.svg +15 -0
  306. package/dist/collection/components/icon/pictogram/chromatin-conformation.svg +3 -0
  307. package/dist/collection/components/icon/pictogram/clinical-research.svg +3 -0
  308. package/dist/collection/components/icon/pictogram/environmental-conservation.svg +5 -0
  309. package/dist/collection/components/icon/pictogram/epigenetics.svg +5 -0
  310. package/dist/collection/components/icon/pictogram/fusion-transcripts.svg +3 -0
  311. package/dist/collection/components/icon/pictogram/gene-expression.svg +3 -0
  312. package/dist/collection/components/icon/pictogram/genome-research.svg +3 -0
  313. package/dist/collection/components/icon/pictogram/human-genomics.svg +4 -0
  314. package/dist/collection/components/icon/pictogram/infectious-disease.svg +13 -0
  315. package/dist/collection/components/icon/pictogram/microbial-genomics.svg +15 -0
  316. package/dist/collection/components/icon/pictogram/microbiome-metagenomics.svg +16 -0
  317. package/dist/collection/components/icon/pictogram/multiomics.svg +13 -0
  318. package/dist/collection/components/icon/pictogram/plant-research.svg +3 -0
  319. package/dist/collection/components/icon/pictogram/population-genomics.svg +6 -0
  320. package/dist/collection/components/icon/pictogram/prepare.svg +4 -0
  321. package/dist/collection/components/icon/pictogram/scalable.svg +12 -0
  322. package/dist/collection/components/icon/pictogram/sequence.svg +3 -0
  323. package/dist/collection/components/icon/pictogram/single-cell-spatial-transcriptions.svg +12 -0
  324. package/dist/collection/components/icon/pictogram/snvs-phasing.svg +4 -0
  325. package/dist/collection/components/icon/pictogram/splice-variation.svg +4 -0
  326. package/dist/collection/components/icon/pictogram/structural-variation.svg +4 -0
  327. package/dist/collection/components/icon/pictogram/targeted-sequencing.svg +10 -0
  328. package/dist/collection/components/icon/pictogram/transcriptomics.svg +3 -0
  329. package/dist/collection/components/icon/pictogram/unrestricted-read-length.svg +10 -0
  330. package/dist/collection/components/icon/pictogram/whole-genome-sequencing.svg +3 -0
  331. package/dist/collection/components/icon/pictogram/workflow-end-to-end.svg +3 -0
  332. package/dist/collection/components/icon/request.js +1 -2
  333. package/dist/collection/components/icon/utils.js +8 -11
  334. package/dist/collection/components/icon/validate.js +1 -2
  335. package/dist/collection/components/icon-button/icon-button.css +45 -37
  336. package/dist/collection/components/icon-button/icon-button.js +17 -26
  337. package/dist/collection/components/icon-item/icon-item.css +41 -0
  338. package/dist/collection/components/icon-item/icon-item.js +72 -0
  339. package/dist/collection/components/img/img.css +23 -9
  340. package/dist/collection/components/img/img.js +10 -11
  341. package/dist/collection/components/in-page-nav/in-page-nav.css +122 -0
  342. package/dist/collection/components/in-page-nav/in-page-nav.js +278 -0
  343. package/dist/collection/components/input/input.css +215 -167
  344. package/dist/collection/components/input/input.js +372 -133
  345. package/dist/collection/components/intersection-observe/intersection-observe.js +26 -18
  346. package/dist/collection/components/masked-overflow/masked-overflow.css +241 -0
  347. package/dist/collection/components/masked-overflow/masked-overflow.js +610 -0
  348. package/dist/collection/components/menu/menu.css +38 -46
  349. package/dist/collection/components/menu/menu.js +92 -37
  350. package/dist/collection/components/menu-drawer/menu-drawer.css +23 -9
  351. package/dist/collection/components/menu-drawer/menu-drawer.js +7 -8
  352. package/dist/collection/components/more-less/more-less.js +7 -8
  353. package/dist/collection/components/nav-item/nav-item.css +73 -270
  354. package/dist/collection/components/nav-item/nav-item.js +128 -291
  355. package/dist/collection/components/option/option.css +57 -39
  356. package/dist/collection/components/option/option.js +33 -18
  357. package/dist/collection/components/progress-bar/progress-bar.css +23 -9
  358. package/dist/collection/components/progress-bar/progress-bar.js +11 -9
  359. package/dist/collection/components/range/range.css +23 -9
  360. package/dist/collection/components/range/range.js +17 -19
  361. package/dist/collection/components/rating/rating.css +24 -10
  362. package/dist/collection/components/rating/rating.js +13 -18
  363. package/dist/collection/components/resize-observe/resize-observe.js +6 -9
  364. package/dist/collection/components/select/select.css +194 -223
  365. package/dist/collection/components/select/select.js +110 -138
  366. package/dist/collection/components/skeleton/skeleton.css +23 -9
  367. package/dist/collection/components/skeleton/skeleton.js +7 -7
  368. package/dist/collection/components/slides/lib/js/animate.js +1 -2
  369. package/dist/collection/components/slides/lib/js/cell.js +1 -2
  370. package/dist/collection/components/slides/lib/js/drag.js +1 -2
  371. package/dist/collection/components/slides/lib/js/fade.js +1 -2
  372. package/dist/collection/components/slides/lib/js/flickity.js +15 -5
  373. package/dist/collection/components/slides/lib/js/fullscreen.js +1 -2
  374. package/dist/collection/components/slides/lib/js/index.js +1 -2
  375. package/dist/collection/components/slides/lib/js/lazyload.js +1 -2
  376. package/dist/collection/components/slides/lib/js/page-dots.js +5 -7
  377. package/dist/collection/components/slides/lib/js/player.js +1 -2
  378. package/dist/collection/components/slides/lib/js/prev-next-button.js +1 -2
  379. package/dist/collection/components/slides/lib/js/slide.js +1 -2
  380. package/dist/collection/components/slides/lib/js/utils/event-emitter.js +1 -2
  381. package/dist/collection/components/slides/lib/js/utils/gestures.js +1 -2
  382. package/dist/collection/components/slides/lib/js/utils/get-size.js +1 -2
  383. package/dist/collection/components/slides/lib/js/utils/utils.js +1 -2
  384. package/dist/collection/components/slides/slide.css +23 -9
  385. package/dist/collection/components/slides/slide.js +3 -4
  386. package/dist/collection/components/slides/slides.css +49 -24
  387. package/dist/collection/components/slides/slides.js +16 -16
  388. package/dist/collection/components/sortable/sortable.css +25 -13
  389. package/dist/collection/components/sortable/sortable.js +34 -25
  390. package/dist/collection/components/spinner/spinner.css +23 -11
  391. package/dist/collection/components/spinner/spinner.js +8 -5
  392. package/dist/collection/components/split-pane/split-pane.css +33 -20
  393. package/dist/collection/components/split-pane/split-pane.js +13 -11
  394. package/dist/collection/components/sticker/sticker.css +23 -9
  395. package/dist/collection/components/sticker/sticker.js +14 -17
  396. package/dist/collection/components/table/table.css +31 -383
  397. package/dist/collection/components/table/table.js +211 -1566
  398. package/dist/collection/components/tabs/tab-content.css +23 -9
  399. package/dist/collection/components/tabs/tab-content.js +11 -7
  400. package/dist/collection/components/tabs/tab-group.css +70 -229
  401. package/dist/collection/components/tabs/tab-group.js +98 -266
  402. package/dist/collection/components/tabs/tab.css +83 -134
  403. package/dist/collection/components/tabs/tab.js +25 -18
  404. package/dist/collection/components/tag/tag.css +45 -0
  405. package/dist/collection/components/tag/tag.js +122 -0
  406. package/dist/collection/components/tooltip/tooltip.css +93 -66
  407. package/dist/collection/components/tooltip/tooltip.js +30 -14
  408. package/dist/collection/global/script/global.js +2 -32
  409. package/dist/collection/index.js +2 -2
  410. package/dist/collection/types/shared.js +0 -1
  411. package/dist/collection/utils/active-element.js +49 -2
  412. package/dist/collection/utils/constructible-style.js +3 -4
  413. package/dist/collection/utils/custom-template.js +1 -2
  414. package/dist/collection/utils/date-utils.js +1 -2
  415. package/dist/collection/utils/dom.js +10 -11
  416. package/dist/collection/utils/drag.js +1 -2
  417. package/dist/collection/utils/events.js +1 -2
  418. package/dist/collection/utils/fetch.js +1 -2
  419. package/dist/collection/utils/form.js +1 -2
  420. package/dist/collection/utils/gesture/gesture-controller.js +1 -2
  421. package/dist/collection/utils/gesture/index.js +1 -2
  422. package/dist/collection/utils/gesture/listener.js +1 -2
  423. package/dist/collection/utils/gesture/pointer-events.js +1 -2
  424. package/dist/collection/utils/gesture/recognizers.js +1 -2
  425. package/dist/collection/utils/gesture/swipe-back.js +1 -2
  426. package/dist/collection/utils/math.js +1 -2
  427. package/dist/collection/utils/modal.js +1 -2
  428. package/dist/collection/utils/popover.js +7 -4
  429. package/dist/collection/utils/promise-queue.js +1 -2
  430. package/dist/collection/utils/renderer.js +12 -3
  431. package/dist/collection/utils/scroll.js +59 -3
  432. package/dist/collection/utils/search-insights.js +1 -2
  433. package/dist/collection/utils/slot.js +82 -28
  434. package/dist/collection/utils/store/component-store.js +25 -14
  435. package/dist/collection/utils/store/get-set.js +1 -2
  436. package/dist/collection/utils/style.js +54 -0
  437. package/dist/collection/utils/tabbable.js +41 -27
  438. package/dist/collection/utils/testing/index.js +1 -2
  439. package/dist/collection/utils/theme.js +2 -4
  440. package/dist/collection/utils/throttle.js +1 -2
  441. package/dist/collection/utils/transitions.js +24 -7
  442. package/dist/components/active-element.js +50 -4
  443. package/dist/components/algolia-data.js +1 -3
  444. package/dist/components/algolia.js +964 -23
  445. package/dist/components/avatar.js +33 -0
  446. package/dist/components/badge.js +36 -0
  447. package/dist/components/component-store.js +27 -26
  448. package/dist/components/cta.js +61 -0
  449. package/dist/components/datalist.js +29 -33
  450. package/dist/components/date-picker.js +33 -45
  451. package/dist/components/details.js +201 -0
  452. package/dist/components/dom.js +11 -22
  453. package/dist/components/drag.js +1 -3
  454. package/dist/components/drawer.js +402 -0
  455. package/dist/components/dropdown.js +65 -59
  456. package/dist/components/events.js +1 -3
  457. package/dist/components/fade.js +2 -4
  458. package/dist/components/form-control.js +11 -9
  459. package/dist/components/fullscreen.js +2 -4
  460. package/dist/components/global-search-results.js +735 -0
  461. package/dist/components/grid.js +6 -9
  462. package/dist/components/icon-button.js +3 -17
  463. package/dist/components/icon.js +98 -90
  464. package/dist/components/img.js +6 -9
  465. package/dist/components/index-browser.js +3 -5
  466. package/dist/components/index.js +41 -51
  467. package/dist/components/index2.js +1 -3
  468. package/dist/components/index3.js +4 -9
  469. package/dist/components/input.js +178 -65
  470. package/dist/components/lazyload.js +2 -4
  471. package/dist/components/local-logged-in.js +214 -0
  472. package/dist/components/local-logged-out.js +210 -0
  473. package/dist/components/masked-overflow.js +402 -0
  474. package/dist/components/math.js +2 -4
  475. package/dist/components/menu.js +75 -30
  476. package/dist/components/modal.js +1 -3
  477. package/dist/components/nano-accordion.js +13 -26
  478. package/dist/components/nano-alert.js +82 -28
  479. package/dist/components/nano-algolia-filter.js +5 -8
  480. package/dist/components/nano-algolia-pagination.js +3 -5
  481. package/dist/components/nano-algolia-results.js +4 -6
  482. package/dist/components/nano-algolia.js +1 -3
  483. package/dist/components/nano-animation.js +4 -6
  484. package/dist/components/nano-avatar.d.ts +11 -0
  485. package/dist/components/nano-avatar.js +9 -0
  486. package/dist/components/nano-badge.d.ts +11 -0
  487. package/dist/components/nano-badge.js +9 -0
  488. package/dist/components/nano-breadcrumb.d.ts +11 -0
  489. package/dist/components/nano-breadcrumb.js +84 -0
  490. package/dist/components/nano-card-carousel.d.ts +11 -0
  491. package/dist/components/nano-card-carousel.js +124 -0
  492. package/dist/components/nano-card.d.ts +11 -0
  493. package/dist/components/nano-card.js +42 -0
  494. package/dist/components/nano-checkbox-group.js +76 -42
  495. package/dist/components/nano-checkbox.js +35 -22
  496. package/dist/components/nano-collapsible-comparison.d.ts +11 -0
  497. package/dist/components/nano-collapsible-comparison.js +106 -0
  498. package/dist/components/nano-content-links.d.ts +11 -0
  499. package/dist/components/nano-content-links.js +32 -0
  500. package/dist/components/nano-cta.d.ts +11 -0
  501. package/dist/components/nano-cta.js +9 -0
  502. package/dist/components/nano-data-table.d.ts +11 -0
  503. package/dist/components/nano-data-table.js +1945 -0
  504. package/dist/components/nano-datalist.js +1 -3
  505. package/dist/components/nano-date-input.js +35 -34
  506. package/dist/components/nano-date-picker.js +3 -5
  507. package/dist/components/nano-details.js +3 -209
  508. package/dist/components/nano-dialog.js +38 -34
  509. package/dist/components/nano-drawer.js +2 -335
  510. package/dist/components/nano-dropdown.js +1 -3
  511. package/dist/components/nano-field-validator.js +8 -14
  512. package/dist/components/nano-file-upload.js +4 -7
  513. package/dist/components/nano-footer.d.ts +11 -0
  514. package/dist/components/nano-footer.js +47 -0
  515. package/dist/components/nano-global-nav.js +519 -1251
  516. package/dist/components/nano-global-search-results.js +2 -669
  517. package/dist/components/nano-grid-item.js +2 -4
  518. package/dist/components/nano-grid.js +1 -3
  519. package/dist/components/nano-hero.js +9 -12
  520. package/dist/components/nano-icon-button.js +1 -3
  521. package/dist/components/nano-icon-item.d.ts +11 -0
  522. package/dist/components/nano-icon-item.js +39 -0
  523. package/dist/components/nano-icon.js +1 -3
  524. package/dist/components/nano-img.js +1 -3
  525. package/dist/components/nano-in-page-nav.d.ts +11 -0
  526. package/dist/components/nano-in-page-nav.js +246 -0
  527. package/dist/components/nano-input.js +1 -3
  528. package/dist/components/nano-intersection-observe.js +16 -13
  529. package/dist/components/nano-masked-overflow.d.ts +11 -0
  530. package/dist/components/nano-masked-overflow.js +9 -0
  531. package/dist/components/nano-menu-drawer.js +5 -8
  532. package/dist/components/nano-menu.js +1 -3
  533. package/dist/components/nano-more-less.js +3 -5
  534. package/dist/components/nano-nav-item.js +1 -3
  535. package/dist/components/nano-option.js +1 -3
  536. package/dist/components/nano-progress-bar.js +1 -3
  537. package/dist/components/nano-range.js +4 -7
  538. package/dist/components/nano-rating.js +8 -16
  539. package/dist/components/nano-resize-observe.js +1 -3
  540. package/dist/components/nano-select.js +1 -3
  541. package/dist/components/nano-skeleton.js +1 -3
  542. package/dist/components/nano-slide.js +4 -7
  543. package/dist/components/nano-slides.js +3 -3087
  544. package/dist/components/nano-sortable.js +12 -13
  545. package/dist/components/nano-spinner.js +1 -3
  546. package/dist/components/nano-split-pane.js +5 -8
  547. package/dist/components/nano-sticker.js +1 -3
  548. package/dist/components/nano-tab-content.js +8 -11
  549. package/dist/components/nano-tab-group.js +85 -239
  550. package/dist/components/nano-tab.js +17 -17
  551. package/dist/components/nano-table.js +205 -1882
  552. package/dist/components/nano-tag.d.ts +11 -0
  553. package/dist/components/nano-tag.js +9 -0
  554. package/dist/components/nano-tooltip.js +1 -3
  555. package/dist/components/nav-item.js +174 -225
  556. package/dist/components/option.js +12 -13
  557. package/dist/components/page-dots.js +6 -9
  558. package/dist/components/popover.js +31 -16
  559. package/dist/components/progress-bar.js +6 -9
  560. package/dist/components/renderer.js +12 -4
  561. package/dist/components/resize-observe.js +2 -4
  562. package/dist/components/scroll.js +60 -5
  563. package/dist/components/select.js +113 -102
  564. package/dist/components/skeleton.js +5 -8
  565. package/dist/components/slides.js +3097 -0
  566. package/dist/components/slot.js +84 -36
  567. package/dist/components/spinner.js +4 -7
  568. package/dist/components/sticker.js +7 -13
  569. package/dist/components/style.js +56 -0
  570. package/dist/components/tabbable.js +42 -28
  571. package/dist/components/table.worker.js +3 -5
  572. package/dist/components/tag.js +89 -0
  573. package/dist/components/theme.js +2 -5
  574. package/dist/components/throttle.js +1 -3
  575. package/dist/components/tooltip.js +20 -10
  576. package/dist/esm/active-element-C1pBwzyj.js +65 -0
  577. package/dist/esm/algolia-data-CCqzaIh4.js +47 -0
  578. package/dist/esm/algoliasearch-lite.esm.browser-C1SNUAIj.js +949 -0
  579. package/dist/esm/component-store-C-YnXSQE.js +324 -0
  580. package/dist/esm/date-utils-BZYdjI1P.js +217 -0
  581. package/dist/esm/dom-GYcqUAl_.js +67 -0
  582. package/dist/esm/drag-BLOEuv-q.js +70 -0
  583. package/dist/esm/events-ClRFmcmJ.js +34 -0
  584. package/dist/esm/fade-C3aqZinc.js +210 -0
  585. package/dist/esm/form-control-BjKTwcqA.js +81 -0
  586. package/dist/esm/fullscreen-T7b44-vN.js +130 -0
  587. package/dist/esm/index-BQSuCPXH.js +652 -0
  588. package/dist/esm/index-DOuz1S3w.js +3260 -0
  589. package/dist/esm/index-DkZY6pJu.js +196 -0
  590. package/dist/esm/index-browser-BvSm1vXe.js +6 -0
  591. package/dist/esm/index.js +43 -24
  592. package/dist/esm/lazyload-BdH0bSmg.js +92 -0
  593. package/dist/esm/loader.js +4 -7
  594. package/dist/esm/local-logged-in-DNQyU0ot.js +214 -0
  595. package/dist/esm/local-logged-out-CD2oXHpq.js +210 -0
  596. package/dist/esm/math-BEqsTfVK.js +36 -0
  597. package/dist/esm/modal-s7sHBYzQ.js +47 -0
  598. package/dist/esm/nano-accordion.entry.js +13 -25
  599. package/dist/esm/nano-alert.entry.js +85 -34
  600. package/dist/esm/nano-algolia-filter.entry.js +10 -13
  601. package/dist/esm/nano-algolia-pagination.entry.js +5 -7
  602. package/dist/esm/nano-algolia-results.entry.js +7 -9
  603. package/dist/esm/nano-algolia.entry.js +22 -25
  604. package/dist/esm/nano-animation.entry.js +5 -7
  605. package/dist/esm/nano-avatar_5.entry.js +1772 -0
  606. package/dist/esm/nano-breadcrumb.entry.js +39 -0
  607. package/dist/esm/nano-card-carousel.entry.js +93 -0
  608. package/dist/esm/nano-card.entry.js +21 -0
  609. package/dist/esm/nano-checkbox-group.entry.js +79 -45
  610. package/dist/esm/nano-checkbox.entry.js +34 -22
  611. package/dist/esm/nano-collapsible-comparison.entry.js +60 -0
  612. package/dist/esm/nano-components.js +6 -8
  613. package/dist/esm/nano-content-links.entry.js +15 -0
  614. package/dist/esm/nano-cta.entry.js +40 -0
  615. package/dist/esm/nano-data-table-Bm9J8Phu.js +1844 -0
  616. package/dist/esm/nano-data-table.entry.js +11 -0
  617. package/dist/esm/nano-datalist_3.entry.js +88 -259
  618. package/dist/esm/nano-date-input.entry.js +14 -25
  619. package/dist/esm/nano-date-picker_2.entry.js +996 -0
  620. package/dist/esm/nano-details.entry.js +64 -79
  621. package/dist/esm/nano-dialog.entry.js +45 -40
  622. package/dist/esm/nano-dropdown_2.entry.js +637 -0
  623. package/dist/esm/nano-field-validator.entry.js +9 -15
  624. package/dist/esm/nano-file-upload.entry.js +6 -9
  625. package/dist/esm/nano-footer.entry.js +23 -0
  626. package/dist/esm/nano-global-nav.entry.js +416 -1169
  627. package/dist/esm/nano-grid-item.entry.js +3 -5
  628. package/dist/esm/nano-grid_2.entry.js +12 -16
  629. package/dist/esm/nano-hero.entry.js +9 -14
  630. package/dist/esm/nano-icon-item.entry.js +19 -0
  631. package/dist/esm/nano-icon_3.entry.js +651 -0
  632. package/dist/esm/nano-in-page-nav.entry.js +210 -0
  633. package/dist/esm/nano-intersection-observe.entry.js +18 -14
  634. package/dist/esm/nano-masked-overflow.entry.js +349 -0
  635. package/dist/esm/nano-menu-drawer.entry.js +8 -11
  636. package/dist/esm/nano-more-less.entry.js +5 -7
  637. package/dist/esm/nano-nav-item.entry.js +269 -0
  638. package/dist/esm/nano-progress-bar.entry.js +8 -11
  639. package/dist/esm/nano-range.entry.js +9 -12
  640. package/dist/esm/nano-rating.entry.js +10 -18
  641. package/dist/esm/nano-resize-observe_2.entry.js +8 -11
  642. package/dist/esm/nano-slide.entry.js +6 -9
  643. package/dist/esm/nano-slides-BEE7xEu_.js +3045 -0
  644. package/dist/esm/nano-slides.entry.js +4 -6
  645. package/dist/esm/nano-sortable.entry.js +11 -12
  646. package/dist/esm/nano-spinner.entry.js +6 -9
  647. package/dist/esm/nano-split-pane.entry.js +9 -12
  648. package/dist/esm/nano-sticker.entry.js +10 -16
  649. package/dist/esm/nano-tab-content.entry.js +9 -12
  650. package/dist/esm/nano-tab-group.entry.js +64 -226
  651. package/dist/esm/nano-tab.entry.js +18 -18
  652. package/dist/esm/nano-table.entry.js +234 -9
  653. package/dist/esm/page-dots-D2WI1eZ0.js +136 -0
  654. package/dist/esm/popover-D1cBIHdr.js +1945 -0
  655. package/dist/esm/renderer-CnE0Hztu.js +66 -0
  656. package/dist/esm/scroll-DHa1CIPP.js +179 -0
  657. package/dist/esm/search-insights-8OL2oeQN.js +48 -0
  658. package/dist/esm/slot-lixS0pd2.js +104 -0
  659. package/dist/esm/style-BrRDhFfF.js +56 -0
  660. package/dist/esm/tabbable-QmV19K7Q.js +121 -0
  661. package/dist/esm/table.worker-BTF0UXAd.js +4 -0
  662. package/dist/esm/table.worker-zeRR3oed.js +28 -0
  663. package/dist/esm/theme-aiuyr36I.js +43 -0
  664. package/dist/esm/throttle-C93FMm2Z.js +48 -0
  665. package/dist/nano-assets/font/jp/noto-sans-jp-v53-japanese_latin-300.woff2 +0 -0
  666. package/dist/nano-assets/font/latin/noto-sans-v39-latin-300.woff2 +0 -0
  667. package/dist/nano-assets/font/latin/noto-sans-v39-latin-300italic.woff2 +0 -0
  668. package/dist/nano-assets/font/sc/noto-sans-sc-v37-chinese-simplified_latin-300.woff2 +0 -0
  669. package/dist/nano-assets/hash.txt +1 -1
  670. package/dist/nano-assets/icon/device/elysion.svg +5 -0
  671. package/dist/nano-assets/icon/device/flongle.svg +4 -0
  672. package/dist/nano-assets/icon/device/gridion.svg +9 -0
  673. package/dist/nano-assets/icon/device/minion-mk1d.svg +4 -0
  674. package/dist/nano-assets/icon/device/p2-integrated.svg +7 -0
  675. package/dist/nano-assets/icon/device/p2-solo.svg +5 -0
  676. package/dist/nano-assets/icon/device/p24.svg +6 -0
  677. package/dist/nano-assets/icon/device/q.svg +4 -0
  678. package/dist/nano-assets/icon/pictogram/analyse.svg +10 -0
  679. package/dist/nano-assets/icon/pictogram/animal-research.svg +4 -0
  680. package/dist/nano-assets/icon/pictogram/assembly.svg +3 -0
  681. package/dist/nano-assets/icon/pictogram/biopharma.svg +3 -0
  682. package/dist/nano-assets/icon/pictogram/cancer-research.svg +15 -0
  683. package/dist/nano-assets/icon/pictogram/chromatin-conformation.svg +3 -0
  684. package/dist/nano-assets/icon/pictogram/clinical-research.svg +3 -0
  685. package/dist/nano-assets/icon/pictogram/environmental-conservation.svg +5 -0
  686. package/dist/nano-assets/icon/pictogram/epigenetics.svg +5 -0
  687. package/dist/nano-assets/icon/pictogram/fusion-transcripts.svg +3 -0
  688. package/dist/nano-assets/icon/pictogram/gene-expression.svg +3 -0
  689. package/dist/nano-assets/icon/pictogram/genome-research.svg +3 -0
  690. package/dist/nano-assets/icon/pictogram/human-genomics.svg +4 -0
  691. package/dist/nano-assets/icon/pictogram/infectious-disease.svg +13 -0
  692. package/dist/nano-assets/icon/pictogram/microbial-genomics.svg +15 -0
  693. package/dist/nano-assets/icon/pictogram/microbiome-metagenomics.svg +16 -0
  694. package/dist/nano-assets/icon/pictogram/multiomics.svg +13 -0
  695. package/dist/nano-assets/icon/pictogram/plant-research.svg +3 -0
  696. package/dist/nano-assets/icon/pictogram/population-genomics.svg +6 -0
  697. package/dist/nano-assets/icon/pictogram/prepare.svg +4 -0
  698. package/dist/nano-assets/icon/pictogram/scalable.svg +12 -0
  699. package/dist/nano-assets/icon/pictogram/sequence.svg +3 -0
  700. package/dist/nano-assets/icon/pictogram/single-cell-spatial-transcriptions.svg +12 -0
  701. package/dist/nano-assets/icon/pictogram/snvs-phasing.svg +4 -0
  702. package/dist/nano-assets/icon/pictogram/splice-variation.svg +4 -0
  703. package/dist/nano-assets/icon/pictogram/structural-variation.svg +4 -0
  704. package/dist/nano-assets/icon/pictogram/targeted-sequencing.svg +10 -0
  705. package/dist/nano-assets/icon/pictogram/transcriptomics.svg +3 -0
  706. package/dist/nano-assets/icon/pictogram/unrestricted-read-length.svg +10 -0
  707. package/dist/nano-assets/icon/pictogram/whole-genome-sequencing.svg +3 -0
  708. package/dist/nano-assets/icon/pictogram/workflow-end-to-end.svg +3 -0
  709. package/dist/nano-assets/img/bsi/27001.svg +188 -0
  710. package/dist/nano-assets/img/bsi/9001.svg +172 -0
  711. package/dist/nano-assets/img/bsi/mark-of-trust.svg +230 -0
  712. package/dist/nano-assets/img/flags/en.svg +15 -0
  713. package/dist/nano-assets/img/flags/es.svg +544 -0
  714. package/dist/nano-assets/img/flags/ja.svg +11 -0
  715. package/dist/nano-assets/img/flags/zh.svg +14 -0
  716. package/dist/nano-assets/local-logged-in.json +202 -0
  717. package/dist/nano-assets/local-logged-out.json +198 -0
  718. package/dist/nano-components/active-element-C1pBwzyj.js +4 -0
  719. package/dist/nano-components/algolia-data-CCqzaIh4.js +4 -0
  720. package/dist/nano-components/algoliasearch-lite.esm.browser-C1SNUAIj.js +4 -0
  721. package/dist/nano-components/assets/local-logged-in.json +202 -0
  722. package/dist/nano-components/assets/local-logged-out.json +198 -0
  723. package/dist/nano-components/component-store-C-YnXSQE.js +4 -0
  724. package/dist/nano-components/date-utils-BZYdjI1P.js +4 -0
  725. package/dist/nano-components/device/elysion.svg +5 -0
  726. package/dist/nano-components/device/flongle.svg +4 -0
  727. package/dist/nano-components/device/gridion.svg +9 -0
  728. package/dist/nano-components/device/minion-mk1d.svg +4 -0
  729. package/dist/nano-components/device/p2-integrated.svg +7 -0
  730. package/dist/nano-components/device/p2-solo.svg +5 -0
  731. package/dist/nano-components/device/p24.svg +6 -0
  732. package/dist/nano-components/device/q.svg +4 -0
  733. package/dist/nano-components/dom-GYcqUAl_.js +4 -0
  734. package/dist/nano-components/drag-BLOEuv-q.js +4 -0
  735. package/dist/nano-components/events-ClRFmcmJ.js +4 -0
  736. package/dist/nano-components/fade-C3aqZinc.js +4 -0
  737. package/dist/nano-components/form-control-BjKTwcqA.js +4 -0
  738. package/dist/nano-components/fullscreen-T7b44-vN.js +4 -0
  739. package/dist/nano-components/index-BQSuCPXH.js +4 -0
  740. package/dist/nano-components/index-DOuz1S3w.js +5 -0
  741. package/dist/nano-components/index-DkZY6pJu.js +4 -0
  742. package/dist/nano-components/index-browser-BvSm1vXe.js +4 -0
  743. package/dist/nano-components/index.esm.js +2 -3
  744. package/dist/nano-components/lazyload-BdH0bSmg.js +4 -0
  745. package/dist/nano-components/local-logged-in-DNQyU0ot.js +4 -0
  746. package/dist/nano-components/local-logged-out-CD2oXHpq.js +4 -0
  747. package/dist/nano-components/math-BEqsTfVK.js +4 -0
  748. package/dist/nano-components/modal-s7sHBYzQ.js +4 -0
  749. package/dist/nano-components/nano-accordion.entry.js +2 -3
  750. package/dist/nano-components/nano-alert.entry.js +2 -3
  751. package/dist/nano-components/nano-algolia-filter.entry.js +2 -3
  752. package/dist/nano-components/nano-algolia-pagination.entry.js +2 -3
  753. package/dist/nano-components/nano-algolia-results.entry.js +2 -3
  754. package/dist/nano-components/nano-algolia.entry.js +2 -3
  755. package/dist/nano-components/nano-animation.entry.js +2 -3
  756. package/dist/nano-components/nano-avatar_5.entry.js +4 -0
  757. package/dist/nano-components/nano-breadcrumb.entry.js +4 -0
  758. package/dist/nano-components/nano-card-carousel.entry.js +4 -0
  759. package/dist/nano-components/nano-card.entry.js +4 -0
  760. package/dist/nano-components/nano-checkbox-group.entry.js +2 -3
  761. package/dist/nano-components/nano-checkbox.entry.js +2 -3
  762. package/dist/nano-components/nano-collapsible-comparison.entry.js +4 -0
  763. package/dist/nano-components/nano-components.css +2050 -1
  764. package/dist/nano-components/nano-components.esm.js +2 -3
  765. package/dist/nano-components/nano-content-links.entry.js +4 -0
  766. package/dist/nano-components/nano-cta.entry.js +4 -0
  767. package/dist/nano-components/nano-data-table-Bm9J8Phu.js +4 -0
  768. package/dist/nano-components/nano-data-table.entry.js +4 -0
  769. package/dist/nano-components/nano-datalist_3.entry.js +2 -3
  770. package/dist/nano-components/nano-date-input.entry.js +2 -3
  771. package/dist/nano-components/nano-date-picker_2.entry.js +4 -0
  772. package/dist/nano-components/nano-details.entry.js +2 -3
  773. package/dist/nano-components/nano-dialog.entry.js +2 -3
  774. package/dist/nano-components/nano-dropdown_2.entry.js +4 -0
  775. package/dist/nano-components/nano-field-validator.entry.js +2 -3
  776. package/dist/nano-components/nano-file-upload.entry.js +2 -3
  777. package/dist/nano-components/nano-footer.entry.js +4 -0
  778. package/dist/nano-components/nano-global-nav.entry.js +2 -3
  779. package/dist/nano-components/nano-grid-item.entry.js +2 -3
  780. package/dist/nano-components/nano-grid_2.entry.js +2 -3
  781. package/dist/nano-components/nano-hero.entry.js +2 -3
  782. package/dist/nano-components/nano-icon-item.entry.js +4 -0
  783. package/dist/nano-components/nano-icon_3.entry.js +4 -0
  784. package/dist/nano-components/nano-in-page-nav.entry.js +4 -0
  785. package/dist/nano-components/nano-intersection-observe.entry.js +2 -3
  786. package/dist/nano-components/nano-masked-overflow.entry.js +4 -0
  787. package/dist/nano-components/nano-menu-drawer.entry.js +2 -3
  788. package/dist/nano-components/nano-more-less.entry.js +2 -3
  789. package/dist/nano-components/nano-nav-item.entry.js +4 -0
  790. package/dist/nano-components/nano-progress-bar.entry.js +2 -3
  791. package/dist/nano-components/nano-range.entry.js +2 -3
  792. package/dist/nano-components/nano-rating.entry.js +2 -3
  793. package/dist/nano-components/nano-resize-observe_2.entry.js +2 -3
  794. package/dist/nano-components/nano-slide.entry.js +2 -3
  795. package/dist/nano-components/nano-slides-BEE7xEu_.js +22 -0
  796. package/dist/nano-components/nano-slides.entry.js +2 -3
  797. package/dist/nano-components/nano-sortable.entry.js +2 -3
  798. package/dist/nano-components/nano-spinner.entry.js +2 -3
  799. package/dist/nano-components/nano-split-pane.entry.js +2 -3
  800. package/dist/nano-components/nano-sticker.entry.js +2 -3
  801. package/dist/nano-components/nano-tab-content.entry.js +2 -3
  802. package/dist/nano-components/nano-tab-group.entry.js +2 -3
  803. package/dist/nano-components/nano-tab.entry.js +2 -3
  804. package/dist/nano-components/nano-table.entry.js +2 -3
  805. package/dist/nano-components/page-dots-D2WI1eZ0.js +4 -0
  806. package/dist/nano-components/pictogram/analyse.svg +10 -0
  807. package/dist/nano-components/pictogram/animal-research.svg +4 -0
  808. package/dist/nano-components/pictogram/assembly.svg +3 -0
  809. package/dist/nano-components/pictogram/biopharma.svg +3 -0
  810. package/dist/nano-components/pictogram/cancer-research.svg +15 -0
  811. package/dist/nano-components/pictogram/chromatin-conformation.svg +3 -0
  812. package/dist/nano-components/pictogram/clinical-research.svg +3 -0
  813. package/dist/nano-components/pictogram/environmental-conservation.svg +5 -0
  814. package/dist/nano-components/pictogram/epigenetics.svg +5 -0
  815. package/dist/nano-components/pictogram/fusion-transcripts.svg +3 -0
  816. package/dist/nano-components/pictogram/gene-expression.svg +3 -0
  817. package/dist/nano-components/pictogram/genome-research.svg +3 -0
  818. package/dist/nano-components/pictogram/human-genomics.svg +4 -0
  819. package/dist/nano-components/pictogram/infectious-disease.svg +13 -0
  820. package/dist/nano-components/pictogram/microbial-genomics.svg +15 -0
  821. package/dist/nano-components/pictogram/microbiome-metagenomics.svg +16 -0
  822. package/dist/nano-components/pictogram/multiomics.svg +13 -0
  823. package/dist/nano-components/pictogram/plant-research.svg +3 -0
  824. package/dist/nano-components/pictogram/population-genomics.svg +6 -0
  825. package/dist/nano-components/pictogram/prepare.svg +4 -0
  826. package/dist/nano-components/pictogram/scalable.svg +12 -0
  827. package/dist/nano-components/pictogram/sequence.svg +3 -0
  828. package/dist/nano-components/pictogram/single-cell-spatial-transcriptions.svg +12 -0
  829. package/dist/nano-components/pictogram/snvs-phasing.svg +4 -0
  830. package/dist/nano-components/pictogram/splice-variation.svg +4 -0
  831. package/dist/nano-components/pictogram/structural-variation.svg +4 -0
  832. package/dist/nano-components/pictogram/targeted-sequencing.svg +10 -0
  833. package/dist/nano-components/pictogram/transcriptomics.svg +3 -0
  834. package/dist/nano-components/pictogram/unrestricted-read-length.svg +10 -0
  835. package/dist/nano-components/pictogram/whole-genome-sequencing.svg +3 -0
  836. package/dist/nano-components/pictogram/workflow-end-to-end.svg +3 -0
  837. package/dist/nano-components/popover-D1cBIHdr.js +4 -0
  838. package/dist/nano-components/renderer-CnE0Hztu.js +4 -0
  839. package/dist/nano-components/scroll-DHa1CIPP.js +4 -0
  840. package/dist/nano-components/search-insights-8OL2oeQN.js +4 -0
  841. package/dist/nano-components/slot-lixS0pd2.js +4 -0
  842. package/dist/nano-components/style-BrRDhFfF.js +4 -0
  843. package/dist/nano-components/tabbable-QmV19K7Q.js +4 -0
  844. package/dist/nano-components/table.worker-BTF0UXAd.js +4 -0
  845. package/dist/nano-components/table.worker-zeRR3oed.js +4 -0
  846. package/dist/nano-components/theme-aiuyr36I.js +4 -0
  847. package/dist/nano-components/throttle-C93FMm2Z.js +4 -0
  848. package/dist/plugins/stencil/vue-output/generate-vue-component.js +73 -0
  849. package/dist/plugins/stencil/vue-output/index.js +4 -0
  850. package/dist/plugins/stencil/vue-output/output-vue.js +95 -0
  851. package/dist/plugins/stencil/vue-output/plugin.js +43 -0
  852. package/dist/plugins/stencil/vue-output/types.js +1 -0
  853. package/dist/plugins/stencil/vue-output/utils.js +81 -0
  854. package/dist/stencil.config.js +49 -22
  855. package/dist/stencil.config.prod.js +4 -2
  856. package/dist/style/components.css +1 -0
  857. package/dist/style/components.css.map +1 -0
  858. package/dist/style/core.css +1 -0
  859. package/dist/style/core.css.map +1 -0
  860. package/dist/style/dark.css +1 -0
  861. package/dist/style/dark.css.map +1 -0
  862. package/dist/style/light.css +1 -0
  863. package/dist/style/light.css.map +1 -0
  864. package/dist/style/nano.css +1 -0
  865. package/dist/style/nano.css.map +1 -0
  866. package/dist/testing/mocks/intersection-observer.js +1 -2
  867. package/dist/types/Users/John.Jenkins/projects/nano-components/packages/components/.stencil/stencil.config.d.ts +2 -0
  868. package/dist/types/Users/John.Jenkins/projects/nano-components/packages/components/.stencil/stencil.config.prod.d.ts +2 -0
  869. package/dist/types/components/accordion/accordion.d.ts +10 -12
  870. package/dist/types/components/alert/alert.d.ts +35 -5
  871. package/dist/types/components/alert/alert.helpers.d.ts +7 -5
  872. package/dist/types/components/algolia/algolia-interface.d.ts +1 -1
  873. package/dist/types/components/avatar/avatar.d.ts +13 -0
  874. package/dist/types/components/badge/badge.d.ts +17 -0
  875. package/dist/types/components/breadcrumb/breadcrumb.d.ts +22 -0
  876. package/dist/types/components/card/card.d.ts +20 -0
  877. package/dist/types/components/card-carousel/card-carousel.d.ts +32 -0
  878. package/dist/types/components/checkbox/checkbox-group.d.ts +12 -7
  879. package/dist/types/components/checkbox/checkbox.d.ts +16 -11
  880. package/dist/types/components/collapsible-comparison/collapsible-comparison.d.ts +30 -0
  881. package/dist/types/components/content-links/content-links.d.ts +10 -0
  882. package/dist/types/components/cta/cta.d.ts +30 -0
  883. package/dist/types/components/data-table/table-interface.d.ts +280 -0
  884. package/dist/types/components/data-table/table.d.ts +250 -0
  885. package/dist/types/components/data-table/table.store.d.ts +24 -0
  886. package/dist/types/components/data-table/table.utils.d.ts +63 -0
  887. package/dist/types/components/datalist/datalist.d.ts +5 -5
  888. package/dist/types/components/date-input/date-input.d.ts +8 -5
  889. package/dist/types/components/date-picker/date-picker.d.ts +11 -15
  890. package/dist/types/components/details/details.d.ts +25 -27
  891. package/dist/types/components/dialog/dialog.d.ts +4 -5
  892. package/dist/types/components/dialog/dialog.helpers.d.ts +2 -5
  893. package/dist/types/components/drawer/drawer.d.ts +14 -3
  894. package/dist/types/components/dropdown/dropdown.d.ts +11 -9
  895. package/dist/types/components/field-validator/field-validator.d.ts +4 -6
  896. package/dist/types/components/footer/footer.d.ts +21 -0
  897. package/dist/types/components/form-control/form-control.d.ts +4 -1
  898. package/dist/types/components/global-nav/global-nav.d.ts +111 -280
  899. package/dist/types/components/global-search-results/global-search-results.d.ts +8 -7
  900. package/dist/types/components/grid/grid.d.ts +4 -6
  901. package/dist/types/components/icon/icon.d.ts +21 -14
  902. package/dist/types/components/icon-button/icon-button.d.ts +4 -4
  903. package/dist/types/components/icon-item/icon-item.d.ts +17 -0
  904. package/dist/types/components/in-page-nav/in-page-nav.d.ts +52 -0
  905. package/dist/types/components/input/input.d.ts +59 -21
  906. package/dist/types/components/intersection-observe/intersection-observe.d.ts +6 -2
  907. package/dist/types/components/masked-overflow/masked-overflow.d.ts +94 -0
  908. package/dist/types/components/menu/menu.d.ts +15 -7
  909. package/dist/types/components/nav-item/nav-item.d.ts +30 -84
  910. package/dist/types/components/option/option.d.ts +2 -1
  911. package/dist/types/components/progress-bar/progress-bar.d.ts +4 -1
  912. package/dist/types/components/range/range.d.ts +3 -4
  913. package/dist/types/components/rating/rating.d.ts +0 -1
  914. package/dist/types/components/resize-observe/resize-observe.d.ts +2 -4
  915. package/dist/types/components/select/select.d.ts +20 -21
  916. package/dist/types/components/skeleton/skeleton.d.ts +3 -2
  917. package/dist/types/components/slides/slides.d.ts +3 -3
  918. package/dist/types/components/sortable/sortable.d.ts +5 -5
  919. package/dist/types/components/spinner/spinner.d.ts +4 -0
  920. package/dist/types/components/split-pane/split-pane.d.ts +3 -0
  921. package/dist/types/components/table/table.d.ts +27 -245
  922. package/dist/types/components/tabs/tab-content.d.ts +6 -1
  923. package/dist/types/components/tabs/tab-group.d.ts +17 -37
  924. package/dist/types/components/tabs/tab.d.ts +9 -4
  925. package/dist/types/components/tag/tag.d.ts +30 -0
  926. package/dist/types/components/tooltip/tooltip.d.ts +4 -0
  927. package/dist/types/components.d.ts +2617 -1108
  928. package/dist/types/stencil-public-runtime.d.ts +23 -1
  929. package/dist/types/types/shared.d.ts +1 -1
  930. package/dist/types/utils/active-element.d.ts +20 -0
  931. package/dist/types/utils/popover.d.ts +1 -0
  932. package/dist/types/utils/scroll.d.ts +15 -1
  933. package/dist/types/utils/slot.d.ts +25 -9
  934. package/dist/types/utils/store/component-store.d.ts +21 -0
  935. package/dist/types/utils/style.d.ts +9 -0
  936. package/dist/types/utils/tabbable.d.ts +4 -2
  937. package/dist/types/utils/transitions.d.ts +2 -0
  938. package/dist/wdio.conf.js +1 -3
  939. package/docs-json.json +16655 -13467
  940. package/docs-vscode.json +807 -442
  941. package/hydrate/index.d.ts +38 -24
  942. package/hydrate/index.js +15086 -15545
  943. package/hydrate/index.mjs +15085 -15544
  944. package/loader/cdn.js +1 -1
  945. package/loader/index.cjs.js +1 -1
  946. package/loader/index.es2017.js +1 -1
  947. package/loader/index.js +1 -1
  948. package/package.json +26 -19
  949. package/dist/cjs/active-element-8ffcfe49.js +0 -21
  950. package/dist/cjs/active-element-8ffcfe49.js.map +0 -1
  951. package/dist/cjs/algolia-data-ca9cd58e.js +0 -51
  952. package/dist/cjs/algolia-data-ca9cd58e.js.map +0 -1
  953. package/dist/cjs/algoliasearch-lite.esm.browser-890872fc.js +0 -968
  954. package/dist/cjs/algoliasearch-lite.esm.browser-890872fc.js.map +0 -1
  955. package/dist/cjs/app-globals-3e14cb71.js +0 -41
  956. package/dist/cjs/app-globals-3e14cb71.js.map +0 -1
  957. package/dist/cjs/component-store-b8d4bd91.js +0 -325
  958. package/dist/cjs/component-store-b8d4bd91.js.map +0 -1
  959. package/dist/cjs/date-utils-d9d3e6b4.js +0 -234
  960. package/dist/cjs/date-utils-d9d3e6b4.js.map +0 -1
  961. package/dist/cjs/dom-b99a1aec.js +0 -83
  962. package/dist/cjs/dom-b99a1aec.js.map +0 -1
  963. package/dist/cjs/drag-c0a99167.js +0 -74
  964. package/dist/cjs/drag-c0a99167.js.map +0 -1
  965. package/dist/cjs/events-96e9a3d4.js +0 -39
  966. package/dist/cjs/events-96e9a3d4.js.map +0 -1
  967. package/dist/cjs/fade-6a5004f4.js +0 -214
  968. package/dist/cjs/fade-6a5004f4.js.map +0 -1
  969. package/dist/cjs/focus-visible-39b54d1f.js +0 -68
  970. package/dist/cjs/focus-visible-39b54d1f.js.map +0 -1
  971. package/dist/cjs/form-control-5bb39cc2.js +0 -82
  972. package/dist/cjs/form-control-5bb39cc2.js.map +0 -1
  973. package/dist/cjs/fullscreen-f5db9bbe.js +0 -134
  974. package/dist/cjs/fullscreen-f5db9bbe.js.map +0 -1
  975. package/dist/cjs/index-41263d6e.js +0 -660
  976. package/dist/cjs/index-41263d6e.js.map +0 -1
  977. package/dist/cjs/index-615cdb64.js +0 -3085
  978. package/dist/cjs/index-615cdb64.js.map +0 -1
  979. package/dist/cjs/index-a92a0379.js +0 -200
  980. package/dist/cjs/index-a92a0379.js.map +0 -1
  981. package/dist/cjs/index-browser-745018ea.js +0 -16
  982. package/dist/cjs/index-browser-745018ea.js.map +0 -1
  983. package/dist/cjs/index.cjs.js.map +0 -1
  984. package/dist/cjs/lazyload-13d72e60.js +0 -96
  985. package/dist/cjs/lazyload-13d72e60.js.map +0 -1
  986. package/dist/cjs/loader.cjs.js.map +0 -1
  987. package/dist/cjs/local-my-account-53c19159.js +0 -472
  988. package/dist/cjs/local-my-account-53c19159.js.map +0 -1
  989. package/dist/cjs/math-ea9cdc71.js +0 -41
  990. package/dist/cjs/math-ea9cdc71.js.map +0 -1
  991. package/dist/cjs/modal-ff47c677.js +0 -51
  992. package/dist/cjs/modal-ff47c677.js.map +0 -1
  993. package/dist/cjs/nano-accordion.cjs.entry.js.map +0 -1
  994. package/dist/cjs/nano-alert.cjs.entry.js.map +0 -1
  995. package/dist/cjs/nano-algolia-filter.cjs.entry.js.map +0 -1
  996. package/dist/cjs/nano-algolia-pagination.cjs.entry.js.map +0 -1
  997. package/dist/cjs/nano-algolia-results.cjs.entry.js.map +0 -1
  998. package/dist/cjs/nano-algolia.cjs.entry.js.map +0 -1
  999. package/dist/cjs/nano-animation.cjs.entry.js.map +0 -1
  1000. package/dist/cjs/nano-checkbox-group.cjs.entry.js.map +0 -1
  1001. package/dist/cjs/nano-checkbox.cjs.entry.js.map +0 -1
  1002. package/dist/cjs/nano-components.cjs.js.map +0 -1
  1003. package/dist/cjs/nano-datalist_3.cjs.entry.js.map +0 -1
  1004. package/dist/cjs/nano-date-input.cjs.entry.js.map +0 -1
  1005. package/dist/cjs/nano-date-picker.cjs.entry.js +0 -393
  1006. package/dist/cjs/nano-date-picker.cjs.entry.js.map +0 -1
  1007. package/dist/cjs/nano-details.cjs.entry.js.map +0 -1
  1008. package/dist/cjs/nano-dialog.cjs.entry.js.map +0 -1
  1009. package/dist/cjs/nano-drawer.cjs.entry.js +0 -289
  1010. package/dist/cjs/nano-drawer.cjs.entry.js.map +0 -1
  1011. package/dist/cjs/nano-dropdown.cjs.entry.js +0 -373
  1012. package/dist/cjs/nano-dropdown.cjs.entry.js.map +0 -1
  1013. package/dist/cjs/nano-field-validator.cjs.entry.js.map +0 -1
  1014. package/dist/cjs/nano-file-upload.cjs.entry.js.map +0 -1
  1015. package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js +0 -1107
  1016. package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js.map +0 -1
  1017. package/dist/cjs/nano-global-nav.cjs.entry.js.map +0 -1
  1018. package/dist/cjs/nano-global-search-results.cjs.entry.js +0 -636
  1019. package/dist/cjs/nano-global-search-results.cjs.entry.js.map +0 -1
  1020. package/dist/cjs/nano-grid-item.cjs.entry.js.map +0 -1
  1021. package/dist/cjs/nano-grid_2.cjs.entry.js.map +0 -1
  1022. package/dist/cjs/nano-hero.cjs.entry.js.map +0 -1
  1023. package/dist/cjs/nano-icon-button_2.cjs.entry.js +0 -341
  1024. package/dist/cjs/nano-icon-button_2.cjs.entry.js.map +0 -1
  1025. package/dist/cjs/nano-icon.cjs.entry.js +0 -320
  1026. package/dist/cjs/nano-icon.cjs.entry.js.map +0 -1
  1027. package/dist/cjs/nano-input.cjs.entry.js +0 -548
  1028. package/dist/cjs/nano-input.cjs.entry.js.map +0 -1
  1029. package/dist/cjs/nano-intersection-observe.cjs.entry.js.map +0 -1
  1030. package/dist/cjs/nano-menu-drawer.cjs.entry.js.map +0 -1
  1031. package/dist/cjs/nano-more-less.cjs.entry.js.map +0 -1
  1032. package/dist/cjs/nano-overflow-nav.cjs.entry.js +0 -342
  1033. package/dist/cjs/nano-overflow-nav.cjs.entry.js.map +0 -1
  1034. package/dist/cjs/nano-progress-bar.cjs.entry.js.map +0 -1
  1035. package/dist/cjs/nano-range.cjs.entry.js.map +0 -1
  1036. package/dist/cjs/nano-rating.cjs.entry.js.map +0 -1
  1037. package/dist/cjs/nano-resize-observe_2.cjs.entry.js.map +0 -1
  1038. package/dist/cjs/nano-slide.cjs.entry.js.map +0 -1
  1039. package/dist/cjs/nano-slides-0a60315d.js +0 -3043
  1040. package/dist/cjs/nano-slides-0a60315d.js.map +0 -1
  1041. package/dist/cjs/nano-slides.cjs.entry.js.map +0 -1
  1042. package/dist/cjs/nano-sortable.cjs.entry.js.map +0 -1
  1043. package/dist/cjs/nano-spinner.cjs.entry.js.map +0 -1
  1044. package/dist/cjs/nano-split-pane.cjs.entry.js.map +0 -1
  1045. package/dist/cjs/nano-sticker.cjs.entry.js.map +0 -1
  1046. package/dist/cjs/nano-tab-content.cjs.entry.js.map +0 -1
  1047. package/dist/cjs/nano-tab-group.cjs.entry.js.map +0 -1
  1048. package/dist/cjs/nano-tab.cjs.entry.js.map +0 -1
  1049. package/dist/cjs/nano-table-132f2056.js +0 -1880
  1050. package/dist/cjs/nano-table-132f2056.js.map +0 -1
  1051. package/dist/cjs/nano-table.cjs.entry.js.map +0 -1
  1052. package/dist/cjs/page-dots-ecdd64d1.js +0 -141
  1053. package/dist/cjs/page-dots-ecdd64d1.js.map +0 -1
  1054. package/dist/cjs/popover-3dfc73f6.js +0 -1932
  1055. package/dist/cjs/popover-3dfc73f6.js.map +0 -1
  1056. package/dist/cjs/renderer-cd8b6098.js +0 -63
  1057. package/dist/cjs/renderer-cd8b6098.js.map +0 -1
  1058. package/dist/cjs/scroll-a3e5c6c6.js +0 -128
  1059. package/dist/cjs/scroll-a3e5c6c6.js.map +0 -1
  1060. package/dist/cjs/scroll-parent-798d9651.js +0 -31
  1061. package/dist/cjs/scroll-parent-798d9651.js.map +0 -1
  1062. package/dist/cjs/search-insights-694b3436.js +0 -53
  1063. package/dist/cjs/search-insights-694b3436.js.map +0 -1
  1064. package/dist/cjs/slot-4e057042.js +0 -61
  1065. package/dist/cjs/slot-4e057042.js.map +0 -1
  1066. package/dist/cjs/tabbable-619dc959.js +0 -112
  1067. package/dist/cjs/tabbable-619dc959.js.map +0 -1
  1068. package/dist/cjs/table.worker-1a4b9015.js +0 -33
  1069. package/dist/cjs/table.worker-1a4b9015.js.map +0 -1
  1070. package/dist/cjs/table.worker-da5412ed.js +0 -4
  1071. package/dist/cjs/theme-a2f7ddf8.js +0 -49
  1072. package/dist/cjs/theme-a2f7ddf8.js.map +0 -1
  1073. package/dist/cjs/throttle-46a497fb.js +0 -54
  1074. package/dist/cjs/throttle-46a497fb.js.map +0 -1
  1075. package/dist/cjs/transitions-a2b2090b.js +0 -62
  1076. package/dist/cjs/transitions-a2b2090b.js.map +0 -1
  1077. package/dist/collection/components/accordion/accordion.js.map +0 -1
  1078. package/dist/collection/components/alert/alert.helpers.js.map +0 -1
  1079. package/dist/collection/components/alert/alert.js.map +0 -1
  1080. package/dist/collection/components/algolia/algolia-data.js.map +0 -1
  1081. package/dist/collection/components/algolia/algolia-filter.js.map +0 -1
  1082. package/dist/collection/components/algolia/algolia-interface.js.map +0 -1
  1083. package/dist/collection/components/algolia/algolia-pagination.js.map +0 -1
  1084. package/dist/collection/components/algolia/algolia-results.js.map +0 -1
  1085. package/dist/collection/components/algolia/algolia.js.map +0 -1
  1086. package/dist/collection/components/algolia/lib/squirrelly/browser.js.map +0 -1
  1087. package/dist/collection/components/algolia/lib/squirrelly/compile-string.js.map +0 -1
  1088. package/dist/collection/components/algolia/lib/squirrelly/compile.js.map +0 -1
  1089. package/dist/collection/components/algolia/lib/squirrelly/config.js.map +0 -1
  1090. package/dist/collection/components/algolia/lib/squirrelly/container-utils.js.map +0 -1
  1091. package/dist/collection/components/algolia/lib/squirrelly/containers.js.map +0 -1
  1092. package/dist/collection/components/algolia/lib/squirrelly/err.js.map +0 -1
  1093. package/dist/collection/components/algolia/lib/squirrelly/parse.js.map +0 -1
  1094. package/dist/collection/components/algolia/lib/squirrelly/render.js.map +0 -1
  1095. package/dist/collection/components/algolia/lib/squirrelly/storage.js.map +0 -1
  1096. package/dist/collection/components/algolia/lib/squirrelly/utils.js.map +0 -1
  1097. package/dist/collection/components/algolia/lib/template.js.map +0 -1
  1098. package/dist/collection/components/animation/animation.js.map +0 -1
  1099. package/dist/collection/components/animation/animations/attention_seekers/bounce.js.map +0 -1
  1100. package/dist/collection/components/animation/animations/attention_seekers/flash.js.map +0 -1
  1101. package/dist/collection/components/animation/animations/attention_seekers/headShake.js.map +0 -1
  1102. package/dist/collection/components/animation/animations/attention_seekers/heartBeat.js.map +0 -1
  1103. package/dist/collection/components/animation/animations/attention_seekers/jello.js.map +0 -1
  1104. package/dist/collection/components/animation/animations/attention_seekers/pulse.js.map +0 -1
  1105. package/dist/collection/components/animation/animations/attention_seekers/rubberBand.js.map +0 -1
  1106. package/dist/collection/components/animation/animations/attention_seekers/shake.js.map +0 -1
  1107. package/dist/collection/components/animation/animations/attention_seekers/shakeX.js.map +0 -1
  1108. package/dist/collection/components/animation/animations/attention_seekers/shakeY.js.map +0 -1
  1109. package/dist/collection/components/animation/animations/attention_seekers/swing.js.map +0 -1
  1110. package/dist/collection/components/animation/animations/attention_seekers/tada.js.map +0 -1
  1111. package/dist/collection/components/animation/animations/attention_seekers/wobble.js.map +0 -1
  1112. package/dist/collection/components/animation/animations/back_entrances/backInDown.js.map +0 -1
  1113. package/dist/collection/components/animation/animations/back_entrances/backInLeft.js.map +0 -1
  1114. package/dist/collection/components/animation/animations/back_entrances/backInRight.js.map +0 -1
  1115. package/dist/collection/components/animation/animations/back_entrances/backInUp.js.map +0 -1
  1116. package/dist/collection/components/animation/animations/back_exits/backOutDown.js.map +0 -1
  1117. package/dist/collection/components/animation/animations/back_exits/backOutLeft.js.map +0 -1
  1118. package/dist/collection/components/animation/animations/back_exits/backOutRight.js.map +0 -1
  1119. package/dist/collection/components/animation/animations/back_exits/backOutUp.js.map +0 -1
  1120. package/dist/collection/components/animation/animations/bouncing_entrances/bounceIn.js.map +0 -1
  1121. package/dist/collection/components/animation/animations/bouncing_entrances/bounceInDown.js.map +0 -1
  1122. package/dist/collection/components/animation/animations/bouncing_entrances/bounceInLeft.js.map +0 -1
  1123. package/dist/collection/components/animation/animations/bouncing_entrances/bounceInRight.js.map +0 -1
  1124. package/dist/collection/components/animation/animations/bouncing_entrances/bounceInUp.js.map +0 -1
  1125. package/dist/collection/components/animation/animations/bouncing_exits/bounceOut.js.map +0 -1
  1126. package/dist/collection/components/animation/animations/bouncing_exits/bounceOutDown.js.map +0 -1
  1127. package/dist/collection/components/animation/animations/bouncing_exits/bounceOutLeft.js.map +0 -1
  1128. package/dist/collection/components/animation/animations/bouncing_exits/bounceOutRight.js.map +0 -1
  1129. package/dist/collection/components/animation/animations/bouncing_exits/bounceOutUp.js.map +0 -1
  1130. package/dist/collection/components/animation/animations/easings/easings.js.map +0 -1
  1131. package/dist/collection/components/animation/animations/fading_entrances/fadeIn.js.map +0 -1
  1132. package/dist/collection/components/animation/animations/fading_entrances/fadeInBottomLeft.js.map +0 -1
  1133. package/dist/collection/components/animation/animations/fading_entrances/fadeInBottomRight.js.map +0 -1
  1134. package/dist/collection/components/animation/animations/fading_entrances/fadeInDown.js.map +0 -1
  1135. package/dist/collection/components/animation/animations/fading_entrances/fadeInDownBig.js.map +0 -1
  1136. package/dist/collection/components/animation/animations/fading_entrances/fadeInLeft.js.map +0 -1
  1137. package/dist/collection/components/animation/animations/fading_entrances/fadeInLeftBig.js.map +0 -1
  1138. package/dist/collection/components/animation/animations/fading_entrances/fadeInRight.js.map +0 -1
  1139. package/dist/collection/components/animation/animations/fading_entrances/fadeInRightBig.js.map +0 -1
  1140. package/dist/collection/components/animation/animations/fading_entrances/fadeInTopLeft.js.map +0 -1
  1141. package/dist/collection/components/animation/animations/fading_entrances/fadeInTopRight.js.map +0 -1
  1142. package/dist/collection/components/animation/animations/fading_entrances/fadeInUp.js.map +0 -1
  1143. package/dist/collection/components/animation/animations/fading_entrances/fadeInUpBig.js.map +0 -1
  1144. package/dist/collection/components/animation/animations/fading_exits/fadeOut.js.map +0 -1
  1145. package/dist/collection/components/animation/animations/fading_exits/fadeOutBottomLeft.js.map +0 -1
  1146. package/dist/collection/components/animation/animations/fading_exits/fadeOutBottomRight.js.map +0 -1
  1147. package/dist/collection/components/animation/animations/fading_exits/fadeOutDown.js.map +0 -1
  1148. package/dist/collection/components/animation/animations/fading_exits/fadeOutDownBig.js.map +0 -1
  1149. package/dist/collection/components/animation/animations/fading_exits/fadeOutLeft.js.map +0 -1
  1150. package/dist/collection/components/animation/animations/fading_exits/fadeOutLeftBig.js.map +0 -1
  1151. package/dist/collection/components/animation/animations/fading_exits/fadeOutRight.js.map +0 -1
  1152. package/dist/collection/components/animation/animations/fading_exits/fadeOutRightBig.js.map +0 -1
  1153. package/dist/collection/components/animation/animations/fading_exits/fadeOutTopLeft.js.map +0 -1
  1154. package/dist/collection/components/animation/animations/fading_exits/fadeOutTopRight.js.map +0 -1
  1155. package/dist/collection/components/animation/animations/fading_exits/fadeOutUp.js.map +0 -1
  1156. package/dist/collection/components/animation/animations/fading_exits/fadeOutUpBig.js.map +0 -1
  1157. package/dist/collection/components/animation/animations/flippers/flip.js.map +0 -1
  1158. package/dist/collection/components/animation/animations/flippers/flipInX.js.map +0 -1
  1159. package/dist/collection/components/animation/animations/flippers/flipInY.js.map +0 -1
  1160. package/dist/collection/components/animation/animations/flippers/flipOutX.js.map +0 -1
  1161. package/dist/collection/components/animation/animations/flippers/flipOutY.js.map +0 -1
  1162. package/dist/collection/components/animation/animations/index.js.map +0 -1
  1163. package/dist/collection/components/animation/animations/lightspeed/lightSpeedInLeft.js.map +0 -1
  1164. package/dist/collection/components/animation/animations/lightspeed/lightSpeedInRight.js.map +0 -1
  1165. package/dist/collection/components/animation/animations/lightspeed/lightSpeedOutLeft.js.map +0 -1
  1166. package/dist/collection/components/animation/animations/lightspeed/lightSpeedOutRight.js.map +0 -1
  1167. package/dist/collection/components/animation/animations/rotating_entrances/rotateIn.js.map +0 -1
  1168. package/dist/collection/components/animation/animations/rotating_entrances/rotateInDownLeft.js.map +0 -1
  1169. package/dist/collection/components/animation/animations/rotating_entrances/rotateInDownRight.js.map +0 -1
  1170. package/dist/collection/components/animation/animations/rotating_entrances/rotateInUpLeft.js.map +0 -1
  1171. package/dist/collection/components/animation/animations/rotating_entrances/rotateInUpRight.js.map +0 -1
  1172. package/dist/collection/components/animation/animations/rotating_exits/rotateOut.js.map +0 -1
  1173. package/dist/collection/components/animation/animations/rotating_exits/rotateOutDownLeft.js.map +0 -1
  1174. package/dist/collection/components/animation/animations/rotating_exits/rotateOutDownRight.js.map +0 -1
  1175. package/dist/collection/components/animation/animations/rotating_exits/rotateOutUpLeft.js.map +0 -1
  1176. package/dist/collection/components/animation/animations/rotating_exits/rotateOutUpRight.js.map +0 -1
  1177. package/dist/collection/components/animation/animations/sliding_entrances/slideInDown.js.map +0 -1
  1178. package/dist/collection/components/animation/animations/sliding_entrances/slideInLeft.js.map +0 -1
  1179. package/dist/collection/components/animation/animations/sliding_entrances/slideInRight.js.map +0 -1
  1180. package/dist/collection/components/animation/animations/sliding_entrances/slideInUp.js.map +0 -1
  1181. package/dist/collection/components/animation/animations/sliding_exits/slideOutDown.js.map +0 -1
  1182. package/dist/collection/components/animation/animations/sliding_exits/slideOutLeft.js.map +0 -1
  1183. package/dist/collection/components/animation/animations/sliding_exits/slideOutRight.js.map +0 -1
  1184. package/dist/collection/components/animation/animations/sliding_exits/slideOutUp.js.map +0 -1
  1185. package/dist/collection/components/animation/animations/specials/hinge.js.map +0 -1
  1186. package/dist/collection/components/animation/animations/specials/jackInTheBox.js.map +0 -1
  1187. package/dist/collection/components/animation/animations/specials/rollIn.js.map +0 -1
  1188. package/dist/collection/components/animation/animations/specials/rollOut.js.map +0 -1
  1189. package/dist/collection/components/animation/animations/zooming_entrances/zoomIn.js.map +0 -1
  1190. package/dist/collection/components/animation/animations/zooming_entrances/zoomInDown.js.map +0 -1
  1191. package/dist/collection/components/animation/animations/zooming_entrances/zoomInLeft.js.map +0 -1
  1192. package/dist/collection/components/animation/animations/zooming_entrances/zoomInRight.js.map +0 -1
  1193. package/dist/collection/components/animation/animations/zooming_entrances/zoomInUp.js.map +0 -1
  1194. package/dist/collection/components/animation/animations/zooming_exits/zoomOut.js.map +0 -1
  1195. package/dist/collection/components/animation/animations/zooming_exits/zoomOutDown.js.map +0 -1
  1196. package/dist/collection/components/animation/animations/zooming_exits/zoomOutLeft.js.map +0 -1
  1197. package/dist/collection/components/animation/animations/zooming_exits/zoomOutRight.js.map +0 -1
  1198. package/dist/collection/components/animation/animations/zooming_exits/zoomOutUp.js.map +0 -1
  1199. package/dist/collection/components/checkbox/checkbox-group.js.map +0 -1
  1200. package/dist/collection/components/checkbox/checkbox-interface.js.map +0 -1
  1201. package/dist/collection/components/checkbox/checkbox.js.map +0 -1
  1202. package/dist/collection/components/datalist/datalist.js.map +0 -1
  1203. package/dist/collection/components/date-input/date-input.js.map +0 -1
  1204. package/dist/collection/components/date-picker/date-picker.js.map +0 -1
  1205. package/dist/collection/components/date-picker/duet-date-picker/date-adapter.js.map +0 -1
  1206. package/dist/collection/components/date-picker/duet-date-picker/date-localization.js.map +0 -1
  1207. package/dist/collection/components/date-picker/duet-date-picker/date-picker-day.js.map +0 -1
  1208. package/dist/collection/components/date-picker/duet-date-picker/date-picker-month.js.map +0 -1
  1209. package/dist/collection/components/details/details.js.map +0 -1
  1210. package/dist/collection/components/dialog/dialog.helpers.js.map +0 -1
  1211. package/dist/collection/components/dialog/dialog.js.map +0 -1
  1212. package/dist/collection/components/drawer/drawer.js.map +0 -1
  1213. package/dist/collection/components/dropdown/dropdown.js.map +0 -1
  1214. package/dist/collection/components/field-validator/field-validator.js.map +0 -1
  1215. package/dist/collection/components/file-upload/file-upload-list.js.map +0 -1
  1216. package/dist/collection/components/file-upload/file-upload.js.map +0 -1
  1217. package/dist/collection/components/form-control/form-control.js.map +0 -1
  1218. package/dist/collection/components/global-nav/assets/local-my-account.json +0 -447
  1219. package/dist/collection/components/global-nav/global-nav-user-profile.js +0 -70
  1220. package/dist/collection/components/global-nav/global-nav-user-profile.js.map +0 -1
  1221. package/dist/collection/components/global-nav/global-nav.js.map +0 -1
  1222. package/dist/collection/components/global-nav/style/global-nav.css +0 -893
  1223. package/dist/collection/components/global-search-results/global-search-results.js.map +0 -1
  1224. package/dist/collection/components/grid/grid-item.js.map +0 -1
  1225. package/dist/collection/components/grid/grid.js.map +0 -1
  1226. package/dist/collection/components/hero/hero.js.map +0 -1
  1227. package/dist/collection/components/icon/icon.js.map +0 -1
  1228. package/dist/collection/components/icon/request.js.map +0 -1
  1229. package/dist/collection/components/icon/utils.js.map +0 -1
  1230. package/dist/collection/components/icon/validate.js.map +0 -1
  1231. package/dist/collection/components/icon-button/icon-button.js.map +0 -1
  1232. package/dist/collection/components/img/img.js.map +0 -1
  1233. package/dist/collection/components/input/input.js.map +0 -1
  1234. package/dist/collection/components/intersection-observe/intersection-observe.js.map +0 -1
  1235. package/dist/collection/components/menu/menu.js.map +0 -1
  1236. package/dist/collection/components/menu-drawer/menu-drawer.js.map +0 -1
  1237. package/dist/collection/components/more-less/more-less.js.map +0 -1
  1238. package/dist/collection/components/nav-item/nav-item.js.map +0 -1
  1239. package/dist/collection/components/option/option.js.map +0 -1
  1240. package/dist/collection/components/overflow-nav/overflow-nav.css +0 -226
  1241. package/dist/collection/components/overflow-nav/overflow-nav.js +0 -537
  1242. package/dist/collection/components/overflow-nav/overflow-nav.js.map +0 -1
  1243. package/dist/collection/components/progress-bar/progress-bar.js.map +0 -1
  1244. package/dist/collection/components/range/range.js.map +0 -1
  1245. package/dist/collection/components/rating/rating.js.map +0 -1
  1246. package/dist/collection/components/resize-observe/resize-observe.js.map +0 -1
  1247. package/dist/collection/components/select/select.js.map +0 -1
  1248. package/dist/collection/components/skeleton/skeleton.js.map +0 -1
  1249. package/dist/collection/components/slides/lib/js/animate.js.map +0 -1
  1250. package/dist/collection/components/slides/lib/js/cell.js.map +0 -1
  1251. package/dist/collection/components/slides/lib/js/drag.js.map +0 -1
  1252. package/dist/collection/components/slides/lib/js/fade.js.map +0 -1
  1253. package/dist/collection/components/slides/lib/js/flickity.js.map +0 -1
  1254. package/dist/collection/components/slides/lib/js/fullscreen.js.map +0 -1
  1255. package/dist/collection/components/slides/lib/js/index.js.map +0 -1
  1256. package/dist/collection/components/slides/lib/js/lazyload.js.map +0 -1
  1257. package/dist/collection/components/slides/lib/js/page-dots.js.map +0 -1
  1258. package/dist/collection/components/slides/lib/js/player.js.map +0 -1
  1259. package/dist/collection/components/slides/lib/js/prev-next-button.js.map +0 -1
  1260. package/dist/collection/components/slides/lib/js/slide.js.map +0 -1
  1261. package/dist/collection/components/slides/lib/js/utils/event-emitter.js.map +0 -1
  1262. package/dist/collection/components/slides/lib/js/utils/gestures.js.map +0 -1
  1263. package/dist/collection/components/slides/lib/js/utils/get-size.js.map +0 -1
  1264. package/dist/collection/components/slides/lib/js/utils/utils.js.map +0 -1
  1265. package/dist/collection/components/slides/slide.js.map +0 -1
  1266. package/dist/collection/components/slides/slides.js.map +0 -1
  1267. package/dist/collection/components/sortable/sortable.js.map +0 -1
  1268. package/dist/collection/components/spinner/spinner.js.map +0 -1
  1269. package/dist/collection/components/split-pane/split-pane.js.map +0 -1
  1270. package/dist/collection/components/sticker/sticker.js.map +0 -1
  1271. package/dist/collection/components/table/table.cell.js +0 -113
  1272. package/dist/collection/components/table/table.cell.js.map +0 -1
  1273. package/dist/collection/components/table/table.constants.js +0 -5
  1274. package/dist/collection/components/table/table.constants.js.map +0 -1
  1275. package/dist/collection/components/table/table.header.js +0 -63
  1276. package/dist/collection/components/table/table.header.js.map +0 -1
  1277. package/dist/collection/components/table/table.js.map +0 -1
  1278. package/dist/collection/components/table/table.pin-service.js +0 -389
  1279. package/dist/collection/components/table/table.pin-service.js.map +0 -1
  1280. package/dist/collection/components/table/table.row.js +0 -113
  1281. package/dist/collection/components/table/table.row.js.map +0 -1
  1282. package/dist/collection/components/table/table.store.js +0 -145
  1283. package/dist/collection/components/table/table.store.js.map +0 -1
  1284. package/dist/collection/components/table/table.utils.js +0 -157
  1285. package/dist/collection/components/table/table.utils.js.map +0 -1
  1286. package/dist/collection/components/table/table.worker.js +0 -221
  1287. package/dist/collection/components/table/table.worker.js.map +0 -1
  1288. package/dist/collection/components/tabs/tab-content.js.map +0 -1
  1289. package/dist/collection/components/tabs/tab-group.js.map +0 -1
  1290. package/dist/collection/components/tabs/tab.js.map +0 -1
  1291. package/dist/collection/components/tooltip/tooltip.js.map +0 -1
  1292. package/dist/collection/global/script/global.js.map +0 -1
  1293. package/dist/collection/index.js.map +0 -1
  1294. package/dist/collection/types/shared.js.map +0 -1
  1295. package/dist/collection/utils/active-element.js.map +0 -1
  1296. package/dist/collection/utils/constructible-style.js.map +0 -1
  1297. package/dist/collection/utils/custom-template.js.map +0 -1
  1298. package/dist/collection/utils/date-utils.js.map +0 -1
  1299. package/dist/collection/utils/dom.js.map +0 -1
  1300. package/dist/collection/utils/drag.js.map +0 -1
  1301. package/dist/collection/utils/events.js.map +0 -1
  1302. package/dist/collection/utils/fetch.js.map +0 -1
  1303. package/dist/collection/utils/focus-visible.js +0 -63
  1304. package/dist/collection/utils/focus-visible.js.map +0 -1
  1305. package/dist/collection/utils/form.js.map +0 -1
  1306. package/dist/collection/utils/gesture/gesture-controller.js.map +0 -1
  1307. package/dist/collection/utils/gesture/index.js.map +0 -1
  1308. package/dist/collection/utils/gesture/listener.js.map +0 -1
  1309. package/dist/collection/utils/gesture/pointer-events.js.map +0 -1
  1310. package/dist/collection/utils/gesture/recognizers.js.map +0 -1
  1311. package/dist/collection/utils/gesture/swipe-back.js.map +0 -1
  1312. package/dist/collection/utils/math.js.map +0 -1
  1313. package/dist/collection/utils/modal.js.map +0 -1
  1314. package/dist/collection/utils/popover.js.map +0 -1
  1315. package/dist/collection/utils/promise-queue.js.map +0 -1
  1316. package/dist/collection/utils/renderer.js.map +0 -1
  1317. package/dist/collection/utils/scroll-parent.js +0 -26
  1318. package/dist/collection/utils/scroll-parent.js.map +0 -1
  1319. package/dist/collection/utils/scroll.js.map +0 -1
  1320. package/dist/collection/utils/search-insights.js.map +0 -1
  1321. package/dist/collection/utils/slot.js.map +0 -1
  1322. package/dist/collection/utils/store/component-store.js.map +0 -1
  1323. package/dist/collection/utils/store/get-set.js.map +0 -1
  1324. package/dist/collection/utils/tabbable.js.map +0 -1
  1325. package/dist/collection/utils/testing/index.js.map +0 -1
  1326. package/dist/collection/utils/theme.js.map +0 -1
  1327. package/dist/collection/utils/throttle.js.map +0 -1
  1328. package/dist/collection/utils/transitions.js.map +0 -1
  1329. package/dist/components/active-element.js.map +0 -1
  1330. package/dist/components/algolia-data.js.map +0 -1
  1331. package/dist/components/algolia.js.map +0 -1
  1332. package/dist/components/algoliasearch-lite.esm.browser.js +0 -966
  1333. package/dist/components/algoliasearch-lite.esm.browser.js.map +0 -1
  1334. package/dist/components/component-store.js.map +0 -1
  1335. package/dist/components/datalist.js.map +0 -1
  1336. package/dist/components/date-picker.js.map +0 -1
  1337. package/dist/components/dom.js.map +0 -1
  1338. package/dist/components/drag.js.map +0 -1
  1339. package/dist/components/dropdown.js.map +0 -1
  1340. package/dist/components/events.js.map +0 -1
  1341. package/dist/components/fade.js.map +0 -1
  1342. package/dist/components/focus-visible.js +0 -66
  1343. package/dist/components/focus-visible.js.map +0 -1
  1344. package/dist/components/form-control.js.map +0 -1
  1345. package/dist/components/fullscreen.js.map +0 -1
  1346. package/dist/components/global-nav-user-profile.js +0 -50
  1347. package/dist/components/global-nav-user-profile.js.map +0 -1
  1348. package/dist/components/grid.js.map +0 -1
  1349. package/dist/components/icon-button.js.map +0 -1
  1350. package/dist/components/icon.js.map +0 -1
  1351. package/dist/components/img.js.map +0 -1
  1352. package/dist/components/index-browser.js.map +0 -1
  1353. package/dist/components/index.js.map +0 -1
  1354. package/dist/components/index2.js.map +0 -1
  1355. package/dist/components/index3.js.map +0 -1
  1356. package/dist/components/input.js.map +0 -1
  1357. package/dist/components/lazyload.js.map +0 -1
  1358. package/dist/components/local-my-account.js +0 -462
  1359. package/dist/components/local-my-account.js.map +0 -1
  1360. package/dist/components/math.js.map +0 -1
  1361. package/dist/components/menu.js.map +0 -1
  1362. package/dist/components/modal.js.map +0 -1
  1363. package/dist/components/nano-accordion.js.map +0 -1
  1364. package/dist/components/nano-alert.js.map +0 -1
  1365. package/dist/components/nano-algolia-filter.js.map +0 -1
  1366. package/dist/components/nano-algolia-pagination.js.map +0 -1
  1367. package/dist/components/nano-algolia-results.js.map +0 -1
  1368. package/dist/components/nano-algolia.js.map +0 -1
  1369. package/dist/components/nano-animation.js.map +0 -1
  1370. package/dist/components/nano-checkbox-group.js.map +0 -1
  1371. package/dist/components/nano-checkbox.js.map +0 -1
  1372. package/dist/components/nano-datalist.js.map +0 -1
  1373. package/dist/components/nano-date-input.js.map +0 -1
  1374. package/dist/components/nano-date-picker.js.map +0 -1
  1375. package/dist/components/nano-details.js.map +0 -1
  1376. package/dist/components/nano-dialog.js.map +0 -1
  1377. package/dist/components/nano-drawer.js.map +0 -1
  1378. package/dist/components/nano-dropdown.js.map +0 -1
  1379. package/dist/components/nano-field-validator.js.map +0 -1
  1380. package/dist/components/nano-file-upload.js.map +0 -1
  1381. package/dist/components/nano-global-nav-user-profile.d.ts +0 -11
  1382. package/dist/components/nano-global-nav-user-profile.js +0 -11
  1383. package/dist/components/nano-global-nav-user-profile.js.map +0 -1
  1384. package/dist/components/nano-global-nav.js.map +0 -1
  1385. package/dist/components/nano-global-search-results.js.map +0 -1
  1386. package/dist/components/nano-grid-item.js.map +0 -1
  1387. package/dist/components/nano-grid.js.map +0 -1
  1388. package/dist/components/nano-hero.js.map +0 -1
  1389. package/dist/components/nano-icon-button.js.map +0 -1
  1390. package/dist/components/nano-icon.js.map +0 -1
  1391. package/dist/components/nano-img.js.map +0 -1
  1392. package/dist/components/nano-input.js.map +0 -1
  1393. package/dist/components/nano-intersection-observe.js.map +0 -1
  1394. package/dist/components/nano-menu-drawer.js.map +0 -1
  1395. package/dist/components/nano-menu.js.map +0 -1
  1396. package/dist/components/nano-more-less.js.map +0 -1
  1397. package/dist/components/nano-nav-item.js.map +0 -1
  1398. package/dist/components/nano-option.js.map +0 -1
  1399. package/dist/components/nano-overflow-nav.d.ts +0 -11
  1400. package/dist/components/nano-overflow-nav.js +0 -390
  1401. package/dist/components/nano-overflow-nav.js.map +0 -1
  1402. package/dist/components/nano-progress-bar.js.map +0 -1
  1403. package/dist/components/nano-range.js.map +0 -1
  1404. package/dist/components/nano-rating.js.map +0 -1
  1405. package/dist/components/nano-resize-observe.js.map +0 -1
  1406. package/dist/components/nano-select.js.map +0 -1
  1407. package/dist/components/nano-skeleton.js.map +0 -1
  1408. package/dist/components/nano-slide.js.map +0 -1
  1409. package/dist/components/nano-slides.js.map +0 -1
  1410. package/dist/components/nano-sortable.js.map +0 -1
  1411. package/dist/components/nano-spinner.js.map +0 -1
  1412. package/dist/components/nano-split-pane.js.map +0 -1
  1413. package/dist/components/nano-sticker.js.map +0 -1
  1414. package/dist/components/nano-tab-content.js.map +0 -1
  1415. package/dist/components/nano-tab-group.js.map +0 -1
  1416. package/dist/components/nano-tab.js.map +0 -1
  1417. package/dist/components/nano-table.js.map +0 -1
  1418. package/dist/components/nano-tooltip.js.map +0 -1
  1419. package/dist/components/nav-item.js.map +0 -1
  1420. package/dist/components/option.js.map +0 -1
  1421. package/dist/components/page-dots.js.map +0 -1
  1422. package/dist/components/popover.js.map +0 -1
  1423. package/dist/components/progress-bar.js.map +0 -1
  1424. package/dist/components/renderer.js.map +0 -1
  1425. package/dist/components/resize-observe.js.map +0 -1
  1426. package/dist/components/scroll-parent.js +0 -29
  1427. package/dist/components/scroll-parent.js.map +0 -1
  1428. package/dist/components/scroll.js.map +0 -1
  1429. package/dist/components/search-insights.js +0 -51
  1430. package/dist/components/search-insights.js.map +0 -1
  1431. package/dist/components/select.js.map +0 -1
  1432. package/dist/components/skeleton.js.map +0 -1
  1433. package/dist/components/slot.js.map +0 -1
  1434. package/dist/components/spinner.js.map +0 -1
  1435. package/dist/components/sticker.js.map +0 -1
  1436. package/dist/components/tabbable.js.map +0 -1
  1437. package/dist/components/table.worker.js.map +0 -1
  1438. package/dist/components/theme.js.map +0 -1
  1439. package/dist/components/throttle.js.map +0 -1
  1440. package/dist/components/tooltip.js.map +0 -1
  1441. package/dist/components/transitions.js +0 -60
  1442. package/dist/components/transitions.js.map +0 -1
  1443. package/dist/esm/active-element-a2502948.js +0 -19
  1444. package/dist/esm/active-element-a2502948.js.map +0 -1
  1445. package/dist/esm/algolia-data-f0f72f1d.js +0 -49
  1446. package/dist/esm/algolia-data-f0f72f1d.js.map +0 -1
  1447. package/dist/esm/algoliasearch-lite.esm.browser-0f71b631.js +0 -966
  1448. package/dist/esm/algoliasearch-lite.esm.browser-0f71b631.js.map +0 -1
  1449. package/dist/esm/app-globals-f0120bbe.js +0 -39
  1450. package/dist/esm/app-globals-f0120bbe.js.map +0 -1
  1451. package/dist/esm/component-store-199a9fd8.js +0 -323
  1452. package/dist/esm/component-store-199a9fd8.js.map +0 -1
  1453. package/dist/esm/date-utils-1e39c114.js +0 -219
  1454. package/dist/esm/date-utils-1e39c114.js.map +0 -1
  1455. package/dist/esm/dom-fafdec9a.js +0 -78
  1456. package/dist/esm/dom-fafdec9a.js.map +0 -1
  1457. package/dist/esm/drag-9d765d2d.js +0 -72
  1458. package/dist/esm/drag-9d765d2d.js.map +0 -1
  1459. package/dist/esm/events-f38f3e59.js +0 -36
  1460. package/dist/esm/events-f38f3e59.js.map +0 -1
  1461. package/dist/esm/fade-ce1a4958.js +0 -212
  1462. package/dist/esm/fade-ce1a4958.js.map +0 -1
  1463. package/dist/esm/focus-visible-e5f02c46.js +0 -66
  1464. package/dist/esm/focus-visible-e5f02c46.js.map +0 -1
  1465. package/dist/esm/form-control-f48fa873.js +0 -79
  1466. package/dist/esm/form-control-f48fa873.js.map +0 -1
  1467. package/dist/esm/fullscreen-52d62028.js +0 -132
  1468. package/dist/esm/fullscreen-52d62028.js.map +0 -1
  1469. package/dist/esm/index-6cc72cd9.js +0 -3045
  1470. package/dist/esm/index-6cc72cd9.js.map +0 -1
  1471. package/dist/esm/index-a2043fcd.js +0 -657
  1472. package/dist/esm/index-a2043fcd.js.map +0 -1
  1473. package/dist/esm/index-browser-8c563093.js +0 -8
  1474. package/dist/esm/index-browser-8c563093.js.map +0 -1
  1475. package/dist/esm/index-f5f7b950.js +0 -198
  1476. package/dist/esm/index-f5f7b950.js.map +0 -1
  1477. package/dist/esm/index.js.map +0 -1
  1478. package/dist/esm/lazyload-8ff69ba4.js +0 -94
  1479. package/dist/esm/lazyload-8ff69ba4.js.map +0 -1
  1480. package/dist/esm/loader.js.map +0 -1
  1481. package/dist/esm/local-my-account-3ba1ec04.js +0 -462
  1482. package/dist/esm/local-my-account-3ba1ec04.js.map +0 -1
  1483. package/dist/esm/math-d160f8a6.js +0 -38
  1484. package/dist/esm/math-d160f8a6.js.map +0 -1
  1485. package/dist/esm/modal-02828a39.js +0 -49
  1486. package/dist/esm/modal-02828a39.js.map +0 -1
  1487. package/dist/esm/nano-accordion.entry.js.map +0 -1
  1488. package/dist/esm/nano-alert.entry.js.map +0 -1
  1489. package/dist/esm/nano-algolia-filter.entry.js.map +0 -1
  1490. package/dist/esm/nano-algolia-pagination.entry.js.map +0 -1
  1491. package/dist/esm/nano-algolia-results.entry.js.map +0 -1
  1492. package/dist/esm/nano-algolia.entry.js.map +0 -1
  1493. package/dist/esm/nano-animation.entry.js.map +0 -1
  1494. package/dist/esm/nano-checkbox-group.entry.js.map +0 -1
  1495. package/dist/esm/nano-checkbox.entry.js.map +0 -1
  1496. package/dist/esm/nano-components.js.map +0 -1
  1497. package/dist/esm/nano-datalist_3.entry.js.map +0 -1
  1498. package/dist/esm/nano-date-input.entry.js.map +0 -1
  1499. package/dist/esm/nano-date-picker.entry.js +0 -389
  1500. package/dist/esm/nano-date-picker.entry.js.map +0 -1
  1501. package/dist/esm/nano-details.entry.js.map +0 -1
  1502. package/dist/esm/nano-dialog.entry.js.map +0 -1
  1503. package/dist/esm/nano-drawer.entry.js +0 -285
  1504. package/dist/esm/nano-drawer.entry.js.map +0 -1
  1505. package/dist/esm/nano-dropdown.entry.js +0 -369
  1506. package/dist/esm/nano-dropdown.entry.js.map +0 -1
  1507. package/dist/esm/nano-field-validator.entry.js.map +0 -1
  1508. package/dist/esm/nano-file-upload.entry.js.map +0 -1
  1509. package/dist/esm/nano-global-nav-user-profile_3.entry.js +0 -1101
  1510. package/dist/esm/nano-global-nav-user-profile_3.entry.js.map +0 -1
  1511. package/dist/esm/nano-global-nav.entry.js.map +0 -1
  1512. package/dist/esm/nano-global-search-results.entry.js +0 -632
  1513. package/dist/esm/nano-global-search-results.entry.js.map +0 -1
  1514. package/dist/esm/nano-grid-item.entry.js.map +0 -1
  1515. package/dist/esm/nano-grid_2.entry.js.map +0 -1
  1516. package/dist/esm/nano-hero.entry.js.map +0 -1
  1517. package/dist/esm/nano-icon-button_2.entry.js +0 -336
  1518. package/dist/esm/nano-icon-button_2.entry.js.map +0 -1
  1519. package/dist/esm/nano-icon.entry.js +0 -316
  1520. package/dist/esm/nano-icon.entry.js.map +0 -1
  1521. package/dist/esm/nano-input.entry.js +0 -544
  1522. package/dist/esm/nano-input.entry.js.map +0 -1
  1523. package/dist/esm/nano-intersection-observe.entry.js.map +0 -1
  1524. package/dist/esm/nano-menu-drawer.entry.js.map +0 -1
  1525. package/dist/esm/nano-more-less.entry.js.map +0 -1
  1526. package/dist/esm/nano-overflow-nav.entry.js +0 -338
  1527. package/dist/esm/nano-overflow-nav.entry.js.map +0 -1
  1528. package/dist/esm/nano-progress-bar.entry.js.map +0 -1
  1529. package/dist/esm/nano-range.entry.js.map +0 -1
  1530. package/dist/esm/nano-rating.entry.js.map +0 -1
  1531. package/dist/esm/nano-resize-observe_2.entry.js.map +0 -1
  1532. package/dist/esm/nano-slide.entry.js.map +0 -1
  1533. package/dist/esm/nano-slides-2715825b.js +0 -3038
  1534. package/dist/esm/nano-slides-2715825b.js.map +0 -1
  1535. package/dist/esm/nano-slides.entry.js.map +0 -1
  1536. package/dist/esm/nano-sortable.entry.js.map +0 -1
  1537. package/dist/esm/nano-spinner.entry.js.map +0 -1
  1538. package/dist/esm/nano-split-pane.entry.js.map +0 -1
  1539. package/dist/esm/nano-sticker.entry.js.map +0 -1
  1540. package/dist/esm/nano-tab-content.entry.js.map +0 -1
  1541. package/dist/esm/nano-tab-group.entry.js.map +0 -1
  1542. package/dist/esm/nano-tab.entry.js.map +0 -1
  1543. package/dist/esm/nano-table-5eaf3a0c.js +0 -1877
  1544. package/dist/esm/nano-table-5eaf3a0c.js.map +0 -1
  1545. package/dist/esm/nano-table.entry.js.map +0 -1
  1546. package/dist/esm/page-dots-5b23db8c.js +0 -139
  1547. package/dist/esm/page-dots-5b23db8c.js.map +0 -1
  1548. package/dist/esm/popover-30ce6cac.js +0 -1930
  1549. package/dist/esm/popover-30ce6cac.js.map +0 -1
  1550. package/dist/esm/renderer-4bc3e2dc.js +0 -58
  1551. package/dist/esm/renderer-4bc3e2dc.js.map +0 -1
  1552. package/dist/esm/scroll-1afc6a4e.js +0 -124
  1553. package/dist/esm/scroll-1afc6a4e.js.map +0 -1
  1554. package/dist/esm/scroll-parent-be39fbd0.js +0 -29
  1555. package/dist/esm/scroll-parent-be39fbd0.js.map +0 -1
  1556. package/dist/esm/search-insights-1a7b7dc5.js +0 -51
  1557. package/dist/esm/search-insights-1a7b7dc5.js.map +0 -1
  1558. package/dist/esm/slot-1cd90e53.js +0 -58
  1559. package/dist/esm/slot-1cd90e53.js.map +0 -1
  1560. package/dist/esm/tabbable-44932eb7.js +0 -109
  1561. package/dist/esm/tabbable-44932eb7.js.map +0 -1
  1562. package/dist/esm/table.worker-94b9c69e.js +0 -29
  1563. package/dist/esm/table.worker-94b9c69e.js.map +0 -1
  1564. package/dist/esm/table.worker-da5412ed.js +0 -4
  1565. package/dist/esm/theme-d553c17a.js +0 -46
  1566. package/dist/esm/theme-d553c17a.js.map +0 -1
  1567. package/dist/esm/throttle-df960210.js +0 -50
  1568. package/dist/esm/throttle-df960210.js.map +0 -1
  1569. package/dist/esm/transitions-c09bd7f6.js +0 -60
  1570. package/dist/esm/transitions-c09bd7f6.js.map +0 -1
  1571. package/dist/generators/custom-element-doc-generator.js +0 -75
  1572. package/dist/generators/custom-element-doc-generator.js.map +0 -1
  1573. package/dist/generators/vue/generate-vue-component.js +0 -74
  1574. package/dist/generators/vue/generate-vue-component.js.map +0 -1
  1575. package/dist/generators/vue/index.js +0 -5
  1576. package/dist/generators/vue/index.js.map +0 -1
  1577. package/dist/generators/vue/output-vue.js +0 -96
  1578. package/dist/generators/vue/output-vue.js.map +0 -1
  1579. package/dist/generators/vue/plugin.js +0 -44
  1580. package/dist/generators/vue/plugin.js.map +0 -1
  1581. package/dist/generators/vue/types.js +0 -2
  1582. package/dist/generators/vue/types.js.map +0 -1
  1583. package/dist/generators/vue/utils.js +0 -82
  1584. package/dist/generators/vue/utils.js.map +0 -1
  1585. package/dist/nano-assets/fonts/jp/noto-sans-jp-v53-japanese-500.woff2 +0 -0
  1586. package/dist/nano-assets/fonts/latin/noto-sans-v38-latin-500.woff2 +0 -0
  1587. package/dist/nano-assets/fonts/latin/noto-sans-v38-latin-500italic.woff2 +0 -0
  1588. package/dist/nano-assets/fonts/sc/noto-sans-sc-v37-chinese-simplified-500.woff2 +0 -0
  1589. package/dist/nano-assets/local-my-account.json +0 -447
  1590. package/dist/nano-components/active-element-a2502948.js +0 -5
  1591. package/dist/nano-components/active-element-a2502948.js.map +0 -1
  1592. package/dist/nano-components/algolia-data-f0f72f1d.js +0 -5
  1593. package/dist/nano-components/algolia-data-f0f72f1d.js.map +0 -1
  1594. package/dist/nano-components/algoliasearch-lite.esm.browser-0f71b631.js +0 -5
  1595. package/dist/nano-components/algoliasearch-lite.esm.browser-0f71b631.js.map +0 -1
  1596. package/dist/nano-components/app-globals-f0120bbe.js +0 -5
  1597. package/dist/nano-components/app-globals-f0120bbe.js.map +0 -1
  1598. package/dist/nano-components/assets/local-my-account.json +0 -447
  1599. package/dist/nano-components/component-store-199a9fd8.js +0 -5
  1600. package/dist/nano-components/component-store-199a9fd8.js.map +0 -1
  1601. package/dist/nano-components/date-utils-1e39c114.js +0 -5
  1602. package/dist/nano-components/date-utils-1e39c114.js.map +0 -1
  1603. package/dist/nano-components/dom-fafdec9a.js +0 -5
  1604. package/dist/nano-components/dom-fafdec9a.js.map +0 -1
  1605. package/dist/nano-components/drag-9d765d2d.js +0 -5
  1606. package/dist/nano-components/drag-9d765d2d.js.map +0 -1
  1607. package/dist/nano-components/events-f38f3e59.js +0 -5
  1608. package/dist/nano-components/events-f38f3e59.js.map +0 -1
  1609. package/dist/nano-components/fade-ce1a4958.js +0 -5
  1610. package/dist/nano-components/fade-ce1a4958.js.map +0 -1
  1611. package/dist/nano-components/focus-visible-e5f02c46.js +0 -5
  1612. package/dist/nano-components/focus-visible-e5f02c46.js.map +0 -1
  1613. package/dist/nano-components/form-control-f48fa873.js +0 -5
  1614. package/dist/nano-components/form-control-f48fa873.js.map +0 -1
  1615. package/dist/nano-components/fullscreen-52d62028.js +0 -5
  1616. package/dist/nano-components/fullscreen-52d62028.js.map +0 -1
  1617. package/dist/nano-components/index-6cc72cd9.js +0 -6
  1618. package/dist/nano-components/index-6cc72cd9.js.map +0 -1
  1619. package/dist/nano-components/index-a2043fcd.js +0 -5
  1620. package/dist/nano-components/index-a2043fcd.js.map +0 -1
  1621. package/dist/nano-components/index-browser-8c563093.js +0 -5
  1622. package/dist/nano-components/index-browser-8c563093.js.map +0 -1
  1623. package/dist/nano-components/index-f5f7b950.js +0 -5
  1624. package/dist/nano-components/index-f5f7b950.js.map +0 -1
  1625. package/dist/nano-components/index.esm.js.map +0 -1
  1626. package/dist/nano-components/lazyload-8ff69ba4.js +0 -5
  1627. package/dist/nano-components/lazyload-8ff69ba4.js.map +0 -1
  1628. package/dist/nano-components/local-my-account-3ba1ec04.js +0 -5
  1629. package/dist/nano-components/local-my-account-3ba1ec04.js.map +0 -1
  1630. package/dist/nano-components/math-d160f8a6.js +0 -5
  1631. package/dist/nano-components/math-d160f8a6.js.map +0 -1
  1632. package/dist/nano-components/modal-02828a39.js +0 -5
  1633. package/dist/nano-components/modal-02828a39.js.map +0 -1
  1634. package/dist/nano-components/nano-accordion.entry.js.map +0 -1
  1635. package/dist/nano-components/nano-alert.entry.js.map +0 -1
  1636. package/dist/nano-components/nano-algolia-filter.entry.js.map +0 -1
  1637. package/dist/nano-components/nano-algolia-pagination.entry.js.map +0 -1
  1638. package/dist/nano-components/nano-algolia-results.entry.js.map +0 -1
  1639. package/dist/nano-components/nano-algolia.entry.js.map +0 -1
  1640. package/dist/nano-components/nano-animation.entry.js.map +0 -1
  1641. package/dist/nano-components/nano-checkbox-group.entry.js.map +0 -1
  1642. package/dist/nano-components/nano-checkbox.entry.js.map +0 -1
  1643. package/dist/nano-components/nano-components.esm.js.map +0 -1
  1644. package/dist/nano-components/nano-datalist_3.entry.js.map +0 -1
  1645. package/dist/nano-components/nano-date-input.entry.js.map +0 -1
  1646. package/dist/nano-components/nano-date-picker.entry.js +0 -5
  1647. package/dist/nano-components/nano-date-picker.entry.js.map +0 -1
  1648. package/dist/nano-components/nano-details.entry.js.map +0 -1
  1649. package/dist/nano-components/nano-dialog.entry.js.map +0 -1
  1650. package/dist/nano-components/nano-drawer.entry.js +0 -5
  1651. package/dist/nano-components/nano-drawer.entry.js.map +0 -1
  1652. package/dist/nano-components/nano-dropdown.entry.js +0 -5
  1653. package/dist/nano-components/nano-dropdown.entry.js.map +0 -1
  1654. package/dist/nano-components/nano-field-validator.entry.js.map +0 -1
  1655. package/dist/nano-components/nano-file-upload.entry.js.map +0 -1
  1656. package/dist/nano-components/nano-global-nav-user-profile_3.entry.js +0 -5
  1657. package/dist/nano-components/nano-global-nav-user-profile_3.entry.js.map +0 -1
  1658. package/dist/nano-components/nano-global-nav.entry.js.map +0 -1
  1659. package/dist/nano-components/nano-global-search-results.entry.js +0 -5
  1660. package/dist/nano-components/nano-global-search-results.entry.js.map +0 -1
  1661. package/dist/nano-components/nano-grid-item.entry.js.map +0 -1
  1662. package/dist/nano-components/nano-grid_2.entry.js.map +0 -1
  1663. package/dist/nano-components/nano-hero.entry.js.map +0 -1
  1664. package/dist/nano-components/nano-icon-button_2.entry.js +0 -5
  1665. package/dist/nano-components/nano-icon-button_2.entry.js.map +0 -1
  1666. package/dist/nano-components/nano-icon.entry.js +0 -5
  1667. package/dist/nano-components/nano-icon.entry.js.map +0 -1
  1668. package/dist/nano-components/nano-input.entry.js +0 -5
  1669. package/dist/nano-components/nano-input.entry.js.map +0 -1
  1670. package/dist/nano-components/nano-intersection-observe.entry.js.map +0 -1
  1671. package/dist/nano-components/nano-menu-drawer.entry.js.map +0 -1
  1672. package/dist/nano-components/nano-more-less.entry.js.map +0 -1
  1673. package/dist/nano-components/nano-overflow-nav.entry.js +0 -5
  1674. package/dist/nano-components/nano-overflow-nav.entry.js.map +0 -1
  1675. package/dist/nano-components/nano-progress-bar.entry.js.map +0 -1
  1676. package/dist/nano-components/nano-range.entry.js.map +0 -1
  1677. package/dist/nano-components/nano-rating.entry.js.map +0 -1
  1678. package/dist/nano-components/nano-resize-observe_2.entry.js.map +0 -1
  1679. package/dist/nano-components/nano-slide.entry.js.map +0 -1
  1680. package/dist/nano-components/nano-slides-2715825b.js +0 -20
  1681. package/dist/nano-components/nano-slides-2715825b.js.map +0 -1
  1682. package/dist/nano-components/nano-slides.entry.js.map +0 -1
  1683. package/dist/nano-components/nano-sortable.entry.js.map +0 -1
  1684. package/dist/nano-components/nano-spinner.entry.js.map +0 -1
  1685. package/dist/nano-components/nano-split-pane.entry.js.map +0 -1
  1686. package/dist/nano-components/nano-sticker.entry.js.map +0 -1
  1687. package/dist/nano-components/nano-tab-content.entry.js.map +0 -1
  1688. package/dist/nano-components/nano-tab-group.entry.js.map +0 -1
  1689. package/dist/nano-components/nano-tab.entry.js.map +0 -1
  1690. package/dist/nano-components/nano-table-5eaf3a0c.js +0 -5
  1691. package/dist/nano-components/nano-table-5eaf3a0c.js.map +0 -1
  1692. package/dist/nano-components/nano-table.entry.js.map +0 -1
  1693. package/dist/nano-components/page-dots-5b23db8c.js +0 -5
  1694. package/dist/nano-components/page-dots-5b23db8c.js.map +0 -1
  1695. package/dist/nano-components/popover-30ce6cac.js +0 -5
  1696. package/dist/nano-components/popover-30ce6cac.js.map +0 -1
  1697. package/dist/nano-components/renderer-4bc3e2dc.js +0 -5
  1698. package/dist/nano-components/renderer-4bc3e2dc.js.map +0 -1
  1699. package/dist/nano-components/scroll-1afc6a4e.js +0 -5
  1700. package/dist/nano-components/scroll-1afc6a4e.js.map +0 -1
  1701. package/dist/nano-components/scroll-parent-be39fbd0.js +0 -5
  1702. package/dist/nano-components/scroll-parent-be39fbd0.js.map +0 -1
  1703. package/dist/nano-components/search-insights-1a7b7dc5.js +0 -5
  1704. package/dist/nano-components/search-insights-1a7b7dc5.js.map +0 -1
  1705. package/dist/nano-components/slot-1cd90e53.js +0 -5
  1706. package/dist/nano-components/slot-1cd90e53.js.map +0 -1
  1707. package/dist/nano-components/tabbable-44932eb7.js +0 -5
  1708. package/dist/nano-components/tabbable-44932eb7.js.map +0 -1
  1709. package/dist/nano-components/table.worker-94b9c69e.js +0 -5
  1710. package/dist/nano-components/table.worker-94b9c69e.js.map +0 -1
  1711. package/dist/nano-components/table.worker-da5412ed.js +0 -4
  1712. package/dist/nano-components/theme-d553c17a.js +0 -5
  1713. package/dist/nano-components/theme-d553c17a.js.map +0 -1
  1714. package/dist/nano-components/throttle-df960210.js +0 -5
  1715. package/dist/nano-components/throttle-df960210.js.map +0 -1
  1716. package/dist/nano-components/transitions-c09bd7f6.js +0 -5
  1717. package/dist/nano-components/transitions-c09bd7f6.js.map +0 -1
  1718. package/dist/stencil.config.js.map +0 -1
  1719. package/dist/stencil.config.prod.js.map +0 -1
  1720. package/dist/testing/mocks/intersection-observer.js.map +0 -1
  1721. package/dist/themes/base/normalize.css +0 -1
  1722. package/dist/themes/base/normalize.css.map +0 -1
  1723. package/dist/themes/base/noto-sans-jp.css +0 -1
  1724. package/dist/themes/base/noto-sans-jp.css.map +0 -1
  1725. package/dist/themes/base/noto-sans-sc.css +0 -1
  1726. package/dist/themes/base/noto-sans-sc.css.map +0 -1
  1727. package/dist/themes/base/noto-sans.css +0 -1
  1728. package/dist/themes/base/noto-sans.css.map +0 -1
  1729. package/dist/themes/base/structure.css +0 -1
  1730. package/dist/themes/base/structure.css.map +0 -1
  1731. package/dist/themes/london-calling.css +0 -1
  1732. package/dist/themes/london-calling.css.map +0 -1
  1733. package/dist/themes/nanopore.css +0 -1
  1734. package/dist/themes/nanopore.css.map +0 -1
  1735. package/dist/types/builds/WUhA-BsM/0/Digital/nano-components/packages/components/.stencil/generators/custom-element-doc-generator.d.ts +0 -8
  1736. package/dist/types/builds/WUhA-BsM/0/Digital/nano-components/packages/components/.stencil/stencil.config.d.ts +0 -2
  1737. package/dist/types/builds/WUhA-BsM/0/Digital/nano-components/packages/components/.stencil/stencil.config.prod.d.ts +0 -2
  1738. package/dist/types/components/global-nav/global-nav-user-profile.d.ts +0 -16
  1739. package/dist/types/components/overflow-nav/overflow-nav.d.ts +0 -89
  1740. package/dist/types/components/table/table-interface.d.ts +0 -278
  1741. package/dist/types/components/table/table.store.d.ts +0 -24
  1742. package/dist/types/components/table/table.utils.d.ts +0 -70
  1743. package/dist/types/utils/focus-visible.d.ts +0 -8
  1744. package/dist/types/utils/scroll-parent.d.ts +0 -6
  1745. package/dist/types/utils/testing/index.d.ts +0 -50
  1746. package/dist/wdio.conf.js.map +0 -1
  1747. package/themes/base/normalize.css +0 -1
  1748. package/themes/base/normalize.css.map +0 -1
  1749. package/themes/base/noto-sans-jp.css +0 -1
  1750. package/themes/base/noto-sans-jp.css.map +0 -1
  1751. package/themes/base/noto-sans-sc.css +0 -1
  1752. package/themes/base/noto-sans-sc.css.map +0 -1
  1753. package/themes/base/noto-sans.css +0 -1
  1754. package/themes/base/noto-sans.css.map +0 -1
  1755. package/themes/base/structure.css +0 -1
  1756. package/themes/base/structure.css.map +0 -1
  1757. package/themes/london-calling.css +0 -1
  1758. package/themes/london-calling.css.map +0 -1
  1759. package/themes/nanopore.css +0 -1
  1760. package/themes/nanopore.css.map +0 -1
  1761. /package/dist/nano-assets/{fonts/jp/noto-sans-jp-v53-japanese-700.woff2 → font/jp/noto-sans-jp-v53-japanese_latin-700.woff2} +0 -0
  1762. /package/dist/nano-assets/{fonts/jp/noto-sans-jp-v53-japanese-regular.woff2 → font/jp/noto-sans-jp-v53-japanese_latin-regular.woff2} +0 -0
  1763. /package/dist/nano-assets/{fonts → font}/latin/noto-sans-v38-latin-700.woff2 +0 -0
  1764. /package/dist/nano-assets/{fonts → font}/latin/noto-sans-v38-latin-700italic.woff2 +0 -0
  1765. /package/dist/nano-assets/{fonts → font}/latin/noto-sans-v38-latin-italic.woff2 +0 -0
  1766. /package/dist/nano-assets/{fonts → font}/latin/noto-sans-v38-latin-regular.woff2 +0 -0
  1767. /package/dist/nano-assets/{fonts/sc/noto-sans-sc-v37-chinese-simplified-700.woff2 → font/sc/noto-sans-sc-v37-chinese-simplified_latin-700.woff2} +0 -0
  1768. /package/dist/nano-assets/{fonts/sc/noto-sans-sc-v37-chinese-simplified-regular.woff2 → font/sc/noto-sans-sc-v37-chinese-simplified_latin-regular.woff2} +0 -0
  1769. /package/dist/types/{builds/WUhA-BsM/0/Digital/nano-components/packages/components/.stencil/generators/vue → Users/John.Jenkins/projects/nano-components/packages/components/.stencil/plugins/stencil/vue-output}/generate-vue-component.d.ts +0 -0
  1770. /package/dist/types/{builds/WUhA-BsM/0/Digital/nano-components/packages/components/.stencil/generators/vue → Users/John.Jenkins/projects/nano-components/packages/components/.stencil/plugins/stencil/vue-output}/index.d.ts +0 -0
  1771. /package/dist/types/{builds/WUhA-BsM/0/Digital/nano-components/packages/components/.stencil/generators/vue → Users/John.Jenkins/projects/nano-components/packages/components/.stencil/plugins/stencil/vue-output}/output-vue.d.ts +0 -0
  1772. /package/dist/types/{builds/WUhA-BsM/0/Digital/nano-components/packages/components/.stencil/generators/vue → Users/John.Jenkins/projects/nano-components/packages/components/.stencil/plugins/stencil/vue-output}/plugin.d.ts +0 -0
  1773. /package/dist/types/{builds/WUhA-BsM/0/Digital/nano-components/packages/components/.stencil/generators/vue → Users/John.Jenkins/projects/nano-components/packages/components/.stencil/plugins/stencil/vue-output}/types.d.ts +0 -0
  1774. /package/dist/types/{builds/WUhA-BsM/0/Digital/nano-components/packages/components/.stencil/generators/vue → Users/John.Jenkins/projects/nano-components/packages/components/.stencil/plugins/stencil/vue-output}/utils.d.ts +0 -0
  1775. /package/dist/types/{builds/WUhA-BsM/0/Digital → Users/John.Jenkins/projects}/nano-components/packages/components/.stencil/testing/mocks/intersection-observer.d.ts +0 -0
  1776. /package/dist/types/{builds/WUhA-BsM/0/Digital → Users/John.Jenkins/projects}/nano-components/packages/components/.stencil/wdio.conf.d.ts +0 -0
  1777. /package/dist/types/components/{table → data-table}/table.cell.d.ts +0 -0
  1778. /package/dist/types/components/{table → data-table}/table.constants.d.ts +0 -0
  1779. /package/dist/types/components/{table → data-table}/table.header.d.ts +0 -0
  1780. /package/dist/types/components/{table → data-table}/table.pin-service.d.ts +0 -0
  1781. /package/dist/types/components/{table → data-table}/table.row.d.ts +0 -0
  1782. /package/dist/types/components/{table → data-table}/table.worker.d.ts +0 -0
@@ -0,0 +1,1844 @@
1
+ /*!
2
+ * Custom elements for Nanopore-Digital Web applications
3
+ */
4
+ import { i as consoleError, h, F as Fragment, a as getElement, j as getRenderingRef, e as writeTask, f as readTask, r as registerInstance, c as createEvent, d as Host } from './index-DOuz1S3w.js';
5
+ import { h as h$1, t as transformTag } from './renderer-CnE0Hztu.js';
6
+ import { c as cyrb53 } from './math-BEqsTfVK.js';
7
+ import { d as debounce } from './throttle-C93FMm2Z.js';
8
+ import { i as isInViewport, f as findScrollParent } from './scroll-DHa1CIPP.js';
9
+ import { c as createStore } from './index-DkZY6pJu.js';
10
+
11
+ const CSSNAMESPACE = 'nano-tbl';
12
+
13
+ const isInstanceOf = (value, className) => {
14
+ const C = globalThis[className];
15
+ return C != null && value instanceof C;
16
+ };
17
+ const getTransferables = (value) => {
18
+ if (value != null) {
19
+ if (
20
+ isInstanceOf(value, "ArrayBuffer") ||
21
+ isInstanceOf(value, "MessagePort") ||
22
+ isInstanceOf(value, "ImageBitmap") ||
23
+ isInstanceOf(value, "OffscreenCanvas")
24
+ ) {
25
+ return [value];
26
+ }
27
+ if (typeof value === "object") {
28
+ if (value.constructor === Object) {
29
+ value = Object.values(value);
30
+ }
31
+ if (Array.isArray(value)) {
32
+ return value.flatMap(getTransferables);
33
+ }
34
+ return getTransferables(value.buffer);
35
+ }
36
+ }
37
+ return [];
38
+ };
39
+
40
+ let pendingIds = 0;
41
+ let callbackIds = 0;
42
+ const pending = new Map();
43
+ const callbacks = new Map();
44
+
45
+ const createWorker = (workerPath, workerName, workerMsgId) => {
46
+ const worker = new Worker(workerPath, {name:workerName});
47
+
48
+ worker.addEventListener('message', ({data}) => {
49
+ if (data) {
50
+ const workerMsg = data[0];
51
+ const id = data[1];
52
+ const value = data[2];
53
+
54
+ if (workerMsg === workerMsgId) {
55
+ const err = data[3];
56
+ const [resolve, reject, callbackIds] = pending.get(id);
57
+ pending.delete(id);
58
+
59
+ if (err) {
60
+ const errObj = (err.isError)
61
+ ? Object.assign(new Error(err.value.message), err.value)
62
+ : err.value;
63
+
64
+ consoleError(errObj);
65
+ reject(errObj);
66
+ } else {
67
+ if (callbackIds) {
68
+ callbackIds.forEach(id => callbacks.delete(id));
69
+ }
70
+ resolve(value);
71
+ }
72
+ } else if (workerMsg === workerMsgId + '.cb') {
73
+ try {
74
+ callbacks.get(id)(...value);
75
+ } catch (e) {
76
+ consoleError(e);
77
+ }
78
+ }
79
+ }
80
+ });
81
+
82
+ return worker;
83
+ };
84
+
85
+ const createWorkerProxy = (worker, workerMsgId, exportedMethod) => (
86
+ (...args) => new Promise((resolve, reject) => {
87
+ let pendingId = pendingIds++;
88
+ let i = 0;
89
+ let argLen = args.length;
90
+ let mainData = [resolve, reject];
91
+ pending.set(pendingId, mainData);
92
+
93
+ for (; i < argLen; i++) {
94
+ if (typeof args[i] === 'function') {
95
+ const callbackId = callbackIds++;
96
+ callbacks.set(callbackId, args[i]);
97
+ args[i] = [workerMsgId + '.cb', callbackId];
98
+ (mainData[2] = mainData[2] || []).push(callbackId);
99
+ }
100
+ }
101
+ const postMessage = (w) => (
102
+ w.postMessage(
103
+ [workerMsgId, pendingId, exportedMethod, args],
104
+ getTransferables(args)
105
+ )
106
+ );
107
+ if (worker.then) {
108
+ worker.then(postMessage);
109
+ } else {
110
+ postMessage(worker);
111
+ }
112
+ })
113
+ );
114
+
115
+ const workerPromise = import('./table.worker-zeRR3oed.js').then(m => m.worker);
116
+ const createWorkerStore = /*@__PURE__*/createWorkerProxy(workerPromise, 'stencil.table.worker', 'createWorkerStore');
117
+ const syncConfigToWorker = /*@__PURE__*/createWorkerProxy(workerPromise, 'stencil.table.worker', 'syncConfigToWorker');
118
+ const syncDataToWorker = /*@__PURE__*/createWorkerProxy(workerPromise, 'stencil.table.worker', 'syncDataToWorker');
119
+ const workerFilter = /*@__PURE__*/createWorkerProxy(workerPromise, 'stencil.table.worker', 'workerFilter');
120
+ const workerSearch = /*@__PURE__*/createWorkerProxy(workerPromise, 'stencil.table.worker', 'workerSearch');
121
+ const workerSort = /*@__PURE__*/createWorkerProxy(workerPromise, 'stencil.table.worker', 'workerSort');
122
+
123
+ function colsToWorker(columns) {
124
+ const safeColumns = JSON.parse(JSON.stringify(columns));
125
+ columns.forEach((c) => {
126
+ if (c?.sortCompareFn) {
127
+ const safeCol = safeColumns.find((sc) => sc.prop === c.prop);
128
+ safeCol.sortCompareFn = c.sortCompareFn.toString();
129
+ }
130
+ });
131
+ return safeColumns;
132
+ }
133
+ const stores = new WeakMap();
134
+ async function generateStore(host, columns, scrollParent, isReady) {
135
+ const store = {
136
+ data: createStore({ rows: [] }),
137
+ config: createStore({ columns }),
138
+ general: createStore({ workerId: null, scrollParent, host, isReady }),
139
+ };
140
+ const id = await createWorkerStore(store.data.state.rows, colsToWorker(store.config.state.columns));
141
+ store.general.state.workerId = id;
142
+ stores.set(host, store);
143
+ // sync data from our store to our worker
144
+ store.data.use({
145
+ reset: () => {
146
+ if (store.general.state.workerId)
147
+ syncDataToWorker(store.general.state.workerId, null);
148
+ },
149
+ dispose: () => {
150
+ if (store.general.state.workerId)
151
+ syncDataToWorker(store.general.state.workerId, null);
152
+ },
153
+ });
154
+ store.config.use({
155
+ reset: () => {
156
+ if (store.general.state.workerId)
157
+ syncConfigToWorker(store.general.state.workerId, null);
158
+ },
159
+ dispose: () => {
160
+ if (store.general.state.workerId)
161
+ syncConfigToWorker(store.general.state.workerId, null);
162
+ },
163
+ });
164
+ return store;
165
+ }
166
+ function getStore(host) {
167
+ return stores.get(host);
168
+ }
169
+ function getDataType(value) {
170
+ if (value instanceof Date) {
171
+ return 'date';
172
+ }
173
+ if (['number', 'string', 'boolean'].includes(typeof value)) {
174
+ return typeof value;
175
+ }
176
+ return 'unknown';
177
+ }
178
+ function storeSetData(host, rows) {
179
+ const store = stores.get(host);
180
+ if (!store)
181
+ return;
182
+ const cols = store.config.state.columns;
183
+ const dateCols = cols
184
+ .filter((col) => col.type === 'date')
185
+ .reduce((prev, curr) => {
186
+ return [...prev, curr.prop];
187
+ }, []);
188
+ const unknownCols = cols.filter((col) => !col.type);
189
+ // augments data with some internal props.
190
+ // discern unknown column types
191
+ // convert dates to numbers for worker
192
+ rows = rows.map((row, i) => {
193
+ // try our best to discern the column type (from first row) if unset
194
+ if (unknownCols.length && i === 0) {
195
+ store.config.state.columns = cols.map((col) => {
196
+ if (unknownCols.includes(col) && row[col.prop] && !col.type) {
197
+ col.type = getDataType(row[col.prop]);
198
+ if (col.type === 'date')
199
+ dateCols.push(col.prop);
200
+ }
201
+ return col;
202
+ });
203
+ }
204
+ // convert date columns into numbers to send to our worker
205
+ dateCols.forEach((colName) => {
206
+ // coerce any date type;
207
+ // Date(), timestamp, valid date string
208
+ const coerceDate = new Date(row[colName]);
209
+ if (!!coerceDate && Number(coerceDate))
210
+ row[colName] = Number(coerceDate);
211
+ });
212
+ row['__index'] = i;
213
+ row['__uuid'] = cyrb53(cols.map((c) => row[c.prop]).join());
214
+ return row;
215
+ });
216
+ store.data.state.rows = rows;
217
+ if (store.general.state.workerId)
218
+ return syncDataToWorker(store.general.state.workerId, rows);
219
+ }
220
+ function storeSetConfig(host, columns) {
221
+ const store = stores.get(host);
222
+ if (!store)
223
+ return;
224
+ store.config.state.columns = columns;
225
+ if (store.general.state.workerId)
226
+ return syncConfigToWorker(store.general.state.workerId, colsToWorker(columns));
227
+ }
228
+ async function storeSearch(host, term) {
229
+ const store = stores.get(host);
230
+ if (!store || !store.general.state.workerId)
231
+ return;
232
+ try {
233
+ store.data.state.rows = await workerSearch(store.general.state.workerId, term);
234
+ }
235
+ catch (e) {
236
+ console.warn(e);
237
+ }
238
+ }
239
+ async function storeFilter(host, filters) {
240
+ const store = stores.get(host);
241
+ if (!store || !store.general.state.workerId)
242
+ return;
243
+ try {
244
+ store.data.state.rows = await workerFilter(store.general.state.workerId, filters);
245
+ }
246
+ catch (e) {
247
+ console.warn(e);
248
+ }
249
+ }
250
+ async function storeSort(host, prop, order) {
251
+ const store = stores.get(host);
252
+ if (!store || !store.general.state.workerId)
253
+ return;
254
+ try {
255
+ store.data.state.rows = await workerSort(store.general.state.workerId, prop, order);
256
+ }
257
+ catch (e) {
258
+ console.warn(e);
259
+ }
260
+ }
261
+
262
+ /**
263
+ * Get a model object for custom cell / property renderers.
264
+ * @param rowIndex - the current row index being rendered
265
+ * @param colIndex - the current column index being rendered
266
+ * @returns a model object which will be passed to custom renderers
267
+ */
268
+ function colDataModel(rowIndex, colIndex) {
269
+ const store = fetchStores();
270
+ const columns = store.config.state.columns;
271
+ const rows = store.data.state.rows;
272
+ const column = columns[colIndex];
273
+ const prop = column?.prop;
274
+ const rowModel = rows[rowIndex];
275
+ const cellModel = rowModel ? rowModel[columns[colIndex].prop] : '';
276
+ return {
277
+ prop,
278
+ cellModel,
279
+ column,
280
+ rowIndex,
281
+ rowModel,
282
+ };
283
+ }
284
+ /**
285
+ * Get a model object for custom row renderers.
286
+ * @param rowIndex
287
+ * @returns a model object passed to custom row renderers
288
+ */
289
+ function rowDataModel(rowIndex) {
290
+ const store = fetchStores();
291
+ const rows = store.data.state.rows;
292
+ const rowModel = rows[rowIndex];
293
+ return {
294
+ rowModel,
295
+ rowIndex,
296
+ };
297
+ }
298
+ /**
299
+ * Merges 2 objects of properties together
300
+ * @param current - property object
301
+ * @param extra - additional object property
302
+ * @returns - merged properties that can be applied to a node
303
+ */
304
+ function mergeProperties(current, extra) {
305
+ if (!extra)
306
+ return current;
307
+ // top level merge
308
+ const props = { ...extra, ...current };
309
+ // deeper merge
310
+ // merge classes maps or strings
311
+ if (extra.class) {
312
+ if (typeof extra.class === 'object' && typeof props.class === 'object') {
313
+ props.class = { ...extra.class, ...props.class };
314
+ }
315
+ else if (typeof extra.class === 'string' &&
316
+ typeof props.class === 'object') {
317
+ props.class[extra.class] = true;
318
+ }
319
+ else if (typeof props.class === 'string' &&
320
+ typeof extra.class === 'string') {
321
+ props.class += ' ' + extra.class;
322
+ }
323
+ }
324
+ // merge style
325
+ if (extra.style) {
326
+ props.style = { ...extra.style, ...props.style };
327
+ }
328
+ return props;
329
+ }
330
+ /**
331
+ * Returns the current nano-data-table's stores.
332
+ * @returns the current nano-data-table stores
333
+ */
334
+ function fetchStores() {
335
+ return getStore(getElement(getRenderingRef()));
336
+ }
337
+ /**
338
+ * Merges any defined cell properties with properties
339
+ * required by `nano-data-table` functionality
340
+ * @param rowIndex - the current row index being rendered
341
+ * @param colIndex = the current column index being rendered
342
+ * @param defaultProps - default properties required by `nano-data-table`
343
+ * @returns - the merged properties that will be applied to a node
344
+ */
345
+ function mergeCellProperties(rowIndex, colIndex, defaultProps) {
346
+ const props = { ...defaultProps };
347
+ const extraPropsFunc = fetchStores().config.state.columns[colIndex]?.cellProperties;
348
+ if (!extraPropsFunc)
349
+ return props;
350
+ const data = colDataModel(rowIndex, colIndex);
351
+ const extra = extraPropsFunc(data);
352
+ if (!extra)
353
+ return props;
354
+ return mergeProperties(props, extra);
355
+ }
356
+ /**
357
+ * Renders a table header (within a thead) using a custom template if set.
358
+ * @param col - the current column config object
359
+ * @returns - a JSX node
360
+ */
361
+ function colheadFootRender(col) {
362
+ const tpl = col?.columnTemplate;
363
+ return tpl ? (tpl(h, col)) : (h(Fragment, null, col.title));
364
+ }
365
+ function headerPinClasses(type, vPinned, toString = false) {
366
+ const classes = {
367
+ [`${CSSNAMESPACE}__${type}`]: true,
368
+ [`${CSSNAMESPACE}__pin`]: !!vPinned,
369
+ [`${CSSNAMESPACE}__pin--top`]: vPinned === 'top',
370
+ [`${CSSNAMESPACE}__pin--bottom`]: vPinned === 'bottom',
371
+ };
372
+ if (toString)
373
+ return classListToStr(classes);
374
+ return classes;
375
+ }
376
+ /**
377
+ * Turns a class map {'string': boolean} to class string
378
+ * @param classes - the class map to convert
379
+ * @returns a class string
380
+ */
381
+ function classListToStr(classes) {
382
+ let classString = '';
383
+ Object.entries(classes).forEach(([className, on]) => {
384
+ if (on)
385
+ classString += className + ' ';
386
+ });
387
+ return classString;
388
+ }
389
+
390
+ const TableColHead = ({ column, onColumnSortClick, defaults, }) => {
391
+ if (column.hidden) {
392
+ return h$1(Fragment, null);
393
+ }
394
+ // Sort handling
395
+ function handleColumnSortClick(e) {
396
+ let order;
397
+ switch (column.order) {
398
+ case 'asc':
399
+ order = 'desc';
400
+ break;
401
+ case 'desc':
402
+ order = null;
403
+ break;
404
+ default:
405
+ order = 'asc';
406
+ }
407
+ onColumnSortClick(order, column.prop, e.target.closest('th'));
408
+ }
409
+ function isSortable() {
410
+ return ((!!defaults.sortable && column.sortable !== false) ||
411
+ (!defaults.sortable && column.sortable === true));
412
+ }
413
+ let extraProps = {};
414
+ if (column.columnProperties) {
415
+ extraProps = column.columnProperties(column) || extraProps;
416
+ }
417
+ const baseProps = {
418
+ class: {
419
+ ...headerPinClasses('th', column.pinned),
420
+ [`${CSSNAMESPACE}__pin--start`]: column.pinned === 'start',
421
+ [`${CSSNAMESPACE}__pin--end`]: column.pinned === 'end',
422
+ [`${CSSNAMESPACE}__ordered`]: !!column.order,
423
+ [`${CSSNAMESPACE}__filtered`]: column.filter !== undefined && column.filter !== null,
424
+ },
425
+ };
426
+ let props = extraProps ? mergeProperties(baseProps, extraProps) : baseProps;
427
+ const content = colheadFootRender(column);
428
+ if (!content)
429
+ return h$1(Fragment, null);
430
+ props =
431
+ Number(props.colSpan) > 1
432
+ ? { ...props, scope: 'colgroup' }
433
+ : { ...props, scope: 'col' };
434
+ if (isSortable()) {
435
+ const sort = column.order
436
+ ? column.order === 'asc'
437
+ ? 'ascending'
438
+ : 'descending'
439
+ : 'none';
440
+ props = { ...props, 'aria-sort': sort };
441
+ }
442
+ return (h$1("th", { ...props, key: column.prop }, isSortable() ? (h$1("button", { class: {
443
+ [`${CSSNAMESPACE}__order-btn`]: true,
444
+ [`${CSSNAMESPACE}__cell-content`]: true,
445
+ }, onClick: handleColumnSortClick },
446
+ colheadFootRender(column),
447
+ column.filter !== undefined && column.filter !== null && (h$1("nano-icon", { name: "light/filter" })),
448
+ !!column.order &&
449
+ (column.order === 'desc' ? (h$1("nano-icon", { name: "solid/arrow-down-long" })) : (h$1("nano-icon", { name: "solid/arrow-up-long" }))),
450
+ h$1("div", { class: `${CSSNAMESPACE}__status-icons` },
451
+ h$1("nano-icon", { name: "light/chevron-down" })))) : (h$1("div", { class: `${CSSNAMESPACE}__cell-content` },
452
+ colheadFootRender(column),
453
+ column.filter !== undefined && column.filter !== null && (h$1("nano-icon", { name: "light/bars-filter" }))))));
454
+ };
455
+
456
+ // TABLE CELL
457
+ // (tbody > tr > td, tbody > tr > th)
458
+ /**
459
+ * Renders a cell using a custom renderer if set.
460
+ * @param rowIndex - the current row index being rendered
461
+ * @param colIndex - the current column index being rendered
462
+ * @returns - a JSX node
463
+ */
464
+ function cellRender(rowIndex, colIndex) {
465
+ const store = fetchStores();
466
+ const columns = store.config.state.columns;
467
+ const tpl = columns[colIndex]?.cellTemplate;
468
+ const model = colDataModel(rowIndex, colIndex);
469
+ const tableInstance = getRenderingRef();
470
+ if (!!model.cellModel && columns[colIndex].type === 'date') {
471
+ const d = new Date(model.cellModel);
472
+ if (d instanceof Date && !isNaN(d)) {
473
+ model.cellModel = !tpl
474
+ ? `${new Date(model.cellModel).toLocaleDateString()} ${new Date(model.cellModel).toLocaleTimeString()}`
475
+ : d;
476
+ }
477
+ }
478
+ // Wrap the h pragma, then we can know if we're using Stencil's
479
+ // jsx renderer or a different one
480
+ let hCalled = false;
481
+ const hWrap = (...args) => {
482
+ hCalled = true;
483
+ // @ts-expect-error - h mismatch
484
+ return h$1(...args);
485
+ };
486
+ let tplResult = tpl ? tpl(hWrap, model) : undefined;
487
+ if (tplResult &&
488
+ tableInstance.customRenderer &&
489
+ tplResult['$attrs$'] === undefined &&
490
+ !(tplResult instanceof Element) &&
491
+ typeof tplResult !== 'string' &&
492
+ !hCalled) {
493
+ // template result is jsx *not* from Stencil.
494
+ // Render it now and output it later.
495
+ const templateEle = document.createElement('template');
496
+ const result = tableInstance.customRenderer(tplResult, templateEle.content);
497
+ // custom rendering can render to the templateEle OR return a promise<string>
498
+ tplResult = result && result['then'] ? result : templateEle;
499
+ }
500
+ return tplResult ? (tplResult) : model.cellModel !== undefined && model.cellModel !== null ? (h$1(Fragment, null, model.cellModel?.toString())) : ('');
501
+ }
502
+ const baseCellClasses = (colIndex, toString = false) => {
503
+ const store = fetchStores();
504
+ const column = store.config.state.columns[colIndex];
505
+ const classes = {
506
+ [`${CSSNAMESPACE}__td`]: true,
507
+ [`${CSSNAMESPACE}__ordered`]: !!column.order,
508
+ [`${CSSNAMESPACE}__pin`]: !!column.pinned,
509
+ [`${CSSNAMESPACE}__pin--start`]: column.pinned === 'start',
510
+ [`${CSSNAMESPACE}__pin--end`]: column.pinned === 'end',
511
+ };
512
+ if (toString)
513
+ return classListToStr(classes);
514
+ return classes;
515
+ };
516
+ const TableCell = ({ rowIndex, colIndex, nestedContent, }) => {
517
+ const Content = () => nestedContent
518
+ ? nestedContent()
519
+ : cellRender(rowIndex, colIndex) || (h$1("span", { class: "placeholder" }, "\u00A0"));
520
+ let CellType = 'td';
521
+ const store = fetchStores();
522
+ const column = store.config.state.columns[colIndex];
523
+ if (column.hidden) {
524
+ return h$1(Fragment, null);
525
+ }
526
+ let props = mergeCellProperties(rowIndex, colIndex, {
527
+ class: baseCellClasses(colIndex),
528
+ });
529
+ if (column.rowHeader) {
530
+ props =
531
+ Number(props.rowSpan) > 1
532
+ ? { ...props, scope: 'rowgroup' }
533
+ : { ...props, scope: 'row' };
534
+ CellType = 'th';
535
+ }
536
+ const ContentWrap = (props) => {
537
+ const content = Content();
538
+ return (h$1("div", { ref: (d) => {
539
+ if (!d)
540
+ return;
541
+ if (content instanceof Element) {
542
+ // custom rendered an element
543
+ d.replaceChildren();
544
+ d.append(content['content'] || content);
545
+ }
546
+ else if (content['then']) {
547
+ // custom rendered a promise. Most likely within SSR.
548
+ content.then((res) => (d.innerHTML = res));
549
+ }
550
+ }, ...props, class: {
551
+ [`${CSSNAMESPACE}__cell-content`]: true,
552
+ [`${CSSNAMESPACE}__cell-content--wrap`]: !!column.wrap,
553
+ }, innerHTML: typeof content === 'string' && content.includes('<')
554
+ ? content
555
+ : undefined }, (typeof content !== 'string' || !content.includes('<')) &&
556
+ !content['then'] &&
557
+ !(content instanceof Element) &&
558
+ content));
559
+ };
560
+ return (h$1(CellType, { ...props }, column.autoTooltip && !column.wrap ? (h$1("nano-resize-observe", { notifyContentFit: "x", onNanoResizeContentFitChange: (e) => (e.target.firstElementChild.disabled =
561
+ e.detail.x) },
562
+ h$1("nano-tooltip", { disabled: true, placement: "top", onNanoShow: (e) => (e.target.closest(CellType).style.zIndex = '100'), onNanoHide: (e) => (e.target.closest(CellType).style.zIndex = '') },
563
+ h$1(ContentWrap, null),
564
+ h$1("span", { slot: "content" },
565
+ h$1(Content, null))))) : (h$1(ContentWrap, null))));
566
+ };
567
+
568
+ const tableCellContent = (props, children, ctx) => {
569
+ const cell = (h$1("div", { ...props.wrapperProps, class: {
570
+ [`${CSSNAMESPACE}__cell-content`]: true,
571
+ [`${CSSNAMESPACE}__cell-content--wrap`]: props.wrap,
572
+ } }, children));
573
+ return props.header ? (h$1("th", { scope: ctx, ...props.cellProps }, cell)) : (h$1("td", { ...props.cellProps }, cell));
574
+ };
575
+ const TableRow = ({ rowRenderer, rowIndex, rowModel }, children, utils) => {
576
+ // helper, generates <td> or <th>
577
+ const TableCell = ({ header, wrap, cellProps, wrapperProps }, children) => {
578
+ return tableCellContent({ header, wrap, cellProps, wrapperProps }, children, 'row');
579
+ };
580
+ let extraProps = {};
581
+ if (!rowModel) {
582
+ const model = rowDataModel(rowIndex);
583
+ rowModel = model.rowModel;
584
+ }
585
+ if (rowRenderer?.rowProperties) {
586
+ extraProps =
587
+ rowRenderer.rowProperties({ rowModel, rowIndex }) || extraProps;
588
+ }
589
+ let rowPinned;
590
+ if (rowRenderer?.pinned && typeof rowRenderer.pinned === 'function') {
591
+ rowPinned = rowRenderer.pinned({ rowModel, rowIndex });
592
+ }
593
+ const props = mergeProperties({ class: headerPinClasses('tr', rowPinned, true) }, extraProps);
594
+ const tpl = rowRenderer?.template;
595
+ /**
596
+ * Applies appropriate classes to td / th VNodes;
597
+ * which can be supplied by user defined templates
598
+ * @param children virtual / jsx node array
599
+ * @returns virtual / jsx node array
600
+ */
601
+ const applyCellClasses = (children) => {
602
+ return utils.map(children, (cNode, i) => {
603
+ if (['td', 'th'].includes(cNode.vtag.toString())) {
604
+ cNode.vattrs = mergeProperties({
605
+ class: baseCellClasses(i, true),
606
+ }, cNode.vattrs);
607
+ }
608
+ return cNode;
609
+ });
610
+ };
611
+ if (tpl) {
612
+ let toRender = tpl(h$1, {
613
+ renderedRow: (h$1("tr", { ...props, key: rowModel.__uuid }, children)),
614
+ rowModel,
615
+ rowIndex,
616
+ }, TableCell);
617
+ if (Array.isArray(toRender)) {
618
+ toRender = utils.map(toRender, (node, i) => {
619
+ if (node.vtag === 'tr') {
620
+ if (!node.vkey)
621
+ node.vkey = `${rowModel.__uuid}_${i}`;
622
+ node.vattrs = mergeProperties({ class: headerPinClasses('tr', rowPinned, true) }, node.vattrs);
623
+ if (node.vchildren) {
624
+ node.vchildren = applyCellClasses(node.vchildren);
625
+ }
626
+ }
627
+ return node;
628
+ });
629
+ }
630
+ return toRender;
631
+ }
632
+ return (h$1("tr", { ...props, key: rowModel.__uuid }, applyCellClasses(children)));
633
+ };
634
+ const TableHeadFootRow = ({ rowRenderer }, // onRowPinned, onColPinned
635
+ children, utils) => {
636
+ let extraProps = {};
637
+ if (rowRenderer.rowProperties) {
638
+ extraProps = rowRenderer.rowProperties() || {};
639
+ }
640
+ const TableHeadFootCell = ({ header, wrap, cellProps, wrapperProps }, children) => {
641
+ return tableCellContent({ header, wrap, cellProps, wrapperProps }, children, 'col');
642
+ };
643
+ const pinned = rowRenderer.pinned || null;
644
+ const baseProps = { class: headerPinClasses('tr', pinned) };
645
+ const props = extraProps ? mergeProperties(baseProps, extraProps) : baseProps;
646
+ const tpl = rowRenderer?.template;
647
+ if (tpl) {
648
+ let toRender = tpl(h$1, {
649
+ renderedRow: h$1("tr", { ...props }, children),
650
+ }, TableHeadFootCell);
651
+ if (Array.isArray(toRender)) {
652
+ toRender = utils.map(toRender, (node) => {
653
+ if (node.vtag === 'tr') {
654
+ node.vattrs = mergeProperties({ class: headerPinClasses('tr', pinned, true) }, node.vattrs);
655
+ if (node.vchildren) {
656
+ node.vchildren = utils.map(node.vchildren, (cNode) => {
657
+ if (['td', 'th'].includes(cNode.vtag.toString())) {
658
+ cNode.vattrs = mergeProperties({
659
+ class: headerPinClasses(cNode.vtag.toString(), pinned, true),
660
+ }, cNode.vattrs);
661
+ }
662
+ return cNode;
663
+ });
664
+ }
665
+ }
666
+ return node;
667
+ });
668
+ }
669
+ return toRender;
670
+ }
671
+ return h$1("tr", { ...props }, children);
672
+ };
673
+
674
+ function addStyleSheet(id, css) {
675
+ const styleSheet = document.getElementById(id) ||
676
+ document.createElement('style');
677
+ styleSheet.id = id;
678
+ styleSheet.innerHTML = css;
679
+ if (!styleSheet.isConnected)
680
+ document.head.append(styleSheet);
681
+ }
682
+ /**
683
+ * Manages the complex business of table 'pinning'; sticking columns and rows to the scrolling parent element.
684
+ *
685
+ * *knowing* when an element is pinned is tricky.
686
+ * Managing the display of multiple, side-by-side pinned elements is trickier still.
687
+ *
688
+ * Pinning table columns are very different from pinning table rows:
689
+ * - Rows are actual elements we can select, measure and apply styles to.
690
+ * - Columns are disparate collections of elements that are much harder to select, measure and apply styles to.
691
+ *
692
+ * With this in mind, how columns and rows are pinned is different:
693
+ * Rows can have changes applied directly, Columns have changes applied via dynamic stylesheets.
694
+ *
695
+ * The service is slightly opinionated on how it pins rows and columns (with some room for override):
696
+ * - Pinned columns are stuck consecutively, without overlapping.
697
+ * e.g. If column 'name' and 'surname' are both `pin: 'start'`; 'surname' will display **next** to name.
698
+ * Both columns are important for context
699
+ *
700
+ * - Pinned rows are set to overlap *when* they have the same ancestor,
701
+ * and stuck consecutively when they have a different ancestor.
702
+ * e.g. `tbody > tr.pin ~ tr.pin` the second row will **overlap** the first; it's unlikely both rows will be important for context.
703
+ * `thead > tr.pin`, `tbody > tr.pin`. Both rows are required for context so will require next to each other.
704
+ *
705
+ * Devs can override this behaviour by setting `--pin-start`, `--pin-end`, `--pin-top`, `--pin-bottom` custom vars.
706
+ */
707
+ class TablePinService {
708
+ // Private state
709
+ cachedColMeta = new WeakMap();
710
+ tableId;
711
+ tableEle;
712
+ scrollElement;
713
+ startColumns;
714
+ endColumns;
715
+ topRows;
716
+ bottomRows;
717
+ tableDims;
718
+ constructor(table, scrollElement) {
719
+ this.tableEle = table;
720
+ this.tableId = this.tableEle.id;
721
+ this.scrollElement = scrollElement;
722
+ // Secret sauce - `getElementsByClassName` is a live collection.
723
+ // An HTMLCollection will keep itself up-to-date as elements come and go
724
+ // So we can keep assessing on scroll
725
+ this.startColumns = table
726
+ .querySelector('thead')
727
+ .getElementsByClassName(`${CSSNAMESPACE}__pin--start`);
728
+ this.endColumns = table
729
+ .querySelector('thead')
730
+ .getElementsByClassName(`${CSSNAMESPACE}__pin--end`);
731
+ this.topRows = table.getElementsByClassName(`${CSSNAMESPACE}__pin--top`);
732
+ this.bottomRows = table.getElementsByClassName(`${CSSNAMESPACE}__pin--bottom`);
733
+ this.onResize();
734
+ }
735
+ // Pinned cols & change detection
736
+ get pinnedStart() {
737
+ return this._pinnedStart;
738
+ }
739
+ set pinnedStart(cols) {
740
+ this._pinnedStart = cols;
741
+ this.handlePinnedStartChange();
742
+ }
743
+ _pinnedStart = [];
744
+ /**
745
+ * Called when columns are either pinned or unpinned.
746
+ * Attaches a tiny stylesheet to target the 'last' start column.
747
+ * (e.g. We only want to apply drop shadow on last pinned start column - not all pinned columns)
748
+ */
749
+ handlePinnedStartChange() {
750
+ writeTask(() => {
751
+ if (this.pinnedStart.length) {
752
+ this.tableEle.classList.add(`${CSSNAMESPACE}__pinned--start`);
753
+ const lastActiveCol = this.cachedColMeta.get(this.pinnedStart[this.pinnedStart.length - 1]);
754
+ addStyleSheet(`${this.tableId}-col-start-active-style`,
755
+ /* css */ `
756
+ #${this.tableId} tr > :nth-child(${lastActiveCol.idx + 1}) {
757
+ --pin-start-active: 1;
758
+ }
759
+ `);
760
+ }
761
+ else {
762
+ this.tableEle.classList.remove(`${CSSNAMESPACE}__pinned--start`);
763
+ addStyleSheet(`${this.tableId}-col-start-active-style`, ``);
764
+ }
765
+ });
766
+ }
767
+ get pinnedEnd() {
768
+ return this._pinnedEnd;
769
+ }
770
+ set pinnedEnd(cols) {
771
+ this._pinnedEnd = cols;
772
+ this.handlePinnedEndChange();
773
+ }
774
+ _pinnedEnd = [];
775
+ /**
776
+ * Called when columns are either pinned or unpinned.
777
+ * Attaches a tiny stylesheet to target the 'first' end column.
778
+ * (e.g. We only want to apply drop shadow on first pinned end column - not all pinned columns)
779
+ */
780
+ handlePinnedEndChange() {
781
+ writeTask(() => {
782
+ if (this.pinnedEnd.length) {
783
+ this.tableEle.classList.add(`${CSSNAMESPACE}__pinned--end`);
784
+ const firstActiveCol = this.cachedColMeta.get(this.pinnedEnd[0]);
785
+ addStyleSheet(`${this.tableId}-col-end-active-style`,
786
+ /* css */ `
787
+ #${this.tableId} tr > :nth-child(${firstActiveCol.idx + 1}) { --pin-end-active: 1; }
788
+ `);
789
+ }
790
+ else {
791
+ this.tableEle.classList.remove(`${CSSNAMESPACE}__pinned--end`);
792
+ addStyleSheet(`${this.tableId}-col-end-active-style`, ``);
793
+ }
794
+ });
795
+ }
796
+ get cssColDimensionCacheKey() {
797
+ return this._cssColDimensionCacheKey;
798
+ }
799
+ set cssColDimensionCacheKey(key) {
800
+ if (key === this._cssColDimensionCacheKey)
801
+ return;
802
+ this._cssColDimensionCacheKey = key;
803
+ this.createPinnedColDimensionStyles();
804
+ }
805
+ _cssColDimensionCacheKey = '';
806
+ /**
807
+ * To only generate column dimension styles when necessary we
808
+ * maintain a cache key string via serialised column meta.
809
+ * Only when this key changes do we generate a new stylesheet
810
+ */
811
+ generateCssCacheKey() {
812
+ let key = '';
813
+ for (const col of this.startColumns) {
814
+ const colMeta = this.cachedColMeta.get(col);
815
+ key += `${colMeta.idx}-start-${colMeta.width}`;
816
+ }
817
+ for (const col of this.endColumns) {
818
+ const colMeta = this.cachedColMeta.get(col);
819
+ key += `${colMeta.idx}-start-${colMeta.width}`;
820
+ }
821
+ this.cssColDimensionCacheKey = key;
822
+ }
823
+ /**
824
+ * Generates pinned column width offset styles
825
+ * so pinned columns can appear stuck together,
826
+ * then attaches a stylesheet.
827
+ */
828
+ createPinnedColDimensionStyles() {
829
+ let widthS = 0;
830
+ let widthE = 0;
831
+ const startCols = Array.from(this.startColumns);
832
+ const endCols = Array.from(this.endColumns).reverse();
833
+ const css = /* css */ `
834
+ ${startCols
835
+ .map((col) => {
836
+ const colMeta = this.cachedColMeta.get(col);
837
+ widthS += colMeta.width - 1 || -1;
838
+ return /* css */ `
839
+ #${this.tableId} tr > :nth-child(${colMeta.idx + 1}) ~ td,
840
+ #${this.tableId} tr > :nth-child(${colMeta.idx + 1}) ~ th {
841
+ --pin-start: ${widthS - 1}px;
842
+ }
843
+ `;
844
+ })
845
+ .join('')}
846
+ ${endCols
847
+ .map((col) => {
848
+ const colMeta = this.cachedColMeta.get(col);
849
+ widthE += colMeta.width - 1 || -1;
850
+ return /* css */ `
851
+ #${this.tableId} tr > td:has(~ :nth-child(${colMeta.idx + 1})),
852
+ #${this.tableId} tr > th:has(~ :nth-child(${colMeta.idx + 1})) {
853
+ --pin-end: ${widthE - 1}px;
854
+ }
855
+ `;
856
+ })
857
+ .join('')}
858
+ `;
859
+ addStyleSheet(`${this.tableId}-dimension-style`, css);
860
+ }
861
+ getParentOffsets() {
862
+ const { x, y } = this.scrollElement.getBoundingClientRect();
863
+ let offsetX = x;
864
+ let offsetY = y;
865
+ if (this.scrollElement === document.documentElement) {
866
+ offsetX = this.scrollElement.offsetLeft;
867
+ offsetY = this.scrollElement.offsetTop;
868
+ }
869
+ return { offsetX, offsetY };
870
+ }
871
+ /**
872
+ * Loops through all 'top' & 'bottom' rows (on scroll or resize)
873
+ * Manages their visual state by applying classes on stuck / unstuck
874
+ * And their pinned offset / distance
875
+ */
876
+ assessRows() {
877
+ if (!this.topRows.length && !this.bottomRows.length)
878
+ return;
879
+ // top rows
880
+ if (this.topRows.length) {
881
+ readTask(async () => {
882
+ let heightAggregate = 0;
883
+ let cacheParent;
884
+ const { offsetY } = this.getParentOffsets();
885
+ for (const topRow of this.topRows) {
886
+ const { y, height } = topRow.getBoundingClientRect();
887
+ const currParent = topRow.parentElement;
888
+ // we'll use the applied `--pin-top` css var to decide row offset.
889
+ // This allows devs to override this behaviour through selector specificity
890
+ const pinTop = getComputedStyle(topRow).getPropertyValue('--pin-top');
891
+ const offset = pinTop !== '' ? parseFloat(pinTop) : heightAggregate;
892
+ // we need to wait for the row to finish sticking
893
+ // and generating it's offset (`--pin-top`) so we can see, on
894
+ // subsequent rows *if* the offset was applied
895
+ writeTask(() => {
896
+ if (y - offsetY <= offset) {
897
+ topRow.classList.add(`${CSSNAMESPACE}__pinned`, `${CSSNAMESPACE}__pinned--top`);
898
+ }
899
+ else {
900
+ topRow.classList.remove(`${CSSNAMESPACE}__pinned`, `${CSSNAMESPACE}__pinned--top`);
901
+ }
902
+ // by default, we only want to stick one row from each parental block (thead, tbody, tfoot)
903
+ // so only aggregate height / offset when cacheParent is different from current parent.
904
+ // Devs can override this behaviour by manually setting `--pin-bottom` on the table row
905
+ if (cacheParent !== currParent) {
906
+ currParent.style.setProperty('--pin-top', `${heightAggregate - 1}px`);
907
+ heightAggregate += height - 1;
908
+ cacheParent = currParent;
909
+ }
910
+ });
911
+ }
912
+ });
913
+ }
914
+ // bottom rows
915
+ if (this.bottomRows.length) {
916
+ const bottomRows = Array.from(this.bottomRows).reverse();
917
+ readTask(async () => {
918
+ let cacheParent;
919
+ let heightAggregate = 0;
920
+ const { offsetY } = this.getParentOffsets();
921
+ for (const bottomRow of bottomRows) {
922
+ if (!bottomRow.isConnected)
923
+ continue;
924
+ const { y, height } = bottomRow.getBoundingClientRect();
925
+ const currParent = bottomRow.parentElement;
926
+ // we'll use the applied `--pin-bottom` css var to decide row offset.
927
+ // This allows devs to override this behaviour through selector specificity
928
+ const pinBottom = getComputedStyle(bottomRow).getPropertyValue('--pin-bottom');
929
+ const offset = pinBottom !== '' ? parseFloat(pinBottom) : heightAggregate;
930
+ // we need to wait for the row to finish sticking
931
+ // and generating it's offset (`--pin-bottom`) to we can see, on
932
+ // subsequent rows *if* the offset was applied
933
+ await new Promise((resolve) => writeTask(() => {
934
+ if (this.tableDims.height + offsetY - (y + height) <= offset) {
935
+ bottomRow.classList.add(`${CSSNAMESPACE}__pinned`, `${CSSNAMESPACE}__pinned--bottom`);
936
+ }
937
+ else {
938
+ bottomRow.classList.remove(`${CSSNAMESPACE}__pinned`, `${CSSNAMESPACE}__pinned--bottom`);
939
+ }
940
+ // by default, we only want to stick one row from each parental block (thead, tbody, tfoot)
941
+ // so only aggregate height / offset when cacheParent is different from current parent.
942
+ // Devs can override this behaviour by manually setting `--pin-bottom` on the table row
943
+ if (cacheParent !== currParent) {
944
+ currParent.style.setProperty('--pin-bottom', `${heightAggregate - 1}px`);
945
+ heightAggregate += height - 1;
946
+ cacheParent = currParent;
947
+ }
948
+ resolve();
949
+ }));
950
+ }
951
+ });
952
+ }
953
+ }
954
+ /**
955
+ * Loops through all 'start' & 'end' columns (on scroll or resize)
956
+ * Caches meta about each column (e.g. size, position-index)
957
+ * and decides which columns are pinned
958
+ */
959
+ async assessCols() {
960
+ if (!this.startColumns.length && !this.endColumns.length)
961
+ return;
962
+ let boundBox;
963
+ let currPinned;
964
+ let parentEles;
965
+ const done = new Promise((resolve) => {
966
+ // start cols
967
+ if (this.startColumns.length) {
968
+ readTask(() => {
969
+ const { offsetX } = this.getParentOffsets();
970
+ // cumulatively add widths of columns together
971
+ // 'cos columns stick together
972
+ let widthAggregate = offsetX;
973
+ parentEles = Array.from(this.startColumns[0].parentElement.children);
974
+ for (const startCol of this.startColumns) {
975
+ boundBox = startCol.getBoundingClientRect();
976
+ // cache meta for later
977
+ this.cachedColMeta.set(startCol, {
978
+ width: boundBox.width,
979
+ idx: parentEles.indexOf(startCol),
980
+ });
981
+ currPinned = this.pinnedStart.find((c) => c === startCol);
982
+ if (boundBox.x < widthAggregate) {
983
+ // this column is pinned
984
+ if (!currPinned)
985
+ this.pinnedStart = [
986
+ ...this.pinnedStart,
987
+ startCol,
988
+ ];
989
+ }
990
+ else if (currPinned) {
991
+ // this column is unpinned
992
+ this.pinnedStart = this.pinnedStart.filter((c) => c !== startCol);
993
+ }
994
+ widthAggregate += boundBox.width;
995
+ }
996
+ if (!this.endColumns.length)
997
+ resolve();
998
+ });
999
+ }
1000
+ // end cols
1001
+ if (this.endColumns.length) {
1002
+ readTask(() => {
1003
+ const endCols = Array.from(this.endColumns).reverse();
1004
+ parentEles = Array.from(this.endColumns[0].parentElement.children);
1005
+ const { offsetX } = this.getParentOffsets();
1006
+ // cumulatively add widths of columns together
1007
+ // 'cos columns stick together
1008
+ let widthAggregate = 0;
1009
+ for (const endCol of endCols) {
1010
+ boundBox = endCol.getBoundingClientRect();
1011
+ // cache meta for later
1012
+ this.cachedColMeta.set(endCol, {
1013
+ width: boundBox.width,
1014
+ idx: parentEles.indexOf(endCol),
1015
+ });
1016
+ currPinned = this.pinnedEnd.find((c) => c === endCol);
1017
+ if (this.tableDims.width + offsetX - boundBox.right <=
1018
+ widthAggregate) {
1019
+ // this column is pinned
1020
+ if (!currPinned)
1021
+ this.pinnedEnd = [endCol, ...this.pinnedEnd];
1022
+ }
1023
+ else if (currPinned) {
1024
+ // this column is unpinned
1025
+ this.pinnedEnd = this.pinnedEnd.filter((c) => c !== endCol);
1026
+ }
1027
+ widthAggregate += boundBox.width;
1028
+ }
1029
+ resolve();
1030
+ });
1031
+ }
1032
+ });
1033
+ await done;
1034
+ // potentially generate a new css stylesheet if anything changed
1035
+ this.generateCssCacheKey();
1036
+ }
1037
+ cacheX = 0;
1038
+ cacheY = 0;
1039
+ onScroll(pos) {
1040
+ if (this.cacheX !== pos.x) {
1041
+ this.cacheX = pos.x;
1042
+ this.assessCols();
1043
+ }
1044
+ if (this.cacheY !== pos.y) {
1045
+ this.cacheY = pos.y;
1046
+ this.assessRows();
1047
+ }
1048
+ }
1049
+ onResize() {
1050
+ const width = this.scrollElement.clientWidth;
1051
+ const height = this.scrollElement.clientHeight;
1052
+ this.tableDims = { width, height };
1053
+ this.assessCols();
1054
+ this.assessRows();
1055
+ }
1056
+ }
1057
+
1058
+ const tableCss = ":host,\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n[hidden] {\n display: none !important;\n}\n@media (prefers-reduced-motion: reduce) {\n :host,\n *,\n *::before,\n *::after {\n animation-duration: 0.01ms !important;\n animation-iteration-count: 1 !important;\n transition-duration: 0.01ms !important;\n scroll-behavior: auto !important;\n }\n }:host,\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n[hidden] {\n display: none !important;\n}\n@media (prefers-reduced-motion: reduce) {\n :host,\n *,\n *::before,\n *::after {\n animation-duration: 0.01ms !important;\n animation-iteration-count: 1 !important;\n transition-duration: 0.01ms !important;\n scroll-behavior: auto !important;\n }\n }.nano-data-table {\n /**\n * @prop --table-padding. The padding of the table cells. Defaults to `var(--table-compact-padding)`\n * @prop --table-border-color. The border color of the table cells. Defaults to `var(--nano-color-neutral-200)`\n * @prop --table-border-color-header. The border color of the table header and footer cells. Defaults to `var(--nano-color-primary-1000)`\n * @prop --table-background. The background color of the table cells. Defaults to `var(--nano-color-base-0)`\n * @prop --table-max-col-width. The maximum width of the table columns. Defaults to `clamp(200px, 500px, 50vw)`\n * @prop --table-ordered-bg. The background color of the ordered table rows. Defaults to `var(--nano-color-neutral-100)`\n * @prop --table-wrapper-max-height: maximum height of the table when table is scrollable. Defaults to 80vh;\n * @prop --table-wrapper-max-width: maximum width of the table when table is scrollable. Defaults to 100%;\n */\n --table-padding: var(--nano-spacing-sm) calc(var(--nano-spacing-md) - (var(--nano-spacing-md) / 3));\n --table-border-color: var(--nano-color-neutral-200);\n --table-border-color-header: var(--nano-color-primary-1000);\n --table-background: var(--nano-color-base-0);\n --table-max-col-width: clamp(200px, 500px, 50vw);\n --table-ordered-bg: var(--nano-color-neutral-100);\n --table-wrapper-max-height: 80vh;\n --table-wrapper-max-width: 100%;\n display: block;\n inline-size: 100%;\n color: var(--nano-color-neutral-1400);\n container-type: inline-size;\n --isLtR: 1;\n}\n.nano-data-table:dir(rtl) {\n --isLtR: -1;\n}\n.nano-data-table .nano-sortable__dragged {\n background: var(--nano-color-base-0);\n opacity: 0.9;\n box-shadow: var(--nano-shadow-l0);\n z-index: 10 !important;\n}\n\n.nano-tbl__wrap {\n display: table;\n min-inline-size: 100%;\n}\n.nano-data-table:not([scrollable=false]) .nano-tbl__wrap {\n max-inline-size: var(--table-wrapper-max-width);\n max-block-size: var(--table-wrapper-max-height);\n position: relative;\n display: block;\n}\n.nano-data-table:not([scrollable=false]) .nano-tbl__wrap table {\n margin-block-end: var(--nano-spacing-l);\n}\n\n.nano-data-table:not([scrollable=false]):has(.nano-tbl__pin--start, .nano-tbl__pin--end) .nano-masked-overflow {\n --fade-size: 0;\n}\n\n.nano-tbl {\n text-align: start;\n inline-size: 100%;\n border-spacing: 0 0;\n border-collapse: separate;\n border-inline-end: 1px solid transparent;\n border-block-start: 1px solid transparent;\n position: relative;\n z-index: 1;\n}\n.nano-tbl__top-anchor {\n clip-path: inset(50%);\n block-size: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n inline-size: 1px;\n position: relative;\n}\n.nano-tbl__ordered {\n background-color: var(--table-ordered-bg);\n --table-border-color: var(--nano-color-neutral-300);\n}\n.nano-tbl__order-btn {\n padding: 0;\n border: none;\n outline: none;\n font: inherit;\n background: none;\n appearance: none;\n color: inherit;\n display: flex;\n gap: var(--nano-spacing-sm);\n align-items: center;\n inline-size: 100%;\n}\n.nano-tbl__order-btn:focus-visible {\n outline: var(--nano-focus-ring);\n outline-offset: var(--nano-focus-ring-offset);\n}\n.nano-tbl__status-icons {\n margin-inline: auto 10px;\n display: flex;\n gap: 10px;\n}\n.nano-tbl__progress-bar {\n font-size: 0.2rem;\n position: sticky;\n inset-block-start: 0;\n inset-inline: 0;\n z-index: 10;\n transition: scale 0.25s;\n transform: scale(0);\n inline-size: 100%;\n block-size: 0;\n}\n.nano-tbl__progress-bar--show {\n transform: scale(1);\n block-size: auto;\n}\n.nano-tbl__caption--hide {\n clip-path: inset(50%);\n block-size: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n inline-size: 1px;\n}\n.nano-tbl__td, .nano-tbl__th {\n max-inline-size: var(--table-max-col-width);\n}\nthead .nano-tbl__td .nano-sortable__keyboard-handle, thead .nano-tbl__th .nano-sortable__keyboard-handle {\n position: absolute;\n inset-inline-end: 5px;\n inset-block-start: 50%;\n transform: translateY(-50%);\n background: white;\n z-index: 10;\n}\n.nano-tbl__td.nano-tbl__ordered, .nano-tbl__th.nano-tbl__ordered {\n background-color: var(--table-ordered-bg) !important;\n --table-border-color: var(--nano-color-neutral-300);\n}\n.nano-tbl__cell-content {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.nano-tbl__cell-content--no-result {\n padding-block: var(--nano-spacing-md);\n}\n.nano-tbl__cell-content--wrap {\n white-space: normal;\n overflow: visible;\n}\n.nano-tbl tbody {\n opacity: 1;\n transition: 0.1s ease opacity;\n}\n.nano-tbl tbody.nano-tbl__loading {\n z-index: -1;\n position: relative;\n}\n.nano-tbl tbody.nano-tbl__inactive {\n opacity: 0;\n}\n.nano-tbl tbody .nano-tbl__tr:has(~ .nano-tbl__tr--placeholder) {\n display: none;\n}\n.nano-tbl tbody .nano-tbl__tr--placeholder ~ .nano-tbl__tr {\n display: none;\n}\n.nano-tbl th[scope=row] {\n margin: 0;\n}\n.nano-tbl__tr {\n --base-z: 0;\n}\n.nano-tbl__pin {\n z-index: var(--z, var(--base-z, 0));\n}\n.nano-tbl__pin .nano-tbl__th, .nano-tbl__pin .nano-tbl__td {\n z-index: var(--z, var(--base-z, 0));\n}\n.nano-tbl__pin--start {\n position: sticky;\n inset-inline-start: var(--pin-start, -1px);\n}\n.nano-tbl__pin--start::after {\n content: \"\";\n position: absolute;\n inset: 0;\n box-shadow: calc(4px * var(--isLtR)) 0 4px -3px rgb(var(--nano-color-base-rgb-1000)/25%);\n opacity: var(--pin-start-active, 0);\n z-index: -1;\n}\n.nano-tbl__pinned--start .nano-tbl__pin--start {\n --z: calc(var(--base-z) + 3) !important;\n}\n.nano-tbl__pin--end {\n position: sticky;\n inset-inline-end: var(--pin-end, -1px);\n max-inline-size: min(50vw, 200px);\n}\n@container (width <= 500px) {\n .nano-tbl__pin--start ~ .nano-tbl__pin--end {\n --z: 0 !important;\n inset-inline-end: auto !important;\n }\n .nano-tbl__pin--start ~ .nano-tbl__pin--end::after {\n display: none !important;\n }\n}\n@media (width <= 500px) {\n .nano-tbl__pin--start ~ .nano-tbl__pin--end {\n --z: 0 !important;\n inset-inline-end: auto !important;\n }\n .nano-tbl__pin--start ~ .nano-tbl__pin--end::after {\n display: none !important;\n }\n}\n.nano-tbl__pin--end::after {\n display: block;\n content: \"\";\n position: absolute;\n inset: 0;\n box-shadow: calc(-4px * var(--isLtR)) 0 4px -3px rgb(var(--nano-color-base-rgb-1000)/25%);\n opacity: var(--pin-end-active, 0);\n z-index: -1;\n}\n.nano-tbl__pinned--end .nano-tbl__pin--end {\n --z: calc(var(--base-z) + 2);\n}\n.nano-tbl__pin--top .nano-tbl__th, .nano-tbl__pin--top .nano-tbl__td {\n position: sticky;\n inset-block-start: var(--pin-top, -1px);\n}\n.nano-tbl__pin--top .nano-tbl__pin--end, .nano-tbl__pin--top .nano-tbl__pin--start {\n --z: calc(var(--base-z) + 1);\n}\n.nano-tbl__pin--top.nano-tbl__pinned--top {\n --base-z: 4;\n}\ntbody .nano-tbl__pin--top.nano-tbl__pinned--top .nano-tbl__th, tbody .nano-tbl__pin--top.nano-tbl__pinned--top .nano-tbl__td {\n border-block-end: 1px solid var(--table-border-color-header);\n}\n.nano-tbl__pin--bottom .nano-tbl__th, .nano-tbl__pin--bottom .nano-tbl__td {\n position: sticky;\n inset-block-end: var(--pin-bottom, -1px);\n}\n.nano-tbl__pin--bottom .nano-tbl__pin--end, .nano-tbl__pin--bottom .nano-tbl__pin--start {\n --z: calc(var(--base-z) + 1);\n}\n.nano-tbl__pin--bottom.nano-tbl__pinned--bottom {\n --base-z: 5;\n}\n.nano-tbl__pin--bottom.nano-tbl__pinned--bottom:has(.nano-tbl__pin--bottom.nano-tbl__pinned--bottom) .nano-tbl__pin {\n --base-z: 6;\n}\ntbody .nano-tbl__pin--bottom.nano-tbl__pinned--bottom .nano-tbl__th, tbody .nano-tbl__pin--bottom.nano-tbl__pinned--bottom .nano-tbl__td {\n border-block-start: 1px solid var(--table-border-color-header);\n}\n.nano-tbl thead tr:last-of-type td,\n.nano-tbl thead tr:last-of-type th {\n border-block-end: 2px solid var(--table-border-color-header);\n}\n.nano-tbl tfoot tr:first-of-type td,\n.nano-tbl tfoot tr:first-of-type th {\n border-block-start: none;\n}\n.nano-tbl tfoot tr:last-of-type td,\n.nano-tbl tfoot tr:last-of-type th {\n border-block-end: 2px solid var(--table-border-color-header);\n border-block-start: 2px solid var(--table-border-color-header);\n}\n.nano-tbl .unlimited-width {\n max-inline-size: none;\n}\n.nano-tbl__spinner {\n font-size: 1.5rem;\n transition: scale 0.25s;\n scale: 0;\n padding: 0.5rem;\n position: absolute;\n inset-block-end: 0;\n inset-inline-start: calc(50% - 0.75rem);\n z-index: 0;\n}\n.nano-tbl__spinner--show {\n scale: 1;\n position: sticky;\n}\n.nano-tbl .nano-skeleton {\n line-height: var(--nano-line-height-normal);\n}";
1059
+
1060
+ let id = 0;
1061
+ const NanoDataTable = class {
1062
+ constructor(hostRef) {
1063
+ registerInstance(this, hostRef);
1064
+ this.nanoTblReady = createEvent(this, "nanoTblReady", 7);
1065
+ this.nanoTblBlockRendered = createEvent(this, "nanoTblBlockRendered", 7);
1066
+ this.nanoTblBeforeSort = createEvent(this, "nanoTblBeforeSort", 7);
1067
+ this.nanoTblAfterSort = createEvent(this, "nanoTblAfterSort", 7);
1068
+ this.nanoTblBeforeFilter = createEvent(this, "nanoTblBeforeFilter", 7);
1069
+ this.nanoTblAfterFilter = createEvent(this, "nanoTblAfterFilter", 7);
1070
+ this.nanoTblBeforeSearch = createEvent(this, "nanoTblBeforeSearch", 7);
1071
+ this.nanoTblAfterSearch = createEvent(this, "nanoTblAfterSearch", 7);
1072
+ this.nanoTblBeforeEdit = createEvent(this, "nanoTblBeforeEdit", 7);
1073
+ this.debounceSetLoading = debounce(this.debounceSetLoading.bind(this), 50);
1074
+ }
1075
+ // Public API
1076
+ // Props
1077
+ /** Function called whenever `col.cellTemplate` renders an unknown object.
1078
+ * The function should render a valid HTMLElement to the cell arg.
1079
+ * Example usage - render JSX from a 3rd party lib and append the result to the cell element. */
1080
+ customRenderer;
1081
+ /** If true, will render any nested table in a scrollable container (using `overflow: auto`) */
1082
+ scrollable = false;
1083
+ /** A descriptive title of the table.
1084
+ * You must use this or the `slot="caption"` for accessibility */
1085
+ caption;
1086
+ /** Show the caption on-screen */
1087
+ showCaption = false;
1088
+ /** Will show a loading state when set to true.
1089
+ * By default, will be shown automatically if `rows` is a promise waiting to resolve / or falsy
1090
+ * *or* when performing custom filtering or sorting.
1091
+ * *Note* when set manually, will overwrite any internal loading state.
1092
+ * Set to 'undefined' to revert to default behaviour. */
1093
+ loading = undefined;
1094
+ get _loading() {
1095
+ return this.loading !== undefined ? this.loading : this.internalLoading;
1096
+ }
1097
+ set _loading(l) {
1098
+ if (this.loading !== undefined)
1099
+ return;
1100
+ this.debounceSetLoading(l);
1101
+ }
1102
+ debounceSetLoading(l) {
1103
+ this.internalLoading = l;
1104
+ }
1105
+ internalLoading = true;
1106
+ /** When loading rows asynchronously render this number of placeholder rows */
1107
+ placeholderSize = 10;
1108
+ /** The data to place in the table */
1109
+ rows;
1110
+ handleRowsChange() {
1111
+ if (!this.rows) {
1112
+ this._loading = true;
1113
+ return;
1114
+ }
1115
+ this._loading = true;
1116
+ Promise.resolve(this.rows).then(async (rows) => {
1117
+ await storeSetData(this.host, rows);
1118
+ // reset everything
1119
+ if (!this.customFilterApplied) {
1120
+ // if we have a custom filter applied (which causes new rows),
1121
+ // we don't want to reset filters as this will cause a loop
1122
+ this.currentFilters = '';
1123
+ }
1124
+ else {
1125
+ this.customFilterApplied = false;
1126
+ }
1127
+ this.currentSort = '';
1128
+ await this.columnInit();
1129
+ if (!this.isReady)
1130
+ requestAnimationFrame(() => this.setInitialBlockDimension());
1131
+ this._loading = false;
1132
+ if (this.tablePinnedService)
1133
+ this.tablePinnedService.assessRows();
1134
+ });
1135
+ }
1136
+ /** The column config used to present the rows of data */
1137
+ columns = [];
1138
+ async handleColsChange() {
1139
+ await storeSetConfig(this.host, this.columns);
1140
+ if (this.isReady)
1141
+ this.columnInit();
1142
+ }
1143
+ /** Used for custom thead row rendering */
1144
+ headRender = { pinned: 'top' };
1145
+ /** Used for custom row rendering */
1146
+ rowRender;
1147
+ /** Used for custom tfoot row rendering */
1148
+ footRender = { pinned: 'bottom' };
1149
+ /** Whether to show a `<tfoot>` component */
1150
+ showFooter = false;
1151
+ /** To improve performance, data is split into blocks
1152
+ * which are shown / hidden and rendered as they become visible.
1153
+ * Use this to control the number of hits within a block -
1154
+ * A block should fill a scrolling viewport.
1155
+ * The less perBlock the better for performance */
1156
+ perBlock = 50;
1157
+ /** The number of total blocks currently rendered in the table. @readonly */
1158
+ get blocksLength() {
1159
+ return this.blocks.length;
1160
+ }
1161
+ /** Term to search for in the data */
1162
+ searchTerm;
1163
+ /** A custom filtering function. Should return a promise.
1164
+ * If the promise resolves as `true` the column UI will be updated.
1165
+ * If the promise resolves as falsy, the sort will be performed by the component.
1166
+ * A good use-case would be performing the filter on a server / via fetch.
1167
+ * Then on success, updating the table's data via the `rows` property */
1168
+ customFilterFn;
1169
+ /** A custom sorting function. Should return a promise.
1170
+ * If the promise resolves as `true` the column UI will be updated.
1171
+ * If the promise resolves as falsey, the sort will be performed by the component.
1172
+ * A good use-case would be performing the sort on a server / via fetch.
1173
+ * Then on success, updating the table's data via the `rows` property */
1174
+ customSortFn;
1175
+ /**
1176
+ * The default sortable option for all columns.
1177
+ * `true` will enable column sorting unless you set `sortable: false` on a column
1178
+ * `false` will disable column sorting unless you set `sortable: true` on a column
1179
+ */
1180
+ defaultSort = true;
1181
+ handleSearchTermChange() {
1182
+ this.searchStart();
1183
+ }
1184
+ /** If true, will show a spinner at the bottom of the table when loading */
1185
+ showPaginateSpinner = false;
1186
+ /** Use this to render the table with roughly the correct dimensions.
1187
+ * a use-case might be; fetch a small initial dataset to minimise load-time,
1188
+ * render the table with the correct dimensions, the table becomes interactive,
1189
+ * load the rest of the data
1190
+ */
1191
+ virtualTotalItems = 0;
1192
+ virtualTotalItemsChangeHandler() {
1193
+ this.setBlocks();
1194
+ }
1195
+ /** @readonly - shows the currently applied filters */
1196
+ get appliedFilters() {
1197
+ return this.filters;
1198
+ }
1199
+ /** Fired when the table has done it's first complete render */
1200
+ nanoTblReady;
1201
+ /** Fired whenever a block is activated by scrolling into view / becoming visible
1202
+ * This could be leveraged for infinite scrolling / to fetch more data.
1203
+ */
1204
+ nanoTblBlockRendered;
1205
+ /** Fired before a column is sorted.
1206
+ * `event.preventDefault()` to stop sorting. */
1207
+ nanoTblBeforeSort;
1208
+ /** Fired after a column is sorted */
1209
+ nanoTblAfterSort;
1210
+ /** Fired before a column is filtered.
1211
+ * `event.preventDefault()` to stop filtering. */
1212
+ nanoTblBeforeFilter;
1213
+ /** Fired after a column is sorted */
1214
+ nanoTblAfterFilter;
1215
+ /** Fired before a general search.
1216
+ * `event.preventDefault()` to stop searching. */
1217
+ nanoTblBeforeSearch;
1218
+ /** Fired after a general / cross column search */
1219
+ nanoTblAfterSearch;
1220
+ /** Fired before a general search.
1221
+ * `event.preventDefault()` to stop searching. */
1222
+ nanoTblBeforeEdit;
1223
+ /** Remove any column sorts currently applied
1224
+ * @returns a promise which resolves when complete */
1225
+ async resetSorting() {
1226
+ const col = this.columns.find((c) => !!c.order);
1227
+ if (!col)
1228
+ return;
1229
+ return this.sortStart(null, col.prop);
1230
+ }
1231
+ /** Apply a sort on a column
1232
+ * @returns a promise which resolves when complete */
1233
+ async addSort(column, order) {
1234
+ const col = this.columns.find((c) => c.prop === column);
1235
+ if (!col)
1236
+ throw new Error('Cannot find column with ' + column);
1237
+ return this.sortStart(order, col.prop);
1238
+ }
1239
+ /** Remove any column filters currently applied
1240
+ * @returns a promise which resolves when complete */
1241
+ async resetFilters() {
1242
+ this.filters = [];
1243
+ return this.filterStart();
1244
+ }
1245
+ /** Apply a filter on a column
1246
+ * @param filters - the filters to apply
1247
+ * @param additive - if true, will add the filters to any currently applied
1248
+ * @returns a promise which resolves when complete
1249
+ */
1250
+ async addFilters(filters, additive = true) {
1251
+ if (!additive)
1252
+ this.filters = [];
1253
+ return this.filterStart(filters, additive);
1254
+ }
1255
+ /** Remove filters from a column
1256
+ * @param columnNames - the filters to apply
1257
+ * @returns a promise which resolves when complete
1258
+ */
1259
+ async removeFilters(columnNames) {
1260
+ this.filters = this.filters.filter((f) => !columnNames.includes(f.prop));
1261
+ return this.filterStart();
1262
+ }
1263
+ /** Updates a row model at a given index
1264
+ * @param row - the row to update.
1265
+ * @param rowIndex - the row index to insert this row
1266
+ */
1267
+ async updateRow(row, rowIndex) {
1268
+ this.rows.splice(rowIndex, 1, row);
1269
+ this.handleRowsChange();
1270
+ }
1271
+ get host() { return getElement(this); }
1272
+ renderId = 'tbl-' + id++;
1273
+ store;
1274
+ filters = [];
1275
+ currentFilters = '[]';
1276
+ currentSort = '';
1277
+ tableEle;
1278
+ topAnchorEle;
1279
+ activeWatcherIo;
1280
+ tablePinnedService;
1281
+ customFilterApplied = false;
1282
+ // Block view management
1283
+ /** `tr` elements split into units - defined by `perBlock`
1284
+ These are show / hidden for perf */
1285
+ blocks = [];
1286
+ activeBlocks = [0, 1];
1287
+ measureHeight = 0;
1288
+ blockElements;
1289
+ blockHeights = [];
1290
+ // uses the first 'tr' of an active block as our yard stick
1291
+ set measureEle(el) {
1292
+ if (!el)
1293
+ return;
1294
+ const potentialHeight = el.getBoundingClientRect().height;
1295
+ this.measureHeight =
1296
+ Math.abs(this.measureHeight - potentialHeight) < 5
1297
+ ? this.measureHeight
1298
+ : potentialHeight;
1299
+ this.unitHeight =
1300
+ el.querySelector('tr')?.getBoundingClientRect().height || this.unitHeight;
1301
+ }
1302
+ unitHeight = 0;
1303
+ get scrollParent() {
1304
+ return this._scrollParent;
1305
+ }
1306
+ set scrollParent(ele) {
1307
+ if (ele === this._scrollParent)
1308
+ return;
1309
+ if (this._scrollParent) {
1310
+ (this._scrollParent === document.documentElement
1311
+ ? document
1312
+ : this._scrollParent).removeEventListener('scroll', this.scrollHandler);
1313
+ }
1314
+ (ele === document.documentElement ? document : ele).addEventListener('scroll', this.scrollHandler);
1315
+ this._scrollParent = ele;
1316
+ }
1317
+ _scrollParent;
1318
+ // used to fire `nanoTblBlockRendered` on block render change
1319
+ get primaryBlockIndex() {
1320
+ return this._primaryBlockIndex;
1321
+ }
1322
+ set primaryBlockIndex(blockIndex) {
1323
+ if (this._primaryBlockIndex === blockIndex)
1324
+ return;
1325
+ this._primaryBlockIndex = blockIndex;
1326
+ // fire block change event
1327
+ this.nanoTblBlockRendered.emit({
1328
+ block: blockIndex,
1329
+ totalBlocks: this.blockElements.length,
1330
+ });
1331
+ }
1332
+ _primaryBlockIndex;
1333
+ // Misc.
1334
+ get isReady() {
1335
+ return this._isReady;
1336
+ }
1337
+ set isReady(ready) {
1338
+ if (ready === this._isReady)
1339
+ return;
1340
+ this._isReady = ready;
1341
+ if (this.isReady)
1342
+ requestAnimationFrame(() => this.handleReady());
1343
+ }
1344
+ _isReady = false;
1345
+ // Private Logic
1346
+ // Listeners
1347
+ handleReady() {
1348
+ const hash = window.location.hash;
1349
+ if (hash.length > 1) {
1350
+ try {
1351
+ const idRow = document.querySelector(hash);
1352
+ if (idRow)
1353
+ idRow.scrollIntoView();
1354
+ // eslint-disable-next-line no-empty
1355
+ }
1356
+ catch (_e) { }
1357
+ }
1358
+ this.nanoTblReady.emit();
1359
+ }
1360
+ /**
1361
+ * Start a sort - can be cancelled by `preventDefault`
1362
+ * @param order - column order
1363
+ * @param column - column config object
1364
+ * @returns A promise
1365
+ */
1366
+ sortStart = async (order, column, element) => {
1367
+ // did order change?
1368
+ if (this.currentSort === order + ':' + column)
1369
+ return;
1370
+ this._loading = true;
1371
+ const sortEvent = this.nanoTblBeforeSort.emit({ column: column, order });
1372
+ if (sortEvent.defaultPrevented)
1373
+ return;
1374
+ this.currentSort = order + ':' + column;
1375
+ // doesn't make sense to leave user in place for a sort
1376
+ this.scrollToTop(element);
1377
+ if (this.customSortFn) {
1378
+ try {
1379
+ const res = await this.customSortFn(column, order);
1380
+ // if the response is 'true', the custom sort did it's thing
1381
+ // handover to finish and stop loading state.
1382
+ // if response is falsey, carry on to do a FE sort
1383
+ if (res === true) {
1384
+ this.sortComplete(order, column);
1385
+ this._loading = false;
1386
+ return;
1387
+ }
1388
+ }
1389
+ catch (e) {
1390
+ // if response errored, stop loading state
1391
+ // clear current sort cache
1392
+ console.warn('custom sort failed', e);
1393
+ this.currentSort = '';
1394
+ this._loading = false;
1395
+ return;
1396
+ }
1397
+ }
1398
+ try {
1399
+ await storeSort(this.host, column, order);
1400
+ this.sortComplete(order, column);
1401
+ }
1402
+ catch (e) {
1403
+ console.warn('sort failed', e);
1404
+ this.currentSort = '';
1405
+ }
1406
+ finally {
1407
+ if (this.blocks.length)
1408
+ this._loading = false;
1409
+ }
1410
+ };
1411
+ /**
1412
+ * Complete a sort. Reflects the order to ui.
1413
+ * @param order - column order
1414
+ * @param column - column config object
1415
+ */
1416
+ sortComplete(order, column) {
1417
+ this.columns = this.columns.map((c) => {
1418
+ if (c.prop === column)
1419
+ return { ...c, order };
1420
+ return { ...c, order: null };
1421
+ });
1422
+ this.nanoTblAfterSort.emit({ column: column, order });
1423
+ }
1424
+ async searchStart() {
1425
+ this._loading = true;
1426
+ const sortEvent = this.nanoTblBeforeSearch.emit({ term: this.searchTerm });
1427
+ if (sortEvent.defaultPrevented)
1428
+ return;
1429
+ // doesn't make sense to leave user in place for a search
1430
+ this.scrollToTop();
1431
+ try {
1432
+ await storeSearch(this.host, this.searchTerm);
1433
+ this.nanoTblAfterSearch.emit({ term: this.searchTerm });
1434
+ }
1435
+ catch (e) {
1436
+ console.warn('search failed', e);
1437
+ }
1438
+ finally {
1439
+ this._loading = false;
1440
+ }
1441
+ }
1442
+ async filterStart(filters, additive = true) {
1443
+ if (filters) {
1444
+ if (additive) {
1445
+ this.filters = [
1446
+ ...this.filters.filter((f) => !filters.find((ff) => ff.prop === f.prop)),
1447
+ ...filters,
1448
+ ];
1449
+ }
1450
+ else {
1451
+ this.filters = filters;
1452
+ }
1453
+ }
1454
+ if (this.currentFilters === JSON.stringify(this.filters))
1455
+ return;
1456
+ this._loading = true;
1457
+ const sortEvent = this.nanoTblBeforeFilter.emit({ filters: this.filters });
1458
+ if (sortEvent.defaultPrevented)
1459
+ return;
1460
+ this.currentFilters = JSON.stringify(this.filters);
1461
+ // doesn't make sense to leave user in place for a search
1462
+ this.scrollToTop();
1463
+ if (this.customFilterFn) {
1464
+ try {
1465
+ const res = await this.customFilterFn(this.filters);
1466
+ // if the response is 'true', the custom filter did it's thing
1467
+ // handover to finish and stop loading state.
1468
+ // if response is falsy, carry on to do a FE filter
1469
+ if (res === true) {
1470
+ this.customFilterApplied = true;
1471
+ await this.filterComplete();
1472
+ this._loading = false;
1473
+ return;
1474
+ }
1475
+ }
1476
+ catch (e) {
1477
+ // if response errored, stop loading state
1478
+ // clear current sort cache
1479
+ console.warn('custom filter failed', e);
1480
+ this.currentFilters = '';
1481
+ this._loading = false;
1482
+ return;
1483
+ }
1484
+ }
1485
+ try {
1486
+ await this.filterComplete();
1487
+ }
1488
+ catch (e) {
1489
+ console.warn('filter failed', e);
1490
+ }
1491
+ finally {
1492
+ this._loading = false;
1493
+ }
1494
+ }
1495
+ async filterComplete() {
1496
+ this.columns = this.columns.map((c) => {
1497
+ const cFilter = this.filters.find((f) => f.prop === c.prop);
1498
+ // if we found a filter AND
1499
+ // it isn't true / false and has a length OR
1500
+ // it is true or false
1501
+ if (cFilter &&
1502
+ ((typeof cFilter.filter !== 'boolean' && cFilter.filter.length) ||
1503
+ typeof cFilter.filter === 'boolean'))
1504
+ c.filter = cFilter.filter;
1505
+ // if a filter value is not set OR
1506
+ // it isn't true / false and has no length
1507
+ else if ((c.filter !== null && c.filter !== undefined) ||
1508
+ (!!c.filter && typeof c.filter !== 'boolean' && !c.filter.length))
1509
+ c.filter = undefined;
1510
+ return c;
1511
+ });
1512
+ await storeFilter(this.host, this.filters);
1513
+ this.nanoTblAfterFilter.emit({ filters: this.filters });
1514
+ }
1515
+ /** Scrolls to the top immediately - used whilst sorting / filtering */
1516
+ scrollToTop(element) {
1517
+ if (!this.scrollParent)
1518
+ return;
1519
+ const scrollBehaviour = this.scrollParent.style?.scrollBehavior;
1520
+ const scrollX = this.scrollParent.scrollLeft;
1521
+ this.scrollParent.style.scrollBehavior = 'auto';
1522
+ if (this.topAnchorEle && !isInViewport(this.topAnchorEle, 0.1)) {
1523
+ this.host.scrollIntoView();
1524
+ }
1525
+ if (element && !isInViewport(element, 1))
1526
+ setTimeout(() => element.scrollIntoView({ block: 'start' }), 500);
1527
+ if (scrollX)
1528
+ this.scrollParent.scrollLeft = scrollX;
1529
+ if (scrollBehaviour)
1530
+ this.scrollParent.style.scrollBehavior = scrollBehaviour;
1531
+ this.scrollHandler();
1532
+ }
1533
+ setMeasureElement() {
1534
+ return new Promise((resolve) => {
1535
+ readTask(() => {
1536
+ this.measureEle = this.blockElements.find((b) => !b?.classList?.contains(`${CSSNAMESPACE}__inactive`));
1537
+ resolve();
1538
+ });
1539
+ });
1540
+ }
1541
+ /**
1542
+ * Makes sure we have dimensions on at least one, active tbody element.
1543
+ * We'll use this is a yard stick for inactive tbody elements in future.
1544
+ * These elements have no natural height (on account of all their rows being hidden)
1545
+ */
1546
+ setInitialBlockDimension() {
1547
+ if (!this.blockElements?.length)
1548
+ return;
1549
+ const testForDimensions = async () => {
1550
+ await this.setMeasureElement();
1551
+ if (this.unitHeight)
1552
+ return true;
1553
+ return false;
1554
+ };
1555
+ const dimensionsReady = new Promise((resolve) => {
1556
+ testForDimensions().then(async (ready) => {
1557
+ if (ready)
1558
+ resolve();
1559
+ else {
1560
+ // it's likely this table is hidden in the dom.
1561
+ // we need to wait until it's visible
1562
+ const observer = new IntersectionObserver(async () => {
1563
+ if (await testForDimensions()) {
1564
+ resolve();
1565
+ observer.disconnect();
1566
+ }
1567
+ }, { root: this.scrollParent });
1568
+ observer.observe(this.tableEle);
1569
+ }
1570
+ });
1571
+ });
1572
+ // we're all finished.
1573
+ dimensionsReady.then(() => {
1574
+ requestAnimationFrame(() => (this.isReady = true));
1575
+ });
1576
+ }
1577
+ /** Apply initial columns settings */
1578
+ async columnInit() {
1579
+ this.filters = this.columns
1580
+ .filter((c) => c.filter !== undefined && c.filter !== null)
1581
+ .map((c) => {
1582
+ const { filter, prop } = c;
1583
+ return { prop, filter };
1584
+ });
1585
+ if (this.searchTerm) {
1586
+ await this.searchStart();
1587
+ }
1588
+ if (this.filters.length) {
1589
+ await this.filterStart();
1590
+ }
1591
+ // apply sort
1592
+ const col = this.columns.find((c) => !!c.order);
1593
+ if (col) {
1594
+ await this.sortStart(col.order, col.prop);
1595
+ }
1596
+ if (this.tablePinnedService)
1597
+ this.tablePinnedService.assessCols();
1598
+ }
1599
+ /** Split up all incoming rows into 'blocks' split amongst tbody elements.
1600
+ * These can then be hidden / shown to improve performance.
1601
+ */
1602
+ setBlocks() {
1603
+ const dRows = this.store.data.state.rows;
1604
+ if (!dRows.length) {
1605
+ this.blocks = [];
1606
+ return;
1607
+ }
1608
+ // this.ignoreIO = true;
1609
+ let i = 1;
1610
+ const l = this.virtualTotalItems > dRows.length
1611
+ ? this.virtualTotalItems
1612
+ : dRows.length;
1613
+ let rows = [];
1614
+ const blocks = [];
1615
+ // old skool loop for perf
1616
+ for (i; i <= l; i++) {
1617
+ rows.push(this.store.data.state.rows[i - 1] || { __uuid: '' });
1618
+ if (i % this.perBlock === 0) {
1619
+ // assign a UUID for the whole block
1620
+ // for block diffing
1621
+ blocks.push({ rows, __uuid: cyrb53(rows.map((b) => b.__uuid).join()) });
1622
+ rows = [];
1623
+ }
1624
+ }
1625
+ // any leftover rows
1626
+ if (rows.length) {
1627
+ blocks.push({ rows, __uuid: cyrb53(rows.map((b) => b.__uuid).join()) });
1628
+ }
1629
+ this.blocks = blocks;
1630
+ }
1631
+ /**
1632
+ * Returns a block render height.
1633
+ * If it's currently active - let auto do it's thing
1634
+ * If we've rendered it before - return that
1635
+ * If all else fails, let's guess it
1636
+ * @param blockIndex
1637
+ * @returns a height string (incl px)
1638
+ */
1639
+ getBlockHeight(blockIndex) {
1640
+ if (this.blockHeights.length) {
1641
+ const cachedBlockHeight = this.blockHeights.find((bh) => bh.blockIndex === blockIndex);
1642
+ if (cachedBlockHeight && cachedBlockHeight.height)
1643
+ return cachedBlockHeight.height;
1644
+ }
1645
+ const blockLength = this.blocks[blockIndex].rows.length;
1646
+ if (blockLength === this.perBlock && this.measureHeight) {
1647
+ return this.measureHeight;
1648
+ }
1649
+ return this.unitHeight ? this.unitHeight * blockLength : 100;
1650
+ }
1651
+ /** cache the height for all active blocks for later renders */
1652
+ setBlockHeight() {
1653
+ this.activeBlocks.forEach((blockIndex) => {
1654
+ const el = this.blockElements[blockIndex];
1655
+ if (!el)
1656
+ return;
1657
+ readTask(() => {
1658
+ if (el.classList.contains(`${CSSNAMESPACE}__inactive`))
1659
+ return;
1660
+ const height = el.getBoundingClientRect().height;
1661
+ // cache height to our block heights array
1662
+ // for subsequent renders
1663
+ const fBhIdx = this.blockHeights.findIndex((bh) => bh.blockIndex === blockIndex);
1664
+ if (fBhIdx > -1) {
1665
+ this.blockHeights[fBhIdx] = { height, blockIndex };
1666
+ }
1667
+ else
1668
+ this.blockHeights.push({ height, blockIndex });
1669
+ });
1670
+ });
1671
+ }
1672
+ /**
1673
+ * On scroll, loop through all blocks' heights and cumulatively, add them together.
1674
+ * When we find that the scroll position is less than this cumulative block height -
1675
+ * stop loop - it's on the current active block.
1676
+ */
1677
+ scrollHandler = () => {
1678
+ let scrollPos = 0;
1679
+ // don't listen if this table isn't in the viewport
1680
+ if (!this.store?.general.state.isActive || !this.rows)
1681
+ return;
1682
+ if (this.primaryBlockIndex === undefined)
1683
+ this.primaryBlockIndex = 0;
1684
+ readTask(() => {
1685
+ scrollPos =
1686
+ typeof this.scrollParent.scrollTop !== 'undefined'
1687
+ ? this.scrollParent.scrollTop
1688
+ : window.scrollY;
1689
+ scrollPos += this.host.offsetTop;
1690
+ if (this.tablePinnedService) {
1691
+ this.tablePinnedService.onScroll({
1692
+ x: typeof this.scrollParent.scrollLeft !== 'undefined'
1693
+ ? this.scrollParent.scrollLeft
1694
+ : window.scrollX,
1695
+ y: scrollPos,
1696
+ });
1697
+ }
1698
+ let cumulativeHeight = this.host.offsetTop;
1699
+ let blockIndex = 0;
1700
+ const blockLen = this.blocks.length;
1701
+ while (blockIndex < blockLen && scrollPos >= cumulativeHeight) {
1702
+ cumulativeHeight += this.getBlockHeight(blockIndex);
1703
+ if (scrollPos < cumulativeHeight) {
1704
+ const potentialBlocks = [
1705
+ blockIndex,
1706
+ blockIndex + 1,
1707
+ // Math.max(0, blockIndex - 1),
1708
+ ];
1709
+ if (potentialBlocks.toString() !== this.activeBlocks.toString()) {
1710
+ this.activeBlocks = potentialBlocks;
1711
+ }
1712
+ this.primaryBlockIndex = blockIndex;
1713
+ }
1714
+ blockIndex++;
1715
+ }
1716
+ });
1717
+ };
1718
+ /** Process slotted content */
1719
+ processSlots() {
1720
+ // see if we have slot content
1721
+ if (!this.caption && !this.host.querySelector('[slot="caption"]')) {
1722
+ console.error('For accessibility you must set a `caption` prop or use the `caption` slot');
1723
+ }
1724
+ }
1725
+ /** Adds an IO. Makes sure our scroll listener is only active when
1726
+ * the table is in viewport */
1727
+ setupActiveWatcher() {
1728
+ if (!this.host || !this.scrollParent || !this.store)
1729
+ return;
1730
+ if (this.activeWatcherIo) {
1731
+ this.activeWatcherIo.disconnect();
1732
+ this.activeWatcherIo = undefined;
1733
+ }
1734
+ const io = (this.activeWatcherIo = new IntersectionObserver(([e]) => {
1735
+ if (e.isIntersecting)
1736
+ this.store.general.state.isActive = true;
1737
+ else
1738
+ this.store.general.state.isActive = false;
1739
+ }, { root: this.scrollParent, threshold: 0 }));
1740
+ io.observe(this.scrollable ? this.tableEle : this.host);
1741
+ }
1742
+ // Component lifecycle
1743
+ async componentWillLoad() {
1744
+ // setup stores
1745
+ this.store = await generateStore(this.host, this.columns, this.scrollParent, this.isReady);
1746
+ this.handleRowsChange();
1747
+ this.store.general.onChange('isActive', () => {
1748
+ this.scrollHandler();
1749
+ });
1750
+ this.store.data.onChange('rows', () => this.setBlocks());
1751
+ // setup dom and attach listeners
1752
+ this.processSlots();
1753
+ this.setBlocks();
1754
+ if (!this.scrollable) {
1755
+ this.scrollParent = findScrollParent(this.host);
1756
+ this.setupActiveWatcher();
1757
+ }
1758
+ }
1759
+ connectedCallback() {
1760
+ if (!this.scrollable) {
1761
+ this.scrollParent = findScrollParent(this.host);
1762
+ this.setupActiveWatcher();
1763
+ }
1764
+ }
1765
+ componentDidLoad() {
1766
+ this.setInitialBlockDimension();
1767
+ if (this.scrollable) {
1768
+ this.scrollParent = this.host
1769
+ .querySelector(transformTag('nano-masked-overflow'))
1770
+ .shadowRoot.querySelector('.onav__scroller');
1771
+ this.setupActiveWatcher();
1772
+ }
1773
+ if (!this.tablePinnedService) {
1774
+ this.tablePinnedService = new TablePinService(this.tableEle, this.scrollParent);
1775
+ }
1776
+ }
1777
+ componentShouldUpdate(_newVal, _oldVal, stateName) {
1778
+ // stop double rendering - we use the store for rendering internally
1779
+ // the public facing props are kept in-sync with the store
1780
+ // but we don't want it to cause renders
1781
+ if (['rows', 'columns'].includes(stateName))
1782
+ return false;
1783
+ }
1784
+ componentWillRender() {
1785
+ }
1786
+ componentDidRender() {
1787
+ this.setMeasureElement().then(() => this.setBlockHeight());
1788
+ }
1789
+ disconnectedCallback() {
1790
+ if (!this.activeWatcherIo)
1791
+ return;
1792
+ this.activeWatcherIo.disconnect();
1793
+ this.activeWatcherIo = undefined;
1794
+ (this.scrollParent === document.documentElement
1795
+ ? document
1796
+ : this.scrollParent).removeEventListener('scroll', this.scrollHandler);
1797
+ }
1798
+ render() {
1799
+ this.blockElements = [];
1800
+ const Wrap = (content) => {
1801
+ return this.scrollable ? (h$1("nano-masked-overflow", { hideScrollbars: false, scrollControls: false, label: this.caption }, content)) : (h$1("div", null, content));
1802
+ };
1803
+ return (h$1(Host, { class: "nano-data-table" }, h$1("div", { class: `${CSSNAMESPACE}__top-anchor`, ref: (a) => (this.topAnchorEle = a) }, "\u00A0"), h$1("nano-resize-observe", { onNanoResize: () => {
1804
+ if (this.tablePinnedService)
1805
+ this.tablePinnedService.onResize();
1806
+ } }), Wrap(h$1("div", { class: `${CSSNAMESPACE}__wrap` }, h$1("nano-progress-bar", { indeterminate: true, class: {
1807
+ [`${CSSNAMESPACE}__progress-bar`]: true,
1808
+ [`${CSSNAMESPACE}__progress-bar--show`]: this._loading,
1809
+ } }), h$1("table", { "aria-rowcount": this.store.data.state.rows.length, "aria-colcount": this.store.config.state.columns.length, class: `${CSSNAMESPACE}`, ref: (tbl) => (this.tableEle = tbl), id: 'nano-data-table-' + this.renderId }, h$1("caption", { class: {
1810
+ [`${CSSNAMESPACE}__caption`]: true,
1811
+ [`${CSSNAMESPACE}__caption--hide`]: !this.showCaption,
1812
+ } }, h$1("slot", { name: "caption" }, this.caption)), h$1("thead", null, h$1(TableHeadFootRow, { rowRenderer: this.headRender }, this.store.config.state.columns.map((colModel) => [
1813
+ h$1(TableColHead, { column: colModel, headRenderer: this.headRender, onColumnSortClick: this.sortStart, defaults: {
1814
+ sortable: this.defaultSort,
1815
+ } }),
1816
+ ]))), this._loading && !this.blocks.length && (h$1("tbody", { class: `${CSSNAMESPACE}__active ${CSSNAMESPACE}__loading` }, [...Array(this.placeholderSize).keys()].map((rowIndex) => (h$1("tr", null, this.store.config.state.columns.map((_colModel, colIndex) => (h$1(TableCell, { rowIndex: rowIndex, colIndex: colIndex, nestedContent: () => h$1("nano-skeleton", null) })))))))), h$1("tr", { hidden: !!this._loading || !!this.blocks.length }, h$1("th", { class: `${CSSNAMESPACE}__th`, colSpan: this.store.config.state.columns.length }, h$1("div", { class: "nano-tbl__cell-content nano-tbl__cell-content--no-result" }, h$1("slot", { name: "no-results" }, "No results found")))), this.blocks.map((block, blockIndex) => (h$1("tbody", { key: block.__uuid, id: `tbody-${this.renderId}-${blockIndex}`, ref: (tb) => {
1817
+ this.blockElements.push(tb);
1818
+ }, class: {
1819
+ [`${CSSNAMESPACE}__inactive`]: !this.activeBlocks.includes(blockIndex),
1820
+ [`${CSSNAMESPACE}__active`]: this.activeBlocks.includes(blockIndex),
1821
+ } }, this.activeBlocks.includes(blockIndex) ? (block.rows.map((row, i) => {
1822
+ const rowIndex = blockIndex > 0 ? blockIndex * this.perBlock + i : i;
1823
+ return (h$1(TableRow, { rowRenderer: this.rowRender, rowModel: row, rowIndex: rowIndex }, this.store.config.state.columns.map((_colModel, colIndex) => (h$1(TableCell, { rowIndex: rowIndex, colIndex: colIndex })))));
1824
+ })) : (h$1("tr", { class: `${CSSNAMESPACE}__tr--placeholder` }, h$1("td", { colSpan: this.store.config.state.columns.length, style: {
1825
+ height: this.getBlockHeight(blockIndex) + 'px',
1826
+ } })))))), this.showFooter && (h$1("tfoot", null, h$1(TableHeadFootRow, { rowRenderer: this.footRender }, this.store.config.state.columns.map((colModel) => [
1827
+ h$1(TableColHead, { column: colModel, headRenderer: this.footRender, onColumnSortClick: this.sortStart, defaults: {
1828
+ sortable: this.defaultSort,
1829
+ } }),
1830
+ ]))))), !!this.blocks.length && this.showPaginateSpinner && (h$1("nano-spinner", { type: "circle", class: {
1831
+ [`${CSSNAMESPACE}__spinner`]: true,
1832
+ [`${CSSNAMESPACE}__spinner--show`]: this._loading,
1833
+ } }))))));
1834
+ }
1835
+ static get watchers() { return {
1836
+ "rows": ["handleRowsChange"],
1837
+ "columns": ["handleColsChange"],
1838
+ "searchTerm": ["handleSearchTermChange"],
1839
+ "virtualTotalItems": ["virtualTotalItemsChangeHandler"]
1840
+ }; }
1841
+ };
1842
+ NanoDataTable.style = tableCss;
1843
+
1844
+ export { NanoDataTable as N, createWorker as c };