@nanoporetech-digital/components 3.7.1 → 3.8.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 (781) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/dist/cjs/{algolia-data-9152d0ef.js → algolia-data-fb13160a.js} +2 -2
  3. package/dist/cjs/{algolia-data-9152d0ef.js.map → algolia-data-fb13160a.js.map} +1 -1
  4. package/dist/cjs/{algoliasearch.umd-7ee60729.js → algoliasearch.umd-689c1560.js} +3 -3
  5. package/dist/cjs/{algoliasearch.umd-7ee60729.js.map → algoliasearch.umd-689c1560.js.map} +1 -1
  6. package/dist/cjs/{component-store-d7c8c326.js → component-store-b80bdb26.js} +25 -12
  7. package/dist/cjs/component-store-b80bdb26.js.map +1 -0
  8. package/dist/cjs/{dom-d7c33f11.js → dom-7acf7afd.js} +15 -15
  9. package/dist/cjs/dom-7acf7afd.js.map +1 -0
  10. package/dist/cjs/{form-control-57c71246.js → form-control-845951ac.js} +4 -4
  11. package/dist/cjs/form-control-845951ac.js.map +1 -0
  12. package/dist/{esm/global-8047b4ff.js → cjs/global-3a6a7873.js} +5 -14
  13. package/dist/cjs/global-3a6a7873.js.map +1 -0
  14. package/dist/cjs/{index-bb2a6ab8.js → index-5e11be36.js} +2 -2
  15. package/dist/cjs/{index-bb2a6ab8.js.map → index-5e11be36.js.map} +1 -1
  16. package/dist/cjs/{index-ece1cb9e.js → index-72ee0363.js} +2 -10
  17. package/dist/cjs/index-72ee0363.js.map +1 -0
  18. package/dist/cjs/{index-41582c2a.js → index-e1b5c3ea.js} +1438 -516
  19. package/dist/cjs/index-e1b5c3ea.js.map +1 -0
  20. package/dist/cjs/index.cjs.js +18 -35
  21. package/dist/cjs/index.cjs.js.map +1 -1
  22. package/dist/cjs/loader.cjs.js +5 -4
  23. package/dist/cjs/loader.cjs.js.map +1 -1
  24. package/dist/cjs/{modal-e4defcc3.js → modal-5884a6de.js} +3 -2
  25. package/dist/cjs/modal-5884a6de.js.map +1 -0
  26. package/dist/cjs/nano-accordion.cjs.entry.js +4 -7
  27. package/dist/cjs/nano-accordion.cjs.entry.js.map +1 -1
  28. package/dist/cjs/nano-alert.cjs.entry.js +25 -19
  29. package/dist/cjs/nano-alert.cjs.entry.js.map +1 -1
  30. package/dist/cjs/nano-algolia-filter.cjs.entry.js +5 -5
  31. package/dist/cjs/nano-algolia-filter.cjs.entry.js.map +1 -1
  32. package/dist/cjs/nano-algolia-input.cjs.entry.js +4 -4
  33. package/dist/cjs/nano-algolia-input.cjs.entry.js.map +1 -1
  34. package/dist/cjs/nano-algolia-pagination.cjs.entry.js +2 -2
  35. package/dist/cjs/nano-algolia-results.cjs.entry.js +2 -2
  36. package/dist/cjs/nano-algolia.cjs.entry.js +8 -8
  37. package/dist/cjs/nano-algolia.cjs.entry.js.map +1 -1
  38. package/dist/cjs/nano-aspect-ratio.cjs.entry.js +1 -1
  39. package/dist/cjs/nano-checkbox-group.cjs.entry.js +52 -9
  40. package/dist/cjs/nano-checkbox-group.cjs.entry.js.map +1 -1
  41. package/dist/cjs/nano-checkbox.cjs.entry.js +8 -8
  42. package/dist/cjs/nano-checkbox.cjs.entry.js.map +1 -1
  43. package/dist/cjs/nano-components.cjs.js +8 -4
  44. package/dist/cjs/nano-components.cjs.js.map +1 -1
  45. package/dist/cjs/nano-datalist_3.cjs.entry.js +46 -36
  46. package/dist/cjs/nano-datalist_3.cjs.entry.js.map +1 -1
  47. package/dist/cjs/nano-date-input.cjs.entry.js +6 -6
  48. package/dist/cjs/nano-date-input.cjs.entry.js.map +1 -1
  49. package/dist/cjs/nano-date-picker.cjs.entry.js +4 -4
  50. package/dist/cjs/nano-date-picker.cjs.entry.js.map +1 -1
  51. package/dist/cjs/nano-demo.cjs.entry.js +13 -9
  52. package/dist/cjs/nano-demo.cjs.entry.js.map +1 -1
  53. package/dist/cjs/nano-details.cjs.entry.js +4 -4
  54. package/dist/cjs/nano-details.cjs.entry.js.map +1 -1
  55. package/dist/cjs/nano-dialog.cjs.entry.js +6 -6
  56. package/dist/cjs/nano-dialog.cjs.entry.js.map +1 -1
  57. package/dist/cjs/nano-drawer.cjs.entry.js +5 -5
  58. package/dist/cjs/nano-drawer.cjs.entry.js.map +1 -1
  59. package/dist/cjs/nano-dropdown.cjs.entry.js +9 -4
  60. package/dist/cjs/nano-dropdown.cjs.entry.js.map +1 -1
  61. package/dist/cjs/nano-field-validator.cjs.entry.js +4 -3
  62. package/dist/cjs/nano-field-validator.cjs.entry.js.map +1 -1
  63. package/dist/cjs/nano-file-upload.cjs.entry.js +5 -5
  64. package/dist/cjs/nano-file-upload.cjs.entry.js.map +1 -1
  65. package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js +54 -67
  66. package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js.map +1 -1
  67. package/dist/cjs/nano-global-nav.cjs.entry.js +54 -26
  68. package/dist/cjs/nano-global-nav.cjs.entry.js.map +1 -1
  69. package/dist/cjs/nano-global-search-results.cjs.entry.js +6 -4
  70. package/dist/cjs/nano-global-search-results.cjs.entry.js.map +1 -1
  71. package/dist/cjs/nano-grid_3.cjs.entry.js +8 -7
  72. package/dist/cjs/nano-grid_3.cjs.entry.js.map +1 -1
  73. package/dist/cjs/nano-hero.cjs.entry.js +4 -2
  74. package/dist/cjs/nano-hero.cjs.entry.js.map +1 -1
  75. package/dist/cjs/nano-icon-button.cjs.entry.js +2 -2
  76. package/dist/cjs/nano-icon-button.cjs.entry.js.map +1 -1
  77. package/dist/cjs/nano-icon.cjs.entry.js +7 -14
  78. package/dist/cjs/nano-icon.cjs.entry.js.map +1 -1
  79. package/dist/cjs/nano-input.cjs.entry.js +19 -33
  80. package/dist/cjs/nano-input.cjs.entry.js.map +1 -1
  81. package/dist/cjs/nano-menu-drawer.cjs.entry.js +3 -3
  82. package/dist/cjs/nano-menu-drawer.cjs.entry.js.map +1 -1
  83. package/dist/cjs/nano-progress-bar_2.cjs.entry.js +4 -4
  84. package/dist/cjs/nano-progress-bar_2.cjs.entry.js.map +1 -1
  85. package/dist/cjs/nano-range.cjs.entry.js +4 -4
  86. package/dist/cjs/nano-range.cjs.entry.js.map +1 -1
  87. package/dist/cjs/nano-rating.cjs.entry.js +2 -2
  88. package/dist/cjs/nano-rating.cjs.entry.js.map +1 -1
  89. package/dist/cjs/nano-resize-observe_2.cjs.entry.js +18 -10
  90. package/dist/cjs/nano-resize-observe_2.cjs.entry.js.map +1 -1
  91. package/dist/cjs/nano-slide.cjs.entry.js +1 -1
  92. package/dist/cjs/nano-slides.cjs.entry.js +11 -21
  93. package/dist/cjs/nano-slides.cjs.entry.js.map +1 -1
  94. package/dist/cjs/nano-spinner.cjs.entry.js +3 -3
  95. package/dist/cjs/nano-spinner.cjs.entry.js.map +1 -1
  96. package/dist/cjs/nano-split-pane.cjs.entry.js +15 -13
  97. package/dist/cjs/nano-split-pane.cjs.entry.js.map +1 -1
  98. package/dist/cjs/nano-sticker.cjs.entry.js +6 -4
  99. package/dist/cjs/nano-sticker.cjs.entry.js.map +1 -1
  100. package/dist/cjs/nano-tab-content.cjs.entry.js +9 -3
  101. package/dist/cjs/nano-tab-content.cjs.entry.js.map +1 -1
  102. package/dist/cjs/nano-tab-group.cjs.entry.js +18 -12
  103. package/dist/cjs/nano-tab-group.cjs.entry.js.map +1 -1
  104. package/dist/cjs/nano-tab.cjs.entry.js +2 -2
  105. package/dist/cjs/nano-tab.cjs.entry.js.map +1 -1
  106. package/dist/cjs/{nano-table-820b04d5.js → nano-table-e76a8dde.js} +115 -150
  107. package/dist/cjs/nano-table-e76a8dde.js.map +1 -0
  108. package/dist/cjs/nano-table.cjs.entry.js +3 -3
  109. package/dist/cjs/{popover-508bcedb.js → popover-088646b2.js} +61 -50
  110. package/dist/cjs/popover-088646b2.js.map +1 -0
  111. package/dist/cjs/{scroll-9bb5e060.js → scroll-a197d9c4.js} +2 -2
  112. package/dist/cjs/{scroll-9bb5e060.js.map → scroll-a197d9c4.js.map} +1 -1
  113. package/dist/cjs/{table.worker-9e238d16.js → table.worker-988d87da.js} +4 -4
  114. package/dist/cjs/table.worker-988d87da.js.map +1 -0
  115. package/dist/cjs/{theme-50275e1a.js → theme-9cbe28c5.js} +2 -7
  116. package/dist/cjs/theme-9cbe28c5.js.map +1 -0
  117. package/dist/collection/collection-manifest.json +2 -2
  118. package/dist/collection/components/accordion/accordion.js +1 -4
  119. package/dist/collection/components/accordion/accordion.js.map +1 -1
  120. package/dist/collection/components/alert/alert.css +4 -3
  121. package/dist/collection/components/alert/alert.helpers.js +6 -24
  122. package/dist/collection/components/alert/alert.helpers.js.map +1 -1
  123. package/dist/collection/components/alert/alert.js +19 -13
  124. package/dist/collection/components/alert/alert.js.map +1 -1
  125. package/dist/collection/components/algolia/algolia-filter.js +2 -2
  126. package/dist/collection/components/algolia/algolia-filter.js.map +1 -1
  127. package/dist/collection/components/algolia/algolia-input.js.map +1 -1
  128. package/dist/collection/components/algolia/algolia.css +2 -1
  129. package/dist/collection/components/algolia/algolia.js +3 -3
  130. package/dist/collection/components/algolia/algolia.js.map +1 -1
  131. package/dist/collection/components/checkbox/checkbox-group.css +16 -10
  132. package/dist/collection/components/checkbox/checkbox-group.js +91 -7
  133. package/dist/collection/components/checkbox/checkbox-group.js.map +1 -1
  134. package/dist/collection/components/checkbox/checkbox.css +14 -12
  135. package/dist/collection/components/checkbox/checkbox.js +5 -5
  136. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  137. package/dist/collection/components/datalist/datalist.js +39 -31
  138. package/dist/collection/components/datalist/datalist.js.map +1 -1
  139. package/dist/collection/components/date-input/date-input.css +3 -3
  140. package/dist/collection/components/date-input/date-input.js +3 -3
  141. package/dist/collection/components/date-input/date-input.js.map +1 -1
  142. package/dist/collection/components/date-picker/date-picker.css +15 -11
  143. package/dist/collection/components/date-picker/date-picker.js +1 -1
  144. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  145. package/dist/collection/components/demo/demo.js +12 -8
  146. package/dist/collection/components/demo/demo.js.map +1 -1
  147. package/dist/collection/components/details/details.css +2 -1
  148. package/dist/collection/components/details/details.js +1 -1
  149. package/dist/collection/components/details/details.js.map +1 -1
  150. package/dist/collection/components/dialog/dialog.css +8 -5
  151. package/dist/collection/components/dialog/dialog.helpers.js +3 -11
  152. package/dist/collection/components/dialog/dialog.helpers.js.map +1 -1
  153. package/dist/collection/components/drawer/drawer.css +2 -2
  154. package/dist/collection/components/dropdown/dropdown.css +1 -1
  155. package/dist/collection/components/dropdown/dropdown.js +6 -1
  156. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  157. package/dist/collection/components/field-validator/field-validator.js +2 -1
  158. package/dist/collection/components/field-validator/field-validator.js.map +1 -1
  159. package/dist/collection/components/file-upload/file-upload.css +35 -25
  160. package/dist/collection/components/file-upload/file-upload.js +4 -4
  161. package/dist/collection/components/file-upload/file-upload.js.map +1 -1
  162. package/dist/collection/components/form-control/form-control.js +2 -2
  163. package/dist/collection/components/form-control/form-control.js.map +1 -1
  164. package/dist/collection/components/global-nav/global-nav-user-profile.js +6 -7
  165. package/dist/collection/components/global-nav/global-nav-user-profile.js.map +1 -1
  166. package/dist/collection/components/global-nav/global-nav.js +61 -11
  167. package/dist/collection/components/global-nav/global-nav.js.map +1 -1
  168. package/dist/collection/components/global-nav/style/global-nav.css +92 -48
  169. package/dist/collection/components/global-search-results/global-search-results.css +83 -44
  170. package/dist/collection/components/global-search-results/global-search-results.js +4 -2
  171. package/dist/collection/components/global-search-results/global-search-results.js.map +1 -1
  172. package/dist/collection/components/grid/grid-item.css +1 -1
  173. package/dist/collection/components/grid/grid.css +1 -0
  174. package/dist/collection/components/grid/grid.js +2 -0
  175. package/dist/collection/components/grid/grid.js.map +1 -1
  176. package/dist/collection/components/hero/hero.css +110 -18
  177. package/dist/collection/components/hero/hero.js +2 -0
  178. package/dist/collection/components/hero/hero.js.map +1 -1
  179. package/dist/collection/components/icon/icon.css +2 -2
  180. package/dist/collection/components/icon/icon.js +3 -10
  181. package/dist/collection/components/icon/icon.js.map +1 -1
  182. package/dist/collection/components/icon-button/icon-button.css +1 -1
  183. package/dist/collection/components/img/img.css +0 -1
  184. package/dist/collection/components/img/img.js +3 -4
  185. package/dist/collection/components/img/img.js.map +1 -1
  186. package/dist/collection/components/input/input.css +54 -32
  187. package/dist/collection/components/input/input.js +14 -28
  188. package/dist/collection/components/input/input.js.map +1 -1
  189. package/dist/collection/components/menu/menu.js +4 -2
  190. package/dist/collection/components/menu/menu.js.map +1 -1
  191. package/dist/collection/components/menu-drawer/menu-drawer.css +20 -13
  192. package/dist/collection/components/menu-drawer/menu-drawer.js +1 -1
  193. package/dist/collection/components/menu-drawer/menu-drawer.js.map +1 -1
  194. package/dist/collection/components/nav-item/nav-item.css +31 -16
  195. package/dist/collection/components/nav-item/nav-item.js +4 -4
  196. package/dist/collection/components/nav-item/nav-item.js.map +1 -1
  197. package/dist/collection/components/option/option.css +4 -2
  198. package/dist/collection/components/progress-bar/progress-bar.css +4 -4
  199. package/dist/collection/components/range/range.css +11 -9
  200. package/dist/collection/components/rating/rating.css +9 -5
  201. package/dist/collection/components/resize-observe/resize-observe.js +17 -6
  202. package/dist/collection/components/resize-observe/resize-observe.js.map +1 -1
  203. package/dist/collection/components/select/select.css +59 -34
  204. package/dist/collection/components/select/select.js +42 -55
  205. package/dist/collection/components/select/select.js.map +1 -1
  206. package/dist/collection/components/skeleton/skeleton.css +5 -5
  207. package/dist/collection/components/slides/slides.css +4 -2
  208. package/dist/collection/components/slides/slides.js +9 -19
  209. package/dist/collection/components/slides/slides.js.map +1 -1
  210. package/dist/collection/components/spinner/spinner.css +13 -8
  211. package/dist/collection/components/spinner/spinner.js +1 -1
  212. package/dist/collection/components/spinner/spinner.js.map +1 -1
  213. package/dist/collection/components/split-pane/split-pane.css +1 -1
  214. package/dist/collection/components/split-pane/split-pane.js +13 -11
  215. package/dist/collection/components/split-pane/split-pane.js.map +1 -1
  216. package/dist/collection/components/sticker/sticker.js +4 -2
  217. package/dist/collection/components/sticker/sticker.js.map +1 -1
  218. package/dist/collection/components/table/table.cell.js +8 -8
  219. package/dist/collection/components/table/table.cell.js.map +1 -1
  220. package/dist/collection/components/table/table.css +46 -25
  221. package/dist/collection/components/table/table.header.js +6 -19
  222. package/dist/collection/components/table/table.header.js.map +1 -1
  223. package/dist/collection/components/table/table.js +85 -93
  224. package/dist/collection/components/table/table.js.map +1 -1
  225. package/dist/collection/components/table/table.row.js +8 -8
  226. package/dist/collection/components/table/table.row.js.map +1 -1
  227. package/dist/collection/components/table/table.store.js +2 -1
  228. package/dist/collection/components/table/table.store.js.map +1 -1
  229. package/dist/collection/components/table/table.utils.js +8 -7
  230. package/dist/collection/components/table/table.utils.js.map +1 -1
  231. package/dist/collection/components/tabs/tab-content.css +7 -2
  232. package/dist/collection/components/tabs/tab-content.js +12 -1
  233. package/dist/collection/components/tabs/tab-content.js.map +1 -1
  234. package/dist/collection/components/tabs/tab-group.css +13 -10
  235. package/dist/collection/components/tabs/tab-group.js +17 -7
  236. package/dist/collection/components/tabs/tab-group.js.map +1 -1
  237. package/dist/collection/components/tabs/tab.css +21 -12
  238. package/dist/collection/components/tooltip/tooltip.css +25 -16
  239. package/dist/collection/global/script/global.js +2 -13
  240. package/dist/collection/global/script/global.js.map +1 -1
  241. package/dist/collection/index.js +17 -0
  242. package/dist/collection/index.js.map +1 -1
  243. package/dist/collection/utils/dom.js +16 -15
  244. package/dist/collection/utils/dom.js.map +1 -1
  245. package/dist/collection/utils/fetch.js +15 -12
  246. package/dist/collection/utils/fetch.js.map +1 -1
  247. package/dist/collection/utils/gesture/index.js +1 -9
  248. package/dist/collection/utils/gesture/index.js.map +1 -1
  249. package/dist/collection/utils/modal.js +2 -1
  250. package/dist/collection/utils/modal.js.map +1 -1
  251. package/dist/collection/utils/store/get-set.js +1 -1
  252. package/dist/collection/utils/store/get-set.js.map +1 -1
  253. package/dist/collection/utils/testing/index.js +1 -0
  254. package/dist/collection/utils/testing/index.js.map +1 -1
  255. package/dist/collection/utils/theme.js +1 -6
  256. package/dist/collection/utils/theme.js.map +1 -1
  257. package/dist/components/algolia.js +3 -3
  258. package/dist/components/algolia.js.map +1 -1
  259. package/dist/components/algoliasearch.umd.js +2 -2
  260. package/dist/components/algoliasearch.umd.js.map +1 -1
  261. package/dist/components/component-store.js +23 -10
  262. package/dist/components/component-store.js.map +1 -1
  263. package/dist/components/datalist.js +39 -31
  264. package/dist/components/datalist.js.map +1 -1
  265. package/dist/components/date-picker.js +2 -2
  266. package/dist/components/date-picker.js.map +1 -1
  267. package/dist/components/dom.js +17 -15
  268. package/dist/components/dom.js.map +1 -1
  269. package/dist/components/dropdown.js +7 -2
  270. package/dist/components/dropdown.js.map +1 -1
  271. package/dist/components/form-control.js +2 -2
  272. package/dist/components/form-control.js.map +1 -1
  273. package/dist/components/global-nav-user-profile.js +4 -3
  274. package/dist/components/global-nav-user-profile.js.map +1 -1
  275. package/dist/components/grid-item.js +1 -1
  276. package/dist/components/grid-item.js.map +1 -1
  277. package/dist/components/grid.js +3 -1
  278. package/dist/components/grid.js.map +1 -1
  279. package/dist/components/icon-button.js +1 -1
  280. package/dist/components/icon-button.js.map +1 -1
  281. package/dist/components/icon.js +4 -11
  282. package/dist/components/icon.js.map +1 -1
  283. package/dist/components/img.js +4 -5
  284. package/dist/components/img.js.map +1 -1
  285. package/dist/components/index.d.ts +9 -0
  286. package/dist/components/index.js +23 -52
  287. package/dist/components/index.js.map +1 -1
  288. package/dist/components/index3.js +635 -1069
  289. package/dist/components/index3.js.map +1 -1
  290. package/dist/components/input.js +15 -29
  291. package/dist/components/input.js.map +1 -1
  292. package/dist/components/menu.js +4 -2
  293. package/dist/components/menu.js.map +1 -1
  294. package/dist/components/modal.js +2 -1
  295. package/dist/components/modal.js.map +1 -1
  296. package/dist/components/nano-accordion.js +1 -4
  297. package/dist/components/nano-accordion.js.map +1 -1
  298. package/dist/components/nano-alert.js +20 -14
  299. package/dist/components/nano-alert.js.map +1 -1
  300. package/dist/components/nano-algolia-filter.js +2 -2
  301. package/dist/components/nano-algolia-filter.js.map +1 -1
  302. package/dist/components/nano-algolia-input.js.map +1 -1
  303. package/dist/components/nano-checkbox-group.js +53 -9
  304. package/dist/components/nano-checkbox-group.js.map +1 -1
  305. package/dist/components/nano-checkbox.js +6 -6
  306. package/dist/components/nano-checkbox.js.map +1 -1
  307. package/dist/components/nano-date-input.js +4 -4
  308. package/dist/components/nano-date-input.js.map +1 -1
  309. package/dist/components/nano-demo.js +12 -8
  310. package/dist/components/nano-demo.js.map +1 -1
  311. package/dist/components/nano-details.js +2 -2
  312. package/dist/components/nano-details.js.map +1 -1
  313. package/dist/components/nano-dialog.js +1 -1
  314. package/dist/components/nano-dialog.js.map +1 -1
  315. package/dist/components/nano-drawer.js +1 -1
  316. package/dist/components/nano-drawer.js.map +1 -1
  317. package/dist/components/nano-field-validator.js +2 -1
  318. package/dist/components/nano-field-validator.js.map +1 -1
  319. package/dist/components/nano-file-upload.js +4 -4
  320. package/dist/components/nano-file-upload.js.map +1 -1
  321. package/dist/components/nano-global-nav.js +51 -22
  322. package/dist/components/nano-global-nav.js.map +1 -1
  323. package/dist/components/nano-global-search-results.js +5 -3
  324. package/dist/components/nano-global-search-results.js.map +1 -1
  325. package/dist/components/nano-hero.js +3 -1
  326. package/dist/components/nano-hero.js.map +1 -1
  327. package/dist/components/nano-menu-drawer.js +2 -2
  328. package/dist/components/nano-menu-drawer.js.map +1 -1
  329. package/dist/components/nano-range.js +2 -2
  330. package/dist/components/nano-range.js.map +1 -1
  331. package/dist/components/nano-rating.js +1 -1
  332. package/dist/components/nano-rating.js.map +1 -1
  333. package/dist/components/nano-slides.js +10 -20
  334. package/dist/components/nano-slides.js.map +1 -1
  335. package/dist/components/nano-split-pane.js +14 -12
  336. package/dist/components/nano-split-pane.js.map +1 -1
  337. package/dist/components/nano-tab-content.js +10 -3
  338. package/dist/components/nano-tab-content.js.map +1 -1
  339. package/dist/components/nano-tab-group.js +18 -8
  340. package/dist/components/nano-tab-group.js.map +1 -1
  341. package/dist/components/nano-tab.js +1 -1
  342. package/dist/components/nano-tab.js.map +1 -1
  343. package/dist/components/nav-item.js +5 -5
  344. package/dist/components/nav-item.js.map +1 -1
  345. package/dist/components/option.js +1 -1
  346. package/dist/components/option.js.map +1 -1
  347. package/dist/components/popover.js +60 -49
  348. package/dist/components/popover.js.map +1 -1
  349. package/dist/components/progress-bar.js +1 -1
  350. package/dist/components/progress-bar.js.map +1 -1
  351. package/dist/components/resize-observe.js +16 -8
  352. package/dist/components/resize-observe.js.map +1 -1
  353. package/dist/components/select.js +43 -56
  354. package/dist/components/select.js.map +1 -1
  355. package/dist/components/skeleton.js +1 -1
  356. package/dist/components/skeleton.js.map +1 -1
  357. package/dist/components/spinner.js +2 -2
  358. package/dist/components/spinner.js.map +1 -1
  359. package/dist/components/sticker.js +4 -2
  360. package/dist/components/sticker.js.map +1 -1
  361. package/dist/components/table.js +117 -152
  362. package/dist/components/table.js.map +1 -1
  363. package/dist/components/theme.js +1 -6
  364. package/dist/components/theme.js.map +1 -1
  365. package/dist/components/tooltip.js +1 -1
  366. package/dist/components/tooltip.js.map +1 -1
  367. package/dist/esm/{algolia-data-b5cd0c58.js → algolia-data-c4ed188c.js} +2 -2
  368. package/dist/esm/{algolia-data-b5cd0c58.js.map → algolia-data-c4ed188c.js.map} +1 -1
  369. package/dist/esm/{algoliasearch.umd-86359963.js → algoliasearch.umd-4f7efa84.js} +3 -3
  370. package/dist/esm/{algoliasearch.umd-86359963.js.map → algoliasearch.umd-4f7efa84.js.map} +1 -1
  371. package/dist/esm/{component-store-ec512820.js → component-store-6eccd724.js} +25 -12
  372. package/dist/esm/component-store-6eccd724.js.map +1 -0
  373. package/dist/esm/{dom-d3ad49e2.js → dom-311c9e1e.js} +15 -15
  374. package/dist/esm/dom-311c9e1e.js.map +1 -0
  375. package/dist/esm/{form-control-84bac7a2.js → form-control-3284c2c9.js} +4 -4
  376. package/dist/esm/form-control-3284c2c9.js.map +1 -0
  377. package/dist/{cjs/global-989678ec.js → esm/global-f6e05656.js} +3 -16
  378. package/dist/esm/global-f6e05656.js.map +1 -0
  379. package/dist/esm/{index-c752dae1.js → index-38484737.js} +2 -2
  380. package/dist/esm/{index-c752dae1.js.map → index-38484737.js.map} +1 -1
  381. package/dist/esm/{index-3c280603.js → index-b4e277ad.js} +1438 -517
  382. package/dist/esm/index-b4e277ad.js.map +1 -0
  383. package/dist/{components/index4.js → esm/index-f626f476.js} +2 -10
  384. package/dist/esm/index-f626f476.js.map +1 -0
  385. package/dist/esm/index.js +18 -36
  386. package/dist/esm/index.js.map +1 -1
  387. package/dist/esm/loader.js +5 -4
  388. package/dist/esm/loader.js.map +1 -1
  389. package/dist/esm/{modal-5c9ce466.js → modal-1f3223cd.js} +3 -2
  390. package/dist/esm/modal-1f3223cd.js.map +1 -0
  391. package/dist/esm/nano-accordion.entry.js +4 -7
  392. package/dist/esm/nano-accordion.entry.js.map +1 -1
  393. package/dist/esm/nano-alert.entry.js +25 -19
  394. package/dist/esm/nano-alert.entry.js.map +1 -1
  395. package/dist/esm/nano-algolia-filter.entry.js +5 -5
  396. package/dist/esm/nano-algolia-filter.entry.js.map +1 -1
  397. package/dist/esm/nano-algolia-input.entry.js +4 -4
  398. package/dist/esm/nano-algolia-input.entry.js.map +1 -1
  399. package/dist/esm/nano-algolia-pagination.entry.js +2 -2
  400. package/dist/esm/nano-algolia-results.entry.js +2 -2
  401. package/dist/esm/nano-algolia.entry.js +8 -8
  402. package/dist/esm/nano-algolia.entry.js.map +1 -1
  403. package/dist/esm/nano-aspect-ratio.entry.js +1 -1
  404. package/dist/esm/nano-checkbox-group.entry.js +52 -9
  405. package/dist/esm/nano-checkbox-group.entry.js.map +1 -1
  406. package/dist/esm/nano-checkbox.entry.js +8 -8
  407. package/dist/esm/nano-checkbox.entry.js.map +1 -1
  408. package/dist/esm/nano-components.js +5 -4
  409. package/dist/esm/nano-components.js.map +1 -1
  410. package/dist/esm/nano-datalist_3.entry.js +46 -36
  411. package/dist/esm/nano-datalist_3.entry.js.map +1 -1
  412. package/dist/esm/nano-date-input.entry.js +6 -6
  413. package/dist/esm/nano-date-input.entry.js.map +1 -1
  414. package/dist/esm/nano-date-picker.entry.js +4 -4
  415. package/dist/esm/nano-date-picker.entry.js.map +1 -1
  416. package/dist/esm/nano-demo.entry.js +13 -9
  417. package/dist/esm/nano-demo.entry.js.map +1 -1
  418. package/dist/esm/nano-details.entry.js +4 -4
  419. package/dist/esm/nano-details.entry.js.map +1 -1
  420. package/dist/esm/nano-dialog.entry.js +6 -6
  421. package/dist/esm/nano-dialog.entry.js.map +1 -1
  422. package/dist/esm/nano-drawer.entry.js +5 -5
  423. package/dist/esm/nano-drawer.entry.js.map +1 -1
  424. package/dist/esm/nano-dropdown.entry.js +9 -4
  425. package/dist/esm/nano-dropdown.entry.js.map +1 -1
  426. package/dist/esm/nano-field-validator.entry.js +4 -3
  427. package/dist/esm/nano-field-validator.entry.js.map +1 -1
  428. package/dist/esm/nano-file-upload.entry.js +5 -5
  429. package/dist/esm/nano-file-upload.entry.js.map +1 -1
  430. package/dist/esm/nano-global-nav-user-profile_3.entry.js +54 -67
  431. package/dist/esm/nano-global-nav-user-profile_3.entry.js.map +1 -1
  432. package/dist/esm/nano-global-nav.entry.js +54 -26
  433. package/dist/esm/nano-global-nav.entry.js.map +1 -1
  434. package/dist/esm/nano-global-search-results.entry.js +6 -4
  435. package/dist/esm/nano-global-search-results.entry.js.map +1 -1
  436. package/dist/esm/nano-grid_3.entry.js +8 -7
  437. package/dist/esm/nano-grid_3.entry.js.map +1 -1
  438. package/dist/esm/nano-hero.entry.js +4 -2
  439. package/dist/esm/nano-hero.entry.js.map +1 -1
  440. package/dist/esm/nano-icon-button.entry.js +2 -2
  441. package/dist/esm/nano-icon-button.entry.js.map +1 -1
  442. package/dist/esm/nano-icon.entry.js +7 -14
  443. package/dist/esm/nano-icon.entry.js.map +1 -1
  444. package/dist/esm/nano-input.entry.js +19 -33
  445. package/dist/esm/nano-input.entry.js.map +1 -1
  446. package/dist/esm/nano-menu-drawer.entry.js +3 -3
  447. package/dist/esm/nano-menu-drawer.entry.js.map +1 -1
  448. package/dist/esm/nano-progress-bar_2.entry.js +4 -4
  449. package/dist/esm/nano-progress-bar_2.entry.js.map +1 -1
  450. package/dist/esm/nano-range.entry.js +4 -4
  451. package/dist/esm/nano-range.entry.js.map +1 -1
  452. package/dist/esm/nano-rating.entry.js +2 -2
  453. package/dist/esm/nano-rating.entry.js.map +1 -1
  454. package/dist/esm/nano-resize-observe_2.entry.js +18 -10
  455. package/dist/esm/nano-resize-observe_2.entry.js.map +1 -1
  456. package/dist/esm/nano-slide.entry.js +1 -1
  457. package/dist/esm/nano-slides.entry.js +11 -21
  458. package/dist/esm/nano-slides.entry.js.map +1 -1
  459. package/dist/esm/nano-spinner.entry.js +3 -3
  460. package/dist/esm/nano-spinner.entry.js.map +1 -1
  461. package/dist/esm/nano-split-pane.entry.js +15 -13
  462. package/dist/esm/nano-split-pane.entry.js.map +1 -1
  463. package/dist/esm/nano-sticker.entry.js +6 -4
  464. package/dist/esm/nano-sticker.entry.js.map +1 -1
  465. package/dist/esm/nano-tab-content.entry.js +9 -3
  466. package/dist/esm/nano-tab-content.entry.js.map +1 -1
  467. package/dist/esm/nano-tab-group.entry.js +18 -12
  468. package/dist/esm/nano-tab-group.entry.js.map +1 -1
  469. package/dist/esm/nano-tab.entry.js +2 -2
  470. package/dist/esm/nano-tab.entry.js.map +1 -1
  471. package/dist/esm/{nano-table-1f4fe4ad.js → nano-table-5ff91f0f.js} +115 -150
  472. package/dist/esm/nano-table-5ff91f0f.js.map +1 -0
  473. package/dist/esm/nano-table.entry.js +3 -3
  474. package/dist/esm/polyfills/css-shim.js +1 -1
  475. package/dist/esm/{popover-e748bb61.js → popover-02e6714d.js} +61 -50
  476. package/dist/esm/popover-02e6714d.js.map +1 -0
  477. package/dist/esm/{scroll-a1e59d8c.js → scroll-e5825d8d.js} +2 -2
  478. package/dist/esm/{scroll-a1e59d8c.js.map → scroll-e5825d8d.js.map} +1 -1
  479. package/dist/esm/{table.worker-ddbd23c3.js → table.worker-5c1bb1ce.js} +4 -4
  480. package/dist/esm/table.worker-5c1bb1ce.js.map +1 -0
  481. package/dist/esm/{theme-931bd452.js → theme-82feb8cf.js} +2 -7
  482. package/dist/esm/theme-82feb8cf.js.map +1 -0
  483. package/dist/nano-components/index.esm.js +1 -1
  484. package/dist/nano-components/index.esm.js.map +1 -1
  485. package/dist/nano-components/nano-components.esm.js +1 -1
  486. package/dist/nano-components/nano-components.esm.js.map +1 -1
  487. package/dist/nano-components/{p-1a8e60c4.entry.js → p-0411f019.entry.js} +2 -2
  488. package/dist/nano-components/p-0411f019.entry.js.map +1 -0
  489. package/dist/nano-components/p-13b2d70c.entry.js +5 -0
  490. package/dist/nano-components/p-13b2d70c.entry.js.map +1 -0
  491. package/dist/nano-components/p-167b9165.js.map +1 -1
  492. package/dist/nano-components/p-1d21b2ce.entry.js +5 -0
  493. package/dist/nano-components/p-1d21b2ce.entry.js.map +1 -0
  494. package/dist/nano-components/p-2155fc2c.js.map +1 -1
  495. package/dist/nano-components/p-257432ff.js +5 -0
  496. package/dist/nano-components/p-257432ff.js.map +1 -0
  497. package/dist/nano-components/p-264903b5.entry.js +5 -0
  498. package/dist/nano-components/p-264903b5.entry.js.map +1 -0
  499. package/dist/nano-components/p-320366a2.entry.js +5 -0
  500. package/dist/nano-components/p-320366a2.entry.js.map +1 -0
  501. package/dist/nano-components/p-364434b4.entry.js +5 -0
  502. package/dist/nano-components/p-364434b4.entry.js.map +1 -0
  503. package/dist/nano-components/{p-3f25fc76.entry.js → p-36d5a41d.entry.js} +2 -2
  504. package/dist/nano-components/p-36d5a41d.entry.js.map +1 -0
  505. package/dist/nano-components/{p-1e709f87.entry.js → p-371fe61d.entry.js} +2 -2
  506. package/dist/nano-components/p-371fe61d.entry.js.map +1 -0
  507. package/dist/nano-components/p-3d658ce2.entry.js +5 -0
  508. package/dist/nano-components/p-3d658ce2.entry.js.map +1 -0
  509. package/dist/nano-components/p-3e95778d.entry.js +5 -0
  510. package/dist/nano-components/p-3e95778d.entry.js.map +1 -0
  511. package/dist/nano-components/p-400d698f.entry.js +5 -0
  512. package/dist/nano-components/p-400d698f.entry.js.map +1 -0
  513. package/dist/nano-components/p-411bb8f1.js +5 -0
  514. package/dist/nano-components/p-411bb8f1.js.map +1 -0
  515. package/dist/nano-components/p-41811365.js +5 -0
  516. package/dist/nano-components/p-41811365.js.map +1 -0
  517. package/dist/nano-components/p-45abbbdd.js.map +1 -1
  518. package/dist/nano-components/{p-885b6950.js → p-45b7682a.js} +2 -2
  519. package/dist/nano-components/p-45b7682a.js.map +1 -0
  520. package/dist/nano-components/p-4b1d73e9.entry.js +5 -0
  521. package/dist/nano-components/p-4b1d73e9.entry.js.map +1 -0
  522. package/dist/nano-components/{p-69e5a37d.entry.js → p-4e104cb1.entry.js} +2 -2
  523. package/dist/nano-components/p-4e104cb1.entry.js.map +1 -0
  524. package/dist/nano-components/p-51bc8b59.js +5 -0
  525. package/dist/nano-components/p-51bc8b59.js.map +1 -0
  526. package/dist/nano-components/p-5a466c9f.entry.js +5 -0
  527. package/dist/nano-components/p-5a466c9f.entry.js.map +1 -0
  528. package/dist/nano-components/{p-bd05b3aa.entry.js → p-5f1b94f0.entry.js} +2 -2
  529. package/dist/nano-components/{p-bd05b3aa.entry.js.map → p-5f1b94f0.entry.js.map} +1 -1
  530. package/dist/nano-components/p-60823325.entry.js +5 -0
  531. package/dist/nano-components/p-60823325.entry.js.map +1 -0
  532. package/dist/nano-components/p-6760e54a.entry.js +5 -0
  533. package/dist/nano-components/p-6760e54a.entry.js.map +1 -0
  534. package/dist/nano-components/p-69774e99.entry.js +5 -0
  535. package/dist/nano-components/p-69774e99.entry.js.map +1 -0
  536. package/dist/nano-components/p-69a3e911.js.map +1 -1
  537. package/dist/nano-components/p-6bca2d00.entry.js +5 -0
  538. package/dist/nano-components/p-6bca2d00.entry.js.map +1 -0
  539. package/dist/nano-components/p-74a7fc4f.js.map +1 -1
  540. package/dist/nano-components/{p-dba8a88d.entry.js → p-78169835.entry.js} +2 -2
  541. package/dist/nano-components/p-78169835.entry.js.map +1 -0
  542. package/dist/nano-components/p-817eda34.entry.js +5 -0
  543. package/dist/nano-components/p-817eda34.entry.js.map +1 -0
  544. package/dist/nano-components/p-866c73c0.entry.js +5 -0
  545. package/dist/nano-components/p-866c73c0.entry.js.map +1 -0
  546. package/dist/nano-components/p-87a76a81.entry.js +5 -0
  547. package/dist/nano-components/{p-41addb3a.entry.js.map → p-87a76a81.entry.js.map} +1 -1
  548. package/dist/nano-components/p-8907dd24.entry.js +5 -0
  549. package/dist/nano-components/p-8907dd24.entry.js.map +1 -0
  550. package/dist/nano-components/p-90365d7b.entry.js +5 -0
  551. package/dist/nano-components/p-90365d7b.entry.js.map +1 -0
  552. package/dist/nano-components/p-909a424c.js +5 -0
  553. package/dist/nano-components/p-909a424c.js.map +1 -0
  554. package/dist/nano-components/p-9746b0a5.js.map +1 -1
  555. package/dist/nano-components/p-9cf5fda3.entry.js +5 -0
  556. package/dist/nano-components/p-9cf5fda3.entry.js.map +1 -0
  557. package/dist/nano-components/p-9fcd383f.entry.js +5 -0
  558. package/dist/nano-components/p-9fcd383f.entry.js.map +1 -0
  559. package/dist/nano-components/p-9fda481b.entry.js +5 -0
  560. package/dist/nano-components/p-9fda481b.entry.js.map +1 -0
  561. package/dist/nano-components/p-abd6b774.entry.js +5 -0
  562. package/dist/nano-components/p-abd6b774.entry.js.map +1 -0
  563. package/dist/nano-components/p-b933f3c8.js.map +1 -1
  564. package/dist/nano-components/{p-2828788c.js → p-bb07c3d0.js} +2 -2
  565. package/dist/nano-components/p-bb07c3d0.js.map +1 -0
  566. package/dist/nano-components/p-bb6f7c39.js +5 -0
  567. package/dist/nano-components/p-bb6f7c39.js.map +1 -0
  568. package/dist/nano-components/p-bf91c50e.js +6 -0
  569. package/dist/nano-components/p-bf91c50e.js.map +1 -0
  570. package/dist/nano-components/{p-b40eedcb.entry.js → p-bfbfec85.entry.js} +2 -2
  571. package/dist/nano-components/p-bfbfec85.entry.js.map +1 -0
  572. package/dist/nano-components/{p-447a5910.entry.js → p-c0681b2b.entry.js} +2 -2
  573. package/dist/nano-components/p-c0681b2b.entry.js.map +1 -0
  574. package/dist/nano-components/p-c0ca353b.entry.js +5 -0
  575. package/dist/nano-components/p-c0ca353b.entry.js.map +1 -0
  576. package/dist/nano-components/p-c4e8d584.entry.js +5 -0
  577. package/dist/nano-components/p-c4e8d584.entry.js.map +1 -0
  578. package/dist/nano-components/p-cecb9af1.js.map +1 -1
  579. package/dist/nano-components/p-d4f6ec9f.js +5 -0
  580. package/dist/nano-components/p-d4f6ec9f.js.map +1 -0
  581. package/dist/nano-components/p-d753f35a.entry.js +5 -0
  582. package/dist/nano-components/p-d753f35a.entry.js.map +1 -0
  583. package/dist/nano-components/{p-651b3264.js → p-d7ff8f12.js} +2 -2
  584. package/dist/nano-components/p-d7ff8f12.js.map +1 -0
  585. package/dist/nano-components/{p-0582afcc.js → p-d92b762b.js} +2 -2
  586. package/dist/nano-components/p-d92b762b.js.map +1 -0
  587. package/dist/nano-components/p-de25ba80.entry.js +5 -0
  588. package/dist/nano-components/p-de25ba80.entry.js.map +1 -0
  589. package/dist/nano-components/{p-c9a7c7ea.js → p-e04f2333.js} +2 -2
  590. package/dist/nano-components/p-e04f2333.js.map +1 -0
  591. package/dist/nano-components/p-e19d6a92.entry.js +5 -0
  592. package/dist/nano-components/p-e19d6a92.entry.js.map +1 -0
  593. package/dist/nano-components/{p-63834d50.js → p-ed2e6f32.js} +2 -2
  594. package/dist/nano-components/p-ed2e6f32.js.map +1 -0
  595. package/dist/nano-components/p-ed69b27b.entry.js +5 -0
  596. package/dist/nano-components/p-ed69b27b.entry.js.map +1 -0
  597. package/dist/nano-components/{p-a0b93616.js → p-ed6adde2.js} +3 -3
  598. package/dist/nano-components/p-ed6adde2.js.map +1 -0
  599. package/dist/nano-components/p-ee045579.js.map +1 -1
  600. package/dist/nano-components/{p-151aad1e.entry.js → p-f2875bf0.entry.js} +4 -4
  601. package/dist/nano-components/p-f2875bf0.entry.js.map +1 -0
  602. package/dist/nano-components/p-f28c802d.entry.js +5 -0
  603. package/dist/nano-components/p-f28c802d.entry.js.map +1 -0
  604. package/dist/nano-components/{p-a2d0d7b9.entry.js → p-f47776fd.entry.js} +2 -2
  605. package/dist/nano-components/p-f47776fd.entry.js.map +1 -0
  606. package/dist/nano-components/p-f8f89998.js.map +1 -1
  607. package/dist/nano-components/p-fccd59e4.entry.js +5 -0
  608. package/dist/nano-components/p-fccd59e4.entry.js.map +1 -0
  609. package/dist/nano-components/p-fe1446cd.entry.js +5 -0
  610. package/dist/nano-components/p-fe1446cd.entry.js.map +1 -0
  611. package/dist/themes/london-calling.css +1 -1
  612. package/dist/themes/london-calling.css.map +1 -1
  613. package/dist/themes/nanopore.css +1 -1
  614. package/dist/themes/nanopore.css.map +1 -1
  615. package/dist/types/components/alert/alert-interface.d.ts +1 -1
  616. package/dist/types/components/algolia/algolia-input.d.ts +1 -1
  617. package/dist/types/components/algolia/algolia.d.ts +2 -2
  618. package/dist/types/components/checkbox/checkbox-group.d.ts +11 -0
  619. package/dist/types/components/date-picker/date-picker-interface.d.ts +2 -2
  620. package/dist/types/components/date-picker/duet-date-picker/date-adapter.d.ts +3 -3
  621. package/dist/types/components/date-picker/duet-date-picker/date-localization.d.ts +3 -3
  622. package/dist/types/components/date-picker/duet-date-picker/date-picker-day.d.ts +1 -1
  623. package/dist/types/components/date-picker/duet-date-picker/date-picker-month.d.ts +1 -1
  624. package/dist/types/components/field-validator/field-validator-interface.d.ts +4 -4
  625. package/dist/types/components/file-upload/file-upload.d.ts +1 -1
  626. package/dist/types/components/global-nav/global-nav.d.ts +12 -6
  627. package/dist/types/components/icon/icon.d.ts +3 -3
  628. package/dist/types/components/menu/menu.d.ts +1 -1
  629. package/dist/types/components/nav-item/nav-item.d.ts +1 -1
  630. package/dist/types/components/range/range-interface.d.ts +2 -2
  631. package/dist/types/components/resize-observe/resize-observe.d.ts +1 -0
  632. package/dist/types/components/slides/slides-interface.d.ts +2 -2
  633. package/dist/types/components/slides/slides.d.ts +0 -2
  634. package/dist/types/components/table/table.cell.d.ts +1 -1
  635. package/dist/types/components/table/table.d.ts +9 -14
  636. package/dist/types/components/table/table.header.d.ts +1 -1
  637. package/dist/types/components/table/table.row.d.ts +2 -2
  638. package/dist/types/components/table/table.utils.d.ts +2 -1
  639. package/dist/types/components/tabs/tab-content.d.ts +2 -0
  640. package/dist/types/components.d.ts +829 -9
  641. package/dist/types/index.d.ts +5 -0
  642. package/dist/types/stencil-public-runtime.d.ts +48 -3
  643. package/dist/types/utils/dom.d.ts +9 -0
  644. package/dist/types/utils/gesture/index.d.ts +1 -1
  645. package/dist/types/utils/popover.d.ts +1 -1
  646. package/dist/types/utils/store/component-store.d.ts +2 -2
  647. package/dist/types/utils/testing/index.d.ts +1 -1
  648. package/docs-json.json +89 -50
  649. package/docs-vscode.json +8 -4
  650. package/hydrate/index.d.ts +853 -0
  651. package/{dist/custom-elements → hydrate}/index.js +11476 -7950
  652. package/hydrate/package.json +6 -0
  653. package/loader/index.d.ts +9 -0
  654. package/package.json +24 -16
  655. package/dist/cjs/component-store-d7c8c326.js.map +0 -1
  656. package/dist/cjs/dom-d7c33f11.js.map +0 -1
  657. package/dist/cjs/form-control-57c71246.js.map +0 -1
  658. package/dist/cjs/global-989678ec.js.map +0 -1
  659. package/dist/cjs/index-41582c2a.js.map +0 -1
  660. package/dist/cjs/index-75b61776.js +0 -1077
  661. package/dist/cjs/index-75b61776.js.map +0 -1
  662. package/dist/cjs/index-ece1cb9e.js.map +0 -1
  663. package/dist/cjs/modal-e4defcc3.js.map +0 -1
  664. package/dist/cjs/nano-table-820b04d5.js.map +0 -1
  665. package/dist/cjs/popover-508bcedb.js.map +0 -1
  666. package/dist/cjs/table.worker-9e238d16.js.map +0 -1
  667. package/dist/cjs/theme-50275e1a.js.map +0 -1
  668. package/dist/components/index4.js.map +0 -1
  669. package/dist/custom-elements/index.d.ts +0 -339
  670. package/dist/custom-elements/index.js.map +0 -1
  671. package/dist/esm/component-store-ec512820.js.map +0 -1
  672. package/dist/esm/dom-d3ad49e2.js.map +0 -1
  673. package/dist/esm/form-control-84bac7a2.js.map +0 -1
  674. package/dist/esm/global-8047b4ff.js.map +0 -1
  675. package/dist/esm/index-3bbaffe4.js +0 -1075
  676. package/dist/esm/index-3bbaffe4.js.map +0 -1
  677. package/dist/esm/index-3c280603.js.map +0 -1
  678. package/dist/esm/index-dc076ea6.js +0 -649
  679. package/dist/esm/index-dc076ea6.js.map +0 -1
  680. package/dist/esm/modal-5c9ce466.js.map +0 -1
  681. package/dist/esm/nano-table-1f4fe4ad.js.map +0 -1
  682. package/dist/esm/popover-e748bb61.js.map +0 -1
  683. package/dist/esm/table.worker-ddbd23c3.js.map +0 -1
  684. package/dist/esm/theme-931bd452.js.map +0 -1
  685. package/dist/nano-components/p-0582afcc.js.map +0 -1
  686. package/dist/nano-components/p-135fed16.entry.js +0 -5
  687. package/dist/nano-components/p-135fed16.entry.js.map +0 -1
  688. package/dist/nano-components/p-151aad1e.entry.js.map +0 -1
  689. package/dist/nano-components/p-15543295.entry.js +0 -5
  690. package/dist/nano-components/p-15543295.entry.js.map +0 -1
  691. package/dist/nano-components/p-1a8e60c4.entry.js.map +0 -1
  692. package/dist/nano-components/p-1e709f87.entry.js.map +0 -1
  693. package/dist/nano-components/p-1f347342.entry.js +0 -5
  694. package/dist/nano-components/p-1f347342.entry.js.map +0 -1
  695. package/dist/nano-components/p-1fe12320.js +0 -6
  696. package/dist/nano-components/p-1fe12320.js.map +0 -1
  697. package/dist/nano-components/p-23575705.entry.js +0 -5
  698. package/dist/nano-components/p-23575705.entry.js.map +0 -1
  699. package/dist/nano-components/p-2828788c.js.map +0 -1
  700. package/dist/nano-components/p-284dd9a2.entry.js +0 -5
  701. package/dist/nano-components/p-284dd9a2.entry.js.map +0 -1
  702. package/dist/nano-components/p-2a97ef51.entry.js +0 -5
  703. package/dist/nano-components/p-2a97ef51.entry.js.map +0 -1
  704. package/dist/nano-components/p-36842a50.entry.js +0 -5
  705. package/dist/nano-components/p-36842a50.entry.js.map +0 -1
  706. package/dist/nano-components/p-3a1026d1.entry.js +0 -5
  707. package/dist/nano-components/p-3a1026d1.entry.js.map +0 -1
  708. package/dist/nano-components/p-3f25fc76.entry.js.map +0 -1
  709. package/dist/nano-components/p-41addb3a.entry.js +0 -5
  710. package/dist/nano-components/p-447a5910.entry.js.map +0 -1
  711. package/dist/nano-components/p-4b69178e.entry.js +0 -5
  712. package/dist/nano-components/p-4b69178e.entry.js.map +0 -1
  713. package/dist/nano-components/p-559a6492.entry.js +0 -5
  714. package/dist/nano-components/p-559a6492.entry.js.map +0 -1
  715. package/dist/nano-components/p-5d149792.entry.js +0 -5
  716. package/dist/nano-components/p-5d149792.entry.js.map +0 -1
  717. package/dist/nano-components/p-63834d50.js.map +0 -1
  718. package/dist/nano-components/p-651b3264.js.map +0 -1
  719. package/dist/nano-components/p-69e5a37d.entry.js.map +0 -1
  720. package/dist/nano-components/p-6ad194e4.entry.js +0 -5
  721. package/dist/nano-components/p-6ad194e4.entry.js.map +0 -1
  722. package/dist/nano-components/p-6cb77d5c.entry.js +0 -5
  723. package/dist/nano-components/p-6cb77d5c.entry.js.map +0 -1
  724. package/dist/nano-components/p-73860775.js +0 -5
  725. package/dist/nano-components/p-73860775.js.map +0 -1
  726. package/dist/nano-components/p-77cad8d1.js +0 -5
  727. package/dist/nano-components/p-77cad8d1.js.map +0 -1
  728. package/dist/nano-components/p-793588d1.js +0 -5
  729. package/dist/nano-components/p-793588d1.js.map +0 -1
  730. package/dist/nano-components/p-7b3638b7.js +0 -5
  731. package/dist/nano-components/p-7b3638b7.js.map +0 -1
  732. package/dist/nano-components/p-845ae77e.js +0 -5
  733. package/dist/nano-components/p-845ae77e.js.map +0 -1
  734. package/dist/nano-components/p-885b6950.js.map +0 -1
  735. package/dist/nano-components/p-8d747891.js +0 -5
  736. package/dist/nano-components/p-8d747891.js.map +0 -1
  737. package/dist/nano-components/p-9059c8c1.entry.js +0 -5
  738. package/dist/nano-components/p-9059c8c1.entry.js.map +0 -1
  739. package/dist/nano-components/p-92504f7f.entry.js +0 -5
  740. package/dist/nano-components/p-92504f7f.entry.js.map +0 -1
  741. package/dist/nano-components/p-99fbae74.entry.js +0 -5
  742. package/dist/nano-components/p-99fbae74.entry.js.map +0 -1
  743. package/dist/nano-components/p-9a4297e1.entry.js +0 -5
  744. package/dist/nano-components/p-9a4297e1.entry.js.map +0 -1
  745. package/dist/nano-components/p-9eeed8f5.entry.js +0 -5
  746. package/dist/nano-components/p-9eeed8f5.entry.js.map +0 -1
  747. package/dist/nano-components/p-a0b93616.js.map +0 -1
  748. package/dist/nano-components/p-a183e3c7.entry.js +0 -5
  749. package/dist/nano-components/p-a183e3c7.entry.js.map +0 -1
  750. package/dist/nano-components/p-a2d0d7b9.entry.js.map +0 -1
  751. package/dist/nano-components/p-a5abfed9.entry.js +0 -5
  752. package/dist/nano-components/p-a5abfed9.entry.js.map +0 -1
  753. package/dist/nano-components/p-b25e79b8.entry.js +0 -5
  754. package/dist/nano-components/p-b25e79b8.entry.js.map +0 -1
  755. package/dist/nano-components/p-b40eedcb.entry.js.map +0 -1
  756. package/dist/nano-components/p-b55ffa92.entry.js +0 -5
  757. package/dist/nano-components/p-b55ffa92.entry.js.map +0 -1
  758. package/dist/nano-components/p-b87539f0.entry.js +0 -5
  759. package/dist/nano-components/p-b87539f0.entry.js.map +0 -1
  760. package/dist/nano-components/p-c9a7c7ea.js.map +0 -1
  761. package/dist/nano-components/p-ca567f01.entry.js +0 -5
  762. package/dist/nano-components/p-ca567f01.entry.js.map +0 -1
  763. package/dist/nano-components/p-cc5e7acb.entry.js +0 -5
  764. package/dist/nano-components/p-cc5e7acb.entry.js.map +0 -1
  765. package/dist/nano-components/p-d5303933.entry.js +0 -5
  766. package/dist/nano-components/p-d5303933.entry.js.map +0 -1
  767. package/dist/nano-components/p-d565991d.entry.js +0 -5
  768. package/dist/nano-components/p-d565991d.entry.js.map +0 -1
  769. package/dist/nano-components/p-dba8a88d.entry.js.map +0 -1
  770. package/dist/nano-components/p-dc50b93c.entry.js +0 -5
  771. package/dist/nano-components/p-dc50b93c.entry.js.map +0 -1
  772. package/dist/nano-components/p-e3860f00.js +0 -5
  773. package/dist/nano-components/p-e3860f00.js.map +0 -1
  774. package/dist/nano-components/p-e5408bc8.entry.js +0 -5
  775. package/dist/nano-components/p-e5408bc8.entry.js.map +0 -1
  776. package/dist/nano-components/p-ea2de992.js +0 -19
  777. package/dist/nano-components/p-ea2de992.js.map +0 -1
  778. package/dist/nano-components/p-f7471cca.entry.js +0 -5
  779. package/dist/nano-components/p-f7471cca.entry.js.map +0 -1
  780. package/dist/nano-components/p-fe94eeff.entry.js +0 -5
  781. package/dist/nano-components/p-fe94eeff.entry.js.map +0 -1
