@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
@@ -1,1950 +1,275 @@
1
1
  /*!
2
- * Web Components for Nanopore digital Web Apps
2
+ * Custom elements for Nanopore-Digital Web applications
3
3
  */
4
- import { consoleError, h, Fragment, getElement, getRenderingRef, writeTask, readTask, proxyCustomElement, HTMLElement, createEvent, Host } from '@stencil/core/internal/client';
5
- import { h as h$1 } from './renderer.js';
6
- import { a as cyrb53 } from './math.js';
4
+ import { proxyCustomElement, HTMLElement, Build, Host } from '@stencil/core/internal/client';
7
5
  import { d as debounce } from './throttle.js';
8
- import { f as findScrollParent } from './scroll-parent.js';
9
- import { c as createStore } from './index2.js';
10
- import { d as defineCustomElement$7 } from './icon.js';
11
- import { d as defineCustomElement$6 } from './progress-bar.js';
12
- import { d as defineCustomElement$5 } from './resize-observe.js';
13
- import { d as defineCustomElement$4 } from './skeleton.js';
14
- import { d as defineCustomElement$3 } from './spinner.js';
6
+ import { t as transformTag, h } from './renderer.js';
7
+ import { d as defineCustomElement$5 } from './icon.js';
8
+ import { d as defineCustomElement$4 } from './icon-button.js';
9
+ import { d as defineCustomElement$3 } from './masked-overflow.js';
15
10
  import { d as defineCustomElement$2 } from './tooltip.js';
16
11
 
17
- const CSSNAMESPACE = 'nano-tbl';
12
+ const tableCss = ":host,*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){:host,*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}:host,*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){:host,*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}";
18
13
 
