@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
@@ -1,1075 +0,0 @@
1
- /*!
2
- * Web Components for Nanopore digital Web Apps
3
- */
4
- (function () {
5
-
6
- var UNSUPPORTED_ENVIRONMENT = typeof window === "undefined";
7
-
8
- /**
9
- * Is true if the browser natively supports the 'scroll-behavior' CSS-property.
10
- * @type {boolean}
11
- */
12
- var SUPPORTS_SCROLL_BEHAVIOR = UNSUPPORTED_ENVIRONMENT ? false : "scrollBehavior" in document.documentElement.style;
13
-
14
-
15
-
16
- /*! *****************************************************************************
17
- Copyright (c) Microsoft Corporation. All rights reserved.
18
- Licensed under the Apache License, Version 2.0 (the "License"); you may not use
19
- this file except in compliance with the License. You may obtain a copy of the
20
- License at http://www.apache.org/licenses/LICENSE-2.0
21
-
22
- THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
23
- KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
24
- WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
25
- MERCHANTABLITY OR NON-INFRINGEMENT.
26
-
27
- See the Apache Version 2.0 License for specific language governing permissions
28
- and limitations under the License.
29
- ***************************************************************************** */
30
-
31
- var __assign = function() {
32
- __assign = Object.assign || function __assign(t) {
33
- for (var s, i = 1, n = arguments.length; i < n; i++) {
34
- s = arguments[i];
35
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
36
- }
37
- return t;
38
- };
39
- return __assign.apply(this, arguments);
40
- };
41
-
42
- function __read(o, n) {
43
- var m = typeof Symbol === "function" && o[Symbol.iterator];
44
- if (!m) return o;
45
- var i = m.call(o), r, ar = [], e;
46
- try {
47
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
48
- }
49
- catch (error) { e = { error: error }; }
50
- finally {
51
- try {
52
- if (r && !r.done && (m = i["return"])) m.call(i);
53
- }
54
- finally { if (e) throw e.error; }
55
- }
56
- return ar;
57
- }
58
-
59
- function getScrollingElement() {
60
- if (document.scrollingElement != null) {
61
- return document.scrollingElement;
62
- }
63
- else {
64
- return document.documentElement;
65
- }
66
- }
67
-
68
- var STYLE_ATTRIBUTE_PROPERTY_NAME = "scroll-behavior";
69
- var STYLE_ATTRIBUTE_PROPERTY_REGEXP = new RegExp(STYLE_ATTRIBUTE_PROPERTY_NAME + ":\\s*([^;]*)");
70
- /**
71
- * Given an Element, this function appends the given ScrollBehavior CSS property value to the elements' 'style' attribute.
72
- * If it doesnt already have one, it will add it.
73
- * @param {Element} element
74
- * @param {ScrollBehavior} behavior
75
- */
76
- function appendScrollBehaviorToStyleAttribute(element, behavior) {
77
- var addition = STYLE_ATTRIBUTE_PROPERTY_NAME + ":" + behavior;
78
- var attributeValue = element.getAttribute("style");
79
- if (attributeValue == null || attributeValue === "") {
80
- element.setAttribute("style", addition);
81
- return;
82
- }
83
- // The style attribute may already include a 'scroll-behavior:<something>' in which case that should be replaced
84
- var existingValueForProperty = parseScrollBehaviorFromStyleAttribute(element);
85
- if (existingValueForProperty != null) {
86
- var replacementProperty = STYLE_ATTRIBUTE_PROPERTY_NAME + ":" + existingValueForProperty;
87
- // Replace the variant that ends with a semi-colon which it may
88
- attributeValue = attributeValue.replace(replacementProperty + ";", "");
89
- // Replace the variant that *doesn't* end with a semi-colon
90
- attributeValue = attributeValue.replace(replacementProperty, "");
91
- }
92
- // Now, append the behavior to the string.
93
- element.setAttribute("style", attributeValue.endsWith(";") ? "" + attributeValue + addition : ";" + attributeValue + addition);
94
- }
95
- /**
96
- * Given an Element, this function attempts to parse its 'style' attribute (if it has one)' to extract
97
- * a value for the 'scroll-behavior' CSS property (if it is given within that style attribute)
98
- * @param {Element} element
99
- * @returns {ScrollBehavior?}
100
- */
101
- function parseScrollBehaviorFromStyleAttribute(element) {
102
- var styleAttributeValue = element.getAttribute("style");
103
- if (styleAttributeValue != null && styleAttributeValue.includes(STYLE_ATTRIBUTE_PROPERTY_NAME)) {
104
- var match = styleAttributeValue.match(STYLE_ATTRIBUTE_PROPERTY_REGEXP);
105
- if (match != null) {
106
- var _a = __read(match, 2), behavior = _a[1];
107
- if (behavior != null && behavior !== "") {
108
- return behavior;
109
- }
110
- }
111
- }
112
- return undefined;
113
- }
114
-
115
- var styleDeclarationPropertyName = "scrollBehavior";
116
- /**
117
- * Determines the scroll behavior to use, depending on the given ScrollOptions and the position of the Element
118
- * within the DOM
119
- * @param {Element|HTMLElement|Window} inputTarget
120
- * @param {ScrollOptions} [options]
121
- * @returns {ScrollBehavior}
122
- */
123
- function getScrollBehavior(inputTarget, options) {
124
- // If the given 'behavior' is 'smooth', apply smooth scrolling no matter what
125
- if (options != null && options.behavior === "smooth")
126
- return "smooth";
127
- var target = "style" in inputTarget ? inputTarget : getScrollingElement();
128
- var value;
129
- if ("style" in target) {
130
- // Check if scroll-behavior is set as a property on the CSSStyleDeclaration
131
- var scrollBehaviorPropertyValue = target.style[styleDeclarationPropertyName];
132
- // Return it if it is given and has a proper value
133
- if (scrollBehaviorPropertyValue != null && scrollBehaviorPropertyValue !== "") {
134
- value = scrollBehaviorPropertyValue;
135
- }
136
- }
137
- if (value == null) {
138
- var attributeValue = target.getAttribute("scroll-behavior");
139
- if (attributeValue != null && attributeValue !== "") {
140
- value = attributeValue;
141
- }
142
- }
143
- if (value == null) {
144
- // Otherwise, check if it is set as an inline style
145
- value = parseScrollBehaviorFromStyleAttribute(target);
146
- }
147
- if (value == null) {
148
- // Take the computed style for the element and see if it contains a specific 'scroll-behavior' value
149
- var computedStyle = getComputedStyle(target);
150
- var computedStyleValue = computedStyle.getPropertyValue("scrollBehavior");
151
- if (computedStyleValue != null && computedStyleValue !== "") {
152
- value = computedStyleValue;
153
- }
154
- }
155
- // In all other cases, use the value from the CSSOM
156
- return value;
157
- }
158
-
159
-
160
-
161
-
162
-
163
- var HALF = 0.5;
164
- /**
165
- * The easing function to use when applying the smooth scrolling
166
- * @param {number} k
167
- * @returns {number}
168
- */
169
- function ease(k) {
170
- return HALF * (1 - Math.cos(Math.PI * k));
171
- }
172
-
173
- var NOOP = {
174
- reset: function () { }
175
- };
176
- var map = typeof WeakMap === "undefined" ? undefined : new WeakMap();
177
- function disableScrollSnap(scroller) {
178
- // If scroll-behavior is natively supported, or if there is no native WeakMap support, there's no need for this fix
179
- if (SUPPORTS_SCROLL_BEHAVIOR || map == null) {
180
- return NOOP;
181
- }
182
- var scrollingElement = getScrollingElement();
183
- var cachedScrollSnapValue;
184
- var cachedScrollBehaviorStyleAttributeValue;
185
- var secondaryScroller;
186
- var secondaryScrollerCachedScrollSnapValue;
187
- var secondaryScrollerCachedScrollBehaviorStyleAttributeValue;
188
- var existingResult = map.get(scroller);
189
- if (existingResult != null) {
190
- cachedScrollSnapValue = existingResult.cachedScrollSnapValue;
191
- cachedScrollBehaviorStyleAttributeValue = existingResult.cachedScrollBehaviorStyleAttributeValue;
192
- secondaryScroller = existingResult.secondaryScroller;
193
- secondaryScrollerCachedScrollSnapValue = existingResult.secondaryScrollerCachedScrollSnapValue;
194
- secondaryScrollerCachedScrollBehaviorStyleAttributeValue = existingResult.secondaryScrollerCachedScrollBehaviorStyleAttributeValue;
195
- existingResult.release();
196
- }
197
- else {
198
- cachedScrollSnapValue = scroller.style.scrollSnapType === "" ? null : scroller.style.scrollSnapType;
199
- cachedScrollBehaviorStyleAttributeValue = parseScrollBehaviorFromStyleAttribute(scroller);
200
- secondaryScroller = scroller === scrollingElement && scrollingElement !== document.body ? document.body : undefined;
201
- secondaryScrollerCachedScrollSnapValue =
202
- secondaryScroller == null ? undefined : secondaryScroller.style.scrollSnapType === "" ? null : secondaryScroller.style.scrollSnapType;
203
- secondaryScrollerCachedScrollBehaviorStyleAttributeValue =
204
- secondaryScroller == null ? undefined : parseScrollBehaviorFromStyleAttribute(secondaryScroller);
205
- var cachedComputedScrollSnapValue = getComputedStyle(scroller).getPropertyValue("scroll-snap-type");
206
- var secondaryScrollerCachedComputedScrollSnapValue = secondaryScroller == null ? undefined : getComputedStyle(secondaryScroller).getPropertyValue("scroll-snap-type");
207
- // If it just so happens that there actually isn't any scroll snapping going on, there's no point in performing any additional work here.
208
- if (cachedComputedScrollSnapValue === "none" && secondaryScrollerCachedComputedScrollSnapValue === "none") {
209
- return NOOP;
210
- }
211
- }
212
- scroller.style.scrollSnapType = "none";
213
- if (secondaryScroller !== undefined) {
214
- secondaryScroller.style.scrollSnapType = "none";
215
- }
216
- if (cachedScrollBehaviorStyleAttributeValue !== undefined) {
217
- appendScrollBehaviorToStyleAttribute(scroller, cachedScrollBehaviorStyleAttributeValue);
218
- }
219
- if (secondaryScroller !== undefined && secondaryScrollerCachedScrollBehaviorStyleAttributeValue !== undefined) {
220
- appendScrollBehaviorToStyleAttribute(secondaryScroller, secondaryScrollerCachedScrollBehaviorStyleAttributeValue);
221
- }
222
- var hasReleased = false;
223
- var eventTarget = scroller === scrollingElement ? window : scroller;
224
- function release() {
225
- eventTarget.removeEventListener("scroll", resetHandler);
226
- if (map != null) {
227
- map["delete"](scroller);
228
- }
229
- hasReleased = true;
230
- }
231
- function resetHandler() {
232
- scroller.style.scrollSnapType = cachedScrollSnapValue;
233
- if (secondaryScroller != null && secondaryScrollerCachedScrollSnapValue !== undefined) {
234
- secondaryScroller.style.scrollSnapType = secondaryScrollerCachedScrollSnapValue;
235
- }
236
- if (cachedScrollBehaviorStyleAttributeValue !== undefined) {
237
- appendScrollBehaviorToStyleAttribute(scroller, cachedScrollBehaviorStyleAttributeValue);
238
- }
239
- if (secondaryScroller !== undefined && secondaryScrollerCachedScrollBehaviorStyleAttributeValue !== undefined) {
240
- appendScrollBehaviorToStyleAttribute(secondaryScroller, secondaryScrollerCachedScrollBehaviorStyleAttributeValue);
241
- }
242
- release();
243
- }
244
- function reset() {
245
- setTimeout(function () {
246
- if (hasReleased)
247
- return;
248
- eventTarget.addEventListener("scroll", resetHandler);
249
- });
250
- }
251
- map.set(scroller, {
252
- release: release,
253
- cachedScrollSnapValue: cachedScrollSnapValue,
254
- cachedScrollBehaviorStyleAttributeValue: cachedScrollBehaviorStyleAttributeValue,
255
- secondaryScroller: secondaryScroller,
256
- secondaryScrollerCachedScrollSnapValue: secondaryScrollerCachedScrollSnapValue,
257
- secondaryScrollerCachedScrollBehaviorStyleAttributeValue: secondaryScrollerCachedScrollBehaviorStyleAttributeValue
258
- });
259
- return {
260
- reset: reset
261
- };
262
- }
263
-
264
- /**
265
- * The duration of a smooth scroll
266
- * @type {number}
267
- */
268
- var SCROLL_TIME = 15000;
269
- /**
270
- * Performs a smooth repositioning of the scroll
271
- * @param {ISmoothScrollOptions} options
272
- */
273
- function smoothScroll(options) {
274
- var startTime = options.startTime, startX = options.startX, startY = options.startY, endX = options.endX, endY = options.endY, method = options.method, scroller = options.scroller;
275
- var timeLapsed = 0;
276
- var distanceX = endX - startX;
277
- var distanceY = endY - startY;
278
- var speed = Math.max(Math.abs((distanceX / 1000) * SCROLL_TIME), Math.abs((distanceY / 1000) * SCROLL_TIME));
279
- // Temporarily disables any scroll snapping that may be active since it fights for control over the scroller with this polyfill
280
- var scrollSnapFix = disableScrollSnap(scroller);
281
- requestAnimationFrame(function animate(timestamp) {
282
- timeLapsed += timestamp - startTime;
283
- var percentage = Math.max(0, Math.min(1, speed === 0 ? 0 : timeLapsed / speed));
284
- var positionX = Math.floor(startX + distanceX * ease(percentage));
285
- var positionY = Math.floor(startY + distanceY * ease(percentage));
286
- method(positionX, positionY);
287
- if (positionX !== endX || positionY !== endY) {
288
- requestAnimationFrame(animate);
289
- }
290
- else {
291
- if (scrollSnapFix != null) {
292
- scrollSnapFix.reset();
293
- scrollSnapFix = undefined;
294
- }
295
- }
296
- });
297
- }
298
-
299
- /**
300
- * Returns a High Resolution timestamp if possible, otherwise fallbacks to Date.now()
301
- * @returns {number}
302
- */
303
- function now() {
304
- if ("performance" in window)
305
- return performance.now();
306
- return Date.now();
307
- }
308
-
309
-
310
-
311
- var ELEMENT_ORIGINAL_SCROLL = UNSUPPORTED_ENVIRONMENT ? undefined : Element.prototype.scroll;
312
-
313
- var WINDOW_ORIGINAL_SCROLL = UNSUPPORTED_ENVIRONMENT ? undefined : window.scroll;
314
-
315
- var ELEMENT_ORIGINAL_SCROLL_BY = UNSUPPORTED_ENVIRONMENT ? undefined : Element.prototype.scrollBy;
316
-
317
- var WINDOW_ORIGINAL_SCROLL_BY = UNSUPPORTED_ENVIRONMENT ? undefined : window.scrollBy;
318
-
319
- var ELEMENT_ORIGINAL_SCROLL_TO = UNSUPPORTED_ENVIRONMENT ? undefined : Element.prototype.scrollTo;
320
-
321
- var WINDOW_ORIGINAL_SCROLL_TO = UNSUPPORTED_ENVIRONMENT ? undefined : window.scrollTo;
322
-
323
- /**
324
- * A fallback if Element.prototype.scroll is not defined
325
- * @param {number} x
326
- * @param {number} y
327
- */
328
- function elementPrototypeScrollFallback(x, y) {
329
- this.__adjustingScrollPosition = true;
330
- this.scrollLeft = x;
331
- this.scrollTop = y;
332
- delete this.__adjustingScrollPosition;
333
- }
334
- /**
335
- * A fallback if Element.prototype.scrollTo is not defined
336
- * @param {number} x
337
- * @param {number} y
338
- */
339
- function elementPrototypeScrollToFallback(x, y) {
340
- return elementPrototypeScrollFallback.call(this, x, y);
341
- }
342
- /**
343
- * A fallback if Element.prototype.scrollBy is not defined
344
- * @param {number} x
345
- * @param {number} y
346
- */
347
- function elementPrototypeScrollByFallback(x, y) {
348
- this.__adjustingScrollPosition = true;
349
- this.scrollLeft += x;
350
- this.scrollTop += y;
351
- delete this.__adjustingScrollPosition;
352
- }
353
- /**
354
- * Gets the original non-patched prototype method for the given kind
355
- * @param {ScrollMethodName} kind
356
- * @param {Element|Window} element
357
- * @return {Function}
358
- */
359
- function getOriginalScrollMethodForKind(kind, element) {
360
- switch (kind) {
361
- case "scroll":
362
- if (element instanceof Element) {
363
- if (ELEMENT_ORIGINAL_SCROLL != null) {
364
- return ELEMENT_ORIGINAL_SCROLL;
365
- }
366
- else {
367
- return elementPrototypeScrollFallback;
368
- }
369
- }
370
- else {
371
- return WINDOW_ORIGINAL_SCROLL;
372
- }
373
- case "scrollBy":
374
- if (element instanceof Element) {
375
- if (ELEMENT_ORIGINAL_SCROLL_BY != null) {
376
- return ELEMENT_ORIGINAL_SCROLL_BY;
377
- }
378
- else {
379
- return elementPrototypeScrollByFallback;
380
- }
381
- }
382
- else {
383
- return WINDOW_ORIGINAL_SCROLL_BY;
384
- }
385
- case "scrollTo":
386
- if (element instanceof Element) {
387
- if (ELEMENT_ORIGINAL_SCROLL_TO != null) {
388
- return ELEMENT_ORIGINAL_SCROLL_TO;
389
- }
390
- else {
391
- return elementPrototypeScrollToFallback;
392
- }
393
- }
394
- else {
395
- return WINDOW_ORIGINAL_SCROLL_TO;
396
- }
397
- }
398
- }
399
-
400
- /**
401
- * Gets the Smooth Scroll Options to use for the step function
402
- * @param {Element|Window} element
403
- * @param {number} x
404
- * @param {number} y
405
- * @param {ScrollMethodName} kind
406
- * @returns {ISmoothScrollOptions}
407
- */
408
- function getSmoothScrollOptions(element, x, y, kind) {
409
- var startTime = now();
410
- if (!(element instanceof Element)) {
411
- // Use window as the scroll container
412
- var scrollX_1 = window.scrollX, pageXOffset_1 = window.pageXOffset, scrollY_1 = window.scrollY, pageYOffset_1 = window.pageYOffset;
413
- var startX = scrollX_1 == null || scrollX_1 === 0 ? pageXOffset_1 : scrollX_1;
414
- var startY = scrollY_1 == null || scrollY_1 === 0 ? pageYOffset_1 : scrollY_1;
415
- return {
416
- startTime: startTime,
417
- startX: startX,
418
- startY: startY,
419
- endX: Math.floor(kind === "scrollBy" ? startX + x : x),
420
- endY: Math.floor(kind === "scrollBy" ? startY + y : y),
421
- method: getOriginalScrollMethodForKind("scrollTo", window).bind(window),
422
- scroller: getScrollingElement()
423
- };
424
- }
425
- else {
426
- var scrollLeft = element.scrollLeft, scrollTop = element.scrollTop;
427
- var startX = scrollLeft;
428
- var startY = scrollTop;
429
- return {
430
- startTime: startTime,
431
- startX: startX,
432
- startY: startY,
433
- endX: Math.floor(kind === "scrollBy" ? startX + x : x),
434
- endY: Math.floor(kind === "scrollBy" ? startY + y : y),
435
- method: getOriginalScrollMethodForKind("scrollTo", element).bind(element),
436
- scroller: element
437
- };
438
- }
439
- }
440
-
441
- /**
442
- * Ensures that the given value is numeric
443
- * @param {number} value
444
- * @return {number}
445
- */
446
- function ensureNumeric(value) {
447
- if (value == null)
448
- return 0;
449
- else if (typeof value === "number") {
450
- return value;
451
- }
452
- else if (typeof value === "string") {
453
- return parseFloat(value);
454
- }
455
- else {
456
- return 0;
457
- }
458
- }
459
-
460
- /**
461
- * Returns true if the given value is some ScrollToOptions
462
- * @param {number | ScrollToOptions} value
463
- * @return {value is ScrollToOptions}
464
- */
465
- function isScrollToOptions(value) {
466
- return value != null && typeof value === "object";
467
- }
468
-
469
- /**
470
- * Handles a scroll method
471
- * @param {Element|Window} element
472
- * @param {ScrollMethodName} kind
473
- * @param {number | ScrollToOptions} optionsOrX
474
- * @param {number} y
475
- */
476
- function handleScrollMethod(element, kind, optionsOrX, y) {
477
- onScrollWithOptions(getScrollToOptionsWithValidation(optionsOrX, y), element, kind);
478
- }
479
- /**
480
- * Invoked when a 'ScrollToOptions' dict is provided to 'scroll()' as the first argument
481
- * @param {ScrollToOptions} options
482
- * @param {Element|Window} element
483
- * @param {ScrollMethodName} kind
484
- */
485
- function onScrollWithOptions(options, element, kind) {
486
- var behavior = getScrollBehavior(element, options);
487
- // If the behavior is 'auto' apply instantaneous scrolling
488
- if (behavior == null || behavior === "auto") {
489
- getOriginalScrollMethodForKind(kind, element).call(element, options.left, options.top);
490
- }
491
- else {
492
- smoothScroll(getSmoothScrollOptions(element, options.left, options.top, kind));
493
- }
494
- }
495
- /**
496
- * Normalizes the given scroll coordinates
497
- * @param {number?} x
498
- * @param {number?} y
499
- * @return {Required<Pick<ScrollToOptions, "top" | "left">>}
500
- */
501
- function normalizeScrollCoordinates(x, y) {
502
- return {
503
- left: ensureNumeric(x),
504
- top: ensureNumeric(y)
505
- };
506
- }
507
- /**
508
- * Gets ScrollToOptions based on the given arguments. Will throw if validation fails
509
- * @param {number | ScrollToOptions} optionsOrX
510
- * @param {number} y
511
- * @return {Required<ScrollToOptions>}
512
- */
513
- function getScrollToOptionsWithValidation(optionsOrX, y) {
514
- // If only one argument is given, and it isn't an options object, throw a TypeError
515
- if (y === undefined && !isScrollToOptions(optionsOrX)) {
516
- throw new TypeError("Failed to execute 'scroll' on 'Element': parameter 1 ('options') is not an object.");
517
- }
518
- // Scroll based on the primitive values given as arguments
519
- if (!isScrollToOptions(optionsOrX)) {
520
- return __assign(__assign({}, normalizeScrollCoordinates(optionsOrX, y)), { behavior: "auto" });
521
- }
522
- // Scroll based on the received options object
523
- else {
524
- return __assign(__assign({}, normalizeScrollCoordinates(optionsOrX.left, optionsOrX.top)), { behavior: optionsOrX.behavior == null ? "auto" : optionsOrX.behavior });
525
- }
526
- }
527
-
528
- /**
529
- * Patches the 'scroll' method on the Element prototype
530
- */
531
- function patchElementScroll() {
532
- Element.prototype.scroll = function (optionsOrX, y) {
533
- handleScrollMethod(this, "scroll", optionsOrX, y);
534
- };
535
- }
536
-
537
- /**
538
- * Patches the 'scrollBy' method on the Element prototype
539
- */
540
- function patchElementScrollBy() {
541
- Element.prototype.scrollBy = function (optionsOrX, y) {
542
- handleScrollMethod(this, "scrollBy", optionsOrX, y);
543
- };
544
- }
545
-
546
- /**
547
- * Patches the 'scrollTo' method on the Element prototype
548
- */
549
- function patchElementScrollTo() {
550
- Element.prototype.scrollTo = function (optionsOrX, y) {
551
- handleScrollMethod(this, "scrollTo", optionsOrX, y);
552
- };
553
- }
554
-
555
- /**
556
- * Patches the 'scroll' method on the Window prototype
557
- */
558
- function patchWindowScroll() {
559
- window.scroll = function (optionsOrX, y) {
560
- handleScrollMethod(this, "scroll", optionsOrX, y);
561
- };
562
- }
563
-
564
- /**
565
- * Patches the 'scrollBy' method on the Window prototype
566
- */
567
- function patchWindowScrollBy() {
568
- window.scrollBy = function (optionsOrX, y) {
569
- handleScrollMethod(this, "scrollBy", optionsOrX, y);
570
- };
571
- }
572
-
573
- /**
574
- * Patches the 'scrollTo' method on the Window prototype
575
- */
576
- function patchWindowScrollTo() {
577
- window.scrollTo = function (optionsOrX, y) {
578
- handleScrollMethod(this, "scrollTo", optionsOrX, y);
579
- };
580
- }
581
-
582
- // tslint:disable:no-any
583
- /**
584
- * Gets the parent of an element, taking into account DocumentFragments, ShadowRoots, as well as the root context (window)
585
- * @param {EventTarget} currentElement
586
- * @returns {EventTarget | null}
587
- */
588
- function getParent(currentElement) {
589
- if ("nodeType" in currentElement && currentElement.nodeType === 1) {
590
- return currentElement.parentNode;
591
- }
592
- if ("ShadowRoot" in window && currentElement instanceof window.ShadowRoot) {
593
- return currentElement.host;
594
- }
595
- else if (currentElement === document) {
596
- return window;
597
- }
598
- else if (currentElement instanceof Node)
599
- return currentElement.parentNode;
600
- return null;
601
- }
602
-
603
- /**
604
- * Returns true if the given overflow property represents a scrollable overflow value
605
- * @param {string | null} overflow
606
- * @return {boolean}
607
- */
608
- function canOverflow(overflow) {
609
- return overflow !== "visible" && overflow !== "clip";
610
- }
611
- /**
612
- * Returns true if the given element is scrollable
613
- * @param {Element} element
614
- * @return {boolean}
615
- */
616
- function isScrollable(element) {
617
- if (element.clientHeight < element.scrollHeight || element.clientWidth < element.scrollWidth) {
618
- var style = getComputedStyle(element, null);
619
- return canOverflow(style.overflowY) || canOverflow(style.overflowX);
620
- }
621
- return false;
622
- }
623
- /**
624
- * Finds the nearest ancestor of an element that can scroll
625
- * @param {Element} target
626
- * @returns {Element|Window?}
627
- */
628
- function findNearestAncestorsWithScrollBehavior(target) {
629
- var currentElement = target;
630
- var scrollingElement = getScrollingElement();
631
- while (currentElement != null) {
632
- var behavior = getScrollBehavior(currentElement);
633
- if (behavior != null && (currentElement === scrollingElement || isScrollable(currentElement))) {
634
- return [currentElement, behavior];
635
- }
636
- var parent_1 = getParent(currentElement);
637
- currentElement = parent_1;
638
- }
639
- // No such element could be found. Start over, but this time find the nearest ancestor that can simply scroll
640
- currentElement = target;
641
- while (currentElement != null) {
642
- if (currentElement === scrollingElement || isScrollable(currentElement)) {
643
- return [currentElement, "auto"];
644
- }
645
- var parent_2 = getParent(currentElement);
646
- currentElement = parent_2;
647
- }
648
- // Default to the scrolling element
649
- return [scrollingElement, "auto"];
650
- }
651
-
652
- // tslint:disable:no-any
653
- /**
654
- * Finds the nearest root from an element
655
- * @param {Element} target
656
- * @returns {Document|ShadowRoot}
657
- */
658
- function findNearestRoot(target) {
659
- var currentElement = target;
660
- while (currentElement != null) {
661
- if ("ShadowRoot" in window && currentElement instanceof window.ShadowRoot) {
662
- // Assume this is a ShadowRoot
663
- return currentElement;
664
- }
665
- var parent_1 = getParent(currentElement);
666
- if (parent_1 === currentElement) {
667
- return document;
668
- }
669
- currentElement = parent_1;
670
- }
671
- return document;
672
- }
673
-
674
- /**
675
- * Gets the origin of the given Location or HTMLAnchorElement if available in the runtime, and otherwise shims it. (it's a one-liner)
676
- * @returns {string}
677
- */
678
- function getLocationOrigin(locationLike) {
679
- if (locationLike === void 0) { locationLike = location; }
680
- if ("origin" in locationLike && locationLike.origin != null) {
681
- return locationLike.origin;
682
- }
683
- var port = locationLike.port != null && locationLike.port.length > 0 ? ":" + locationLike.port : "";
684
- if (locationLike.protocol === "http:" && port === ":80") {
685
- port = "";
686
- }
687
- else if (locationLike.protocol === "https:" && port === ":443") {
688
- port = "";
689
- }
690
- return locationLike.protocol + "//" + locationLike.hostname + port;
691
- }
692
-
693
- /**
694
- * A Regular expression that matches id's of the form "#[digit]"
695
- * @type {RegExp}
696
- */
697
- var ID_WITH_LEADING_DIGIT_REGEXP = /^#\d/;
698
- /**
699
- * Catches anchor navigation to IDs within the same root and ensures that they can be smooth-scrolled
700
- * if the scroll behavior is smooth in the first rooter within that context
701
- */
702
- function catchNavigation() {
703
- // Listen for 'click' events globally
704
- window.addEventListener("click", function (e) {
705
- // Only work with trusted events on HTMLAnchorElements
706
- if (!e.isTrusted || !(e.target instanceof HTMLAnchorElement))
707
- return;
708
- var _a = e.target, pathname = _a.pathname, search = _a.search, hash = _a.hash;
709
- var pointsToCurrentPage = getLocationOrigin(e.target) === getLocationOrigin(location) && pathname === location.pathname && search === location.search;
710
- // Only work with HTMLAnchorElements that navigates to a specific ID on the current page
711
- if (!pointsToCurrentPage || hash == null || hash.length < 1) {
712
- return;
713
- }
714
- // Find the nearest root, whether it be a ShadowRoot or the document itself
715
- var root = findNearestRoot(e.target);
716
- // Attempt to match the selector from that root. querySelector' doesn't support IDs that start with a digit, so work around that limitation
717
- var elementMatch = hash.match(ID_WITH_LEADING_DIGIT_REGEXP) != null ? root.getElementById(hash.slice(1)) : root.querySelector(hash);
718
- // If no selector could be found, don't proceed
719
- if (elementMatch == null)
720
- return;
721
- // Find the nearest ancestor that can be scrolled
722
- var _b = __read(findNearestAncestorsWithScrollBehavior(elementMatch), 2), behavior = _b[1];
723
- // If the behavior isn't smooth, don't proceed
724
- if (behavior !== "smooth")
725
- return;
726
- // Otherwise, first prevent the default action.
727
- e.preventDefault();
728
- // Now, scroll to the element with that ID
729
- elementMatch.scrollIntoView({
730
- behavior: behavior
731
- });
732
- });
733
- }
734
-
735
- var ELEMENT_ORIGINAL_SCROLL_INTO_VIEW = UNSUPPORTED_ENVIRONMENT ? undefined : Element.prototype.scrollIntoView;
736
-
737
- /**
738
- * The majority of this file is based on https://github.com/stipsan/compute-scroll-into-view (MIT license),
739
- * but has been rewritten to accept a scroller as an argument.
740
- */
741
- /**
742
- * Find out which edge to align against when logical scroll position is "nearest"
743
- * Interesting fact: "nearest" works similarly to "if-needed", if the element is fully visible it will not scroll it
744
- *
745
- * Legends:
746
- * ┌────────┐ ┏ ━ ━ ━ ┓
747
- * │ target │ frame
748
- * └────────┘ ┗ ━ ━ ━ ┛
749
- */
750
- function alignNearest(scrollingEdgeStart, scrollingEdgeEnd, scrollingSize, scrollingBorderStart, scrollingBorderEnd, elementEdgeStart, elementEdgeEnd, elementSize) {
751
- /**
752
- * If element edge A and element edge B are both outside scrolling box edge A and scrolling box edge B
753
- *
754
- * ┌──┐
755
- * ┏━│━━│━┓
756
- * │ │
757
- * ┃ │ │ ┃ do nothing
758
- * │ │
759
- * ┗━│━━│━┛
760
- * └──┘
761
- *
762
- * If element edge C and element edge D are both outside scrolling box edge C and scrolling box edge D
763
- *
764
- * ┏ ━ ━ ━ ━ ┓
765
- * ┌───────────┐
766
- * │┃ ┃│ do nothing
767
- * └───────────┘
768
- * ┗ ━ ━ ━ ━ ┛
769
- */
770
- if ((elementEdgeStart < scrollingEdgeStart && elementEdgeEnd > scrollingEdgeEnd) ||
771
- (elementEdgeStart > scrollingEdgeStart && elementEdgeEnd < scrollingEdgeEnd)) {
772
- return 0;
773
- }
774
- /**
775
- * If element edge A is outside scrolling box edge A and element height is less than scrolling box height
776
- *
777
- * ┌──┐
778
- * ┏━│━━│━┓ ┏━┌━━┐━┓
779
- * └──┘ │ │
780
- * from ┃ ┃ to ┃ └──┘ ┃
781
- *
782
- * ┗━ ━━ ━┛ ┗━ ━━ ━┛
783
- *
784
- * If element edge B is outside scrolling box edge B and element height is greater than scrolling box height
785
- *
786
- * ┏━ ━━ ━┓ ┏━┌━━┐━┓
787
- * │ │
788
- * from ┃ ┌──┐ ┃ to ┃ │ │ ┃
789
- * │ │ │ │
790
- * ┗━│━━│━┛ ┗━│━━│━┛
791
- * │ │ └──┘
792
- * │ │
793
- * └──┘
794
- *
795
- * If element edge C is outside scrolling box edge C and element width is less than scrolling box width
796
- *
797
- * from to
798
- * ┏ ━ ━ ━ ━ ┓ ┏ ━ ━ ━ ━ ┓
799
- * ┌───┐ ┌───┐
800
- * │ ┃ │ ┃ ┃ │ ┃
801
- * └───┘ └───┘
802
- * ┗ ━ ━ ━ ━ ┛ ┗ ━ ━ ━ ━ ┛
803
- *
804
- * If element edge D is outside scrolling box edge D and element width is greater than scrolling box width
805
- *
806
- * from to
807
- * ┏ ━ ━ ━ ━ ┓ ┏ ━ ━ ━ ━ ┓
808
- * ┌───────────┐ ┌───────────┐
809
- * ┃ │ ┃ │ ┃ ┃ │
810
- * └───────────┘ └───────────┘
811
- * ┗ ━ ━ ━ ━ ┛ ┗ ━ ━ ━ ━ ┛
812
- */
813
- if ((elementEdgeStart <= scrollingEdgeStart && elementSize <= scrollingSize) ||
814
- (elementEdgeEnd >= scrollingEdgeEnd && elementSize >= scrollingSize)) {
815
- return elementEdgeStart - scrollingEdgeStart - scrollingBorderStart;
816
- }
817
- /**
818
- * If element edge B is outside scrolling box edge B and element height is less than scrolling box height
819
- *
820
- * ┏━ ━━ ━┓ ┏━ ━━ ━┓
821
- *
822
- * from ┃ ┃ to ┃ ┌──┐ ┃
823
- * ┌──┐ │ │
824
- * ┗━│━━│━┛ ┗━└━━┘━┛
825
- * └──┘
826
- *
827
- * If element edge A is outside scrolling box edge A and element height is greater than scrolling box height
828
- *
829
- * ┌──┐
830
- * │ │
831
- * │ │ ┌──┐
832
- * ┏━│━━│━┓ ┏━│━━│━┓
833
- * │ │ │ │
834
- * from ┃ └──┘ ┃ to ┃ │ │ ┃
835
- * │ │
836
- * ┗━ ━━ ━┛ ┗━└━━┘━┛
837
- *
838
- * If element edge C is outside scrolling box edge C and element width is greater than scrolling box width
839
- *
840
- * from to
841
- * ┏ ━ ━ ━ ━ ┓ ┏ ━ ━ ━ ━ ┓
842
- * ┌───────────┐ ┌───────────┐
843
- * │ ┃ │ ┃ │ ┃ ┃
844
- * └───────────┘ └───────────┘
845
- * ┗ ━ ━ ━ ━ ┛ ┗ ━ ━ ━ ━ ┛
846
- *
847
- * If element edge D is outside scrolling box edge D and element width is less than scrolling box width
848
- *
849
- * from to
850
- * ┏ ━ ━ ━ ━ ┓ ┏ ━ ━ ━ ━ ┓
851
- * ┌───┐ ┌───┐
852
- * ┃ │ ┃ │ ┃ │ ┃
853
- * └───┘ └───┘
854
- * ┗ ━ ━ ━ ━ ┛ ┗ ━ ━ ━ ━ ┛
855
- *
856
- */
857
- if ((elementEdgeEnd > scrollingEdgeEnd && elementSize < scrollingSize) || (elementEdgeStart < scrollingEdgeStart && elementSize > scrollingSize)) {
858
- return elementEdgeEnd - scrollingEdgeEnd + scrollingBorderEnd;
859
- }
860
- return 0;
861
- }
862
- function computeScrollIntoView(target, scroller, options) {
863
- var block = options.block, inline = options.inline;
864
- // Used to handle the top most element that can be scrolled
865
- var scrollingElement = getScrollingElement();
866
- // Support pinch-zooming properly, making sure elements scroll into the visual viewport
867
- // Browsers that don't support visualViewport will report the layout viewport dimensions on document.documentElement.clientWidth/Height
868
- // and viewport dimensions on window.innerWidth/Height
869
- // https://www.quirksmode.org/mobile/viewports2.html
870
- // https://bokand.github.io/viewport/index.html
871
- var viewportWidth = window.visualViewport != null ? visualViewport.width : innerWidth;
872
- var viewportHeight = window.visualViewport != null ? visualViewport.height : innerHeight;
873
- var viewportX = window.scrollX != null ? window.scrollX : window.pageXOffset;
874
- var viewportY = window.scrollY != null ? window.scrollY : window.pageYOffset;
875
- var _a = target.getBoundingClientRect(), targetHeight = _a.height, targetWidth = _a.width, targetTop = _a.top, targetRight = _a.right, targetBottom = _a.bottom, targetLeft = _a.left;
876
- // These values mutate as we loop through and generate scroll coordinates
877
- var targetBlock = block === "start" || block === "nearest" ? targetTop : block === "end" ? targetBottom : targetTop + targetHeight / 2; // block === 'center
878
- var targetInline = inline === "center" ? targetLeft + targetWidth / 2 : inline === "end" ? targetRight : targetLeft; // inline === 'start || inline === 'nearest
879
- var _b = scroller.getBoundingClientRect(), height = _b.height, width = _b.width, top = _b.top, right = _b.right, bottom = _b.bottom, left = _b.left;
880
- var frameStyle = getComputedStyle(scroller);
881
- var borderLeft = parseInt(frameStyle.borderLeftWidth, 10);
882
- var borderTop = parseInt(frameStyle.borderTopWidth, 10);
883
- var borderRight = parseInt(frameStyle.borderRightWidth, 10);
884
- var borderBottom = parseInt(frameStyle.borderBottomWidth, 10);
885
- var blockScroll = 0;
886
- var inlineScroll = 0;
887
- // The property existance checks for offset[Width|Height] is because only HTMLElement objects have them, but any Element might pass by here
888
- // @TODO find out if the "as HTMLElement" overrides can be dropped
889
- var scrollbarWidth = "offsetWidth" in scroller ? scroller.offsetWidth - scroller.clientWidth - borderLeft - borderRight : 0;
890
- var scrollbarHeight = "offsetHeight" in scroller ? scroller.offsetHeight - scroller.clientHeight - borderTop - borderBottom : 0;
891
- if (scrollingElement === scroller) {
892
- // Handle viewport logic (document.documentElement or document.body)
893
- if (block === "start") {
894
- blockScroll = targetBlock;
895
- }
896
- else if (block === "end") {
897
- blockScroll = targetBlock - viewportHeight;
898
- }
899
- else if (block === "nearest") {
900
- blockScroll = alignNearest(viewportY, viewportY + viewportHeight, viewportHeight, borderTop, borderBottom, viewportY + targetBlock, viewportY + targetBlock + targetHeight, targetHeight);
901
- }
902
- else {
903
- // block === 'center' is the default
904
- blockScroll = targetBlock - viewportHeight / 2;
905
- }
906
- if (inline === "start") {
907
- inlineScroll = targetInline;
908
- }
909
- else if (inline === "center") {
910
- inlineScroll = targetInline - viewportWidth / 2;
911
- }
912
- else if (inline === "end") {
913
- inlineScroll = targetInline - viewportWidth;
914
- }
915
- else {
916
- // inline === 'nearest' is the default
917
- inlineScroll = alignNearest(viewportX, viewportX + viewportWidth, viewportWidth, borderLeft, borderRight, viewportX + targetInline, viewportX + targetInline + targetWidth, targetWidth);
918
- }
919
- // Apply scroll position offsets and ensure they are within bounds
920
- // @TODO add more test cases to cover this 100%
921
- blockScroll = Math.max(0, blockScroll + viewportY);
922
- inlineScroll = Math.max(0, inlineScroll + viewportX);
923
- }
924
- else {
925
- // Handle each scrolling frame that might exist between the target and the viewport
926
- if (block === "start") {
927
- blockScroll = targetBlock - top - borderTop;
928
- }
929
- else if (block === "end") {
930
- blockScroll = targetBlock - bottom + borderBottom + scrollbarHeight;
931
- }
932
- else if (block === "nearest") {
933
- blockScroll = alignNearest(top, bottom, height, borderTop, borderBottom + scrollbarHeight, targetBlock, targetBlock + targetHeight, targetHeight);
934
- }
935
- else {
936
- // block === 'center' is the default
937
- blockScroll = targetBlock - (top + height / 2) + scrollbarHeight / 2;
938
- }
939
- if (inline === "start") {
940
- inlineScroll = targetInline - left - borderLeft;
941
- }
942
- else if (inline === "center") {
943
- inlineScroll = targetInline - (left + width / 2) + scrollbarWidth / 2;
944
- }
945
- else if (inline === "end") {
946
- inlineScroll = targetInline - right + borderRight + scrollbarWidth;
947
- }
948
- else {
949
- // inline === 'nearest' is the default
950
- inlineScroll = alignNearest(left, right, width, borderLeft, borderRight + scrollbarWidth, targetInline, targetInline + targetWidth, targetWidth);
951
- }
952
- var scrollLeft = scroller.scrollLeft, scrollTop = scroller.scrollTop;
953
- // Ensure scroll coordinates are not out of bounds while applying scroll offsets
954
- blockScroll = Math.max(0, Math.min(scrollTop + blockScroll, scroller.scrollHeight - height + scrollbarHeight));
955
- inlineScroll = Math.max(0, Math.min(scrollLeft + inlineScroll, scroller.scrollWidth - width + scrollbarWidth));
956
- }
957
- return {
958
- top: blockScroll,
959
- left: inlineScroll
960
- };
961
- }
962
-
963
- /**
964
- * Patches the 'scrollIntoView' method on the Element prototype
965
- */
966
- function patchElementScrollIntoView() {
967
- Element.prototype.scrollIntoView = function (arg) {
968
- var normalizedOptions = arg == null || arg === true
969
- ? {
970
- block: "start",
971
- inline: "nearest"
972
- }
973
- : arg === false
974
- ? {
975
- block: "end",
976
- inline: "nearest"
977
- }
978
- : arg;
979
- // Find the nearest ancestor that can be scrolled
980
- var _a = __read(findNearestAncestorsWithScrollBehavior(this), 2), ancestorWithScroll = _a[0], ancestorWithScrollBehavior = _a[1];
981
- var behavior = normalizedOptions.behavior != null ? normalizedOptions.behavior : ancestorWithScrollBehavior;
982
- // If the behavior isn't smooth, simply invoke the original implementation and do no more
983
- if (behavior !== "smooth") {
984
- // Assert that 'scrollIntoView' is actually defined
985
- if (ELEMENT_ORIGINAL_SCROLL_INTO_VIEW != null) {
986
- ELEMENT_ORIGINAL_SCROLL_INTO_VIEW.call(this, normalizedOptions);
987
- }
988
- // Otherwise, invoke 'scrollTo' instead and provide the scroll coordinates
989
- else {
990
- var _b = computeScrollIntoView(this, ancestorWithScroll, normalizedOptions), top_1 = _b.top, left = _b.left;
991
- getOriginalScrollMethodForKind("scrollTo", this).call(this, left, top_1);
992
- }
993
- return;
994
- }
995
- ancestorWithScroll.scrollTo(__assign({ behavior: behavior }, computeScrollIntoView(this, ancestorWithScroll, normalizedOptions)));
996
- };
997
- // On IE11, HTMLElement has its own declaration of scrollIntoView and does not inherit this from the prototype chain, so we'll need to patch that one too.
998
- if (HTMLElement.prototype.scrollIntoView != null && HTMLElement.prototype.scrollIntoView !== Element.prototype.scrollIntoView) {
999
- HTMLElement.prototype.scrollIntoView = Element.prototype.scrollIntoView;
1000
- }
1001
- }
1002
-
1003
- var ELEMENT_ORIGINAL_SCROLL_TOP_SET_DESCRIPTOR = UNSUPPORTED_ENVIRONMENT
1004
- ? undefined
1005
- : Object.getOwnPropertyDescriptor(Element.prototype, "scrollTop").set;
1006
-
1007
- /**
1008
- * Patches the 'scrollTop' property descriptor on the Element prototype
1009
- */
1010
- function patchElementScrollTop() {
1011
- Object.defineProperty(Element.prototype, "scrollTop", {
1012
- set: function (scrollTop) {
1013
- if (this.__adjustingScrollPosition) {
1014
- return ELEMENT_ORIGINAL_SCROLL_TOP_SET_DESCRIPTOR.call(this, scrollTop);
1015
- }
1016
- handleScrollMethod(this, "scrollTo", this.scrollLeft, scrollTop);
1017
- return scrollTop;
1018
- }
1019
- });
1020
- }
1021
-
1022
- var ELEMENT_ORIGINAL_SCROLL_LEFT_SET_DESCRIPTOR = UNSUPPORTED_ENVIRONMENT
1023
- ? undefined
1024
- : Object.getOwnPropertyDescriptor(Element.prototype, "scrollLeft").set;
1025
-
1026
- /**
1027
- * Patches the 'scrollLeft' property descriptor on the Element prototype
1028
- */
1029
- function patchElementScrollLeft() {
1030
- Object.defineProperty(Element.prototype, "scrollLeft", {
1031
- set: function (scrollLeft) {
1032
- if (this.__adjustingScrollPosition) {
1033
- return ELEMENT_ORIGINAL_SCROLL_LEFT_SET_DESCRIPTOR.call(this, scrollLeft);
1034
- }
1035
- handleScrollMethod(this, "scrollTo", scrollLeft, this.scrollTop);
1036
- return scrollLeft;
1037
- }
1038
- });
1039
- }
1040
-
1041
- /**
1042
- * Applies the polyfill
1043
- */
1044
- function patch() {
1045
- // Element.prototype methods
1046
- patchElementScroll();
1047
- patchElementScrollBy();
1048
- patchElementScrollTo();
1049
- patchElementScrollIntoView();
1050
- // Element.prototype descriptors
1051
- patchElementScrollLeft();
1052
- patchElementScrollTop();
1053
- // window methods
1054
- patchWindowScroll();
1055
- patchWindowScrollBy();
1056
- patchWindowScrollTo();
1057
- // Navigation
1058
- catchNavigation();
1059
- }
1060
-
1061
- /**
1062
- * Is true if the browser natively supports the Element.prototype.[scroll|scrollTo|scrollBy|scrollIntoView] methods
1063
- * @type {boolean}
1064
- */
1065
- var SUPPORTS_ELEMENT_PROTOTYPE_SCROLL_METHODS = UNSUPPORTED_ENVIRONMENT
1066
- ? false
1067
- : "scroll" in Element.prototype && "scrollTo" in Element.prototype && "scrollBy" in Element.prototype && "scrollIntoView" in Element.prototype;
1068
-
1069
- if (!UNSUPPORTED_ENVIRONMENT && (!SUPPORTS_SCROLL_BEHAVIOR || !SUPPORTS_ELEMENT_PROTOTYPE_SCROLL_METHODS)) {
1070
- patch();
1071
- }
1072
-
1073
- }());
1074
-
1075
- //# sourceMappingURL=index-3bbaffe4.js.map