@@ -207,9 +207,10 @@ function storeSetData(host, rows) {
207
207
  }
208
208
  // convert date columns into numbers to send to our worker
209
209
  dateCols.forEach((colName) => {
210
+ var _a;
210
211
  // coerce any date type;
211
212
  // Date(), timestamp, valid date string
212
- const coerceDate = new Date(row[colName]) ?? null;
213
+ const coerceDate = (_a = new Date(row[colName])) !== null && _a !== void 0 ? _a : null;
213
214
  if (!!coerceDate && Number(coerceDate))
214
215
  row[colName] = Number(coerceDate);
215
216
  });
@@ -274,7 +275,7 @@ function colDataModel(rowIndex, colIndex) {
274
275
  const columns = store.config.state.columns;
275
276
  const rows = store.data.state.rows;
276
277
  const column = columns[colIndex];
277
- const prop = column?.prop;
278
+ const prop = column === null || column === void 0 ? void 0 : column.prop;
278
279
  const rowModel = rows[rowIndex];
279
280
  const cellModel = rowModel ? rowModel[columns[colIndex].prop] : '';
280
281
  return {
@@ -309,12 +310,12 @@ function mergeProperties(current, extra) {
309
310
  if (!extra)
310
311
  return current;
311
312
  // top level merge
312
- const props = { ...extra, ...current };
313
+ const props = Object.assign(Object.assign({}, extra), current);
313
314
  // deeper merge
314
315
  // merge classes maps or strings
315
316
  if (extra.class) {
316
317
  if (typeof extra.class === 'object' && typeof props.class === 'object') {
317
- props.class = { ...extra.class, ...props.class };
318
+ props.class = Object.assign(Object.assign({}, extra.class), props.class);
318
319
  }
319
320
  else if (typeof extra.class === 'string' &&
320
321
  typeof props.class === 'object') {
@@ -326,7 +327,7 @@ function mergeProperties(current, extra) {
326
327
  }
327
328
  // merge style
328
329
  if (extra.style) {
329
- props.style = { ...extra.style, ...props.style };
330
+ props.style = Object.assign(Object.assign({}, extra.style), props.style);
330
331
  }
331
332
  return props;
332
333
  }
@@ -346,8 +347,9 @@ function fetchStores() {
346
347
  * @returns - the merged properties that will be applied to a node
347
348
  */
348
349
  function mergeCellProperties(rowIndex, colIndex, defaultProps) {
349
- const props = { ...defaultProps };
350
- const extraPropsFunc = fetchStores().config.state.columns[colIndex]?.cellProperties;
350
+ var _a;
351
+ const props = Object.assign({}, defaultProps);
352
+ const extraPropsFunc = (_a = fetchStores().config.state.columns[colIndex]) === null || _a === void 0 ? void 0 : _a.cellProperties;
351
353
  if (!extraPropsFunc)
352
354
  return props;
353
355
  const data = colDataModel(rowIndex, colIndex);
@@ -362,7 +364,7 @@ function mergeCellProperties(rowIndex, colIndex, defaultProps) {
362
364
  * @returns - a JSX node
363
365
  */
364
366
  function colheadFootRender(col) {
365
- const tpl = col?.columnTemplate;
367
+ const tpl = col === null || col === void 0 ? void 0 : col.columnTemplate;
366
368
  return tpl ? (tpl(h, col)) : (h(Fragment, null, col.title));
367
369
  }
368
370
  const stickyHIOs = new WeakMap();
@@ -462,31 +464,6 @@ function classListToStr(classes) {
462
464
  });
463
465
  return classString;
464
466
  }
465
- /**
466
- * Detects the current scroll speed as a number.
467
- * Use within a scroll listener
468
- */
469
- const detectScrollSpeed = (() => {
470
- let lastPos;
471
- let newPos;
472
- let timer;
473
- let delta;
474
- const delay = 60; // in "ms" (higher means lower fidelity )
475
- const clear = () => {
476
- lastPos = null;
477
- delta = 0;
478
- };
479
- clear();
480
- return () => {
481
- newPos = window.scrollY;
482
- if (lastPos != null)
483
- delta = newPos - lastPos;
484
- lastPos = newPos;
485
- window.clearTimeout(timer);
486
- timer = window.setTimeout(clear, delay);
487
- return delta;
488
- };
489
- })();
490
467
  /**
491
468
  * Attempts to find the closes scrolling parental element
492
469
  * @param element - the element from which to traverse up the DOM
@@ -641,13 +618,7 @@ const TableColHead = ({ column, headRenderer, onColumnSortClick, onColumnPinned,
641
618
  extraProps = column.columnProperties(column) || extraProps;
642
619
  }
643
620
  const baseProps = {
644
- class: {
645
- ...headerPinClasses('th', headRenderer?.pinned),
646
- [`${CSSNAMESPACE}__pin--start`]: column.pinned === 'start',
647
- [`${CSSNAMESPACE}__pin--end`]: column.pinned === 'end',
648
- [`${CSSNAMESPACE}__ordered`]: !!column.order,
649
- [`${CSSNAMESPACE}__filtered`]: !!column.filter,
650
- },
621
+ class: Object.assign(Object.assign({}, headerPinClasses('th', headRenderer === null || headRenderer === void 0 ? void 0 : headRenderer.pinned)), { [`${CSSNAMESPACE}__pin--start`]: column.pinned === 'start', [`${CSSNAMESPACE}__pin--end`]: column.pinned === 'end', [`${CSSNAMESPACE}__ordered`]: !!column.order, [`${CSSNAMESPACE}__filtered`]: !!column.filter }),
651
622
  };
652
623
  let props = extraProps ? mergeProperties(baseProps, extraProps) : baseProps;
653
624
  const content = colheadFootRender(column);
@@ -655,31 +626,24 @@ const TableColHead = ({ column, headRenderer, onColumnSortClick, onColumnPinned,
655
626
  return h(Fragment, null);
656
627
  props =
657
628
  Number(props.colSpan) > 1
658
- ? { ...props, scope: 'colgroup' }
659
- : { ...props, scope: 'col' };
629
+ ? Object.assign(Object.assign({}, props), { scope: 'colgroup' }) : Object.assign(Object.assign({}, props), { scope: 'col' });
660
630
  if (isSortable()) {
661
631
  const sort = column.order
662
632
  ? column.order === 'asc'
663
633
  ? 'ascending'
664
634
  : 'descending'
665
635
  : 'none';
666
- props = { ...props, 'aria-sort': sort };
636
+ props = Object.assign(Object.assign({}, props), { 'aria-sort': sort });
667
637
  }
668
638
  if (isDraggable()) {
669
- props = {
670
- ...props,
671
- draggable: true,
672
- onDragStart: (e) => handleDragStart(e, column),
673
- onDragOver: (e) => e.preventDefault(),
674
- onDragEnd: () => handleDragEnd(),
675
- };
639
+ props = Object.assign(Object.assign({}, props), { draggable: true, onDragStart: (e) => handleDragStart(e, column), onDragOver: (e) => e.preventDefault(), onDragEnd: () => handleDragEnd() });
676
640
  }
677
- return (h("th", { ...props, ref: (th) => {
641
+ return (h("th", Object.assign({}, props, { ref: (th) => {
678
642
  if (['end', 'start'].includes(column.pinned))
679
643
  addHObserver(th, column.pinned, onColumnPinned);
680
644
  if (['top', 'bottom'].includes(headRenderer.pinned))
681
645
  addVObserver(th, headRenderer.pinned, onColumnPinned);
682
- }, key: column.prop },
646
+ }, key: column.prop }),
683
647
  isDraggable() && [
684
648
  h("div", { class: {
685
649
  [`${CSSNAMESPACE}__drag-mask`]: true,
@@ -713,9 +677,10 @@ const TableColHead = ({ column, headRenderer, onColumnSortClick, onColumnPinned,
713
677
  * @returns - a JSX node
714
678
  */
715
679
  function cellRender(rowIndex, colIndex) {
680
+ var _a, _b;
716
681
  const store = fetchStores();
717
682
  const columns = store.config.state.columns;
718
- const tpl = columns[colIndex]?.cellTemplate;
683
+ const tpl = (_a = columns[colIndex]) === null || _a === void 0 ? void 0 : _a.cellTemplate;
719
684
  const model = colDataModel(rowIndex, colIndex);
720
685
  if (!!model.cellModel && columns[colIndex].type === 'date') {
721
686
  const d = new Date(model.cellModel);
@@ -725,7 +690,7 @@ function cellRender(rowIndex, colIndex) {
725
690
  : d;
726
691
  }
727
692
  }
728
- return tpl ? (tpl(h, model)) : model.cellModel ? (h(Fragment, null, model.cellModel?.toString())) : ('');
693
+ return tpl ? (tpl(h, model)) : model.cellModel ? (h(Fragment, null, (_b = model.cellModel) === null || _b === void 0 ? void 0 : _b.toString())) : ('');
729
694
  }
730
695
  const baseCellClasses = (colIndex, toString = false) => {
731
696
  const store = fetchStores();
@@ -754,20 +719,19 @@ const TableCell = ({ rowIndex, colIndex, nestedContent, }) => {
754
719
  if (column.rowHeader) {
755
720
  props =
756
721
  Number(props.rowSpan) > 1
757
- ? { ...props, scope: 'rowgroup' }
758
- : { ...props, scope: 'row' };
722
+ ? Object.assign(Object.assign({}, props), { scope: 'rowgroup' }) : Object.assign(Object.assign({}, props), { scope: 'row' });
759
723
  CellType = 'th';
760
724
  }
761
- const ContentWrap = (props) => (h("div", { ...props, class: {
725
+ const ContentWrap = (props) => (h("div", Object.assign({}, props, { class: {
762
726
  [`${CSSNAMESPACE}__cell-content`]: true,
763
727
  [`${CSSNAMESPACE}__cell-content--wrap`]: !!column.wrap,
764
- } },
728
+ } }),
765
729
  h(Content, null)));
766
730
  return (h(CellType
767
731
  // role="gridcell"
768
- , { ...props }, column.autoTooltip && !column.wrap ? (h("nano-resize-observe", { notifyContentFit: "x", onNanoResizeContentFitChange: (e) => (e.target.firstElementChild.disabled =
732
+ , Object.assign({}, props), column.autoTooltip && !column.wrap ? (h("nano-resize-observe", { notifyContentFit: "x", onNanoResizeContentFitChange: (e) => (e.target.firstElementChild.disabled =
769
733
  e.detail.x) },
770
- h("nano-tooltip", { disabled: true, hoist: true },
734
+ h("nano-tooltip", { disabled: true, placement: "top", onNanoShow: (e) => (e.target.closest(CellType).style.zIndex = '100'), onNanoHide: (e) => (e.target.closest(CellType).style.zIndex = '') },
771
735
  h(ContentWrap, null),
772
736
  h("span", { slot: "content" },
773
737
  h(Content, null))))) : (h(ContentWrap, null))));
@@ -786,20 +750,20 @@ const TableRow = ({ rowRenderer, rowIndex, rowModel, onColumnPinned }, children,
786
750
  const model = rowDataModel(rowIndex);
787
751
  rowModel = model.rowModel;
788
752
  }
789
- if (rowRenderer?.rowProperties) {
753
+ if (rowRenderer === null || rowRenderer === void 0 ? void 0 : rowRenderer.rowProperties) {
790
754
  extraProps =
791
755
  rowRenderer.rowProperties({ rowModel, rowIndex }) || extraProps;
792
756
  }
793
757
  let pinned;
794
- if (rowRenderer?.pinned && typeof rowRenderer.pinned === 'function') {
758
+ if ((rowRenderer === null || rowRenderer === void 0 ? void 0 : rowRenderer.pinned) && typeof rowRenderer.pinned === 'function') {
795
759
  pinned = rowRenderer.pinned();
796
760
  }
797
761
  const baseProps = { class: headerPinClasses('tr', pinned) };
798
762
  const props = extraProps ? mergeProperties(baseProps, extraProps) : baseProps;
799
- const tpl = rowRenderer?.template;
763
+ const tpl = rowRenderer === null || rowRenderer === void 0 ? void 0 : rowRenderer.template;
800
764
  if (tpl) {
801
765
  let toRender = tpl(h, {
802
- renderedRow: (h("tr", { ...props, key: rowModel.__uuid }, children)),
766
+ renderedRow: (h("tr", Object.assign({}, props, { key: rowModel.__uuid }), children)),
803
767
  rowModel,
804
768
  rowIndex,
805
769
  }, TableCell);
@@ -833,7 +797,7 @@ const TableRow = ({ rowRenderer, rowIndex, rowModel, onColumnPinned }, children,
833
797
  }
834
798
  return toRender;
835
799
  }
836
- return (h("tr", { ...props, key: rowModel.__uuid }, children));
800
+ return (h("tr", Object.assign({}, props, { key: rowModel.__uuid }), children));
837
801
  };
838
802
  const TableHeadFootRow = ({ rowRenderer, onColumnPinned }, children, utils) => {
839
803
  let extraProps = {};
@@ -850,10 +814,10 @@ const TableHeadFootRow = ({ rowRenderer, onColumnPinned }, children, utils) => {
850
814
  const pinned = rowRenderer.pinned || null;
851
815
  const baseProps = { class: headerPinClasses('tr', null) };
852
816
  const props = extraProps ? mergeProperties(baseProps, extraProps) : baseProps;
853
- const tpl = rowRenderer?.template;
817
+ const tpl = rowRenderer === null || rowRenderer === void 0 ? void 0 : rowRenderer.template;
854
818
  if (tpl) {
855
819
  let toRender = tpl(h, {
856
- renderedRow: h("tr", { ...props }, children),
820
+ renderedRow: h("tr", Object.assign({}, props), children),
857
821
  }, TableCell);
858
822
  if (Array.isArray(toRender)) {
859
823
  toRender = utils.map(toRender, (node) => {
@@ -883,22 +847,22 @@ const TableHeadFootRow = ({ rowRenderer, onColumnPinned }, children, utils) => {
883
847
  }
884
848
  return toRender;
885
849
  }
886
- return h("tr", { ...props }, children);
850
+ return h("tr", Object.assign({}, props), children);
887
851
  };
888
852
 
889
- const tableCss = ":host{box-sizing:border-box}*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}nano-table{display:block;width: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.5rem;--td-padding-bottom:0.4125rem;--th-padding-start:0.625rem;--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;width: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-width:100%}.nano-tbl__top-anchor{clip:rect(1px, 1px, 1px, 1px);-webkit-clip-path:inset(50%);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__drag-mask{display:none;position:absolute;inset-block:-2px -2px;z-index:10;opacity:0;transition:0.2s ease opacity}.nano-tbl__drag-mask--start{width:calc(50% + 2px);inset-inline-start:-2px;border-inline-start:2px dashed var(--border-tint-color)}.nano-tbl__drag-mask--end{width:50%;inset-inline-end:0;border-inline-end:2px dashed var(--border-tint-color)}.nano-tbl__drag-mask--active{opacity:1}.nano-tbl__dragging .nano-tbl__drag-mask{display:block}.nano-tbl__drag--start{opacity:0.4}.nano-tbl__dragging .nano-tbl__td,.nano-tbl__dragging .nano-tbl__th{cursor:no-drop}.nano-tbl__dragging .nano-tbl__td .nano-tbl__cell-content,.nano-tbl__dragging .nano-tbl__th .nano-tbl__cell-content{pointer-events:none}.nano-tbl__order-btn{padding:0;border:none;outline:none;font:inherit;background:none;-webkit-appearance:none;appearance:none;color:inherit;display:flex;gap:10px;align-items:center;width:100%}.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;scale:0;width:100%;height:0}.nano-tbl__progress-bar--show{scale:1;height:auto}.nano-tbl__caption--hide{clip:rect(1px, 1px, 1px, 1px);-webkit-clip-path:inset(50%);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-width: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:rgba(var(--head-bg-rgb), 90%);font-size:var(--thead-font-size);border-block-start:none !important;transition:all 0.2s ease}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)}tfoot .nano-tbl__td,tfoot .nano-tbl__th{color:var(--tfoot-color);font-weight:800;border-block-start:none;background:rgba(var(--foot-bg-rgb), 90%);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:rgba(var(--ordered-bg-rgb), 0.8) !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;transform:translateZ(0)}.nano-tbl tbody.nano-tbl__inactive{opacity:0}.nano-tbl th[scope=row]{font-weight:800;margin:0}.nano-tbl__pin{position:sticky}.nano-tbl__pin--start{inset-inline:-1px auto;transition:max-width 0.25s ease}.nano-tbl__pin--start::after{content:\"\";position:absolute;inset:0;box-shadow:5px 1px 4px 0 rgba(0, 0, 0, 0.2);opacity:0;z-index:-1}.nano-tbl__pinned--start .nano-tbl__pin--start{z-index:2;max-width:125px !important}.sm .nano-tbl__pinned--start .nano-tbl__pin--start{max-width:var(--max-col-width) !important}.nano-tbl__pinned--start .nano-tbl__pin--start::after{opacity:1}.nano-tbl__pin--end{}.nano-tbl__pin--start+.nano-tbl__pin--end{inset-inline:auto auto}.nano-tbl__pin--start+.nano-tbl__pin--end::after{display:none}.sm .nano-tbl__pin--end{inset-inline:auto -1px !important;max-width:min(50vw, 200px)}.sm .nano-tbl__pin--end::after{display:block !important;content:\"\";position:absolute;inset:0;box-shadow:-5px 1px 4px 0 rgba(0, 0, 0, 0.2);opacity:0;z-index:-1}.sm .nano-tbl__pinned--end .nano-tbl__pin--end::after{opacity:1}.nano-tbl__pin--top{inset-block:-1px auto}.nano-tbl__pinned--top .nano-tbl__pin--top{z-index:4 !important}.nano-tbl__pin--bottom{inset-block:auto -1px}.nano-tbl__pinned--bottom .nano-tbl__pin--bottom{z-index:5 !important}.nano-tbl__pinned--start .nano-tbl__pin--top.nano-tbl__pin--start{z-index:5 !important}.nano-tbl__pinned--top.nano-tbl__pinned--start .nano-tbl__pin--top.nano-tbl__pin--start{z-index:6 !important}.nano-tbl__pinned--end .nano-tbl__pin--top.nano-tbl__pin--end{z-index:5 !important}.nano-tbl__pinned--top.nano-tbl__pinned--end .nano-tbl__pin--top.nano-tbl__pin--end{z-index:6 !important}.nano-tbl__pinned--start .nano-tbl__pin--bottom.nano-tbl__pin--start{z-index:5 !important}.nano-tbl__pinned--bottom.nano-tbl__pinned--start .nano-tbl__pin--bottom.nano-tbl__pin--start{z-index:6 !important}.nano-tbl__pinned--end .nano-tbl__pin--bottom.nano-tbl__pin--end{z-index:5 !important}.nano-tbl__pinned--bottom.nano-tbl__pinned--end .nano-tbl__pin--bottom.nano-tbl__pin--end{z-index:6 !important}.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-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-width: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)}";
853
+ const tableCss = ":host{box-sizing:border-box}*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}nano-table{display:block;width: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.5rem;--td-padding-bottom:0.4125rem;--th-padding-start:0.625rem;--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;width:100%;font-size:var(--font-size);border-spacing:0 0;border-collapse:separate;background:rgb(var(--cell-bg-rgb));-webkit-border-end:1px solid transparent;border-inline-end:1px solid transparent;-webkit-border-before:1px solid transparent;border-block-start:1px solid transparent;position:relative;z-index:1}.nano-tbl__wrap{display:table;min-width:100%}.nano-tbl__top-anchor{clip:rect(1px, 1px, 1px, 1px);-webkit-clip-path:inset(50%);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);-webkit-border-start:var(--border-style);border-inline-start:var(--border-style);-webkit-border-end:var(--border-style);border-inline-end:var(--border-style)}.nano-tbl__drag-mask{display:none;position:absolute;inset-block:-2px -2px;z-index:10;opacity:0;transition:0.2s ease opacity}.nano-tbl__drag-mask--start{width:calc(50% + 2px);inset-inline-start:-2px;-webkit-border-start:2px dashed var(--border-tint-color);border-inline-start:2px dashed var(--border-tint-color)}.nano-tbl__drag-mask--end{width:50%;inset-inline-end:0;-webkit-border-end:2px dashed var(--border-tint-color);border-inline-end:2px dashed var(--border-tint-color)}.nano-tbl__drag-mask--active{opacity:1}.nano-tbl__dragging .nano-tbl__drag-mask{display:block}.nano-tbl__drag--start{opacity:0.4}.nano-tbl__dragging .nano-tbl__td,.nano-tbl__dragging .nano-tbl__th{cursor:no-drop}.nano-tbl__dragging .nano-tbl__td .nano-tbl__cell-content,.nano-tbl__dragging .nano-tbl__th .nano-tbl__cell-content{pointer-events:none}.nano-tbl__order-btn{padding:0;border:none;outline:none;font:inherit;background:none;-webkit-appearance:none;appearance:none;color:inherit;display:flex;gap:10px;align-items:center;width:100%}.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);width:100%;height:0}.nano-tbl__progress-bar--show{transform:scale(1);height:auto}.nano-tbl__caption--hide{clip:rect(1px, 1px, 1px, 1px);-webkit-clip-path:inset(50%);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;-webkit-border-before:var(--border-style);border-block-start:var(--border-style);max-width: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{-webkit-border-before:none;border-block-start:none}tbody:last-of-type tr:last-child .nano-tbl__td,tbody:last-of-type tr:last-child .nano-tbl__th{-webkit-border-after:var(--border-style);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{-webkit-padding-start:var(--bookend-col-padding);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{-webkit-padding-end:var(--bookend-col-padding);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{-webkit-padding-start:var(--td-padding-start) !important;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{-webkit-padding-end:var(--td-padding-end) !important;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)/90%);font-size:var(--thead-font-size);-webkit-border-before:none !important;border-block-start:none !important;transition:all 0.2s ease}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)}tfoot .nano-tbl__td,tfoot .nano-tbl__th{color:var(--tfoot-color);font-weight:800;-webkit-border-before:none;border-block-start:none;background:rgb(var(--foot-bg-rgb)/90%);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;transform:translateZ(0)}.nano-tbl tbody.nano-tbl__inactive{opacity:0}.nano-tbl th[scope=row]{font-weight:800;margin:0}.nano-tbl__pin{position:sticky;transform:translateZ(0)}.nano-tbl__pin--start{inset-inline:-1px auto;transition:max-width 0.25s ease}.nano-tbl__pin--start::after{content:\"\";position:absolute;inset:0;box-shadow:5px 1px 4px 0 rgba(0, 0, 0, 0.2);opacity:0;z-index:-1}.nano-tbl__pinned--start .nano-tbl__pin--start{z-index:2;max-width:125px !important}.sm .nano-tbl__pinned--start .nano-tbl__pin--start{max-width:var(--max-col-width) !important}.nano-tbl__pinned--start .nano-tbl__pin--start::after{opacity:1}.nano-tbl__pin--end{}.nano-tbl__pin--start+.nano-tbl__pin--end{inset-inline:auto auto}.nano-tbl__pin--start+.nano-tbl__pin--end::after{display:none}.sm .nano-tbl__pin--end{inset-inline:auto -1px !important;max-width:min(50vw, 200px)}.sm .nano-tbl__pin--end::after{display:block !important;content:\"\";position:absolute;inset:0;box-shadow:-5px 1px 4px 0 rgba(0, 0, 0, 0.2);opacity:0;z-index:-1}.sm .nano-tbl__pinned--end .nano-tbl__pin--end::after{opacity:1}.nano-tbl__pin--top{inset-block:-1px auto}.nano-tbl__pinned--top .nano-tbl__pin--top{z-index:4 !important}.nano-tbl__pin--bottom{inset-block:auto -1px}.nano-tbl__pinned--bottom .nano-tbl__pin--bottom{z-index:5 !important}.nano-tbl__pinned--start .nano-tbl__pin--top.nano-tbl__pin--start{z-index:5 !important}.nano-tbl__pinned--top.nano-tbl__pinned--start .nano-tbl__pin--top.nano-tbl__pin--start{z-index:6 !important}.nano-tbl__pinned--end .nano-tbl__pin--top.nano-tbl__pin--end{z-index:5 !important}.nano-tbl__pinned--top.nano-tbl__pinned--end .nano-tbl__pin--top.nano-tbl__pin--end{z-index:6 !important}.nano-tbl__pinned--start .nano-tbl__pin--bottom.nano-tbl__pin--start{z-index:5 !important}.nano-tbl__pinned--bottom.nano-tbl__pinned--start .nano-tbl__pin--bottom.nano-tbl__pin--start{z-index:6 !important}.nano-tbl__pinned--end .nano-tbl__pin--bottom.nano-tbl__pin--end{z-index:5 !important}.nano-tbl__pinned--bottom.nano-tbl__pinned--end .nano-tbl__pin--bottom.nano-tbl__pin--end{z-index:6 !important}.nano-tbl thead tr:last-of-type td,.nano-tbl thead tr:last-of-type th{-webkit-border-after:var(--border-tint-style);border-block-end:var(--border-tint-style)}.nano-tbl tfoot tr:first-of-type td,.nano-tbl tfoot tr:first-of-type th{-webkit-border-before:none;border-block-start:none}.nano-tbl tfoot tr:last-of-type td,.nano-tbl tfoot tr:last-of-type th{-webkit-border-after:var(--border-tint-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{-webkit-border-before:var(--border-tint-style) !important;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{-webkit-border-after:none !important;border-block-end:none !important}.nano-tbl .unlimited-width{max-width: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)}";
890
854
 
891
855
  function perMark(name, end = false) {
892
856
  if (!Build.isDev || Build.isTesting || !performance)
893
857
  return;
894
858
  if (end) {
895
- performance?.mark('end' + name);
896
- performance?.measure(name, 'start' + name, 'end' + name);
897
- const entries = performance?.getEntriesByName(name);
859
+ performance === null || performance === void 0 ? void 0 : performance.mark('end' + name);
860
+ performance === null || performance === void 0 ? void 0 : performance.measure(name, 'start' + name, 'end' + name);
861
+ const entries = performance === null || performance === void 0 ? void 0 : performance.getEntriesByName(name);
898
862
  console.log(entries[entries.length ? entries.length - 1 : 0]);
899
863
  }
900
864
  else {
901
- performance?.mark('start' + name);
865
+ performance === null || performance === void 0 ? void 0 : performance.mark('start' + name);
902
866
  }
903
867
  }
904
868
  let id = 0;
@@ -921,12 +885,10 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
921
885
  this.filters = [];
922
886
  this.currentFilters = '[]';
923
887
  this.currentSort = '';
888
+ this.cacheScrollPosition = 0;
924
889
  this.measureHeight = 0;
925
- this.blockIos = new WeakMap();
926
890
  this.blockHeights = [];
927
891
  this.unitHeight = 0;
928
- // Scroll / IO used for hiding / showing blocks
929
- this.ignoreIO = true;
930
892
  this._isReady = false;
931
893
  /**
932
894
  * Fired when a column is dragged
@@ -1006,52 +968,30 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1006
968
  this._loading = false;
1007
969
  }
1008
970
  };
1009
- /**
1010
- * Attaches an intersection observer to each rendered tbody element
1011
- * shows / hides intersecting blocks' and sets heights for when they're hidden
1012
- * @param el - the tbody element to observe
1013
- * @param blockIndex - the rendering tbody we're attaching the IO to
1014
- */
1015
- this.setupBlockIO = (el, blockIndex) => {
1016
- if (!el || this.blockIos.has(el))
1017
- return;
1018
- const blockIo = new IntersectionObserver(([ioEntry]) => {
1019
- if (ioEntry.intersectionRatio === 0)
1020
- return;
1021
- // This is a bit gross
1022
- // The Intersection Observer (IO) fires in an incorrect order when the scrolling is very fast
1023
- // i.e. we go past blocks 3, 2, 1 and land on 0, but 3 can fire as 'intersecting' after 0.
1024
- // To fix that, we check - for realzies - if the block IS visible.
1025
- // BUT that test is not as sensitive to a block being visible via the IO,
1026
- // so doesn't always fire if scrolling slowly
1027
- // *sigh*
1028
- readTask(() => {
1029
- if (this.scrollSpeed < 100 || isInViewport(el, 0.01)) {
1030
- if (!this.ignoreIO) {
1031
- const potentialBlocks = [
1032
- blockIndex,
1033
- blockIndex + 1,
1034
- Math.max(0, blockIndex - 1),
1035
- ];
1036
- if (potentialBlocks.toString() !== this.activeBlocks.toString()) {
1037
- this.debouncedBlockChange(potentialBlocks);
1038
- }
971
+ this.scrollHandler = () => {
972
+ this.cacheScrollPosition = this.scrollParent.scrollTop || window.scrollY;
973
+ requestAnimationFrame(() => {
974
+ let cumulativeHeight = 0;
975
+ let blockIndex = 0;
976
+ const blockLen = this.blocks.length;
977
+ while (blockIndex < blockLen &&
978
+ this.cacheScrollPosition >= cumulativeHeight) {
979
+ cumulativeHeight += this.getBlockHeight(blockIndex);
980
+ if (this.cacheScrollPosition < cumulativeHeight) {
981
+ const potentialBlocks = [
982
+ blockIndex,
983
+ blockIndex + 1,
984
+ Math.max(0, blockIndex - 1),
985
+ ];
986
+ if (potentialBlocks.toString() !== this.activeBlocks.toString()) {
987
+ this.activeBlocks = potentialBlocks;
988
+ this.setBlockHeight();
1039
989
  }
1040
- // fire the event regardless
1041
- this.nanoTblBlockRendered.emit({
1042
- block: blockIndex,
1043
- totalBlocks: this.blockElements.length,
1044
- });
990
+ this.primaryBlockIndex = blockIndex;
1045
991
  }
1046
- });
1047
- }, {
1048
- threshold: [0],
1049
- root: this.scrollParent === document.scrollingElement
1050
- ? null
1051
- : this.scrollParent,
992
+ blockIndex++;
993
+ }
1052
994
  });
1053
- blockIo.observe(el);
1054
- this.blockIos.set(el, blockIo);
1055
995
  };
1056
996
  this.handleColumnPinned = (positions) => {
1057
997
  Object.entries(positions).forEach(([key, applied]) => {
@@ -1059,8 +999,12 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1059
999
  });
1060
1000
  };
1061
1001
  this.handleResizeChange = (e) => {
1002
+ var _a;
1062
1003
  this.tableWrapperEle.className = '';
1063
- this.tableWrapperEle.classList.add(...(e.target.className + ' ' + `${CSSNAMESPACE}__wrap`).split(' '));
1004
+ let classes = [`${CSSNAMESPACE}__wrap`];
1005
+ if ((_a = e.target) === null || _a === void 0 ? void 0 : _a.className)
1006
+ classes = [...e.target.className.split(' '), ...classes];
1007
+ this.tableWrapperEle.classList.add(...classes.filter((cl) => !!cl));
1064
1008
  };
1065
1009
  this.type = 'table';
1066
1010
  this.caption = undefined;
@@ -1074,7 +1018,7 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1074
1018
  this.rowRender = undefined;
1075
1019
  this.footRender = { pinned: 'bottom' };
1076
1020
  this.showFooter = false;
1077
- this.perBlock = 60;
1021
+ this.perBlock = 40;
1078
1022
  this.searchTerm = undefined;
1079
1023
  this.customFilterFn = undefined;
1080
1024
  this.customSortFn = undefined;
@@ -1084,7 +1028,6 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1084
1028
  this.blocks = [];
1085
1029
  this.activeBlocks = [0, 1, 2];
1086
1030
  this.debounceSetLoading = debounce(this.debounceSetLoading.bind(this), 50);
1087
- this.debouncedBlockChange = debounce(this.debouncedBlockChange.bind(this), 100);
1088
1031
  }
1089
1032
  get _loading() {
1090
1033
  return this.loading !== undefined ? this.loading : this.internalLoading;
@@ -1181,6 +1124,7 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1181
1124
  }
1182
1125
  // uses the first 'tr' of an active block as our yard stick
1183
1126
  set measureEle(el) {
1127
+ var _a;
1184
1128
  if (!el)
1185
1129
  return;
1186
1130
  const potentialHeight = el.getBoundingClientRect().height;
@@ -1189,7 +1133,35 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1189
1133
  ? this.measureHeight
1190
1134
  : potentialHeight;
1191
1135
  this.unitHeight =
1192
- el.querySelector('tr')?.getBoundingClientRect().height || this.unitHeight;
1136
+ ((_a = el.querySelector('tr')) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect().height) || this.unitHeight;
1137
+ }
1138
+ get scrollParent() {
1139
+ return this._scrollParent;
1140
+ }
1141
+ set scrollParent(ele) {
1142
+ if (ele === this._scrollParent)
1143
+ return;
1144
+ if (this._scrollParent) {
1145
+ (this._scrollParent === document.documentElement
1146
+ ? document
1147
+ : this._scrollParent).removeEventListener('scroll', this.scrollHandler);
1148
+ }
1149
+ (ele === document.documentElement ? document : ele).addEventListener('scroll', this.scrollHandler);
1150
+ this._scrollParent = ele;
1151
+ }
1152
+ // used to fire `nanoTblBlockRendered` on block render change
1153
+ get primaryBlockIndex() {
1154
+ return this._primaryBlockIndex;
1155
+ }
1156
+ set primaryBlockIndex(blockIndex) {
1157
+ if (this._primaryBlockIndex === blockIndex)
1158
+ return;
1159
+ this._primaryBlockIndex = blockIndex;
1160
+ // fire block change event
1161
+ this.nanoTblBlockRendered.emit({
1162
+ block: blockIndex,
1163
+ totalBlocks: this.blockElements.length,
1164
+ });
1193
1165
  }
1194
1166
  // Misc.
1195
1167
  get isReady() {
@@ -1204,18 +1176,15 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1204
1176
  }
1205
1177
  // Private Logic
1206
1178
  // Listeners
1207
- scrollListener() {
1208
- // see explanation in `setupBlockIO`
1209
- const speed = detectScrollSpeed();
1210
- this.scrollSpeed = speed < 0 ? speed * -1 : speed;
1211
- }
1212
1179
  handleReady() {
1213
1180
  const hash = window.location.hash;
1214
1181
  if (hash.length > 1) {
1215
- const idRow = document.querySelector(hash);
1216
- if (idRow) {
1217
- idRow.scrollIntoView();
1182
+ try {
1183
+ const idRow = document.querySelector(hash);
1184
+ if (idRow)
1185
+ idRow.scrollIntoView();
1218
1186
  }
1187
+ catch (e) { }
1219
1188
  }
1220
1189
  this.nanoTblReady.emit();
1221
1190
  }
@@ -1227,8 +1196,8 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1227
1196
  sortComplete(order, column) {
1228
1197
  this.columns = this.columns.map((c) => {
1229
1198
  if (c.prop === column)
1230
- return { ...c, order };
1231
- return { ...c, order: null };
1199
+ return Object.assign(Object.assign({}, c), { order });
1200
+ return Object.assign(Object.assign({}, c), { order: null });
1232
1201
  });
1233
1202
  this.nanoTblAfterSort.emit({ column: column, order });
1234
1203
  perMark('sort', true);
@@ -1318,7 +1287,8 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1318
1287
  }
1319
1288
  /** Scrolls to the top immediately - used whilst sorting / filtering */
1320
1289
  scrollToTop(element) {
1321
- const scrollBehaviour = this.scrollParent.style?.scrollBehavior;
1290
+ var _a;
1291
+ const scrollBehaviour = (_a = this.scrollParent.style) === null || _a === void 0 ? void 0 : _a.scrollBehavior;
1322
1292
  const scrollX = this.scrollParent.scrollLeft;
1323
1293
  this.scrollParent.style.scrollBehavior = 'auto';
1324
1294
  if (this.topAnchorEle && !isInViewport(this.topAnchorEle, 0.1)) {
@@ -1330,10 +1300,11 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1330
1300
  this.scrollParent.scrollLeft = scrollX;
1331
1301
  if (scrollBehaviour)
1332
1302
  this.scrollParent.style.scrollBehavior = scrollBehaviour;
1303
+ this.scrollHandler();
1333
1304
  }
1334
1305
  setMeasureElement() {
1335
1306
  readTask(() => {
1336
- this.measureEle = this.blockElements.find((b) => !b?.classList?.contains(`${CSSNAMESPACE}__inactive`));
1307
+ this.measureEle = this.blockElements.find((b) => { var _a; return !((_a = b === null || b === void 0 ? void 0 : b.classList) === null || _a === void 0 ? void 0 : _a.contains(`${CSSNAMESPACE}__inactive`)); });
1337
1308
  });
1338
1309
  }
1339
1310
  /**
@@ -1342,7 +1313,8 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1342
1313
  * So we just estimate for now
1343
1314
  */
1344
1315
  setInitialBlockDimension() {
1345
- if (!this.blockElements?.length)
1316
+ var _a;
1317
+ if (!((_a = this.blockElements) === null || _a === void 0 ? void 0 : _a.length))
1346
1318
  return;
1347
1319
  perMark('blockDims');
1348
1320
  const finishResizing = new Promise((resolve) => {
@@ -1352,7 +1324,8 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1352
1324
  if (!this.measureEle && !this.unitHeight)
1353
1325
  resolve();
1354
1326
  this.blockElements.forEach((el, i) => {
1355
- if (!el || !el.classList?.contains(`${CSSNAMESPACE}__inactive`)) {
1327
+ var _a;
1328
+ if (!el || !((_a = el.classList) === null || _a === void 0 ? void 0 : _a.contains(`${CSSNAMESPACE}__inactive`))) {
1356
1329
  if (i === this.blockElements.length - 1)
1357
1330
  resolve();
1358
1331
  return;
@@ -1401,7 +1374,7 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1401
1374
  return;
1402
1375
  }
1403
1376
  perMark('setBlocks');
1404
- this.ignoreIO = true;
1377
+ // this.ignoreIO = true;
1405
1378
  let i = 1;
1406
1379
  const l = this.virtualTotalItems > dRows.length
1407
1380
  ? this.virtualTotalItems
@@ -1435,18 +1408,16 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1435
1408
  * @returns a height string (incl px)
1436
1409
  */
1437
1410
  getBlockHeight(blockIndex) {
1438
- if (this.activeBlocks.includes(blockIndex))
1439
- return undefined;
1440
1411
  if (this.blockHeights.length) {
1441
1412
  const cachedBlockHeight = this.blockHeights.find((bh) => bh.blockIndex === blockIndex);
1442
1413
  if (cachedBlockHeight)
1443
- return cachedBlockHeight.height + 'px';
1414
+ return cachedBlockHeight.height;
1444
1415
  }
1445
1416
  const blockLength = this.blocks[blockIndex].rows.length;
1446
1417
  if (blockLength === this.perBlock && this.measureHeight) {
1447
- return this.measureHeight + 'px';
1418
+ return this.measureHeight;
1448
1419
  }
1449
- return this.unitHeight ? this.unitHeight * blockLength + 'px' : undefined;
1420
+ return this.unitHeight ? this.unitHeight * blockLength : undefined;
1450
1421
  }
1451
1422
  /** cache the height for all active blocks for later renders */
1452
1423
  setBlockHeight() {
@@ -1467,10 +1438,6 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1467
1438
  });
1468
1439
  });
1469
1440
  }
1470
- debouncedBlockChange(newBlocks) {
1471
- this.activeBlocks = newBlocks;
1472
- this.setBlockHeight();
1473
- }
1474
1441
  /** Process slotted content */
1475
1442
  processSlots() {
1476
1443
  // see if we have slot content
@@ -1500,14 +1467,13 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1500
1467
  // but we don't want it to cause renders
1501
1468
  if (['rows', 'columns'].includes(stateName))
1502
1469
  return false;
1503
- if (Build.isDev)
1470
+ if (Build.isDev && !Build.isTesting)
1504
1471
  console.log(stateName, _newVal, _oldVal);
1505
1472
  }
1506
1473
  componentWillRender() {
1507
1474
  perMark('render');
1508
1475
  }
1509
1476
  componentDidRender() {
1510
- requestAnimationFrame(() => (this.ignoreIO = false));
1511
1477
  this.setMeasureElement();
1512
1478
  perMark('render', true);
1513
1479
  }
@@ -1526,7 +1492,6 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1526
1492
  } }),
1527
1493
  ]))), this._loading && !this.blocks.length && (h("tbody", { class: `${CSSNAMESPACE}__active` }, [...Array(10).keys()].map((rowIndex) => (h("tr", null, this.store.config.state.columns.map((_colModel, colIndex) => (h(TableCell, { rowIndex: rowIndex, colIndex: colIndex, nestedContent: () => h("nano-skeleton", null) })))))))), !this._loading && !this.blocks.length && (h("tr", null, h("th", { class: `${CSSNAMESPACE}__th`, colSpan: this.store.config.state.columns.length }, h("div", { class: "nano-tbl__cell-content nano-tbl__cell-content--no-result" }, h("slot", { name: "no-results" }, "No results found"))))), this.blocks.map((block, blockIndex) => (h("tbody", { key: block.__uuid, id: `tbody-${this.renderId}-${blockIndex}`, ref: (tb) => {
1528
1494
  this.blockElements.push(tb);
1529
- requestAnimationFrame(() => this.setupBlockIO(tb, blockIndex));
1530
1495
  }, class: {
1531
1496
  [`${CSSNAMESPACE}__inactive`]: !this.activeBlocks.includes(blockIndex),
1532
1497
  [`${CSSNAMESPACE}__active`]: this.activeBlocks.includes(blockIndex),
@@ -1534,7 +1499,7 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1534
1499
  const rowIndex = blockIndex > 0 ? blockIndex * this.perBlock + i : i;
1535
1500
  return (h(TableRow, { rowRenderer: this.rowRender, rowModel: row, rowIndex: rowIndex }, this.store.config.state.columns.map((_colModel, colIndex) => (h(TableCell, { rowIndex: rowIndex, colIndex: colIndex })))));
1536
1501
  })) : (h("tr", null, h("td", { colSpan: this.store.config.state.columns.length, style: {
1537
- height: this.getBlockHeight(blockIndex),
1502
+ height: this.getBlockHeight(blockIndex) + 'px',
1538
1503
  } })))))), this.showFooter && (h("tfoot", null, h(TableHeadFootRow, { rowRenderer: this.footRender, onColumnPinned: this.handleColumnPinned }, this.store.config.state.columns.map((colModel) => [
1539
1504
  h(TableColHead, { column: colModel, headRenderer: this.footRender, onColumnPinned: this.handleColumnPinned, onColumnSortClick: this.sortStart, defaults: {
1540
1505
  sortable: this.defaultSort,
@@ -1582,7 +1547,7 @@ const Table = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1582
1547
  "addFilters": [64],
1583
1548
  "removeFilters": [64],
1584
1549
  "updateRow": [64]
1585
- }, [[9, "scroll", "scrollListener"]]]);
1550
+ }]);
1586
1551
  function defineCustomElement() {
1587
1552
  if (typeof customElements === "undefined") {
1588
1553
  return;