19
- const isInstanceOf = (value, className) => {
20
- const C = globalThis[className];
21
- return C != null && value instanceof C;
22
- };
23
- const getTransferables = (value) => {
24
- if (value != null) {
25
- if (
26
- isInstanceOf(value, "ArrayBuffer") ||
27
- isInstanceOf(value, "MessagePort") ||
28
- isInstanceOf(value, "ImageBitmap") ||
29
- isInstanceOf(value, "OffscreenCanvas")
30
- ) {
31
- return [value];
32
- }
33
- if (typeof value === "object") {
34
- if (value.constructor === Object) {
35
- value = Object.values(value);
36
- }
37
- if (Array.isArray(value)) {
38
- return value.flatMap(getTransferables);
39
- }
40
- return getTransferables(value.buffer);
41
- }
42
- }
43
- return [];
44
- };
45
-
46
- let pendingIds = 0;
47
- let callbackIds = 0;
48
- const pending = new Map();
49
- const callbacks = new Map();
50
-
51
- const createWorker = (workerPath, workerName, workerMsgId) => {
52
- const worker = new Worker(workerPath, {name:workerName});
53
-
54
- worker.addEventListener('message', ({data}) => {
55
- if (data) {
56
- const workerMsg = data[0];
57
- const id = data[1];
58
- const value = data[2];
59
-
60
- if (workerMsg === workerMsgId) {
61
- const err = data[3];
62
- const [resolve, reject, callbackIds] = pending.get(id);
63
- pending.delete(id);
64
-
65
- if (err) {
66
- const errObj = (err.isError)
67
- ? Object.assign(new Error(err.value.message), err.value)
68
- : err.value;
69
-
70
- consoleError(errObj);
71
- reject(errObj);
72
- } else {
73
- if (callbackIds) {
74
- callbackIds.forEach(id => callbacks.delete(id));
75
- }
76
- resolve(value);
77
- }
78
- } else if (workerMsg === workerMsgId + '.cb') {
79
- try {
80
- callbacks.get(id)(...value);
81
- } catch (e) {
82
- consoleError(e);
83
- }
84
- }
85
- }
86
- });
87
-
88
- return worker;
89
- };
90
-
91
- const createWorkerProxy = (worker, workerMsgId, exportedMethod) => (
92
- (...args) => new Promise((resolve, reject) => {
93
- let pendingId = pendingIds++;
94
- let i = 0;
95
- let argLen = args.length;
96
- let mainData = [resolve, reject];
97
- pending.set(pendingId, mainData);
98
-
99
- for (; i < argLen; i++) {
100
- if (typeof args[i] === 'function') {
101
- const callbackId = callbackIds++;
102
- callbacks.set(callbackId, args[i]);
103
- args[i] = [workerMsgId + '.cb', callbackId];
104
- (mainData[2] = mainData[2] || []).push(callbackId);
105
- }
106
- }
107
- const postMessage = (w) => (
108
- w.postMessage(
109
- [workerMsgId, pendingId, exportedMethod, args],
110
- getTransferables(args)
111
- )
112
- );
113
- if (worker.then) {
114
- worker.then(postMessage);
115
- } else {
116
- postMessage(worker);
117
- }
118
- })
119
- );
120
-
121
- const workerPromise = import('./table.worker.js').then(m => m.worker);
122
- const createWorkerStore = /*@__PURE__*/createWorkerProxy(workerPromise, 'stencil.table.worker', 'createWorkerStore');
123
- const syncConfigToWorker = /*@__PURE__*/createWorkerProxy(workerPromise, 'stencil.table.worker', 'syncConfigToWorker');
124
- const syncDataToWorker = /*@__PURE__*/createWorkerProxy(workerPromise, 'stencil.table.worker', 'syncDataToWorker');
125
- const workerFilter = /*@__PURE__*/createWorkerProxy(workerPromise, 'stencil.table.worker', 'workerFilter');
126
- const workerSearch = /*@__PURE__*/createWorkerProxy(workerPromise, 'stencil.table.worker', 'workerSearch');
127
- const workerSort = /*@__PURE__*/createWorkerProxy(workerPromise, 'stencil.table.worker', 'workerSort');
128
-
129
- function colsToWorker(columns) {
130
- const safeColumns = JSON.parse(JSON.stringify(columns));
131
- columns.forEach((c) => {
132
- if (c?.sortCompareFn) {
133
- const safeCol = safeColumns.find((sc) => sc.prop === c.prop);
134
- safeCol.sortCompareFn = c.sortCompareFn.toString();
135
- }
136
- });
137
- return safeColumns;
138
- }
139
- const stores = new WeakMap();
140
- async function generateStore(host, columns, scrollParent, isReady) {
141
- const store = {
142
- data: createStore({ rows: [] }),
143
- config: createStore({ columns }),
144
- general: createStore({ workerId: null, scrollParent, host, isReady }),
145
- };
146
- const id = await createWorkerStore(store.data.state.rows, colsToWorker(store.config.state.columns));
147
- store.general.state.workerId = id;
148
- stores.set(host, store);
149
- // sync data from our store to our worker
150
- store.data.use({
151
- reset: () => {
152
- if (store.general.state.workerId)
153
- syncDataToWorker(store.general.state.workerId, null);
154
- },
155
- dispose: () => {
156
- if (store.general.state.workerId)
157
- syncDataToWorker(store.general.state.workerId, null);
158
- },
159
- });
160
- store.config.use({
161
- reset: () => {
162
- if (store.general.state.workerId)
163
- syncConfigToWorker(store.general.state.workerId, null);
164
- },
165
- dispose: () => {
166
- if (store.general.state.workerId)
167
- syncConfigToWorker(store.general.state.workerId, null);
168
- },
169
- });
170
- return store;
171
- }
172
- function getStore(host) {
173
- return stores.get(host);
174
- }
175
- function getDataType(value) {
176
- if (value instanceof Date) {
177
- return 'date';
178
- }
179
- if (['number', 'string', 'boolean'].includes(typeof value)) {
180
- return typeof value;
181
- }
182
- return 'unknown';
183
- }
184
- function storeSetData(host, rows) {
185
- const store = stores.get(host);
186
- if (!store)
187
- return;
188
- const cols = store.config.state.columns;
189
- const dateCols = cols
190
- .filter((col) => col.type === 'date')
191
- .reduce((prev, curr) => {
192
- return [...prev, curr.prop];
193
- }, []);
194
- const unknownCols = cols.filter((col) => !col.type);
195
- // augments data with some internal props.
196
- // discern unknown column types
197
- // convert dates to numbers for worker
198
- rows = rows.map((row, i) => {
199
- // try our best to discern the column type (from first row) if unset
200
- if (unknownCols.length && i === 0) {
201
- store.config.state.columns = cols.map((col) => {
202
- if (unknownCols.includes(col) && row[col.prop] && !col.type) {
203
- col.type = getDataType(row[col.prop]);
204
- if (col.type === 'date')
205
- dateCols.push(col.prop);
206
- }
207
- return col;
208
- });
209
- }
210
- // convert date columns into numbers to send to our worker
211
- dateCols.forEach((colName) => {
212
- // coerce any date type;
213
- // Date(), timestamp, valid date string
214
- const coerceDate = new Date(row[colName]);
215
- if (!!coerceDate && Number(coerceDate))
216
- row[colName] = Number(coerceDate);
217
- });
218
- row['__index'] = i;
219
- row['__uuid'] = cyrb53(cols.map((c) => row[c.prop]).join());
220
- return row;
221
- });
222
- store.data.state.rows = rows;
223
- if (store.general.state.workerId)
224
- return syncDataToWorker(store.general.state.workerId, rows);
225
- }
226
- function storeSetConfig(host, columns) {
227
- const store = stores.get(host);
228
- if (!store)
229
- return;
230
- store.config.state.columns = columns;
231
- if (store.general.state.workerId)
232
- return syncConfigToWorker(store.general.state.workerId, colsToWorker(columns));
233
- }
234
- async function storeSearch(host, term) {
235
- const store = stores.get(host);
236
- if (!store || !store.general.state.workerId)
237
- return;
238
- try {
239
- store.data.state.rows = await workerSearch(store.general.state.workerId, term);
240
- }
241
- catch (e) {
242
- console.warn(e);
243
- }
244
- }
245
- async function storeFilter(host, filters) {
246
- const store = stores.get(host);
247
- if (!store || !store.general.state.workerId)
248
- return;
249
- try {
250
- store.data.state.rows = await workerFilter(store.general.state.workerId, filters);
251
- }
252
- catch (e) {
253
- console.warn(e);
254
- }
255
- }
256
- async function storeSort(host, prop, order) {
257
- const store = stores.get(host);
258
- if (!store || !store.general.state.workerId)
259
- return;
260
- try {
261
- store.data.state.rows = await workerSort(store.general.state.workerId, prop, order);
262
- }
263
- catch (e) {
264
- console.warn(e);
265
- }
266
- }
267
-
268
- /**
269
- * Get a model object for custom cell / property renderers.
270
- * @param rowIndex - the current row index being rendered
271
- * @param colIndex - the current column index being rendered
272
- * @returns a model object which will be passed to custom renderers
273
- */
274
- function colDataModel(rowIndex, colIndex) {
275
- const store = fetchStores();
276
- const columns = store.config.state.columns;
277
- const rows = store.data.state.rows;
278
- const column = columns[colIndex];
279
- const prop = column?.prop;
280
- const rowModel = rows[rowIndex];
281
- const cellModel = rowModel ? rowModel[columns[colIndex].prop] : '';
282
- return {
283
- prop,
284
- cellModel,
285
- column,
286
- rowIndex,
287
- rowModel,
288
- };
289
- }
290
- /**
291
- * Get a model object for custom row renderers.
292
- * @param rowIndex
293
- * @returns a model object passed to custom row renderers
294
- */
295
- function rowDataModel(rowIndex) {
296
- const store = fetchStores();
297
- const rows = store.data.state.rows;
298
- const rowModel = rows[rowIndex];
299
- return {
300
- rowModel,
301
- rowIndex,
302
- };
303
- }
304
- /**
305
- * Merges 2 objects of properties together
306
- * @param current - property object
307
- * @param extra - additional object property
308
- * @returns - merged properties that can be applied to a node
309
- */
310
- function mergeProperties(current, extra) {
311
- if (!extra)
312
- return current;
313
- // top level merge
314
- const props = { ...extra, ...current };
315
- // deeper merge
316
- // merge classes maps or strings
317
- if (extra.class) {
318
- if (typeof extra.class === 'object' && typeof props.class === 'object') {
319
- props.class = { ...extra.class, ...props.class };
320
- }
321
- else if (typeof extra.class === 'string' &&
322
- typeof props.class === 'object') {
323
- props.class[extra.class] = true;
324
- }
325
- else if (typeof props.class === 'string' &&
326
- typeof extra.class === 'string') {
327
- props.class += ' ' + extra.class;
328
- }
329
- }
330
- // merge style
331
- if (extra.style) {
332
- props.style = { ...extra.style, ...props.style };
333
- }
334
- return props;
335
- }
336
- /**
337
- * Returns the current nano-table's stores.
338
- * @returns the current nano-table stores
339
- */
340
- function fetchStores() {
341
- return getStore(getElement(getRenderingRef()));
342
- }
343
- /**
344
- * Merges any defined cell properties with properties
345
- * required by `nano-table` functionality
346
- * @param rowIndex - the current row index being rendered
347
- * @param colIndex = the current column index being rendered
348
- * @param defaultProps - default properties required by `nano-table`
349
- * @returns - the merged properties that will be applied to a node
350
- */
351
- function mergeCellProperties(rowIndex, colIndex, defaultProps) {
352
- const props = { ...defaultProps };
353
- const extraPropsFunc = fetchStores().config.state.columns[colIndex]?.cellProperties;
354
- if (!extraPropsFunc)
355
- return props;
356
- const data = colDataModel(rowIndex, colIndex);
357
- const extra = extraPropsFunc(data);
358
- if (!extra)
359
- return props;
360
- return mergeProperties(props, extra);
361
- }
362
- /**
363
- * Renders a table header (within a thead) using a custom template if set.
364
- * @param col - the current column config object
365
- * @returns - a JSX node
366
- */
367
- function colheadFootRender(col) {
368
- const tpl = col?.columnTemplate;
369
- return tpl ? (tpl(h, col)) : (h(Fragment, null, col.title));
370
- }
371
- function headerPinClasses(type, vPinned, toString = false) {
372
- const classes = {
373
- [`${CSSNAMESPACE}__${type}`]: true,
374
- [`${CSSNAMESPACE}__pin`]: !!vPinned,
375
- [`${CSSNAMESPACE}__pin--top`]: vPinned === 'top',
376
- [`${CSSNAMESPACE}__pin--bottom`]: vPinned === 'bottom',
377
- };
378
- if (toString)
379
- return classListToStr(classes);
380
- return classes;
381
- }
382
- /**
383
- * Turns a class map {'string': boolean} to class string
384
- * @param classes - the class map to convert
385
- * @returns a class string
386
- */
387
- function classListToStr(classes) {
388
- let classString = '';
389
- Object.entries(classes).forEach(([className, on]) => {
390
- if (on)
391
- classString += className + ' ';
392
- });
393
- return classString;
394
- }
395
- /**
396
- * Checks whether an element is currently viewable within the viewport
397
- * @param el - element to check
398
- * @param percentVisible - the percentage of the element that should be within the viewport
399
- * @returns true if the element's area percentage is visible
400
- */
401
- function isInViewport(el, percentVisible = 100) {
402
- const r = el.getBoundingClientRect();
403
- const windowHeight = window.innerHeight || document.documentElement.clientHeight;
404
- if (!r.bottom &&
405
- !r.top &&
406
- !r.left &&
407
- !r.right &&
408
- !r.height &&
409
- !r.width &&
410
- !r.x &&
411
- !r.y)
412
- return false;
413
- return !(Math.floor(100 - ((r.top >= 0 ? 0 : r.top) / +-r.height) * 100) <
414
- percentVisible ||
415
- Math.floor(100 - ((r.bottom - windowHeight) / r.height) * 100) <
416
- percentVisible);
417
- }
418
-
419
- const TableColHead = ({ column, onColumnSortClick, defaults, }) => {
420
- // Sort handling
421
- function handleColumnSortClick(e) {
422
- let order;
423
- switch (column.order) {
424
- case 'asc':
425
- order = 'desc';
426
- break;
427
- case 'desc':
428
- order = null;
429
- break;
430
- default:
431
- order = 'asc';
432
- }
433
- onColumnSortClick(order, column.prop, e.target.closest('th'));
434
- }
435
- function isSortable() {
436
- return ((!!defaults.sortable && column.sortable !== false) ||
437
- (!defaults.sortable && column.sortable === true));
438
- }
439
- let extraProps = {};
440
- if (column.columnProperties) {
441
- extraProps = column.columnProperties(column) || extraProps;
442
- }
443
- const baseProps = {
444
- class: {
445
- ...headerPinClasses('th', column.pinned),
446
- [`${CSSNAMESPACE}__pin--start`]: column.pinned === 'start',
447
- [`${CSSNAMESPACE}__pin--end`]: column.pinned === 'end',
448
- [`${CSSNAMESPACE}__ordered`]: !!column.order,
449
- [`${CSSNAMESPACE}__filtered`]: column.filter !== undefined && column.filter !== null,
450
- },
451
- };
452
- let props = extraProps ? mergeProperties(baseProps, extraProps) : baseProps;
453
- const content = colheadFootRender(column);
454
- if (!content)
455
- return h$1(Fragment, null);
456
- props =
457
- Number(props.colSpan) > 1
458
- ? { ...props, scope: 'colgroup' }
459
- : { ...props, scope: 'col' };
460
- if (isSortable()) {
461
- const sort = column.order
462
- ? column.order === 'asc'
463
- ? 'ascending'
464
- : 'descending'
465
- : 'none';
466
- props = { ...props, 'aria-sort': sort };
467
- }
468
- return (h$1("th", { ...props, key: column.prop }, isSortable() ? (h$1("button", { class: {
469
- [`${CSSNAMESPACE}__order-btn`]: true,
470
- [`${CSSNAMESPACE}__cell-content`]: true,
471
- }, onClick: handleColumnSortClick },
472
- colheadFootRender(column),
473
- column.filter !== undefined && column.filter !== null && (h$1("nano-icon", { name: "light/filter" })),
474
- !!column.order &&
475
- (column.order === 'desc' ? (h$1("nano-icon", { name: "solid/arrow-down-long" })) : (h$1("nano-icon", { name: "solid/arrow-up-long" }))),
476
- h$1("div", { class: `${CSSNAMESPACE}__status-icons` },
477
- h$1("nano-icon", { name: "light/chevron-down" })))) : (h$1("div", { class: `${CSSNAMESPACE}__cell-content` },
478
- colheadFootRender(column),
479
- column.filter !== undefined && column.filter !== null && (h$1("nano-icon", { name: "light/bars-filter" }))))));
480
- };
481
-
482
- // TABLE CELL
483
- // (tbody > tr > td, tbody > tr > th)
484
- /**
485
- * Renders a cell using a custom renderer if set.
486
- * @param rowIndex - the current row index being rendered
487
- * @param colIndex - the current column index being rendered
488
- * @returns - a JSX node
489
- */
490
- function cellRender(rowIndex, colIndex) {
491
- const store = fetchStores();
492
- const columns = store.config.state.columns;
493
- const tpl = columns[colIndex]?.cellTemplate;
494
- const model = colDataModel(rowIndex, colIndex);
495
- const tableInstance = getRenderingRef();
496
- if (!!model.cellModel && columns[colIndex].type === 'date') {
497
- const d = new Date(model.cellModel);
498
- if (d instanceof Date && !isNaN(d)) {
499
- model.cellModel = !tpl
500
- ? `${new Date(model.cellModel).toLocaleDateString()} ${new Date(model.cellModel).toLocaleTimeString()}`
501
- : d;
502
- }
503
- }
504
- // Wrap the h pragma, then we can know if we're using Stencil's
505
- // jsx renderer or a different one
506
- let hCalled = false;
507
- const hWrap = (...args) => {
508
- hCalled = true;
509
- // @ts-expect-error - h mismatch
510
- return h$1(...args);
511
- };
512
- let tplResult = tpl ? tpl(hWrap, model) : undefined;
513
- if (tplResult &&
514
- tableInstance.customRenderer &&
515
- tplResult['$attrs$'] === undefined &&
516
- !(tplResult instanceof Element) &&
517
- typeof tplResult !== 'string' &&
518
- !hCalled) {
519
- // template result is jsx *not* from Stencil.
520
- // Render it now and output it later.
521
- const templateEle = document.createElement('template');
522
- const result = tableInstance.customRenderer(tplResult, templateEle.content);
523
- // custom rendering can render to the templateEle OR return a promise<string>
524
- tplResult = result && result['then'] ? result : templateEle;
525
- }
526
- return tplResult ? (tplResult) : model.cellModel !== undefined && model.cellModel !== null ? (h$1(Fragment, null, model.cellModel?.toString())) : ('');
527
- }
528
- const baseCellClasses = (colIndex, toString = false) => {
529
- const store = fetchStores();
530
- const column = store.config.state.columns[colIndex];
531
- const classes = {
532
- [`${CSSNAMESPACE}__td`]: true,
533
- [`${CSSNAMESPACE}__ordered`]: !!column.order,
534
- [`${CSSNAMESPACE}__pin`]: !!column.pinned,
535
- [`${CSSNAMESPACE}__pin--start`]: column.pinned === 'start',
536
- [`${CSSNAMESPACE}__pin--end`]: column.pinned === 'end',
537
- };
538
- if (toString)
539
- return classListToStr(classes);
540
- return classes;
541
- };
542
- const TableCell = ({ rowIndex, colIndex, nestedContent, }) => {
543
- const Content = () => nestedContent
544
- ? nestedContent()
545
- : cellRender(rowIndex, colIndex) || (h$1("span", { class: "placeholder" }, "\u00A0"));
546
- let CellType = 'td';
547
- const tableInstance = getRenderingRef();
548
- const store = fetchStores();
549
- const column = store.config.state.columns[colIndex];
550
- let props = mergeCellProperties(rowIndex, colIndex, {
551
- class: baseCellClasses(colIndex),
552
- });
553
- if (column.rowHeader) {
554
- props =
555
- Number(props.rowSpan) > 1
556
- ? { ...props, scope: 'rowgroup' }
557
- : { ...props, scope: 'row' };
558
- CellType = 'th';
559
- }
560
- const ContentWrap = (props) => {
561
- const content = Content();
562
- return (h$1("div", { ref: (d) => {
563
- if (!d)
564
- return;
565
- if (content instanceof Element) {
566
- // custom rendered an element
567
- d.replaceChildren();
568
- d.append(content['content'] || content);
569
- }
570
- else if (content['then']) {
571
- // custom rendered a promise. Most likely within SSR.
572
- content.then((res) => (d.innerHTML = res));
573
- }
574
- }, ...props, class: {
575
- [`${CSSNAMESPACE}__cell-content`]: true,
576
- [`${CSSNAMESPACE}__cell-content--wrap`]: !!column.wrap,
577
- }, innerHTML: typeof content === 'string' && content.includes('<')
578
- ? content
579
- : undefined }, (typeof content !== 'string' || !content.includes('<')) &&
580
- !content['then'] &&
581
- !(content instanceof Element) &&
582
- content));
583
- };
584
- return (h$1(CellType, { role: tableInstance.type === 'grid' ? 'gridcell' : undefined, ...props }, column.autoTooltip && !column.wrap ? (h$1("nano-resize-observe", { notifyContentFit: "x", onNanoResizeContentFitChange: (e) => (e.target.firstElementChild.disabled =
585
- e.detail.x) },
586
- 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 = '') },
587
- h$1(ContentWrap, null),
588
- h$1("span", { slot: "content" },
589
- h$1(Content, null))))) : (h$1(ContentWrap, null))));
590
- };
591
-
592
- const tableCellContent = (props, children, ctx) => {
593
- const cell = (h$1("div", { ...props.wrapperProps, class: {
594
- [`${CSSNAMESPACE}__cell-content`]: true,
595
- [`${CSSNAMESPACE}__cell-content--wrap`]: props.wrap,
596
- } }, children));
597
- return props.header ? (h$1("th", { scope: ctx, ...props.cellProps }, cell)) : (h$1("td", { ...props.cellProps }, cell));
598
- };
599
- const TableRow = ({ rowRenderer, rowIndex, rowModel }, children, utils) => {
600
- // helper, generates <td> or <th>
601
- const TableCell = ({ header, wrap, cellProps, wrapperProps }, children) => {
602
- return tableCellContent({ header, wrap, cellProps, wrapperProps }, children, 'row');
603
- };
604
- let extraProps = {};
605
- if (!rowModel) {
606
- const model = rowDataModel(rowIndex);
607
- rowModel = model.rowModel;
608
- }
609
- if (rowRenderer?.rowProperties) {
610
- extraProps =
611
- rowRenderer.rowProperties({ rowModel, rowIndex }) || extraProps;
612
- }
613
- let rowPinned;
614
- if (rowRenderer?.pinned && typeof rowRenderer.pinned === 'function') {
615
- rowPinned = rowRenderer.pinned({ rowModel, rowIndex });
616
- }
617
- const props = mergeProperties({ class: headerPinClasses('tr', rowPinned, true) }, extraProps);
618
- const tpl = rowRenderer?.template;
619
- /**
620
- * Applies appropriate classes to td / th VNodes;
621
- * which can be supplied by user defined templates
622
- * @param children virtual / jsx node array
623
- * @returns virtual / jsx node array
624
- */
625
- const applyCellClasses = (children) => {
626
- return utils.map(children, (cNode, i) => {
627
- if (['td', 'th'].includes(cNode.vtag.toString())) {
628
- cNode.vattrs = mergeProperties({
629
- class: baseCellClasses(i, true),
630
- }, cNode.vattrs);
631
- }
632
- return cNode;
633
- });
634
- };
635
- if (tpl) {
636
- let toRender = tpl(h$1, {
637
- renderedRow: (h$1("tr", { ...props, key: rowModel.__uuid }, children)),
638
- rowModel,
639
- rowIndex,
640
- }, TableCell);
641
- if (Array.isArray(toRender)) {
642
- toRender = utils.map(toRender, (node, i) => {
643
- if (node.vtag === 'tr') {
644
- if (!node.vkey)
645
- node.vkey = `${rowModel.__uuid}_${i}`;
646
- node.vattrs = mergeProperties({ class: headerPinClasses('tr', rowPinned, true) }, node.vattrs);
647
- if (node.vchildren) {
648
- node.vchildren = applyCellClasses(node.vchildren);
649
- }
650
- }
651
- return node;
652
- });
653
- }
654
- return toRender;
655
- }
656
- return (h$1("tr", { ...props, key: rowModel.__uuid }, applyCellClasses(children)));
657
- };
658
- const TableHeadFootRow = ({ rowRenderer }, // onRowPinned, onColPinned
659
- children, utils) => {
660
- let extraProps = {};
661
- if (rowRenderer.rowProperties) {
662
- extraProps = rowRenderer.rowProperties() || {};
663
- }
664
- const TableHeadFootCell = ({ header, wrap, cellProps, wrapperProps }, children) => {
665
- return tableCellContent({ header, wrap, cellProps, wrapperProps }, children, 'col');
666
- };
667
- const pinned = rowRenderer.pinned || null;
668
- const baseProps = { class: headerPinClasses('tr', pinned) };
669
- const props = extraProps ? mergeProperties(baseProps, extraProps) : baseProps;
670
- const tpl = rowRenderer?.template;
671
- if (tpl) {
672
- let toRender = tpl(h$1, {
673
- renderedRow: h$1("tr", { ...props }, children),
674
- }, TableHeadFootCell);
675
- if (Array.isArray(toRender)) {
676
- toRender = utils.map(toRender, (node) => {
677
- if (node.vtag === 'tr') {
678
- node.vattrs = mergeProperties({ class: headerPinClasses('tr', pinned, true) }, node.vattrs);
679
- if (node.vchildren) {
680
- node.vchildren = utils.map(node.vchildren, (cNode) => {
681
- if (['td', 'th'].includes(cNode.vtag.toString())) {
682
- cNode.vattrs = mergeProperties({
683
- class: headerPinClasses(cNode.vtag.toString(), pinned, true),
684
- }, cNode.vattrs);
685
- }
686
- return cNode;
687
- });
688
- }
689
- }
690
- return node;
691
- });
692
- }
693
- return toRender;
694
- }
695
- return h$1("tr", { ...props }, children);
696
- };
697
-
698
- function addStyleSheet(id, css) {
699
- const styleSheet = document.getElementById(id) ||
700
- document.createElement('style');
701
- styleSheet.id = id;
702
- styleSheet.innerHTML = css;
703
- if (!styleSheet.isConnected)
704
- document.head.append(styleSheet);
705
- }
706
- /**
707
- * Manages the complex business of table 'pinning'; sticking columns and rows to the scrolling parent element.
708
- *
709
- * *knowing* when an element is pinned is tricky.
710
- * Managing the display of multiple, side-by-side pinned elements is trickier still.
711
- *
712
- * Pinning table columns are very different from pinning table rows:
713
- * - Rows are actual elements we can select, measure and apply styles to.
714
- * - Columns are disparate collections of elements that are much harder to select, measure and apply styles to.
715
- *
716
- * With this in mind, how columns and rows are pinned is different:
717
- * Rows can have changes applied directly, Columns have changes applied via dynamic stylesheets.
718
- *
719
- * The service is slightly opinionated on how it pins rows and columns (with some room for override):
720
- * - Pinned columns are stuck consecutively, without overlapping.
721
- * e.g. If column 'name' and 'surname' are both `pin: 'start'`; 'surname' will display **next** to name.
722
- * Both columns are important for context
723
- *
724
- * - Pinned rows are set to overlap *when* they have the same ancestor,
725
- * and stuck consecutively when they have a different ancestor.
726
- * e.g. `tbody > tr.pin ~ tr.pin` the second row will **overlap** the first; it's unlikely both rows will be important for context.
727
- * `thead > tr.pin`, `tbody > tr.pin`. Both rows are required for context so will require next to each other.
728
- *
729
- * Devs can override this behaviour by setting `--pin-start`, `--pin-end`, `--pin-top`, `--pin-bottom` custom vars.
730
- */
731
- class TablePinService {
732
- // Private state
733
- cachedColMeta = new WeakMap();
734
- tableId;
735
- tableEle;
736
- scrollElement;
737
- startColumns;
738
- endColumns;
739
- topRows;
740
- bottomRows;
741
- tableDims;
742
- constructor(table, scrollElement) {
743
- this.tableEle = table;
744
- this.tableId = this.tableEle.id;
745
- this.scrollElement = scrollElement;
746
- // Secret sauce - `getElementsByClassName` is a live collection.
747
- // An HTMLCollection will keep itself up-to-date as elements come and go
748
- // So we can keep assessing on scroll
749
- this.startColumns = table
750
- .querySelector('thead')
751
- .getElementsByClassName(`${CSSNAMESPACE}__pin--start`);
752
- this.endColumns = table
753
- .querySelector('thead')
754
- .getElementsByClassName(`${CSSNAMESPACE}__pin--end`);
755
- this.topRows = table.getElementsByClassName(`${CSSNAMESPACE}__pin--top`);
756
- this.bottomRows = table.getElementsByClassName(`${CSSNAMESPACE}__pin--bottom`);
757
- this.onResize();
758
- }
759
- // Pinned cols & change detection
760
- get pinnedStart() {
761
- return this._pinnedStart;
762
- }
763
- set pinnedStart(cols) {
764
- this._pinnedStart = cols;
765
- this.handlePinnedStartChange();
766
- }
767
- _pinnedStart = [];
768
- /**
769
- * Called when columns are either pinned or unpinned.
770
- * Attaches a tiny stylesheet to target the 'last' start column.
771
- * (e.g. We only want to apply drop shadow on last pinned start column - not all pinned columns)
772
- */
773
- handlePinnedStartChange() {
774
- writeTask(() => {
775
- if (this.pinnedStart.length) {
776
- this.tableEle.classList.add(`${CSSNAMESPACE}__pinned--start`);
777
- const lastActiveCol = this.cachedColMeta.get(this.pinnedStart[this.pinnedStart.length - 1]);
778
- addStyleSheet(`${this.tableId}-col-start-active-style`,
779
- /* css */ `
780
- #${this.tableId} tr > :nth-child(${lastActiveCol.idx + 1}) {
781
- --pin-start-active: 1;
782
- }
783
- `);
784
- }
785
- else {
786
- this.tableEle.classList.remove(`${CSSNAMESPACE}__pinned--start`);
787
- addStyleSheet(`${this.tableId}-col-start-active-style`, ``);
788
- }
789
- });
790
- }
791
- get pinnedEnd() {
792
- return this._pinnedEnd;
793
- }
794
- set pinnedEnd(cols) {
795
- this._pinnedEnd = cols;
796
- this.handlePinnedEndChange();
797
- }
798
- _pinnedEnd = [];
799
- /**
800
- * Called when columns are either pinned or unpinned.
801
- * Attaches a tiny stylesheet to target the 'first' end column.
802
- * (e.g. We only want to apply drop shadow on first pinned end column - not all pinned columns)
803
- */
804
- handlePinnedEndChange() {
805
- writeTask(() => {
806
- if (this.pinnedEnd.length) {
807
- this.tableEle.classList.add(`${CSSNAMESPACE}__pinned--end`);
808
- const firstActiveCol = this.cachedColMeta.get(this.pinnedEnd[0]);
809
- addStyleSheet(`${this.tableId}-col-end-active-style`,
810
- /* css */ `
811
- #${this.tableId} tr > :nth-child(${firstActiveCol.idx + 1}) { --pin-end-active: 1; }
812
- `);
14
+ const NanoTable$1 = /*@__PURE__*/ proxyCustomElement(class NanoTable extends HTMLElement {
15
+ get host() { return this; }
16
+ propsReady = false;
17
+ /** If true, the table will be rendered in a compact style. */
18
+ compact = 'auto';
19
+ handleCompactChange() {
20
+ this.setupProperties();
21
+ }
22
+ /** If true, will render any nested table in a scrollable container (using `overflow: auto`) */
23
+ scrollable = true;
24
+ /** Visually hide the table's caption */
25
+ hideCaption = false;
26
+ handleHideCaptionChange() {
27
+ const caption = this.caption;
28
+ if (!caption)
29
+ return;
30
+ caption.classList.toggle('visually-hidden', this.hideCaption);
31
+ }
32
+ resizeObserver;
33
+ mutationObserver;
34
+ intersectionObserver;
35
+ settingUp = false;
36
+ get table() {
37
+ return this.host.querySelector('table');
38
+ }
39
+ get caption() {
40
+ const caption = this.host.querySelector('caption');
41
+ if (!caption) {
42
+ console.error('nano-table: No caption found. For better a11y, please add a <caption> element to the table.');
43
+ return null;
44
+ }
45
+ return caption;
46
+ }
47
+ setupProperties = () => {
48
+ const table = this.table;
49
+ if (!table || this.settingUp)
50
+ return;
51
+ this.settingUp = true;
52
+ // Clickable rows
53
+ const rows = Array.from(this.host.querySelectorAll('tr'));
54
+ for (const row of rows) {
55
+ if (this.getRowClickElements(row).length === 1) {
56
+ row.setAttribute('clickable', 'true');
57
+ row.addEventListener('click', this.rowClickHandler);
813
58
  }
814
59
  else {
815
- this.tableEle.classList.remove(`${CSSNAMESPACE}__pinned--end`);
816
- addStyleSheet(`${this.tableId}-col-end-active-style`, ``);
60
+ row.removeAttribute('clickable');
61
+ row.removeEventListener('click', this.rowClickHandler);
817
62
  }
818
- });
819
- }
820
- get cssColDimensionCacheKey() {
821
- return this._cssColDimensionCacheKey;
822
- }
823
- set cssColDimensionCacheKey(key) {
824
- if (key === this._cssColDimensionCacheKey)
825
- return;
826
- this._cssColDimensionCacheKey = key;
827
- this.createPinnedColDimensionStyles();
828
- }
829
- _cssColDimensionCacheKey = '';
830
- /**
831
- * To only generate column dimension styles when necessary we
832
- * maintain a cache key string via serialised column meta.
833
- * Only when this key changes do we generate a new stylesheet
834
- */
835
- generateCssCacheKey() {
836
- let key = '';
837
- for (const col of this.startColumns) {
838
- const colMeta = this.cachedColMeta.get(col);
839
- key += `${colMeta.idx}-start-${colMeta.width}`;
840
63
  }
841
- for (const col of this.endColumns) {
842
- const colMeta = this.cachedColMeta.get(col);
843
- key += `${colMeta.idx}-start-${colMeta.width}`;
844
- }
845
- this.cssColDimensionCacheKey = key;
846
- }
847
- /**
848
- * Generates pinned column width offset styles
849
- * so pinned columns can appear stuck together,
850
- * then attaches a stylesheet.
851
- */
852
- createPinnedColDimensionStyles() {
853
- let widthS = 0;
854
- let widthE = 0;
855
- const startCols = Array.from(this.startColumns);
856
- const endCols = Array.from(this.endColumns).reverse();
857
- const css = /* css */ `
858
- ${startCols
859
- .map((col) => {
860
- const colMeta = this.cachedColMeta.get(col);
861
- widthS += colMeta.width - 1 || -1;
862
- return /* css */ `
863
- #${this.tableId} tr > :nth-child(${colMeta.idx + 1}) ~ td,
864
- #${this.tableId} tr > :nth-child(${colMeta.idx + 1}) ~ th {
865
- --pin-start: ${widthS - 1}px;
64
+ // Sticky columns and rows
65
+ const tableSections = table.querySelectorAll('thead, tbody, tfoot');
66
+ let offset = 0;
67
+ if (table.querySelector('[sticky=start], [sticky=end]')) {
68
+ for (const section of tableSections) {
69
+ const sectionHeight = section.offsetHeight;
70
+ // this is used to make the column shadows when the columns stick;
71
+ // it allows to have one long shadow instead of one per row
72
+ section.style.setProperty('--section-height', `${sectionHeight}px`);
866
73
  }
867
- `;
868
- })
869
- .join('')}
870
- ${endCols
871
- .map((col) => {
872
- const colMeta = this.cachedColMeta.get(col);
873
- widthE += colMeta.width - 1 || -1;
874
- return /* css */ `
875
- #${this.tableId} tr > td:has(~ :nth-child(${colMeta.idx + 1})),
876
- #${this.tableId} tr > th:has(~ :nth-child(${colMeta.idx + 1})) {
877
- --pin-end: ${widthE - 1}px;
878
- }
879
- `;
880
- })
881
- .join('')}
882
- `;
883
- addStyleSheet(`${this.tableId}-dimension-style`, css);
884
- }
885
- getParentOffsets() {
886
- const { x, y } = this.scrollElement.getBoundingClientRect();
887
- let offsetX = x;
888
- let offsetY = y;
889
- if (this.scrollElement === document.documentElement) {
890
- offsetX = this.scrollElement.offsetLeft;
891
- offsetY = this.scrollElement.offsetTop;
892
- }
893
- return { offsetX, offsetY };
894
- }
895
- /**
896
- * Loops through all 'top' & 'bottom' rows (on scroll or resize)
897
- * Manages their visual state by applying classes on stuck / unstuck
898
- * And their pinned offset / distance
899
- */
900
- assessRows() {
901
- if (!this.topRows.length && !this.bottomRows.length)
902
- return;
903
- // top rows
904
- if (this.topRows.length) {
905
- readTask(async () => {
906
- let heightAggregate = 0;
907
- let cacheParent;
908
- const { offsetY } = this.getParentOffsets();
909
- for (const topRow of this.topRows) {
910
- const { y, height } = topRow.getBoundingClientRect();
911
- const currParent = topRow.parentElement;
912
- // we'll use the applied `--pin-top` css var to decide row offset.
913
- // This allows devs to override this behaviour through selector specificity
914
- const pinTop = getComputedStyle(topRow).getPropertyValue('--pin-top');
915
- const offset = pinTop !== '' ? parseFloat(pinTop) : heightAggregate;
916
- // we need to wait for the row to finish sticking
917
- // and generating it's offset (`--pin-top`) so we can see, on
918
- // subsequent rows *if* the offset was applied
919
- writeTask(() => {
920
- if (y - offsetY <= offset) {
921
- topRow.classList.add(`${CSSNAMESPACE}__pinned`, `${CSSNAMESPACE}__pinned--top`);
922
- }
923
- else {
924
- topRow.classList.remove(`${CSSNAMESPACE}__pinned`, `${CSSNAMESPACE}__pinned--top`);
925
- }
926
- // by default, we only want to stick one row from each parental block (thead, tbody, tfoot)
927
- // so only aggregate height / offset when cacheParent is different from current parent.
928
- // Devs can override this behaviour by manually setting `--pin-bottom` on the table row
929
- if (cacheParent !== currParent) {
930
- currParent.style.setProperty('--pin-top', `${heightAggregate - 1}px`);
931
- heightAggregate += height - 1;
932
- cacheParent = currParent;
933
- }
934
- });
935
- }
936
- });
937
- }
938
- // bottom rows
939
- if (this.bottomRows.length) {
940
- const bottomRows = Array.from(this.bottomRows).reverse();
941
- readTask(async () => {
942
- let cacheParent;
943
- let heightAggregate = 0;
944
- const { offsetY } = this.getParentOffsets();
945
- for (const bottomRow of bottomRows) {
946
- if (!bottomRow.isConnected)
947
- continue;
948
- const { y, height } = bottomRow.getBoundingClientRect();
949
- const currParent = bottomRow.parentElement;
950
- // we'll use the applied `--pin-bottom` css var to decide row offset.
951
- // This allows devs to override this behaviour through selector specificity
952
- const pinBottom = getComputedStyle(bottomRow).getPropertyValue('--pin-bottom');
953
- const offset = pinBottom !== '' ? parseFloat(pinBottom) : heightAggregate;
954
- // we need to wait for the row to finish sticking
955
- // and generating it's offset (`--pin-bottom`) to we can see, on
956
- // subsequent rows *if* the offset was applied
957
- await new Promise((resolve) => writeTask(() => {
958
- if (this.tableDims.height + offsetY - (y + height) <= offset) {
959
- bottomRow.classList.add(`${CSSNAMESPACE}__pinned`, `${CSSNAMESPACE}__pinned--bottom`);
960
- }
961
- else {
962
- bottomRow.classList.remove(`${CSSNAMESPACE}__pinned`, `${CSSNAMESPACE}__pinned--bottom`);
963
- }
964
- // by default, we only want to stick one row from each parental block (thead, tbody, tfoot)
965
- // so only aggregate height / offset when cacheParent is different from current parent.
966
- // Devs can override this behaviour by manually setting `--pin-bottom` on the table row
967
- if (cacheParent !== currParent) {
968
- currParent.style.setProperty('--pin-bottom', `${heightAggregate - 1}px`);
969
- heightAggregate += height - 1;
970
- cacheParent = currParent;
971
- }
972
- resolve();
973
- }));
974
- }
975
- });
976
- }
977
- }
978
- /**
979
- * Loops through all 'start' & 'end' columns (on scroll or resize)
980
- * Caches meta about each column (e.g. size, position-index)
981
- * and decides which columns are pinned
982
- */
983
- async assessCols() {
984
- if (!this.startColumns.length && !this.endColumns.length)
985
- return;
986
- let boundBox;
987
- let currPinned;
988
- let parentEles;
989
- const done = new Promise((resolve) => {
990
- // start cols
991
- if (this.startColumns.length) {
992
- readTask(() => {
993
- const { offsetX } = this.getParentOffsets();
994
- // cumulatively add widths of columns together
995
- // 'cos columns stick together
996
- let widthAggregate = offsetX;
997
- parentEles = Array.from(this.startColumns[0].parentElement.children);
998
- for (const startCol of this.startColumns) {
999
- boundBox = startCol.getBoundingClientRect();
1000
- // cache meta for later
1001
- this.cachedColMeta.set(startCol, {
1002
- width: boundBox.width,
1003
- idx: parentEles.indexOf(startCol),
1004
- });
1005
- currPinned = this.pinnedStart.find((c) => c === startCol);
1006
- if (boundBox.x < widthAggregate) {
1007
- // this column is pinned
1008
- if (!currPinned)
1009
- this.pinnedStart = [
1010
- ...this.pinnedStart,
1011
- startCol,
1012
- ];
1013
- }
1014
- else if (currPinned) {
1015
- // this column is unpinned
1016
- this.pinnedStart = this.pinnedStart.filter((c) => c !== startCol);
1017
- }
1018
- widthAggregate += boundBox.width;
74
+ const headCols = Array.from(this.host.querySelectorAll('thead th, thead td'));
75
+ for (const col of headCols) {
76
+ if (col.matches('[sticky=start]')) {
77
+ this.makeCellsSticky(col, 'start', offset);
78
+ if (offset > 0) {
79
+ col.style.setProperty('--sticky-start', `${offset}px`);
1019
80
  }
1020
- if (!this.endColumns.length)
1021
- resolve();
1022
- });
81
+ offset += col.offsetWidth - 1;
82
+ }
1023
83
  }
1024
- // end cols
1025
- if (this.endColumns.length) {
1026
- readTask(() => {
1027
- const endCols = Array.from(this.endColumns).reverse();
1028
- parentEles = Array.from(this.endColumns[0].parentElement.children);
1029
- const { offsetX } = this.getParentOffsets();
1030
- // cumulatively add widths of columns together
1031
- // 'cos columns stick together
1032
- let widthAggregate = 0;
1033
- for (const endCol of endCols) {
1034
- boundBox = endCol.getBoundingClientRect();
1035
- // cache meta for later
1036
- this.cachedColMeta.set(endCol, {
1037
- width: boundBox.width,
1038
- idx: parentEles.indexOf(endCol),
1039
- });
1040
- currPinned = this.pinnedEnd.find((c) => c === endCol);
1041
- if (this.tableDims.width + offsetX - boundBox.right <=
1042
- widthAggregate) {
1043
- // this column is pinned
1044
- if (!currPinned)
1045
- this.pinnedEnd = [endCol, ...this.pinnedEnd];
1046
- }
1047
- else if (currPinned) {
1048
- // this column is unpinned
1049
- this.pinnedEnd = this.pinnedEnd.filter((c) => c !== endCol);
1050
- }
1051
- widthAggregate += boundBox.width;
84
+ offset = 0;
85
+ for (const col of [...headCols].reverse()) {
86
+ if (col.matches('[sticky=end]')) {
87
+ this.makeCellsSticky(col, 'end', offset);
88
+ if (offset > 0) {
89
+ col.style.setProperty('--sticky-end', `${offset}px`);
1052
90
  }
1053
- resolve();
1054
- });
1055
- }
1056
- });
1057
- await done;
1058
- // potentially generate a new css stylesheet if anything changed
1059
- this.generateCssCacheKey();
1060
- }
1061
- cacheX = 0;
1062
- cacheY = 0;
1063
- onScroll(pos) {
1064
- if (this.cacheX !== pos.x) {
1065
- this.cacheX = pos.x;
1066
- this.assessCols();
1067
- }
1068
- if (this.cacheY !== pos.y) {
1069
- this.cacheY = pos.y;
1070
- this.assessRows();
1071
- }
1072
- }
1073
- onResize() {
1074
- const width = this.scrollElement.clientWidth;
1075
- const height = this.scrollElement.clientHeight;
1076
- this.tableDims = { width, height };
1077
- this.assessCols();
1078
- this.assessRows();
1079
- }
1080
- }
1081
-
1082
- const tableCss = ":host{box-sizing:border-box}*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}:host{box-sizing:border-box}*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}.nano-table{display:block;inline-size:100%;--max-col-width:clamp(200px, 500px, 50vw);--color:var(--nano-color-mediumgrey, #68767e);--font-size:0.87rem;--cell-line-height:1.5;--thead-font-size:0.95rem;--thead-color:#455560;--tfoot-color:#455560;--border-color:#dddbda;--border-style:thin solid var(--border-color);--border-tint-color:#0084a9;--border-tint-style:3px solid var(--border-tint-color);--cell-bg-rgb:var(--nano-color-white-rgb, 255 255 255);--head-bg-rgb:250 250 249;--foot-bg-rgb:var(--head-bg-rgb);--th-row-bg-rgb:var(--cell-bg-rgb);--ordered-bg-rgb:var(--nano-color-offwhite-rgb, 249 249 251);--td-padding-start:0.625rem;--td-padding-end:0.625rem;--td-padding-top:0.6rem;--td-padding-bottom:0.6125rem;--th-padding-start:0.725rem;--th-padding-end:0.625rem;--th-padding-top:0.875rem;--th-padding-bottom:0.6875rem;--td-padding-v:var(--td-padding-top) var(--td-padding-bottom);--td-padding-h:var(--td-padding-start) var(--td-padding-end);--th-padding-v:var(--th-padding-top) var(--th-padding-bottom);--th-padding-h:var(--th-padding-start) var(--th-padding-end);--foot-th-padding-v:var(--td-padding-top) var(--td-padding-bottom);--foot-th-padding-h:var(--td-padding-start) var(--td-padding-end);--head-th-padding-v:var(--th-padding-top) var(--th-padding-bottom);--head-th-padding-h:var(--th-padding-start) var(--th-padding-end);--bookend-col-padding:2rem}.nano-tbl{color:var(--color);text-align:start;inline-size:100%;font-size:var(--font-size);border-spacing:0 0;border-collapse:separate;background:rgb(var(--cell-bg-rgb));border-inline-end:1px solid transparent;border-block-start:1px solid transparent;position:relative;z-index:1}.nano-tbl__wrap{display:table;min-inline-size:100%}.nano-tbl__top-anchor{clip:rect(1px, 1px, 1px, 1px);clip-path:inset(50%);block-size:1px;inline-size:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;position:relative}.nano-tbl__ordered{background-color:var(--ordered-bg);border-inline-start:var(--border-style);border-inline-end:var(--border-style)}.nano-tbl__order-btn{padding:0;border:none;outline:none;font:inherit;background:none;appearance:none;color:inherit;display:flex;gap:10px;align-items:center;inline-size:100%}.nano-tbl__order-btn:focus-visible{outline:none;box-shadow:var(--nano-control-focus-shadow, 0 0 0 0.1875rem var(--nano-control-focus-color, rgba(144, 198, 231, 0.8))) inset}.nano-tbl__status-icons{margin-inline:auto 10px;display:flex;gap:10px}.nano-tbl__progress-bar{font-size:0.2rem;position:sticky;inset-block-start:0;inset-inline:0;z-index:10;transition:scale 0.25s;transform:scale(0);inline-size:100%;block-size:0}.nano-tbl__progress-bar--show{transform:scale(1);block-size:auto}.nano-tbl__caption--hide{clip:rect(1px, 1px, 1px, 1px);clip-path:inset(50%);block-size:1px;inline-size:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.nano-tbl__td,.nano-tbl__th{line-height:var(--cell-line-height);text-align:start;border-block-start:var(--border-style);max-inline-size:var(--max-col-width);background-color:rgb(var(--cell-bg-rgb))}tbody:first-of-type tr:first-child .nano-tbl__td,tbody:first-of-type tr:first-child .nano-tbl__th{border-block-start:none}tbody:last-of-type tr:last-child .nano-tbl__td,tbody:last-of-type tr:last-child .nano-tbl__th{border-block-end:var(--border-style)}.md .nano-tbl__td:first-child .nano-tbl__cell-content,.md .nano-tbl__th:first-child .nano-tbl__cell-content{padding-inline-start:var(--bookend-col-padding)}.md .nano-tbl__td:last-child .nano-tbl__cell-content,.md .nano-tbl__th:last-child .nano-tbl__cell-content{padding-inline-end:var(--bookend-col-padding)}@media (max-width: 768px){.nano-tbl__td:first-child .nano-tbl__cell-content,.nano-tbl__th:first-child .nano-tbl__cell-content{padding-inline-start:var(--td-padding-start) !important}.nano-tbl__td:last-child .nano-tbl__cell-content,.nano-tbl__th:last-child .nano-tbl__cell-content{padding-inline-end:var(--td-padding-end) !important}}thead .nano-tbl__td,thead .nano-tbl__th{color:var(--thead-color);font-weight:800;background:rgb(var(--head-bg-rgb)/100%);font-size:var(--thead-font-size);border-block-start:none !important}thead .nano-tbl__td .nano-tbl__cell-content,thead .nano-tbl__th .nano-tbl__cell-content{padding-block:var(--head-th-padding-v);padding-inline:var(--head-th-padding-h)}thead .nano-tbl__td .nano-sortable__keyboard-handle,thead .nano-tbl__th .nano-sortable__keyboard-handle{position:absolute;inset-inline-end:5px;inset-block-start:50%;transform:translateY(-50%);background:white;z-index:10}tfoot .nano-tbl__td,tfoot .nano-tbl__th{color:var(--tfoot-color);font-weight:800;border-block-start:none;background:rgb(var(--foot-bg-rgb)/100%);font-size:var(--thead-font-size)}tfoot .nano-tbl__td .nano-tbl__cell-content,tfoot .nano-tbl__th .nano-tbl__cell-content{padding-block:var(--foot-th-padding-v);padding-inline:var(--foot-th-padding-h)}.nano-tbl__td.nano-tbl__ordered,.nano-tbl__th.nano-tbl__ordered{background-color:rgb(var(--ordered-bg-rgb)/80%) !important}.nano-tbl__cell-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-block:var(--td-padding-v);padding-inline:var(--td-padding-h)}.nano-tbl__cell-content--no-result{padding-block:2rem}.nano-tbl__cell-content--wrap{white-space:normal;overflow:visible}.nano-tbl tbody{will-change:scroll-position;opacity:1;transition:0.1s ease opacity}.nano-tbl tbody.nano-tbl__loading{z-index:-1;position:relative}.nano-tbl tbody.nano-tbl__inactive{opacity:0}.nano-tbl tbody .nano-tbl__tr:has(~.nano-tbl__tr--placeholder){display:none}.nano-tbl tbody .nano-tbl__tr--placeholder~.nano-tbl__tr{display:none}.nano-tbl th[scope=row]{font-weight:800;margin:0}.nano-tbl__tr{--base-z:0}.nano-tbl__pin{z-index:var(--z, var(--base-z, 0))}.nano-tbl__pin .nano-tbl__th,.nano-tbl__pin .nano-tbl__td{z-index:var(--z, var(--base-z, 0))}.nano-tbl__pin--start{position:sticky;inset-inline-start:var(--pin-start, -1px)}.nano-tbl__pin--start::after{content:\"\";position:absolute;inset:0;box-shadow:5px 0 4px -1px rgba(0, 0, 0, 0.2);opacity:var(--pin-start-active, 0);z-index:-1}.nano-tbl__pinned--start .nano-tbl__pin--start{--z:calc(var(--base-z) + 3) !important}.nano-tbl__pin--end{position:sticky}.nano-tbl__pin--start+.nano-tbl__pin--end{inset-inline-end:auto !important}.nano-tbl__pin--start+.nano-tbl__pin--end::after{display:none}.sm .nano-tbl__pin--end{inset-inline-end:var(--pin-end, -1px);max-inline-size:min(50vw, 200px)}.sm .nano-tbl__pin--end::after{display:block !important;content:\"\";position:absolute;inset:0;box-shadow:-5px 1px 4px -1px rgba(0, 0, 0, 0.2);opacity:var(--pin-end-active, 0);z-index:-1}.sm .nano-tbl__pinned--end .nano-tbl__pin--end{--z:calc(var(--base-z) + 2) !important}.nano-tbl__pin--top .nano-tbl__th,.nano-tbl__pin--top .nano-tbl__td{position:sticky;inset-block-start:var(--pin-top, -1px)}.nano-tbl__pin--top .nano-tbl__pin--end,.nano-tbl__pin--top .nano-tbl__pin--start{--z:calc(var(--base-z) + 1)}.nano-tbl__pin--top.nano-tbl__pinned--top{--base-z:4}tbody .nano-tbl__pin--top.nano-tbl__pinned--top .nano-tbl__th,tbody .nano-tbl__pin--top.nano-tbl__pinned--top .nano-tbl__td{box-shadow:1px 3px 4px -1px rgba(0, 0, 0, 0.1)}.nano-tbl__pin--bottom .nano-tbl__th,.nano-tbl__pin--bottom .nano-tbl__td{position:sticky;inset-block-end:var(--pin-bottom, -1px)}.nano-tbl__pin--bottom .nano-tbl__pin--end,.nano-tbl__pin--bottom .nano-tbl__pin--start{--z:calc(var(--base-z) + 1)}.nano-tbl__pin--bottom.nano-tbl__pinned--bottom{--base-z:5}.nano-tbl__pin--bottom.nano-tbl__pinned--bottom:has(.nano-tbl__pin--bottom.nano-tbl__pinned--bottom) .nano-tbl__pin{--base-z:6}tbody .nano-tbl__pin--bottom.nano-tbl__pinned--bottom .nano-tbl__th,tbody .nano-tbl__pin--bottom.nano-tbl__pinned--bottom .nano-tbl__td{box-shadow:1px -3px 4px -1px rgba(0, 0, 0, 0.07)}.nano-tbl thead tr:last-of-type td,.nano-tbl thead tr:last-of-type th{border-block-end:var(--border-tint-style)}.nano-tbl tfoot tr:first-of-type td,.nano-tbl tfoot tr:first-of-type th{border-block-start:none}.nano-tbl tfoot tr:last-of-type td,.nano-tbl tfoot tr:last-of-type th{border-block-start:var(--border-style);border-block-end:var(--border-tint-style)}.nano-tbl__pinned--bottom .nano-tbl tfoot tr.nano-tbl__pin--bottom:first-of-type td,.nano-tbl__pinned--bottom .nano-tbl tfoot tr.nano-tbl__pin--bottom:first-of-type th{border-block-start:var(--border-tint-style) !important}.nano-tbl__pinned--bottom .nano-tbl tfoot tr.nano-tbl__pin--bottom:last-of-type td,.nano-tbl__pinned--bottom .nano-tbl tfoot tr.nano-tbl__pin--bottom:last-of-type th{border-block-end:none !important}.nano-tbl .unlimited-width{max-inline-size:none}.nano-tbl__spinner{font-size:1.5rem;transition:scale 0.25s;scale:0;padding:0.5rem;position:absolute;inset-block-end:0;inset-inline-start:calc(50% - 0.75rem);z-index:0}.nano-tbl__spinner--show{scale:1;position:sticky}.nano-tbl .nano-skeleton{line-height:var(--cell-line-height)}";
1083
- const NanoTableStyle0 = tableCss;
1084
-
1085
- const measurePerf = false;
1086
- function perMark(name, end = false) {
1087
- if (!performance || !measurePerf)
1088
- return;
1089
- if (end) {
1090
- performance?.mark('end' + name);
1091
- performance?.measure(name, 'start' + name, 'end' + name);
1092
- const entries = performance?.getEntriesByName(name);
1093
- console.info(entries[entries.length ? entries.length - 1 : 0]);
1094
- }
1095
- else {
1096
- performance?.mark('start' + name);
1097
- }
1098
- }
1099
- let id = 0;
1100
- const Table = /*@__PURE__*/ proxyCustomElement(class Table extends HTMLElement {
1101
- constructor() {
1102
- super();
1103
- this.__registerHost();
1104
- this.nanoTblReady = createEvent(this, "nanoTblReady", 7);
1105
- this.nanoTblBlockRendered = createEvent(this, "nanoTblBlockRendered", 7);
1106
- this.nanoTblBeforeSort = createEvent(this, "nanoTblBeforeSort", 7);
1107
- this.nanoTblAfterSort = createEvent(this, "nanoTblAfterSort", 7);
1108
- this.nanoTblBeforeFilter = createEvent(this, "nanoTblBeforeFilter", 7);
1109
- this.nanoTblAfterFilter = createEvent(this, "nanoTblAfterFilter", 7);
1110
- this.nanoTblBeforeSearch = createEvent(this, "nanoTblBeforeSearch", 7);
1111
- this.nanoTblAfterSearch = createEvent(this, "nanoTblAfterSearch", 7);
1112
- this.nanoTblBeforeEdit = createEvent(this, "nanoTblBeforeEdit", 7);
1113
- this.debounceSetLoading = debounce(this.debounceSetLoading.bind(this), 50);
1114
- }
1115
- // Public API
1116
- // Props
1117
- /** Function called whenever `col.cellTemplate` renders an unknown object.
1118
- * The function should render a valid HTMLElement to the cell arg.
1119
- * Example usage - render JSX from a 3rd party lib and append the result to the cell element. */
1120
- customRenderer;
1121
- /** The type of table. Grid type will make cells navigable by keyboard */
1122
- type = 'table';
1123
- /** A descriptive title of the table.
1124
- * You must use this or the `slot="caption"` for accessibility */
1125
- caption;
1126
- /** Show the caption on-screen */
1127
- showCaption = false;
1128
- /** Will show a loading state when set to true.
1129
- * By default, will be shown automatically if `rows` is a promise waiting to resolve / or falsy
1130
- * *or* when performing custom filtering or sorting.
1131
- * *Note* when set manually, will overwrite any internal loading state.
1132
- * Set to 'undefined' to revert to default behaviour. */
1133
- loading = undefined;
1134
- get _loading() {
1135
- return this.loading !== undefined ? this.loading : this.internalLoading;
1136
- }
1137
- set _loading(l) {
1138
- if (this.loading !== undefined)
1139
- return;
1140
- this.debounceSetLoading(l);
1141
- }
1142
- debounceSetLoading(l) {
1143
- this.internalLoading = l;
1144
- }
1145
- internalLoading = true;
1146
- /** When loading rows asynchronously, this will render this number of placeholder rows */
1147
- placeholderSize = 5;
1148
- /** The data to place in the table */
1149
- rows;
1150
- handleRowsChange() {
1151
- if (!this.rows) {
1152
- this._loading = true;
1153
- return;
1154
- }
1155
- this._loading = true;
1156
- Promise.resolve(this.rows).then(async (rows) => {
1157
- await storeSetData(this.host, rows);
1158
- // reset everything
1159
- this.currentFilters = '';
1160
- this.currentSort = '';
1161
- await this.columnInit();
1162
- if (!this.isReady)
1163
- requestAnimationFrame(() => this.setInitialBlockDimension());
1164
- this._loading = false;
1165
- if (this.tablePinnedService)
1166
- this.tablePinnedService.assessRows();
1167
- });
1168
- }
1169
- /** The column config used to present the rows of data */
1170
- columns = [];
1171
- async handleColsChange() {
1172
- await storeSetConfig(this.host, this.columns);
1173
- if (this.isReady)
1174
- this.columnInit();
1175
- }
1176
- /** Used for custom thead row rendering */
1177
- headRender = { pinned: 'top' };
1178
- /** Used for custom row rendering */
1179
- rowRender;
1180
- /** Used for custom tfoot row rendering */
1181
- footRender = { pinned: 'bottom' };
1182
- /** Whether to show a `<tfoot>` component */
1183
- showFooter = false;
1184
- /** To improve performance, data is split into blocks
1185
- * which are shown / hidden and rendered as they become visible.
1186
- * Use this to control the number of hits within a block -
1187
- * A block should fill a scrolling viewport.
1188
- * The less perBlock the better for performance */
1189
- perBlock = 50;
1190
- /** The number of total blocks currently rendered in the table. @readonly */
1191
- get blocksLength() {
1192
- return this.blocks.length;
1193
- }
1194
- /** Term to search for in the data */
1195
- searchTerm;
1196
- /** A custom filtering function. Should return a promise.
1197
- * If the promise resolves as `true` the column UI will be updated.
1198
- * If the promise resolves as falsy, the sort will be performed by the component.
1199
- * A good use-case would be performing the filter on a server / via fetch.
1200
- * Then on success, updating the table's data via the `rows` property */
1201
- customFilterFn;
1202
- /** A custom sorting function. Should return a promise.
1203
- * If the promise resolves as `true` the column UI will be updated.
1204
- * If the promise resolves as falsey, the sort will be performed by the component.
1205
- * A good use-case would be performing the sort on a server / via fetch.
1206
- * Then on success, updating the table's data via the `rows` property */
1207
- customSortFn;
1208
- /**
1209
- * The default sortable option for all columns.
1210
- * `true` will enable column sorting unless you set `sortable: false` on a column
1211
- * `false` will disable column sorting unless you set `sortable: true` on a column
1212
- */
1213
- defaultSort = true;
1214
- handleSearchTermChange() {
1215
- this.searchStart();
1216
- }
1217
- /** Use this to render the table with roughly the correct dimensions.
1218
- * a use-case might be; fetch a small initial dataset to minimise load-time,
1219
- * render the table with the correct dimensions, the table becomes interactive,
1220
- * load the rest of the data
1221
- */
1222
- virtualTotalItems = 0;
1223
- virtualTotalItemsChangeHandler() {
1224
- this.setBlocks();
1225
- }
1226
- /** @readonly - shows the currently applied filters */
1227
- get appliedFilters() {
1228
- return this.filters;
1229
- }
1230
- /** Fired when the table has done it's first complete render */
1231
- nanoTblReady;
1232
- /** Fired whenever a block is activated by scrolling into view / becoming visible
1233
- * This could be leveraged for infinite scrolling / to fetch more data.
1234
- */
1235
- nanoTblBlockRendered;
1236
- /** Fired before a column is sorted.
1237
- * `event.preventDefault()` to stop sorting. */
1238
- nanoTblBeforeSort;
1239
- /** Fired after a column is sorted */
1240
- nanoTblAfterSort;
1241
- /** Fired before a column is filtered.
1242
- * `event.preventDefault()` to stop filtering. */
1243
- nanoTblBeforeFilter;
1244
- /** Fired after a column is sorted */
1245
- nanoTblAfterFilter;
1246
- /** Fired before a general search.
1247
- * `event.preventDefault()` to stop searching. */
1248
- nanoTblBeforeSearch;
1249
- /** Fired after a general / cross column search */
1250
- nanoTblAfterSearch;
1251
- /** Fired before a general search.
1252
- * `event.preventDefault()` to stop searching. */
1253
- nanoTblBeforeEdit;
1254
- /** Remove any column sorts currently applied
1255
- * @returns a promise which resolves when complete */
1256
- async resetSorting() {
1257
- const col = this.columns.find((c) => !!c.order);
1258
- if (!col)
1259
- return;
1260
- return this.sortStart(null, col.prop);
1261
- }
1262
- /** Apply a sort on a column
1263
- * @returns a promise which resolves when complete */
1264
- async addSort(column, order) {
1265
- const col = this.columns.find((c) => c.prop === column);
1266
- if (!col)
1267
- throw new Error('Cannot find column with ' + column);
1268
- return this.sortStart(order, col.prop);
1269
- }
1270
- /** Remove any column filters currently applied
1271
- * @returns a promise which resolves when complete */
1272
- async resetFilters() {
1273
- this.filters = [];
1274
- return this.filterStart();
1275
- }
1276
- /** Apply a filter on a column
1277
- * @param filters - the filters to apply
1278
- * @param additive - if true, will add the filters to any currently applied
1279
- * @returns a promise which resolves when complete
1280
- */
1281
- async addFilters(filters, additive = true) {
1282
- if (!additive)
1283
- this.filters = [];
1284
- return this.filterStart(filters, additive);
1285
- }
1286
- /** Remove filters from a column
1287
- * @param columnNames - the filters to apply
1288
- * @returns a promise which resolves when complete
1289
- */
1290
- async removeFilters(columnNames) {
1291
- this.filters = this.filters.filter((f) => !columnNames.includes(f.prop));
1292
- return this.filterStart();
1293
- }
1294
- /** Updates a row model at a given index
1295
- * @param row - the row to update.
1296
- * @param rowIndex - the row index to insert this row
1297
- */
1298
- async updateRow(row, rowIndex) {
1299
- this.rows.splice(rowIndex, 1, row);
1300
- this.handleRowsChange();
1301
- }
1302
- get host() { return this; }
1303
- renderId = 'tbl-' + id++;
1304
- store;
1305
- filters = [];
1306
- currentFilters = '[]';
1307
- currentSort = '';
1308
- tableEle;
1309
- topAnchorEle;
1310
- tableWrapperEle;
1311
- activeWatcherIo;
1312
- tablePinnedService;
1313
- // Block view management
1314
- /** `tr` elements split into units - defined by `perBlock`
1315
- These are show / hidden for perf */
1316
- blocks = [];
1317
- activeBlocks = [0, 1];
1318
- measureHeight = 0;
1319
- blockElements;
1320
- blockHeights = [];
1321
- // uses the first 'tr' of an active block as our yard stick
1322
- set measureEle(el) {
1323
- if (!el)
1324
- return;
1325
- const potentialHeight = el.getBoundingClientRect().height;
1326
- this.measureHeight =
1327
- Math.abs(this.measureHeight - potentialHeight) < 5
1328
- ? this.measureHeight
1329
- : potentialHeight;
1330
- this.unitHeight =
1331
- el.querySelector('tr')?.getBoundingClientRect().height || this.unitHeight;
1332
- }
1333
- unitHeight = 0;
1334
- get scrollParent() {
1335
- return this._scrollParent;
1336
- }
1337
- set scrollParent(ele) {
1338
- if (ele === this._scrollParent)
1339
- return;
1340
- if (this._scrollParent) {
1341
- (this._scrollParent === document.documentElement
1342
- ? document
1343
- : this._scrollParent).removeEventListener('scroll', this.scrollHandler);
1344
- }
1345
- (ele === document.documentElement ? document : ele).addEventListener('scroll', this.scrollHandler);
1346
- this._scrollParent = ele;
1347
- }
1348
- _scrollParent;
1349
- // used to fire `nanoTblBlockRendered` on block render change
1350
- get primaryBlockIndex() {
1351
- return this._primaryBlockIndex;
1352
- }
1353
- set primaryBlockIndex(blockIndex) {
1354
- if (this._primaryBlockIndex === blockIndex)
1355
- return;
1356
- this._primaryBlockIndex = blockIndex;
1357
- // fire block change event
1358
- this.nanoTblBlockRendered.emit({
1359
- block: blockIndex,
1360
- totalBlocks: this.blockElements.length,
1361
- });
1362
- }
1363
- _primaryBlockIndex;
1364
- // Misc.
1365
- get isReady() {
1366
- return this._isReady;
1367
- }
1368
- set isReady(ready) {
1369
- if (ready === this._isReady)
1370
- return;
1371
- this._isReady = ready;
1372
- if (this.isReady)
1373
- requestAnimationFrame(() => this.handleReady());
1374
- }
1375
- _isReady = false;
1376
- // Private Logic
1377
- // Listeners
1378
- handleReady() {
1379
- const hash = window.location.hash;
1380
- if (hash.length > 1) {
1381
- try {
1382
- const idRow = document.querySelector(hash);
1383
- if (idRow)
1384
- idRow.scrollIntoView();
1385
- // eslint-disable-next-line no-empty
91
+ offset += col.offsetWidth - 1;
92
+ }
1386
93
  }
1387
- catch (_e) { }
1388
94
  }
1389
- this.nanoTblReady.emit();
1390
- }
1391
- /**
1392
- * Start a sort - can be cancelled by `preventDefault`
1393
- * @param order - column order
1394
- * @param column - column config object
1395
- * @returns A promise
1396
- */
1397
- sortStart = async (order, column, element) => {
1398
- // did order change?
1399
- if (this.currentSort === order + ':' + column)
1400
- return;
1401
- this._loading = true;
1402
- const sortEvent = this.nanoTblBeforeSort.emit({ column: column, order });
1403
- if (sortEvent.defaultPrevented)
1404
- return;
1405
- perMark('sort');
1406
- this.currentSort = order + ':' + column;
1407
- // doesn't make sense to leave user in place for a sort
1408
- this.scrollToTop(element);
1409
- if (this.customSortFn) {
1410
- try {
1411
- const res = await this.customSortFn(column, order);
1412
- // if the response is 'true', the custom sort did it's thing
1413
- // handover to finish and stop loading state.
1414
- // if response is falsey, carry on to do a FE sort
1415
- if (res === true) {
1416
- this.sortComplete(order, column);
1417
- this._loading = false;
1418
- return;
95
+ if (table.querySelector('[sticky=top]')) {
96
+ // sticky rows are slightly different; we only want one per section to be visible (the rest will overlap)
97
+ // e.g. 1 tr in thead, 1 tr in tbody, 1 tr in tfoot
98
+ offset = 0;
99
+ for (const section of tableSections) {
100
+ const stickyRows = Array.from(section.querySelectorAll('tr[sticky]'));
101
+ for (const [idx, row] of stickyRows.entries()) {
102
+ if (row.matches('[sticky=top]') && offset > 0) {
103
+ row.style.setProperty('--sticky-top', `${offset}px`);
104
+ }
105
+ if (idx === stickyRows.length - 1) {
106
+ offset += row.offsetHeight - 1;
107
+ }
1419
108
  }
1420
109
  }
1421
- catch (e) {
1422
- // if response errored, stop loading state
1423
- // clear current sort cache
1424
- console.warn('custom sort failed', e);
1425
- this.currentSort = '';
1426
- this._loading = false;
1427
- return;
1428
- }
1429
- }
1430
- try {
1431
- await storeSort(this.host, column, order);
1432
- this.sortComplete(order, column);
1433
- }
1434
- catch (e) {
1435
- console.warn('sort failed', e);
1436
- this.currentSort = '';
1437
- }
1438
- finally {
1439
- if (this.blocks.length)
1440
- this._loading = false;
1441
110
  }
111
+ this.settingUp = false;
112
+ this.propsReady = true;
1442
113
  };
1443
- /**
1444
- * Complete a sort. Reflects the order to ui.
1445
- * @param order - column order
1446
- * @param column - column config object
1447
- */
1448
- sortComplete(order, column) {
1449
- this.columns = this.columns.map((c) => {
1450
- if (c.prop === column)
1451
- return { ...c, order };
1452
- return { ...c, order: null };
114
+ getRowClickElements(row) {
115
+ const anchors = row.querySelectorAll('a');
116
+ const buttons = row.querySelectorAll('button');
117
+ const cbs = Array.from(row.querySelectorAll('input[type="checkbox"]')).filter((cb) => {
118
+ // filter out checkboxes that are not nano-checkboxes
119
+ return !cb.closest('nano-checkbox');
120
+ });
121
+ const radios = Array.from(row.querySelectorAll('input[type="radio"]')).filter((radio) => {
122
+ // filter out radios that are not nano-checkboxes
123
+ return !radio.closest('nano-checkbox');
1453
124
  });
1454
- this.nanoTblAfterSort.emit({ column: column, order });
1455
- perMark('sort', true);
125
+ const nanoCbs = row.querySelectorAll('nano-checkbox');
126
+ return [...anchors, ...buttons, ...nanoCbs, ...cbs, ...radios];
1456
127
  }
1457
- async searchStart() {
1458
- this._loading = true;
1459
- const sortEvent = this.nanoTblBeforeSearch.emit({ term: this.searchTerm });
1460
- if (sortEvent.defaultPrevented)
128
+ rowClickHandler = (e) => {
129
+ const target = e.target;
130
+ const row = target.closest('tr');
131
+ if (!row)
1461
132
  return;
1462
- perMark('search');
1463
- // doesn't make sense to leave user in place for a search
1464
- this.scrollToTop();
1465
- try {
1466
- await storeSearch(this.host, this.searchTerm);
1467
- this.nanoTblAfterSearch.emit({ term: this.searchTerm });
1468
- perMark('search', true);
1469
- }
1470
- catch (e) {
1471
- console.warn('search failed', e);
1472
- }
1473
- finally {
1474
- this._loading = false;
1475
- }
1476
- }
1477
- async filterStart(filters, additive = true) {
1478
- if (filters) {
1479
- if (additive) {
1480
- this.filters = [
1481
- ...this.filters.filter((f) => !filters.find((ff) => ff.prop === f.prop)),
1482
- ...filters,
1483
- ];
1484
- }
1485
- else {
1486
- this.filters = filters;
1487
- }
133
+ const clickEle = this.getRowClickElements(row);
134
+ if (clickEle.length === 1 &&
135
+ target.closest(clickEle[0].tagName) !== clickEle[0]) {
136
+ clickEle[0].click();
1488
137
  }
1489
- if (this.currentFilters === JSON.stringify(this.filters))
1490
- return;
1491
- this._loading = true;
1492
- const sortEvent = this.nanoTblBeforeFilter.emit({ filters: this.filters });
1493
- if (sortEvent.defaultPrevented)
1494
- return;
1495
- perMark('filter');
1496
- this.currentFilters = JSON.stringify(this.filters);
1497
- // doesn't make sense to leave user in place for a search
1498
- this.scrollToTop();
1499
- if (this.customFilterFn) {
1500
- try {
1501
- const res = await this.customFilterFn(this.filters);
1502
- // if the response is 'true', the custom filter did it's thing
1503
- // handover to finish and stop loading state.
1504
- // if response is falsy, carry on to do a FE filter
1505
- if (res === true) {
1506
- await this.filterComplete();
1507
- this._loading = false;
1508
- return;
138
+ };
139
+ makeCellsSticky(thElement, sticky, offset = 0) {
140
+ const table = thElement.closest('table');
141
+ const theadRow = thElement.closest('tr');
142
+ const ths = Array.from(theadRow.cells);
143
+ // Step 1: Get the visual column index of the target th (respecting colspan)
144
+ let targetColIndex = 0;
145
+ for (const th of ths) {
146
+ if (th === thElement)
147
+ break;
148
+ targetColIndex += th.colSpan || 1;
149
+ }
150
+ // Step 2: Iterate through tbody rows and find the corresponding cell
151
+ for (const tbody of table.tBodies) {
152
+ for (const row of tbody.rows) {
153
+ let colIndex = 0;
154
+ for (const cell of row.cells) {
155
+ const span = cell.colSpan || 1;
156
+ if (colIndex <= targetColIndex && targetColIndex < colIndex + span) {
157
+ cell.setAttribute('sticky', sticky);
158
+ if (offset > 0) {
159
+ cell.style.setProperty('--sticky-' + sticky, `${offset}px`);
160
+ }
161
+ break;
162
+ }
163
+ colIndex += span;
1509
164
  }
1510
165
  }
1511
- catch (e) {
1512
- // if response errored, stop loading state
1513
- // clear current sort cache
1514
- console.warn('custom filter failed', e);
1515
- this.currentFilters = '';
1516
- this._loading = false;
1517
- return;
1518
- }
1519
- }
1520
- try {
1521
- await this.filterComplete();
1522
- }
1523
- catch (e) {
1524
- console.warn('filter failed', e);
1525
- }
1526
- finally {
1527
- this._loading = false;
1528
166
  }
1529
167
  }
1530
- async filterComplete() {
1531
- this.columns = this.columns.map((c) => {
1532
- const cFilter = this.filters.find((f) => f.prop === c.prop);
1533
- // if we found a filter AND
1534
- // it isn't true / false and has a length OR
1535
- // it is true or false
1536
- if (cFilter &&
1537
- ((typeof cFilter.filter !== 'boolean' && cFilter.filter.length) ||
1538
- typeof cFilter.filter === 'boolean'))
1539
- c.filter = cFilter.filter;
1540
- // if a filter value is not set OR
1541
- // it isn't true / false and has no length
1542
- else if ((c.filter !== null && c.filter !== undefined) ||
1543
- (!!c.filter && typeof c.filter !== 'boolean' && !c.filter.length))
1544
- c.filter = undefined;
1545
- return c;
1546
- });
1547
- await storeFilter(this.host, this.filters);
1548
- this.nanoTblAfterFilter.emit({ filters: this.filters });
1549
- perMark('filter', true);
1550
- }
1551
- /** Scrolls to the top immediately - used whilst sorting / filtering */
1552
- scrollToTop(element) {
1553
- const scrollBehaviour = this.scrollParent.style?.scrollBehavior;
1554
- const scrollX = this.scrollParent.scrollLeft;
1555
- this.scrollParent.style.scrollBehavior = 'auto';
1556
- if (this.topAnchorEle && !isInViewport(this.topAnchorEle, 0.1)) {
1557
- this.host.scrollIntoView();
1558
- }
1559
- if (element && !isInViewport(element, 1))
1560
- setTimeout(() => element.scrollIntoView({ block: 'start' }), 500);
1561
- if (scrollX)
1562
- this.scrollParent.scrollLeft = scrollX;
1563
- if (scrollBehaviour)
1564
- this.scrollParent.style.scrollBehavior = scrollBehaviour;
1565
- this.scrollHandler();
1566
- }
1567
- setMeasureElement() {
1568
- return new Promise((resolve) => {
1569
- readTask(() => {
1570
- this.measureEle = this.blockElements.find((b) => !b?.classList?.contains(`${CSSNAMESPACE}__inactive`));
1571
- resolve();
1572
- });
1573
- });
1574
- }
1575
- /**
1576
- * Makes sure we have dimensions on at least one, active tbody element.
1577
- * We'll use this is a yard stick for inactive tbody elements in future.
1578
- * These elements have no natural height (on account of all their rows being hidden)
1579
- */
1580
- setInitialBlockDimension() {
1581
- if (!this.blockElements?.length)
168
+ addObservers() {
169
+ if (!Build.isBrowser)
1582
170
  return;
1583
- perMark('blockDims');
1584
- const testForDimensions = async () => {
1585
- await this.setMeasureElement();
1586
- if (this.unitHeight)
1587
- return true;
1588
- return false;
1589
- };
1590
- const dimensionsReady = new Promise((resolve) => {
1591
- testForDimensions().then(async (ready) => {
1592
- if (ready)
1593
- resolve();
1594
- else {
1595
- // it's likely this table is hidden in the dom.
1596
- // we need to wait until it's visible
1597
- const observer = new IntersectionObserver(async () => {
1598
- if (await testForDimensions()) {
1599
- resolve();
1600
- observer.disconnect();
1601
- }
1602
- }, { root: this.scrollParent });
1603
- observer.observe(this.tableEle);
1604
- }
1605
- });
171
+ this.resizeObserver = new ResizeObserver(() => {
172
+ this.setupProperties();
1606
173
  });
1607
- // we're all finished.
1608
- dimensionsReady.then(() => {
1609
- perMark('blockDims', true);
1610
- perMark('init', true);
1611
- requestAnimationFrame(() => (this.isReady = true));
174
+ this.resizeObserver.observe(this.host);
175
+ this.mutationObserver = new MutationObserver(() => {
176
+ this.setupProperties();
1612
177
  });
1613
- }
1614
- /** Apply initial columns settings */
1615
- async columnInit() {
1616
- this.filters = this.columns
1617
- .filter((c) => c.filter !== undefined && c.filter !== null)
1618
- .map((c) => {
1619
- const { filter, prop } = c;
1620
- return { prop, filter };
178
+ const table = this.table;
179
+ this.mutationObserver.observe(table, {
180
+ childList: true,
181
+ subtree: true,
1621
182
  });
1622
- if (this.searchTerm) {
1623
- await this.searchStart();
1624
- }
1625
- if (this.filters.length) {
1626
- await this.filterStart();
1627
- }
1628
- // apply sort
1629
- const col = this.columns.find((c) => !!c.order);
1630
- if (col) {
1631
- await this.sortStart(col.order, col.prop);
1632
- }
1633
- if (this.tablePinnedService)
1634
- this.tablePinnedService.assessCols();
183
+ // dimensions will not be accurate until table is in the viewport
184
+ this.intersectionObserver = new IntersectionObserver(() => {
185
+ this.setupProperties();
186
+ this.intersectionObserver.disconnect();
187
+ }, { threshold: 1 });
188
+ this.intersectionObserver.observe(table);
1635
189
  }
1636
- /** Split up all incoming rows into 'blocks' split amongst tbody elements.
1637
- * These can then be hidden / shown to improve performance.
1638
- */
1639
- setBlocks() {
1640
- const dRows = this.store.data.state.rows;
1641
- if (!dRows.length) {
1642
- this.blocks = [];
1643
- return;
190
+ cleanUpObservers() {
191
+ if (this.resizeObserver) {
192
+ this.resizeObserver.disconnect();
193
+ this.resizeObserver = null;
1644
194
  }
1645
- perMark('setBlocks');
1646
- // this.ignoreIO = true;
1647
- let i = 1;
1648
- const l = this.virtualTotalItems > dRows.length
1649
- ? this.virtualTotalItems
1650
- : dRows.length;
1651
- let rows = [];
1652
- const blocks = [];
1653
- // old skool loop for perf
1654
- for (i; i <= l; i++) {
1655
- rows.push(this.store.data.state.rows[i - 1] || { __uuid: '' });
1656
- if (i % this.perBlock === 0) {
1657
- // assign a UUID for the whole block
1658
- // for block diffing
1659
- blocks.push({ rows, __uuid: cyrb53(rows.map((b) => b.__uuid).join()) });
1660
- rows = [];
1661
- }
195
+ if (this.mutationObserver) {
196
+ this.mutationObserver.disconnect();
197
+ this.mutationObserver = null;
1662
198
  }
1663
- // any leftover rows
1664
- if (rows.length) {
1665
- blocks.push({ rows, __uuid: cyrb53(rows.map((b) => b.__uuid).join()) });
199
+ if (this.intersectionObserver) {
200
+ this.intersectionObserver.disconnect();
201
+ this.intersectionObserver = null;
1666
202
  }
1667
- this.blocks = blocks;
1668
- perMark('setBlocks', true);
1669
203
  }
1670
- /**
1671
- * Returns a block render height.
1672
- * If it's currently active - let auto do it's thing
1673
- * If we've rendered it before - return that
1674
- * If all else fails, let's guess it
1675
- * @param blockIndex
1676
- * @returns a height string (incl px)
1677
- */
1678
- getBlockHeight(blockIndex) {
1679
- if (this.blockHeights.length) {
1680
- const cachedBlockHeight = this.blockHeights.find((bh) => bh.blockIndex === blockIndex);
1681
- if (cachedBlockHeight && cachedBlockHeight.height)
1682
- return cachedBlockHeight.height;
1683
- }
1684
- const blockLength = this.blocks[blockIndex].rows.length;
1685
- if (blockLength === this.perBlock && this.measureHeight) {
1686
- return this.measureHeight;
1687
- }
1688
- return this.unitHeight ? this.unitHeight * blockLength : 100;
1689
- }
1690
- /** cache the height for all active blocks for later renders */
1691
- setBlockHeight() {
1692
- this.activeBlocks.forEach((blockIndex) => {
1693
- const el = this.blockElements[blockIndex];
1694
- if (!el)
1695
- return;
1696
- readTask(() => {
1697
- if (el.classList.contains(`${CSSNAMESPACE}__inactive`))
1698
- return;
1699
- const height = el.getBoundingClientRect().height;
1700
- // cache height to our block heights array
1701
- // for subsequent renders
1702
- const fBhIdx = this.blockHeights.findIndex((bh) => bh.blockIndex === blockIndex);
1703
- if (fBhIdx > -1) {
1704
- this.blockHeights[fBhIdx] = { height, blockIndex };
1705
- }
1706
- else
1707
- this.blockHeights.push({ height, blockIndex });
1708
- });
1709
- });
1710
- }
1711
- /**
1712
- * On scroll, loop through all blocks' heights and cumulatively, add them together.
1713
- * When we find that the scroll position is less than this cumulative block height -
1714
- * stop loop - it's on the current active block.
1715
- */
1716
- scrollHandler = () => {
1717
- let scrollPos = 0;
1718
- perMark('scrollHandler');
1719
- // don't listen if this table isn't in the viewport
1720
- if (!this.store?.general.state.isActive || !this.rows)
1721
- return;
1722
- if (this.primaryBlockIndex === undefined)
1723
- this.primaryBlockIndex = 0;
1724
- readTask(() => {
1725
- scrollPos =
1726
- typeof this.scrollParent.scrollTop !== 'undefined'
1727
- ? this.scrollParent.scrollTop
1728
- : window.scrollY;
1729
- scrollPos += this.host.offsetTop;
1730
- if (this.tablePinnedService) {
1731
- this.tablePinnedService.onScroll({
1732
- x: typeof this.scrollParent.scrollLeft !== 'undefined'
1733
- ? this.scrollParent.scrollLeft
1734
- : window.scrollX,
1735
- y: scrollPos,
1736
- });
1737
- }
1738
- let cumulativeHeight = this.host.offsetTop;
1739
- let blockIndex = 0;
1740
- const blockLen = this.blocks.length;
1741
- while (blockIndex < blockLen && scrollPos >= cumulativeHeight) {
1742
- cumulativeHeight += this.getBlockHeight(blockIndex);
1743
- if (scrollPos < cumulativeHeight) {
1744
- const potentialBlocks = [
1745
- blockIndex,
1746
- blockIndex + 1,
1747
- // Math.max(0, blockIndex - 1),
1748
- ];
1749
- if (potentialBlocks.toString() !== this.activeBlocks.toString()) {
1750
- this.activeBlocks = potentialBlocks;
1751
- }
1752
- this.primaryBlockIndex = blockIndex;
1753
- }
1754
- blockIndex++;
1755
- }
1756
- perMark('scrollHandler', true);
1757
- });
1758
- };
1759
- /** Process slotted content */
1760
- processSlots() {
1761
- // see if we have slot content
1762
- if (!this.caption && !this.host.querySelector('[slot="caption"]')) {
1763
- console.error('For accessibility you must set a `caption` prop or use the `caption` slot');
1764
- }
1765
- }
1766
- handleResizeChange = (e) => {
1767
- this.tableWrapperEle.className = '';
1768
- let classes = [`${CSSNAMESPACE}__wrap`];
1769
- if (e.target?.className)
1770
- classes = [...e.target.className.split(' '), ...classes];
1771
- this.tableWrapperEle.classList.add(...classes.filter((cl) => !!cl));
1772
- };
1773
- /** Adds an IO. Makes sure our scroll listener is only active when
1774
- * the table is in viewport */
1775
- setupActiveWatcher() {
1776
- if (!this.host || !this.scrollParent || !this.store)
1777
- return;
1778
- if (this.activeWatcherIo) {
1779
- this.activeWatcherIo.disconnect();
1780
- this.activeWatcherIo = undefined;
1781
- }
1782
- const io = (this.activeWatcherIo = new IntersectionObserver(([e]) => {
1783
- if (e.isIntersecting)
1784
- this.store.general.state.isActive = true;
1785
- else
1786
- this.store.general.state.isActive = false;
1787
- }, { root: this.scrollParent, threshold: 0 }));
1788
- io.observe(this.host);
1789
- }
1790
- // Component lifecycle
1791
- async componentWillLoad() {
1792
- perMark('init');
1793
- // setup stores
1794
- this.store = await generateStore(this.host, this.columns, this.scrollParent, this.isReady);
1795
- this.handleRowsChange();
1796
- this.store.general.onChange('isActive', () => {
1797
- this.scrollHandler();
1798
- });
1799
- this.store.data.onChange('rows', () => this.setBlocks());
1800
- // setup dom and attach listeners
1801
- this.processSlots();
1802
- this.setBlocks();
1803
- this.scrollParent = findScrollParent(this.host);
1804
- this.setupActiveWatcher();
204
+ constructor() {
205
+ super();
206
+ this.__registerHost();
207
+ this.setupProperties = debounce(this.setupProperties, 100);
1805
208
  }
1806
209
  connectedCallback() {
1807
- this.scrollParent = findScrollParent(this.host);
1808
- this.setupActiveWatcher();
1809
- }
1810
- componentDidLoad() {
1811
- this.setInitialBlockDimension();
1812
- if (!this.tablePinnedService) {
1813
- this.tablePinnedService = new TablePinService(this.tableEle, this.scrollParent);
1814
- }
1815
- }
1816
- componentShouldUpdate(_newVal, _oldVal, stateName) {
1817
- // stop double rendering - we use the store for rendering internally
1818
- // the public facing props are kept in-sync with the store
1819
- // but we don't want it to cause renders
1820
- if (['rows', 'columns'].includes(stateName))
1821
- return false;
1822
- }
1823
- componentWillRender() {
1824
- perMark('render');
210
+ this.addObservers();
211
+ this.handleHideCaptionChange();
1825
212
  }
1826
213
  componentDidRender() {
1827
- this.setMeasureElement().then(() => this.setBlockHeight());
1828
- perMark('render', true);
214
+ if (this.scrollable !== false && this.table) {
215
+ // a hack. Revise in-future.
216
+ // the table is always rendered in the light DOM - so it should always be visible, but
217
+ // if we conditionally render the slot within the masked overflow there's quite a noticeable
218
+ // CLS as it moves before the nano-masked-overflow is bootstrapped.
219
+ customElements
220
+ .whenDefined(transformTag('nano-masked-overflow'))
221
+ .then(() => {
222
+ this.host
223
+ .querySelector('.nano-table__overflow')
224
+ ?.appendChild(this.table);
225
+ });
226
+ }
1829
227
  }
1830
228
  disconnectedCallback() {
1831
- if (!this.activeWatcherIo)
1832
- return;
1833
- this.activeWatcherIo.disconnect();
1834
- this.activeWatcherIo = undefined;
1835
- (this.scrollParent === document.documentElement
1836
- ? document
1837
- : this.scrollParent).removeEventListener('scroll', this.scrollHandler);
229
+ this.cleanUpObservers();
1838
230
  }
1839
231
  render() {
1840
- this.blockElements = [];
1841
- return (h$1(Host, { key: '7d6193dc4b48fa4085ac1029a0c70dcf2f07a6fa', class: "nano-table" }, h$1("div", { key: 'acbfb0c4642cbce4dc1b8c9e22be90cbcbec84a9', class: `${CSSNAMESPACE}__top-anchor`, ref: (a) => (this.topAnchorEle = a) }, "\u00A0"), h$1("nano-resize-observe", { key: '9a38da33f0cfb64329331510f196ef7c42e51ca3', states: "576w sm, 768w md", class: "sm md", onNanoResizeStateChange: this.handleResizeChange, onNanoResize: () => {
1842
- if (this.tablePinnedService)
1843
- this.tablePinnedService.onResize();
1844
- } }), h$1("div", { key: '25aad643f108a5e48319a20a70a36066eb099d5d', class: `${CSSNAMESPACE}__wrap sm md`, ref: (div) => (this.tableWrapperEle = div), "aria-labelledby": 'nano-table-caption-' + this.renderId, tabindex: this.type === 'grid' ? '0' : undefined }, h$1("nano-progress-bar", { key: '519fc388c4926af6bd9dfaba2112fa2db1dbc3cd', indeterminate: true, class: {
1845
- [`${CSSNAMESPACE}__progress-bar`]: true,
1846
- [`${CSSNAMESPACE}__progress-bar--show`]: this._loading,
1847
- } }), h$1("table", { key: 'b58a665666893b4b15aad6ab7e7a08bd20527cb2', role: this.type === 'grid' ? 'grid' : undefined, "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-table-' + this.renderId }, h$1("caption", { key: '5bc653ff3a487546e652cd787996dfde662fdf67', class: {
1848
- [`${CSSNAMESPACE}__caption`]: true,
1849
- [`${CSSNAMESPACE}__caption--hide`]: !this.showCaption,
1850
- }, id: 'nano-table-caption-' + this.renderId }, h$1("slot", { key: 'a6c855db5a74c123d08ad4e65954f17573c9ea3a', name: "caption" }, this.caption)), h$1("thead", { key: '743820b2abc85adac1fe4babf918be10a8e62a26' }, h$1(TableHeadFootRow, { key: 'e7a9a7c27033c2ed69bdeb8bfa68af3a3d721036', rowRenderer: this.headRender }, this.store.config.state.columns.map((colModel) => [
1851
- h$1(TableColHead, { column: colModel, headRenderer: this.headRender, onColumnSortClick: this.sortStart, defaults: {
1852
- sortable: this.defaultSort,
1853
- } }),
1854
- ]))), this._loading && !this.blocks.length && (h$1("tbody", { key: '6c7d553988620e1f3ee9cbf0d2c6bade44c5eefa', class: `${CSSNAMESPACE}__active ${CSSNAMESPACE}__loading` }, [...Array(10).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", { key: '092f27f8726f12b7fa10d166b560d6df6593bbc1', hidden: !!this._loading || !!this.blocks.length }, h$1("th", { key: 'edfbca925f99550897c3b460a6efcb326863a591', class: `${CSSNAMESPACE}__th`, colSpan: this.store.config.state.columns.length }, h$1("div", { key: '5d4b996c3141b6583317a2b28357fe7af3a873bc', class: "nano-tbl__cell-content nano-tbl__cell-content--no-result" }, h$1("slot", { key: '00db3e5649ccdc97062881ff7b3801fb1847c2db', name: "no-results" }, "No results found")))), this.blocks.map((block, blockIndex) => (h$1("tbody", { key: block.__uuid, id: `tbody-${this.renderId}-${blockIndex}`, ref: (tb) => {
1855
- this.blockElements.push(tb);
1856
- }, class: {
1857
- [`${CSSNAMESPACE}__inactive`]: !this.activeBlocks.includes(blockIndex),
1858
- [`${CSSNAMESPACE}__active`]: this.activeBlocks.includes(blockIndex),
1859
- } }, this.activeBlocks.includes(blockIndex) ? (block.rows.map((row, i) => {
1860
- const rowIndex = blockIndex > 0 ? blockIndex * this.perBlock + i : i;
1861
- 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 })))));
1862
- })) : (h$1("tr", { class: `${CSSNAMESPACE}__tr--placeholder` }, h$1("td", { colSpan: this.store.config.state.columns.length, style: {
1863
- height: this.getBlockHeight(blockIndex) + 'px',
1864
- } })))))), this.showFooter && (h$1("tfoot", { key: '15a1a79049ad87f63c87e2d905bc401a7d4bbb60' }, h$1(TableHeadFootRow, { key: 'ee06dea32599c6dae3fcdcabc5a5bd0ea6536aea', rowRenderer: this.footRender }, this.store.config.state.columns.map((colModel) => [
1865
- h$1(TableColHead, { column: colModel, headRenderer: this.footRender, onColumnSortClick: this.sortStart, defaults: {
1866
- sortable: this.defaultSort,
1867
- } }),
1868
- ]))))), !!this.blocks.length && (h$1("nano-spinner", { key: 'dd0041a5232a79a9f1882d2b9e5beebd79587a5d', type: "circle", class: {
1869
- [`${CSSNAMESPACE}__spinner`]: true,
1870
- [`${CSSNAMESPACE}__spinner--show`]: this._loading,
1871
- } })))));
232
+ return (h(Host, { key: '61d6bc7ce049b636466f22e2ebec084752ecfd29', class: {
233
+ 'nano-table': true,
234
+ 'nano-table--props-ready': this.propsReady,
235
+ } }, this.scrollable && (h("nano-masked-overflow", { key: '0534fae03c985ea7f1247bce7abdb5deac889feb', hideScrollbars: false, scrollControls: false, label: this.caption?.textContent || undefined, class: "nano-table__overflow-container" }, h("div", { key: '8e911ddbf727b07c8cd56dab2d56568b73a745b2', class: "nano-table__overflow" }))), h("slot", { key: '2d57257dc468275502d1c1a1d2c07e32f8cfa881' })));
1872
236
  }
1873
237
  static get watchers() { return {
1874
- "rows": ["handleRowsChange"],
1875
- "columns": ["handleColsChange"],
1876
- "searchTerm": ["handleSearchTermChange"],
1877
- "virtualTotalItems": ["virtualTotalItemsChangeHandler"]
238
+ "compact": ["handleCompactChange"],
239
+ "hideCaption": ["handleHideCaptionChange"]
1878
240
  }; }
1879
- static get style() { return NanoTableStyle0; }
241
+ static get style() { return tableCss; }
1880
242
  }, [4, "nano-table", {
1881
- "customRenderer": [16],
1882
- "type": [1],
1883
- "caption": [1],
1884
- "showCaption": [4, "show-caption"],
1885
- "loading": [4],
1886
- "placeholderSize": [2, "placeholder-size"],
1887
- "rows": [16],
1888
- "columns": [1040],
1889
- "headRender": [16],
1890
- "rowRender": [16],
1891
- "footRender": [16],
1892
- "showFooter": [4, "show-footer"],
1893
- "perBlock": [2, "per-block"],
1894
- "blocksLength": [2050, "blocks-length"],
1895
- "searchTerm": [1, "search-term"],
1896
- "customFilterFn": [16],
1897
- "customSortFn": [16],
1898
- "defaultSort": [4, "default-sort"],
1899
- "virtualTotalItems": [2, "virtual-total-items"],
1900
- "appliedFilters": [2064],
1901
- "internalLoading": [32],
1902
- "blocks": [32],
1903
- "activeBlocks": [32],
1904
- "resetSorting": [64],
1905
- "addSort": [64],
1906
- "resetFilters": [64],
1907
- "addFilters": [64],
1908
- "removeFilters": [64],
1909
- "updateRow": [64]
243
+ "compact": [520],
244
+ "scrollable": [516],
245
+ "hideCaption": [516, "hide-caption"],
246
+ "propsReady": [32]
1910
247
  }, undefined, {
1911
- "rows": ["handleRowsChange"],
1912
- "columns": ["handleColsChange"],
1913
- "searchTerm": ["handleSearchTermChange"],
1914
- "virtualTotalItems": ["virtualTotalItemsChangeHandler"]
248
+ "compact": ["handleCompactChange"],
249
+ "hideCaption": ["handleHideCaptionChange"]
1915
250
  }]);
1916
251
  function defineCustomElement$1() {
1917
252
  if (typeof customElements === "undefined") {
1918
253
  return;
1919
254
  }
1920
- const components = ["nano-table", "nano-icon", "nano-progress-bar", "nano-resize-observe", "nano-skeleton", "nano-spinner", "nano-tooltip"];
255
+ const components = ["nano-table", "nano-icon", "nano-icon-button", "nano-masked-overflow", "nano-tooltip"];
1921
256
  components.forEach(tagName => { switch (tagName) {
1922
257
  case "nano-table":
1923
258
  if (!customElements.get(tagName)) {
1924
- customElements.define(tagName, Table);
259
+ customElements.define(tagName, NanoTable$1);
1925
260
  }
1926
261
  break;
1927
262
  case "nano-icon":
1928
- if (!customElements.get(tagName)) {
1929
- defineCustomElement$7();
1930
- }
1931
- break;
1932
- case "nano-progress-bar":
1933
- if (!customElements.get(tagName)) {
1934
- defineCustomElement$6();
1935
- }
1936
- break;
1937
- case "nano-resize-observe":
1938
263
  if (!customElements.get(tagName)) {
1939
264
  defineCustomElement$5();
1940
265
  }
1941
266
  break;
1942
- case "nano-skeleton":
267
+ case "nano-icon-button":
1943
268
  if (!customElements.get(tagName)) {
1944
269
  defineCustomElement$4();
1945
270
  }
1946
271
  break;
1947
- case "nano-spinner":
272
+ case "nano-masked-overflow":
1948
273
  if (!customElements.get(tagName)) {
1949
274
  defineCustomElement$3();
1950
275
  }
@@ -1957,9 +282,7 @@ function defineCustomElement$1() {
1957
282
  } });
1958
283
  }
1959
284
 
1960
- const NanoTable = Table;
285
+ const NanoTable = NanoTable$1;
1961
286
  const defineCustomElement = defineCustomElement$1;
1962
287
 
1963
- export { NanoTable, createWorker as c, defineCustomElement };
1964
-
1965
- //# sourceMappingURL=nano-table.js.map
288
+ export { NanoTable, defineCustomElement };