@six-group/ui-library 0.0.0-insider.a8d68c7 → 0.0.0-insider.ad9373a

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 (1127) hide show
  1. package/README.md +9 -0
  2. package/dist/cjs/error-messages-6e8049a4.js +119 -0
  3. package/dist/cjs/error-messages-6e8049a4.js.map +1 -0
  4. package/dist/cjs/event-listeners-9fb878f1.js +61 -0
  5. package/dist/cjs/event-listeners-9fb878f1.js.map +1 -0
  6. package/dist/cjs/{execution-control-45c84c46.js → execution-control-d728da70.js} +15 -15
  7. package/dist/cjs/execution-control-d728da70.js.map +1 -0
  8. package/dist/cjs/focus-visible-e2c9255a.js +47 -0
  9. package/dist/cjs/focus-visible-e2c9255a.js.map +1 -0
  10. package/dist/cjs/form-9ebaae7c.js +20 -0
  11. package/dist/{esm/form-0b9c11cd.js.map → cjs/form-9ebaae7c.js.map} +1 -1
  12. package/dist/cjs/form-control-72186fcc.js +36 -0
  13. package/dist/cjs/form-control-72186fcc.js.map +1 -0
  14. package/dist/cjs/{index-2f6daa5b.js → index-5dd19c4b.js} +766 -203
  15. package/dist/cjs/index-5dd19c4b.js.map +1 -0
  16. package/dist/cjs/index.cjs.js +6 -91
  17. package/dist/cjs/index.cjs.js.map +1 -1
  18. package/dist/cjs/loader.cjs.js +3 -12
  19. package/dist/cjs/loader.cjs.js.map +1 -1
  20. package/dist/cjs/modal-3ce015be.js +52 -0
  21. package/dist/cjs/modal-3ce015be.js.map +1 -0
  22. package/dist/cjs/{popover-8885d50f.js → popover-1e7c09f1.js} +99 -99
  23. package/dist/cjs/popover-1e7c09f1.js.map +1 -0
  24. package/dist/cjs/popup-e854acda.js +103 -0
  25. package/dist/cjs/popup-e854acda.js.map +1 -0
  26. package/dist/cjs/scroll-68033901.js +68 -0
  27. package/dist/{esm/scroll-180b53fd.js.map → cjs/scroll-68033901.js.map} +1 -1
  28. package/dist/cjs/set-attributes_2.cjs.entry.js +51 -51
  29. package/dist/cjs/set-attributes_2.cjs.entry.js.map +1 -1
  30. package/dist/cjs/six-alert.cjs.entry.js +110 -110
  31. package/dist/cjs/six-alert.cjs.entry.js.map +1 -1
  32. package/dist/cjs/six-avatar.cjs.entry.js +21 -21
  33. package/dist/cjs/six-avatar.cjs.entry.js.map +1 -1
  34. package/dist/cjs/six-badge.cjs.entry.js +23 -23
  35. package/dist/cjs/six-badge.cjs.entry.js.map +1 -1
  36. package/dist/cjs/six-button.cjs.entry.js +95 -95
  37. package/dist/cjs/six-button.cjs.entry.js.map +1 -1
  38. package/dist/cjs/six-card.cjs.entry.js +8 -8
  39. package/dist/cjs/six-card.cjs.entry.js.map +1 -1
  40. package/dist/cjs/six-checkbox_2.cjs.entry.js +190 -0
  41. package/dist/cjs/six-checkbox_2.cjs.entry.js.map +1 -0
  42. package/dist/cjs/six-datepicker.cjs.entry.js +836 -838
  43. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -1
  44. package/dist/cjs/six-details.cjs.entry.js +127 -127
  45. package/dist/cjs/six-details.cjs.entry.js.map +1 -1
  46. package/dist/cjs/six-dialog.cjs.entry.js +129 -129
  47. package/dist/cjs/six-dialog.cjs.entry.js.map +1 -1
  48. package/dist/cjs/six-drawer.cjs.entry.js +147 -147
  49. package/dist/cjs/six-drawer.cjs.entry.js.map +1 -1
  50. package/dist/cjs/six-dropdown_2.cjs.entry.js +707 -637
  51. package/dist/cjs/six-dropdown_2.cjs.entry.js.map +1 -1
  52. package/dist/cjs/six-error-page.cjs.entry.js +82 -82
  53. package/dist/cjs/six-error-page.cjs.entry.js.map +1 -1
  54. package/dist/cjs/six-error.cjs.entry.js +21 -0
  55. package/dist/cjs/six-error.cjs.entry.js.map +1 -0
  56. package/dist/cjs/six-file-list-item.cjs.entry.js +33 -33
  57. package/dist/cjs/six-file-list-item.cjs.entry.js.map +1 -1
  58. package/dist/cjs/six-file-list.cjs.entry.js +7 -7
  59. package/dist/cjs/six-file-list.cjs.entry.js.map +1 -1
  60. package/dist/cjs/six-file-upload.cjs.entry.js +99 -99
  61. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -1
  62. package/dist/cjs/six-footer.cjs.entry.js +8 -8
  63. package/dist/cjs/six-footer.cjs.entry.js.map +1 -1
  64. package/dist/cjs/six-group-label.cjs.entry.js +43 -43
  65. package/dist/cjs/six-group-label.cjs.entry.js.map +1 -1
  66. package/dist/cjs/six-header.cjs.entry.js +171 -156
  67. package/dist/cjs/six-header.cjs.entry.js.map +1 -1
  68. package/dist/cjs/six-icon-button.cjs.entry.js +32 -32
  69. package/dist/cjs/six-icon-button.cjs.entry.js.map +1 -1
  70. package/dist/cjs/six-icon.cjs.entry.js +22 -22
  71. package/dist/cjs/six-icon.cjs.entry.js.map +1 -1
  72. package/dist/cjs/six-input.cjs.entry.js +192 -187
  73. package/dist/cjs/six-input.cjs.entry.js.map +1 -1
  74. package/dist/cjs/six-item-picker.cjs.entry.js +405 -309
  75. package/dist/cjs/six-item-picker.cjs.entry.js.map +1 -1
  76. package/dist/cjs/six-language-switcher.cjs.entry.js +46 -46
  77. package/dist/cjs/six-language-switcher.cjs.entry.js.map +1 -1
  78. package/dist/cjs/six-layout-grid.cjs.entry.js +20 -20
  79. package/dist/cjs/six-layout-grid.cjs.entry.js.map +1 -1
  80. package/dist/cjs/six-main-container.cjs.entry.js +9 -9
  81. package/dist/cjs/six-main-container.cjs.entry.js.map +1 -1
  82. package/dist/cjs/six-menu-divider.cjs.entry.js +8 -8
  83. package/dist/cjs/six-menu-divider.cjs.entry.js.map +1 -1
  84. package/dist/cjs/six-menu-label.cjs.entry.js +8 -8
  85. package/dist/cjs/six-menu-label.cjs.entry.js.map +1 -1
  86. package/dist/cjs/six-picto.cjs.entry.js +14 -14
  87. package/dist/cjs/six-picto.cjs.entry.js.map +1 -1
  88. package/dist/cjs/six-progress-bar.cjs.entry.js +15 -15
  89. package/dist/cjs/six-progress-bar.cjs.entry.js.map +1 -1
  90. package/dist/cjs/six-progress-ring.cjs.entry.js +30 -30
  91. package/dist/cjs/six-progress-ring.cjs.entry.js.map +1 -1
  92. package/dist/cjs/six-radio.cjs.entry.js +104 -112
  93. package/dist/cjs/six-radio.cjs.entry.js.map +1 -1
  94. package/dist/cjs/six-range.cjs.entry.js +180 -177
  95. package/dist/cjs/six-range.cjs.entry.js.map +1 -1
  96. package/dist/cjs/six-root.cjs.entry.js +30 -30
  97. package/dist/cjs/six-root.cjs.entry.js.map +1 -1
  98. package/dist/cjs/six-search-field.cjs.entry.js +44 -44
  99. package/dist/cjs/six-search-field.cjs.entry.js.map +1 -1
  100. package/dist/cjs/six-select.cjs.entry.js +496 -361
  101. package/dist/cjs/six-select.cjs.entry.js.map +1 -1
  102. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +56 -45
  103. package/dist/cjs/six-sidebar-item-group.cjs.entry.js.map +1 -1
  104. package/dist/cjs/six-sidebar-item.cjs.entry.js +17 -15
  105. package/dist/cjs/six-sidebar-item.cjs.entry.js.map +1 -1
  106. package/dist/cjs/six-sidebar.cjs.entry.js +174 -174
  107. package/dist/cjs/six-sidebar.cjs.entry.js.map +1 -1
  108. package/dist/cjs/six-spinner.cjs.entry.js +15 -15
  109. package/dist/cjs/six-spinner.cjs.entry.js.map +1 -1
  110. package/dist/cjs/six-switch.cjs.entry.js +107 -87
  111. package/dist/cjs/six-switch.cjs.entry.js.map +1 -1
  112. package/dist/cjs/six-tab-group.cjs.entry.js +230 -235
  113. package/dist/cjs/six-tab-group.cjs.entry.js.map +1 -1
  114. package/dist/cjs/six-tab-panel.cjs.entry.js +14 -14
  115. package/dist/cjs/six-tab-panel.cjs.entry.js.map +1 -1
  116. package/dist/cjs/six-tab.cjs.entry.js +55 -39
  117. package/dist/cjs/six-tab.cjs.entry.js.map +1 -1
  118. package/dist/cjs/six-tag.cjs.entry.js +55 -33
  119. package/dist/cjs/six-tag.cjs.entry.js.map +1 -1
  120. package/dist/cjs/six-textarea.cjs.entry.js +182 -183
  121. package/dist/cjs/six-textarea.cjs.entry.js.map +1 -1
  122. package/dist/cjs/six-tile.cjs.entry.js +77 -77
  123. package/dist/cjs/six-tile.cjs.entry.js.map +1 -1
  124. package/dist/cjs/six-timepicker.cjs.entry.js +348 -353
  125. package/dist/cjs/six-timepicker.cjs.entry.js.map +1 -1
  126. package/dist/cjs/six-tooltip.cjs.entry.js +148 -148
  127. package/dist/cjs/six-tooltip.cjs.entry.js.map +1 -1
  128. package/dist/cjs/slot-1b1232a1.js +51 -0
  129. package/dist/cjs/slot-1b1232a1.js.map +1 -0
  130. package/dist/cjs/types-d3da200b.js +19 -0
  131. package/dist/cjs/types-d3da200b.js.map +1 -0
  132. package/dist/cjs/ui-library.cjs.js +3 -6
  133. package/dist/cjs/ui-library.cjs.js.map +1 -1
  134. package/dist/collection/collection-manifest.json +55 -54
  135. package/dist/collection/components/six-alert/six-alert.css +1 -1
  136. package/dist/collection/components/six-alert/six-alert.js +339 -332
  137. package/dist/collection/components/six-alert/six-alert.js.map +1 -1
  138. package/dist/collection/components/six-alert/test/six-alert.spec.js +25 -0
  139. package/dist/collection/components/six-alert/test/six-alert.spec.js.map +1 -0
  140. package/dist/collection/components/six-avatar/six-avatar.css +2 -2
  141. package/dist/collection/components/six-avatar/six-avatar.js +112 -112
  142. package/dist/collection/components/six-avatar/six-avatar.js.map +1 -1
  143. package/dist/collection/components/six-avatar/test/six-avatar.spec.js +26 -0
  144. package/dist/collection/components/six-avatar/test/six-avatar.spec.js.map +1 -0
  145. package/dist/collection/components/six-badge/six-badge.css +1 -1
  146. package/dist/collection/components/six-badge/six-badge.js +91 -91
  147. package/dist/collection/components/six-badge/six-badge.js.map +1 -1
  148. package/dist/collection/components/six-badge/test/six-badge.spec.js +20 -0
  149. package/dist/collection/components/six-badge/test/six-badge.spec.js.map +1 -0
  150. package/dist/collection/components/six-button/six-button.css +6 -31
  151. package/dist/collection/components/six-button/six-button.js +450 -444
  152. package/dist/collection/components/six-button/six-button.js.map +1 -1
  153. package/dist/collection/components/six-button/test/six-button.spec.js +69 -0
  154. package/dist/collection/components/six-button/test/six-button.spec.js.map +1 -0
  155. package/dist/collection/components/six-card/six-card.css +4 -5
  156. package/dist/collection/components/six-card/six-card.js +16 -16
  157. package/dist/collection/components/six-card/six-card.js.map +1 -1
  158. package/dist/collection/components/six-card/test/six-card.spec.js +18 -0
  159. package/dist/collection/components/six-card/test/six-card.spec.js.map +1 -0
  160. package/dist/collection/components/six-checkbox/six-checkbox.css +10 -2
  161. package/dist/collection/components/six-checkbox/six-checkbox.js +424 -420
  162. package/dist/collection/components/six-checkbox/six-checkbox.js.map +1 -1
  163. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js +83 -0
  164. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js.map +1 -0
  165. package/dist/collection/components/six-datepicker/components/day-selection.js +9 -9
  166. package/dist/collection/components/six-datepicker/components/day-selection.js.map +1 -1
  167. package/dist/collection/components/six-datepicker/components/month-selection.js +10 -10
  168. package/dist/collection/components/six-datepicker/components/month-selection.js.map +1 -1
  169. package/dist/collection/components/six-datepicker/components/year-selection.js +10 -10
  170. package/dist/collection/components/six-datepicker/components/year-selection.js.map +1 -1
  171. package/dist/collection/components/six-datepicker/six-date-formats.js +21 -20
  172. package/dist/collection/components/six-datepicker/six-date-formats.js.map +1 -1
  173. package/dist/collection/components/six-datepicker/six-datepicker.css +1 -1
  174. package/dist/collection/components/six-datepicker/six-datepicker.js +1062 -1035
  175. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -1
  176. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js +26 -0
  177. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js.map +1 -0
  178. package/dist/collection/components/six-datepicker/test/six-datepicker.test-helpers.js +14 -14
  179. package/dist/collection/components/six-datepicker/test/six-datepicker.test-helpers.js.map +1 -1
  180. package/dist/collection/components/six-details/six-details.css +4 -2
  181. package/dist/collection/components/six-details/six-details.js +412 -406
  182. package/dist/collection/components/six-details/six-details.js.map +1 -1
  183. package/dist/collection/components/six-details/test/six-details.spec.js +36 -0
  184. package/dist/collection/components/six-details/test/six-details.spec.js.map +1 -0
  185. package/dist/collection/components/six-dialog/six-dialog.css +2 -2
  186. package/dist/collection/components/six-dialog/six-dialog.js +359 -351
  187. package/dist/collection/components/six-dialog/six-dialog.js.map +1 -1
  188. package/dist/collection/components/six-dialog/test/six-dialog.spec.js +34 -0
  189. package/dist/collection/components/six-dialog/test/six-dialog.spec.js.map +1 -0
  190. package/dist/collection/components/six-drawer/six-drawer.css +2 -2
  191. package/dist/collection/components/six-drawer/six-drawer.js +414 -406
  192. package/dist/collection/components/six-drawer/six-drawer.js.map +1 -1
  193. package/dist/collection/components/six-drawer/test/six-drawer.spec.js +34 -0
  194. package/dist/collection/components/six-drawer/test/six-drawer.spec.js.map +1 -0
  195. package/dist/collection/components/six-dropdown/six-dropdown.css +22 -6
  196. package/dist/collection/components/six-dropdown/six-dropdown.js +986 -884
  197. package/dist/collection/components/six-dropdown/six-dropdown.js.map +1 -1
  198. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js +147 -0
  199. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js.map +1 -0
  200. package/dist/collection/components/six-error/six-error.css +5 -0
  201. package/dist/collection/components/six-error/six-error.js +25 -0
  202. package/dist/collection/components/six-error/six-error.js.map +1 -0
  203. package/dist/collection/components/six-error-page/six-error-page.js +178 -178
  204. package/dist/collection/components/six-error-page/six-error-page.js.map +1 -1
  205. package/dist/collection/components/six-error-page/test/six-error-page.spec.js +240 -0
  206. package/dist/collection/components/six-error-page/test/six-error-page.spec.js.map +1 -0
  207. package/dist/collection/components/six-file-list/six-file-list.js +16 -16
  208. package/dist/collection/components/six-file-list/six-file-list.js.map +1 -1
  209. package/dist/collection/components/six-file-list/test/six-file-list.spec.js +67 -0
  210. package/dist/collection/components/six-file-list/test/six-file-list.spec.js.map +1 -0
  211. package/dist/collection/components/six-file-list-item/six-file-list-item.js +196 -194
  212. package/dist/collection/components/six-file-list-item/six-file-list-item.js.map +1 -1
  213. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js +169 -0
  214. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js.map +1 -0
  215. package/dist/collection/components/six-file-upload/six-file-upload.css +1 -4
  216. package/dist/collection/components/six-file-upload/six-file-upload.js +292 -290
  217. package/dist/collection/components/six-file-upload/six-file-upload.js.map +1 -1
  218. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js +103 -0
  219. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js.map +1 -0
  220. package/dist/collection/components/six-footer/six-footer.css +2 -2
  221. package/dist/collection/components/six-footer/six-footer.js +16 -16
  222. package/dist/collection/components/six-footer/six-footer.js.map +1 -1
  223. package/dist/collection/components/six-footer/test/six-footer.spec.js +21 -0
  224. package/dist/collection/components/six-footer/test/six-footer.spec.js.map +1 -0
  225. package/dist/collection/components/six-group-label/six-group-label.css +5 -2
  226. package/dist/collection/components/six-group-label/six-group-label.js +158 -158
  227. package/dist/collection/components/six-group-label/six-group-label.js.map +1 -1
  228. package/dist/collection/components/six-group-label/test/six-group-label.spec.js +45 -0
  229. package/dist/collection/components/six-group-label/test/six-group-label.spec.js.map +1 -0
  230. package/dist/collection/components/six-header/six-header.css +6 -2
  231. package/dist/collection/components/six-header/six-header.js +442 -400
  232. package/dist/collection/components/six-header/six-header.js.map +1 -1
  233. package/dist/collection/components/six-header/test/six-header.spec.js +177 -0
  234. package/dist/collection/components/six-header/test/six-header.spec.js.map +1 -0
  235. package/dist/collection/components/six-icon/six-icon.css +8 -1
  236. package/dist/collection/components/six-icon/six-icon.js +72 -72
  237. package/dist/collection/components/six-icon/six-icon.js.map +1 -1
  238. package/dist/collection/components/six-icon/test/six-icon.spec.js +20 -0
  239. package/dist/collection/components/six-icon/test/six-icon.spec.js.map +1 -0
  240. package/dist/collection/components/six-icon-button/six-icon-button.css +5 -5
  241. package/dist/collection/components/six-icon-button/six-icon-button.js +133 -133
  242. package/dist/collection/components/six-icon-button/six-icon-button.js.map +1 -1
  243. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js +23 -0
  244. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js.map +1 -0
  245. package/dist/collection/components/six-input/six-input.css +15 -3
  246. package/dist/collection/components/six-input/six-input.js +975 -913
  247. package/dist/collection/components/six-input/six-input.js.map +1 -1
  248. package/dist/collection/components/six-input/test/six-input.spec.js +39 -0
  249. package/dist/collection/components/six-input/test/six-input.spec.js.map +1 -0
  250. package/dist/collection/components/six-item-picker/six-item-picker.css +8 -0
  251. package/dist/collection/components/six-item-picker/six-item-picker.js +731 -631
  252. package/dist/collection/components/six-item-picker/six-item-picker.js.map +1 -1
  253. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js +90 -0
  254. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js.map +1 -0
  255. package/dist/collection/components/six-item-picker/types.js +9 -7
  256. package/dist/collection/components/six-item-picker/types.js.map +1 -1
  257. package/dist/collection/components/six-language-switcher/six-language-switcher.js +125 -123
  258. package/dist/collection/components/six-language-switcher/six-language-switcher.js.map +1 -1
  259. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js +196 -0
  260. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js.map +1 -0
  261. package/dist/collection/components/six-layout-grid/six-layout-grid.js +55 -55
  262. package/dist/collection/components/six-layout-grid/six-layout-grid.js.map +1 -1
  263. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js +18 -0
  264. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js.map +1 -0
  265. package/dist/collection/components/six-main-container/six-main-container.js +42 -42
  266. package/dist/collection/components/six-main-container/six-main-container.js.map +1 -1
  267. package/dist/collection/components/six-main-container/test/six-main-container.spec.js +22 -0
  268. package/dist/collection/components/six-main-container/test/six-main-container.spec.js.map +1 -0
  269. package/dist/collection/components/six-menu/six-menu.css +8 -7
  270. package/dist/collection/components/six-menu/six-menu.js +392 -366
  271. package/dist/collection/components/six-menu/six-menu.js.map +1 -1
  272. package/dist/collection/components/six-menu/test/six-menu.spec.js +93 -0
  273. package/dist/collection/components/six-menu/test/six-menu.spec.js.map +1 -0
  274. package/dist/collection/components/six-menu-divider/six-menu-divider.css +3 -2
  275. package/dist/collection/components/six-menu-divider/six-menu-divider.js +16 -16
  276. package/dist/collection/components/six-menu-divider/six-menu-divider.js.map +1 -1
  277. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js +18 -0
  278. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js.map +1 -0
  279. package/dist/collection/components/six-menu-item/six-menu-item.css +13 -2
  280. package/dist/collection/components/six-menu-item/six-menu-item.js +211 -178
  281. package/dist/collection/components/six-menu-item/six-menu-item.js.map +1 -1
  282. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js +33 -0
  283. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js.map +1 -0
  284. package/dist/collection/components/six-menu-label/six-menu-label.css +1 -1
  285. package/dist/collection/components/six-menu-label/six-menu-label.js +16 -16
  286. package/dist/collection/components/six-menu-label/six-menu-label.js.map +1 -1
  287. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js +20 -0
  288. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js.map +1 -0
  289. package/dist/collection/components/six-picto/six-picto.js +47 -47
  290. package/dist/collection/components/six-picto/six-picto.js.map +1 -1
  291. package/dist/collection/components/six-picto/test/six-picto.spec.js +33 -0
  292. package/dist/collection/components/six-picto/test/six-picto.spec.js.map +1 -0
  293. package/dist/collection/components/six-progress-bar/six-progress-bar.css +1 -1
  294. package/dist/collection/components/six-progress-bar/six-progress-bar.js +65 -65
  295. package/dist/collection/components/six-progress-bar/six-progress-bar.js.map +1 -1
  296. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js +24 -0
  297. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js.map +1 -0
  298. package/dist/collection/components/six-progress-ring/six-progress-ring.css +1 -1
  299. package/dist/collection/components/six-progress-ring/six-progress-ring.js +101 -101
  300. package/dist/collection/components/six-progress-ring/six-progress-ring.js.map +1 -1
  301. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js +26 -0
  302. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js.map +1 -0
  303. package/dist/collection/components/six-radio/six-radio.css +1 -1
  304. package/dist/collection/components/six-radio/six-radio.js +323 -340
  305. package/dist/collection/components/six-radio/six-radio.js.map +1 -1
  306. package/dist/collection/components/six-radio/test/six-radio.spec.js +63 -0
  307. package/dist/collection/components/six-radio/test/six-radio.spec.js.map +1 -0
  308. package/dist/collection/components/six-range/six-range.css +5 -2
  309. package/dist/collection/components/six-range/six-range.js +568 -540
  310. package/dist/collection/components/six-range/six-range.js.map +1 -1
  311. package/dist/collection/components/six-range/test/six-range.spec.js +34 -0
  312. package/dist/collection/components/six-range/test/six-range.spec.js.map +1 -0
  313. package/dist/collection/components/six-root/six-root.js +153 -151
  314. package/dist/collection/components/six-root/six-root.js.map +1 -1
  315. package/dist/collection/components/six-root/test/six-root.spec.js +43 -0
  316. package/dist/collection/components/six-root/test/six-root.spec.js.map +1 -0
  317. package/dist/collection/components/six-search-field/six-search-field.css +1 -1
  318. package/dist/collection/components/six-search-field/six-search-field.js +172 -171
  319. package/dist/collection/components/six-search-field/six-search-field.js.map +1 -1
  320. package/dist/collection/components/six-search-field/test/six-search-field.spec.js +22 -0
  321. package/dist/collection/components/six-search-field/test/six-search-field.spec.js.map +1 -0
  322. package/dist/collection/components/six-select/six-select.css +61 -73
  323. package/dist/collection/components/six-select/six-select.js +1123 -920
  324. package/dist/collection/components/six-select/six-select.js.map +1 -1
  325. package/dist/collection/components/six-select/test/six-select.spec.js +102 -0
  326. package/dist/collection/components/six-select/test/six-select.spec.js.map +1 -0
  327. package/dist/collection/components/six-select/test/util.spec.js +81 -0
  328. package/dist/collection/components/six-select/test/util.spec.js.map +1 -0
  329. package/dist/collection/components/six-select/util.js +34 -34
  330. package/dist/collection/components/six-select/util.js.map +1 -1
  331. package/dist/collection/components/six-sidebar/six-sidebar.css +2 -2
  332. package/dist/collection/components/six-sidebar/six-sidebar.js +468 -454
  333. package/dist/collection/components/six-sidebar/six-sidebar.js.map +1 -1
  334. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js +22 -0
  335. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js.map +1 -0
  336. package/dist/collection/components/six-sidebar-item/six-sidebar-item.css +6 -1
  337. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +102 -83
  338. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js.map +1 -1
  339. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js +50 -0
  340. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js.map +1 -0
  341. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.css +12 -1
  342. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js +182 -154
  343. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js.map +1 -1
  344. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js +53 -0
  345. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js.map +1 -0
  346. package/dist/collection/components/six-spinner/six-spinner.css +1 -1
  347. package/dist/collection/components/six-spinner/six-spinner.js +48 -47
  348. package/dist/collection/components/six-spinner/six-spinner.js.map +1 -1
  349. package/dist/collection/components/six-spinner/test/six-spinner.spec.js +37 -0
  350. package/dist/collection/components/six-spinner/test/six-spinner.spec.js.map +1 -0
  351. package/dist/collection/components/six-stage-indicator/six-stage-indicator.css +1 -1
  352. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js +46 -45
  353. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js.map +1 -1
  354. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js +117 -0
  355. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js.map +1 -0
  356. package/dist/collection/components/six-switch/six-switch.css +5 -2
  357. package/dist/collection/components/six-switch/six-switch.js +389 -341
  358. package/dist/collection/components/six-switch/six-switch.js.map +1 -1
  359. package/dist/collection/components/six-switch/test/six-switch.spec.js +73 -0
  360. package/dist/collection/components/six-switch/test/six-switch.spec.js.map +1 -0
  361. package/dist/collection/components/six-tab/six-tab.css +55 -6
  362. package/dist/collection/components/six-tab/six-tab.js +207 -186
  363. package/dist/collection/components/six-tab/six-tab.js.map +1 -1
  364. package/dist/collection/components/six-tab-group/six-tab-group.css +1 -32
  365. package/dist/collection/components/six-tab-group/six-tab-group.js +320 -357
  366. package/dist/collection/components/six-tab-group/six-tab-group.js.map +1 -1
  367. package/dist/collection/components/six-tab-panel/six-tab-panel.css +1 -1
  368. package/dist/collection/components/six-tab-panel/six-tab-panel.js +64 -64
  369. package/dist/collection/components/six-tab-panel/six-tab-panel.js.map +1 -1
  370. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js +20 -0
  371. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js.map +1 -0
  372. package/dist/collection/components/six-tag/six-tag.css +7 -1
  373. package/dist/collection/components/six-tag/six-tag.js +162 -139
  374. package/dist/collection/components/six-tag/six-tag.js.map +1 -1
  375. package/dist/collection/components/six-tag/test/six-tag.spec.js +54 -0
  376. package/dist/collection/components/six-tag/test/six-tag.spec.js.map +1 -0
  377. package/dist/collection/components/six-textarea/six-textarea.css +5 -2
  378. package/dist/collection/components/six-textarea/six-textarea.js +795 -760
  379. package/dist/collection/components/six-textarea/six-textarea.js.map +1 -1
  380. package/dist/collection/components/six-textarea/test/six-textarea.spec.js +119 -0
  381. package/dist/collection/components/six-textarea/test/six-textarea.spec.js.map +1 -0
  382. package/dist/collection/components/six-tile/six-tile.css +2 -2
  383. package/dist/collection/components/six-tile/six-tile.js +300 -296
  384. package/dist/collection/components/six-tile/six-tile.js.map +1 -1
  385. package/dist/collection/components/six-tile/test/six-tile.spec.js +69 -0
  386. package/dist/collection/components/six-tile/test/six-tile.spec.js.map +1 -0
  387. package/dist/collection/components/six-timepicker/six-timepicker.css +1 -1
  388. package/dist/collection/components/six-timepicker/six-timepicker.js +832 -813
  389. package/dist/collection/components/six-timepicker/six-timepicker.js.map +1 -1
  390. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js +496 -0
  391. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js.map +1 -0
  392. package/dist/collection/components/six-tooltip/six-tooltip.css +2 -2
  393. package/dist/collection/components/six-tooltip/six-tooltip.js +409 -403
  394. package/dist/collection/components/six-tooltip/six-tooltip.js.map +1 -1
  395. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js +28 -0
  396. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js.map +1 -0
  397. package/dist/collection/functional-components/form-control/form-control.js +20 -18
  398. package/dist/collection/functional-components/form-control/form-control.js.map +1 -1
  399. package/dist/collection/testUtil/delay.js +1 -1
  400. package/dist/collection/testUtil/delay.js.map +1 -1
  401. package/dist/collection/utils/animation.js +34 -0
  402. package/dist/collection/utils/animation.js.map +1 -0
  403. package/dist/collection/utils/date-util.js +501 -501
  404. package/dist/collection/utils/date-util.js.map +1 -1
  405. package/dist/collection/utils/date-util.spec.js +995 -0
  406. package/dist/collection/utils/date-util.spec.js.map +1 -0
  407. package/dist/collection/utils/error-messages.js +102 -81
  408. package/dist/collection/utils/error-messages.js.map +1 -1
  409. package/dist/collection/utils/event-listeners.js +51 -51
  410. package/dist/collection/utils/event-listeners.js.map +1 -1
  411. package/dist/collection/utils/execution-control.js +14 -14
  412. package/dist/collection/utils/execution-control.js.map +1 -1
  413. package/dist/collection/utils/focus-visible.js +28 -28
  414. package/dist/collection/utils/focus-visible.js.map +1 -1
  415. package/dist/collection/utils/form.js +12 -12
  416. package/dist/collection/utils/form.js.map +1 -1
  417. package/dist/collection/utils/modal.js +25 -25
  418. package/dist/collection/utils/modal.js.map +1 -1
  419. package/dist/collection/utils/offset.js +4 -4
  420. package/dist/collection/utils/offset.js.map +1 -1
  421. package/dist/collection/utils/popover.js +100 -100
  422. package/dist/collection/utils/popover.js.map +1 -1
  423. package/dist/collection/utils/popup.js +71 -71
  424. package/dist/collection/utils/popup.js.map +1 -1
  425. package/dist/collection/utils/scroll.js +28 -28
  426. package/dist/collection/utils/scroll.js.map +1 -1
  427. package/dist/collection/utils/scroll.spec.js +122 -0
  428. package/dist/collection/utils/scroll.spec.js.map +1 -0
  429. package/dist/collection/utils/slot.js +28 -29
  430. package/dist/collection/utils/slot.js.map +1 -1
  431. package/dist/collection/utils/support.js +10 -10
  432. package/dist/collection/utils/support.js.map +1 -1
  433. package/dist/collection/utils/tabbable.js +17 -17
  434. package/dist/collection/utils/tabbable.js.map +1 -1
  435. package/dist/collection/utils/time.util.js +72 -72
  436. package/dist/collection/utils/time.util.js.map +1 -1
  437. package/dist/collection/utils/time.util.spec.js +368 -0
  438. package/dist/collection/utils/time.util.spec.js.map +1 -0
  439. package/dist/collection/wrappers/set-attributes/set-attributes.js +66 -66
  440. package/dist/collection/wrappers/set-attributes/set-attributes.js.map +1 -1
  441. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js +16 -0
  442. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js.map +1 -0
  443. package/dist/components/event-listeners.js +51 -51
  444. package/dist/components/event-listeners.js.map +1 -1
  445. package/dist/components/execution-control.js +14 -14
  446. package/dist/components/execution-control.js.map +1 -1
  447. package/dist/components/focus-visible.js +28 -28
  448. package/dist/components/focus-visible.js.map +1 -1
  449. package/dist/components/form-control.js +26 -23
  450. package/dist/components/form-control.js.map +1 -1
  451. package/dist/components/form.js +12 -12
  452. package/dist/components/form.js.map +1 -1
  453. package/dist/components/index.d.ts +6 -0
  454. package/dist/components/index.js +65 -153
  455. package/dist/components/index.js.map +1 -1
  456. package/dist/components/modal.js +35 -35
  457. package/dist/components/modal.js.map +1 -1
  458. package/dist/components/popover.js +98 -98
  459. package/dist/components/popover.js.map +1 -1
  460. package/dist/components/scroll.js +32 -32
  461. package/dist/components/scroll.js.map +1 -1
  462. package/dist/components/set-attributes.d.ts +2 -2
  463. package/dist/components/set-attributes2.js +58 -56
  464. package/dist/components/set-attributes2.js.map +1 -1
  465. package/dist/components/six-alert.d.ts +2 -2
  466. package/dist/components/six-alert.js +145 -142
  467. package/dist/components/six-alert.js.map +1 -1
  468. package/dist/components/six-avatar.d.ts +2 -2
  469. package/dist/components/six-avatar.js +45 -45
  470. package/dist/components/six-avatar.js.map +1 -1
  471. package/dist/components/six-badge.d.ts +2 -2
  472. package/dist/components/six-badge.js +40 -40
  473. package/dist/components/six-badge.js.map +1 -1
  474. package/dist/components/six-button.d.ts +2 -2
  475. package/dist/components/six-button.js +1 -142
  476. package/dist/components/six-button.js.map +1 -1
  477. package/dist/components/six-button2.js +146 -0
  478. package/dist/components/six-button2.js.map +1 -0
  479. package/dist/components/six-card.d.ts +2 -2
  480. package/dist/components/six-card.js +21 -21
  481. package/dist/components/six-card.js.map +1 -1
  482. package/dist/components/six-checkbox.d.ts +2 -2
  483. package/dist/components/six-checkbox.js +1 -154
  484. package/dist/components/six-checkbox.js.map +1 -1
  485. package/dist/components/six-checkbox2.js +165 -0
  486. package/dist/components/six-checkbox2.js.map +1 -0
  487. package/dist/components/six-datepicker.d.ts +2 -2
  488. package/dist/components/six-datepicker.js +907 -899
  489. package/dist/components/six-datepicker.js.map +1 -1
  490. package/dist/components/six-details.d.ts +2 -2
  491. package/dist/components/six-details2.js +158 -156
  492. package/dist/components/six-details2.js.map +1 -1
  493. package/dist/components/six-dialog.d.ts +2 -2
  494. package/dist/components/six-dialog.js +159 -157
  495. package/dist/components/six-dialog.js.map +1 -1
  496. package/dist/components/six-drawer.d.ts +2 -2
  497. package/dist/components/six-drawer.js +179 -177
  498. package/dist/components/six-drawer.js.map +1 -1
  499. package/dist/components/six-dropdown.d.ts +2 -2
  500. package/dist/components/six-dropdown2.js +551 -464
  501. package/dist/components/six-dropdown2.js.map +1 -1
  502. package/dist/components/six-error-page.d.ts +2 -2
  503. package/dist/components/six-error-page.js +106 -106
  504. package/dist/components/six-error-page.js.map +1 -1
  505. package/dist/components/six-error.d.ts +11 -0
  506. package/dist/components/six-error.js +8 -0
  507. package/dist/components/six-error.js.map +1 -0
  508. package/dist/components/six-error2.js +32 -0
  509. package/dist/components/six-error2.js.map +1 -0
  510. package/dist/components/six-file-list-item.d.ts +2 -2
  511. package/dist/components/six-file-list-item.js +58 -58
  512. package/dist/components/six-file-list-item.js.map +1 -1
  513. package/dist/components/six-file-list.d.ts +2 -2
  514. package/dist/components/six-file-list.js +20 -20
  515. package/dist/components/six-file-list.js.map +1 -1
  516. package/dist/components/six-file-upload.d.ts +2 -2
  517. package/dist/components/six-file-upload.js +124 -124
  518. package/dist/components/six-file-upload.js.map +1 -1
  519. package/dist/components/six-footer.d.ts +2 -2
  520. package/dist/components/six-footer.js +21 -21
  521. package/dist/components/six-footer.js.map +1 -1
  522. package/dist/components/six-group-label.d.ts +2 -2
  523. package/dist/components/six-group-label.js +71 -62
  524. package/dist/components/six-group-label.js.map +1 -1
  525. package/dist/components/six-header.d.ts +2 -2
  526. package/dist/components/six-header.js +237 -207
  527. package/dist/components/six-header.js.map +1 -1
  528. package/dist/components/six-icon-button.d.ts +2 -2
  529. package/dist/components/six-icon-button2.js +55 -55
  530. package/dist/components/six-icon-button2.js.map +1 -1
  531. package/dist/components/six-icon.d.ts +2 -2
  532. package/dist/components/six-icon2.js +38 -38
  533. package/dist/components/six-icon2.js.map +1 -1
  534. package/dist/components/six-input.d.ts +2 -2
  535. package/dist/components/six-input2.js +258 -239
  536. package/dist/components/six-input2.js.map +1 -1
  537. package/dist/components/six-item-picker.d.ts +2 -2
  538. package/dist/components/six-item-picker2.js +450 -348
  539. package/dist/components/six-item-picker2.js.map +1 -1
  540. package/dist/components/six-language-switcher.d.ts +2 -2
  541. package/dist/components/six-language-switcher.js +64 -62
  542. package/dist/components/six-language-switcher.js.map +1 -1
  543. package/dist/components/six-layout-grid.d.ts +2 -2
  544. package/dist/components/six-layout-grid.js +37 -35
  545. package/dist/components/six-layout-grid.js.map +1 -1
  546. package/dist/components/six-main-container.d.ts +2 -2
  547. package/dist/components/six-main-container.js +24 -24
  548. package/dist/components/six-main-container.js.map +1 -1
  549. package/dist/components/six-menu-divider.d.ts +2 -2
  550. package/dist/components/six-menu-divider.js +21 -21
  551. package/dist/components/six-menu-divider.js.map +1 -1
  552. package/dist/components/six-menu-item.d.ts +2 -2
  553. package/dist/components/six-menu-item2.js +98 -75
  554. package/dist/components/six-menu-item2.js.map +1 -1
  555. package/dist/components/six-menu-label.d.ts +2 -2
  556. package/dist/components/six-menu-label.js +21 -21
  557. package/dist/components/six-menu-label.js.map +1 -1
  558. package/dist/components/six-menu.d.ts +2 -2
  559. package/dist/components/six-menu2.js +236 -220
  560. package/dist/components/six-menu2.js.map +1 -1
  561. package/dist/components/six-picto.d.ts +2 -2
  562. package/dist/components/six-picto2.js +29 -29
  563. package/dist/components/six-picto2.js.map +1 -1
  564. package/dist/components/six-progress-bar.d.ts +2 -2
  565. package/dist/components/six-progress-bar.js +31 -31
  566. package/dist/components/six-progress-bar.js.map +1 -1
  567. package/dist/components/six-progress-ring.d.ts +2 -2
  568. package/dist/components/six-progress-ring.js +49 -47
  569. package/dist/components/six-progress-ring.js.map +1 -1
  570. package/dist/components/six-radio.d.ts +2 -2
  571. package/dist/components/six-radio.js +128 -134
  572. package/dist/components/six-radio.js.map +1 -1
  573. package/dist/components/six-range.d.ts +2 -2
  574. package/dist/components/six-range.js +233 -215
  575. package/dist/components/six-range.js.map +1 -1
  576. package/dist/components/six-root.d.ts +2 -2
  577. package/dist/components/six-root.js +66 -64
  578. package/dist/components/six-root.js.map +1 -1
  579. package/dist/components/six-search-field.d.ts +2 -2
  580. package/dist/components/six-search-field.js +79 -71
  581. package/dist/components/six-search-field.js.map +1 -1
  582. package/dist/components/six-select.d.ts +2 -2
  583. package/dist/components/six-select.js +713 -438
  584. package/dist/components/six-select.js.map +1 -1
  585. package/dist/components/six-sidebar-item-group.d.ts +2 -2
  586. package/dist/components/six-sidebar-item-group.js +87 -75
  587. package/dist/components/six-sidebar-item-group.js.map +1 -1
  588. package/dist/components/six-sidebar-item.d.ts +2 -2
  589. package/dist/components/six-sidebar-item.js +35 -32
  590. package/dist/components/six-sidebar-item.js.map +1 -1
  591. package/dist/components/six-sidebar.d.ts +2 -2
  592. package/dist/components/six-sidebar.js +199 -197
  593. package/dist/components/six-sidebar.js.map +1 -1
  594. package/dist/components/six-spinner.d.ts +2 -2
  595. package/dist/components/six-spinner2.js +30 -30
  596. package/dist/components/six-spinner2.js.map +1 -1
  597. package/dist/components/six-stage-indicator.d.ts +2 -2
  598. package/dist/components/six-stage-indicator2.js +29 -29
  599. package/dist/components/six-stage-indicator2.js.map +1 -1
  600. package/dist/components/six-switch.d.ts +2 -2
  601. package/dist/components/six-switch.js +142 -110
  602. package/dist/components/six-switch.js.map +1 -1
  603. package/dist/components/six-tab-group.d.ts +2 -2
  604. package/dist/components/six-tab-group.js +260 -263
  605. package/dist/components/six-tab-group.js.map +1 -1
  606. package/dist/components/six-tab-panel.d.ts +2 -2
  607. package/dist/components/six-tab-panel.js +30 -30
  608. package/dist/components/six-tab-panel.js.map +1 -1
  609. package/dist/components/six-tab.d.ts +2 -2
  610. package/dist/components/six-tab.js +85 -69
  611. package/dist/components/six-tab.js.map +1 -1
  612. package/dist/components/six-tag.d.ts +2 -2
  613. package/dist/components/six-tag.js +98 -1
  614. package/dist/components/six-tag.js.map +1 -1
  615. package/dist/components/six-textarea.d.ts +2 -2
  616. package/dist/components/six-textarea.js +236 -223
  617. package/dist/components/six-textarea.js.map +1 -1
  618. package/dist/components/six-tile.d.ts +2 -2
  619. package/dist/components/six-tile.js +117 -117
  620. package/dist/components/six-tile.js.map +1 -1
  621. package/dist/components/six-timepicker.d.ts +2 -2
  622. package/dist/components/six-timepicker2.js +491 -487
  623. package/dist/components/six-timepicker2.js.map +1 -1
  624. package/dist/components/six-tooltip.d.ts +2 -2
  625. package/dist/components/six-tooltip2.js +172 -170
  626. package/dist/components/six-tooltip2.js.map +1 -1
  627. package/dist/components/slot.js +29 -30
  628. package/dist/components/slot.js.map +1 -1
  629. package/dist/components.d.ts +341 -88
  630. package/dist/components.json +4652 -164
  631. package/dist/esm/error-messages-1eaaad23.js +115 -0
  632. package/dist/esm/error-messages-1eaaad23.js.map +1 -0
  633. package/dist/esm/event-listeners-706d4309.js +59 -0
  634. package/dist/esm/event-listeners-706d4309.js.map +1 -0
  635. package/dist/esm/{execution-control-72cc50f4.js → execution-control-2ebaf4ef.js} +15 -15
  636. package/dist/esm/execution-control-2ebaf4ef.js.map +1 -0
  637. package/dist/esm/focus-visible-d9dbfeef.js +45 -0
  638. package/dist/esm/focus-visible-d9dbfeef.js.map +1 -0
  639. package/dist/esm/form-4b145b7a.js +18 -0
  640. package/dist/esm/form-4b145b7a.js.map +1 -0
  641. package/dist/esm/form-control-77fcccd0.js +34 -0
  642. package/dist/esm/form-control-77fcccd0.js.map +1 -0
  643. package/dist/esm/{index-5c0f6628.js → index-6c10d50b.js} +766 -203
  644. package/dist/esm/index-6c10d50b.js.map +1 -0
  645. package/dist/esm/index.js +1 -92
  646. package/dist/esm/index.js.map +1 -1
  647. package/dist/esm/loader.js +4 -13
  648. package/dist/esm/loader.js.map +1 -1
  649. package/dist/esm/modal-96526245.js +49 -0
  650. package/dist/esm/modal-96526245.js.map +1 -0
  651. package/dist/esm/{popover-2e72e7d8.js → popover-25996e62.js} +99 -99
  652. package/dist/esm/popover-25996e62.js.map +1 -0
  653. package/dist/esm/popup-7209e9d5.js +98 -0
  654. package/dist/esm/popup-7209e9d5.js.map +1 -0
  655. package/dist/esm/scroll-3e16851e.js +64 -0
  656. package/dist/esm/scroll-3e16851e.js.map +1 -0
  657. package/dist/esm/set-attributes_2.entry.js +51 -51
  658. package/dist/esm/set-attributes_2.entry.js.map +1 -1
  659. package/dist/esm/six-alert.entry.js +110 -110
  660. package/dist/esm/six-alert.entry.js.map +1 -1
  661. package/dist/esm/six-avatar.entry.js +21 -21
  662. package/dist/esm/six-avatar.entry.js.map +1 -1
  663. package/dist/esm/six-badge.entry.js +23 -23
  664. package/dist/esm/six-badge.entry.js.map +1 -1
  665. package/dist/esm/six-button.entry.js +95 -95
  666. package/dist/esm/six-button.entry.js.map +1 -1
  667. package/dist/esm/six-card.entry.js +8 -8
  668. package/dist/esm/six-card.entry.js.map +1 -1
  669. package/dist/esm/six-checkbox_2.entry.js +185 -0
  670. package/dist/esm/six-checkbox_2.entry.js.map +1 -0
  671. package/dist/esm/six-datepicker.entry.js +836 -838
  672. package/dist/esm/six-datepicker.entry.js.map +1 -1
  673. package/dist/esm/six-details.entry.js +127 -127
  674. package/dist/esm/six-details.entry.js.map +1 -1
  675. package/dist/esm/six-dialog.entry.js +129 -129
  676. package/dist/esm/six-dialog.entry.js.map +1 -1
  677. package/dist/esm/six-drawer.entry.js +147 -147
  678. package/dist/esm/six-drawer.entry.js.map +1 -1
  679. package/dist/esm/six-dropdown_2.entry.js +707 -637
  680. package/dist/esm/six-dropdown_2.entry.js.map +1 -1
  681. package/dist/esm/six-error-page.entry.js +82 -82
  682. package/dist/esm/six-error-page.entry.js.map +1 -1
  683. package/dist/esm/six-error.entry.js +17 -0
  684. package/dist/esm/six-error.entry.js.map +1 -0
  685. package/dist/esm/six-file-list-item.entry.js +33 -33
  686. package/dist/esm/six-file-list-item.entry.js.map +1 -1
  687. package/dist/esm/six-file-list.entry.js +7 -7
  688. package/dist/esm/six-file-list.entry.js.map +1 -1
  689. package/dist/esm/six-file-upload.entry.js +99 -99
  690. package/dist/esm/six-file-upload.entry.js.map +1 -1
  691. package/dist/esm/six-footer.entry.js +8 -8
  692. package/dist/esm/six-footer.entry.js.map +1 -1
  693. package/dist/esm/six-group-label.entry.js +43 -43
  694. package/dist/esm/six-group-label.entry.js.map +1 -1
  695. package/dist/esm/six-header.entry.js +171 -156
  696. package/dist/esm/six-header.entry.js.map +1 -1
  697. package/dist/esm/six-icon-button.entry.js +32 -32
  698. package/dist/esm/six-icon-button.entry.js.map +1 -1
  699. package/dist/esm/six-icon.entry.js +22 -22
  700. package/dist/esm/six-icon.entry.js.map +1 -1
  701. package/dist/esm/six-input.entry.js +192 -187
  702. package/dist/esm/six-input.entry.js.map +1 -1
  703. package/dist/esm/six-item-picker.entry.js +405 -309
  704. package/dist/esm/six-item-picker.entry.js.map +1 -1
  705. package/dist/esm/six-language-switcher.entry.js +46 -46
  706. package/dist/esm/six-language-switcher.entry.js.map +1 -1
  707. package/dist/esm/six-layout-grid.entry.js +20 -20
  708. package/dist/esm/six-layout-grid.entry.js.map +1 -1
  709. package/dist/esm/six-main-container.entry.js +9 -9
  710. package/dist/esm/six-main-container.entry.js.map +1 -1
  711. package/dist/esm/six-menu-divider.entry.js +8 -8
  712. package/dist/esm/six-menu-divider.entry.js.map +1 -1
  713. package/dist/esm/six-menu-label.entry.js +8 -8
  714. package/dist/esm/six-menu-label.entry.js.map +1 -1
  715. package/dist/esm/six-picto.entry.js +14 -14
  716. package/dist/esm/six-picto.entry.js.map +1 -1
  717. package/dist/esm/six-progress-bar.entry.js +15 -15
  718. package/dist/esm/six-progress-bar.entry.js.map +1 -1
  719. package/dist/esm/six-progress-ring.entry.js +30 -30
  720. package/dist/esm/six-progress-ring.entry.js.map +1 -1
  721. package/dist/esm/six-radio.entry.js +104 -112
  722. package/dist/esm/six-radio.entry.js.map +1 -1
  723. package/dist/esm/six-range.entry.js +180 -177
  724. package/dist/esm/six-range.entry.js.map +1 -1
  725. package/dist/esm/six-root.entry.js +30 -30
  726. package/dist/esm/six-root.entry.js.map +1 -1
  727. package/dist/esm/six-search-field.entry.js +44 -44
  728. package/dist/esm/six-search-field.entry.js.map +1 -1
  729. package/dist/esm/six-select.entry.js +496 -361
  730. package/dist/esm/six-select.entry.js.map +1 -1
  731. package/dist/esm/six-sidebar-item-group.entry.js +56 -45
  732. package/dist/esm/six-sidebar-item-group.entry.js.map +1 -1
  733. package/dist/esm/six-sidebar-item.entry.js +17 -15
  734. package/dist/esm/six-sidebar-item.entry.js.map +1 -1
  735. package/dist/esm/six-sidebar.entry.js +174 -174
  736. package/dist/esm/six-sidebar.entry.js.map +1 -1
  737. package/dist/esm/six-spinner.entry.js +15 -15
  738. package/dist/esm/six-spinner.entry.js.map +1 -1
  739. package/dist/esm/six-switch.entry.js +107 -87
  740. package/dist/esm/six-switch.entry.js.map +1 -1
  741. package/dist/esm/six-tab-group.entry.js +230 -235
  742. package/dist/esm/six-tab-group.entry.js.map +1 -1
  743. package/dist/esm/six-tab-panel.entry.js +14 -14
  744. package/dist/esm/six-tab-panel.entry.js.map +1 -1
  745. package/dist/esm/six-tab.entry.js +55 -39
  746. package/dist/esm/six-tab.entry.js.map +1 -1
  747. package/dist/esm/six-tag.entry.js +55 -33
  748. package/dist/esm/six-tag.entry.js.map +1 -1
  749. package/dist/esm/six-textarea.entry.js +182 -183
  750. package/dist/esm/six-textarea.entry.js.map +1 -1
  751. package/dist/esm/six-tile.entry.js +77 -77
  752. package/dist/esm/six-tile.entry.js.map +1 -1
  753. package/dist/esm/six-timepicker.entry.js +348 -353
  754. package/dist/esm/six-timepicker.entry.js.map +1 -1
  755. package/dist/esm/six-tooltip.entry.js +148 -148
  756. package/dist/esm/six-tooltip.entry.js.map +1 -1
  757. package/dist/esm/slot-56531341.js +47 -0
  758. package/dist/esm/slot-56531341.js.map +1 -0
  759. package/dist/esm/types-a07bb999.js +19 -0
  760. package/dist/esm/types-a07bb999.js.map +1 -0
  761. package/dist/esm/ui-library.js +4 -7
  762. package/dist/esm/ui-library.js.map +1 -1
  763. package/dist/types/components/six-alert/six-alert.d.ts +40 -40
  764. package/dist/types/components/six-avatar/six-avatar.d.ts +11 -11
  765. package/dist/types/components/six-badge/six-badge.d.ts +7 -7
  766. package/dist/types/components/six-button/six-button.d.ts +48 -48
  767. package/dist/types/components/six-card/six-card.d.ts +1 -1
  768. package/dist/types/components/six-checkbox/six-checkbox.d.ts +58 -59
  769. package/dist/types/components/six-datepicker/components/day-selection.d.ts +3 -3
  770. package/dist/types/components/six-datepicker/components/month-selection.d.ts +3 -3
  771. package/dist/types/components/six-datepicker/components/year-selection.d.ts +3 -3
  772. package/dist/types/components/six-datepicker/six-date-formats.d.ts +20 -20
  773. package/dist/types/components/six-datepicker/six-datepicker.d.ts +188 -186
  774. package/dist/types/components/six-details/six-details.d.ts +42 -42
  775. package/dist/types/components/six-dialog/six-dialog.d.ts +50 -50
  776. package/dist/types/components/six-drawer/six-drawer.d.ts +58 -58
  777. package/dist/types/components/six-dropdown/six-dropdown.d.ts +131 -112
  778. package/dist/types/components/six-error/six-error.d.ts +9 -0
  779. package/dist/types/components/six-error-page/six-error-page.d.ts +25 -25
  780. package/dist/types/components/six-file-list/six-file-list.d.ts +1 -1
  781. package/dist/types/components/six-file-list-item/six-file-list-item.d.ts +23 -23
  782. package/dist/types/components/six-file-upload/six-file-upload.d.ts +33 -33
  783. package/dist/types/components/six-footer/six-footer.d.ts +1 -1
  784. package/dist/types/components/six-group-label/six-group-label.d.ts +22 -22
  785. package/dist/types/components/six-header/six-header.d.ts +59 -55
  786. package/dist/types/components/six-icon/six-icon.d.ts +5 -5
  787. package/dist/types/components/six-icon-button/six-icon-button.d.ts +18 -18
  788. package/dist/types/components/six-input/six-input.d.ts +112 -103
  789. package/dist/types/components/six-item-picker/six-item-picker.d.ts +95 -88
  790. package/dist/types/components/six-item-picker/types.d.ts +7 -7
  791. package/dist/types/components/six-language-switcher/six-language-switcher.d.ts +15 -15
  792. package/dist/types/components/six-layout-grid/six-layout-grid.d.ts +6 -6
  793. package/dist/types/components/six-main-container/six-main-container.d.ts +4 -4
  794. package/dist/types/components/six-menu/six-menu.d.ts +67 -63
  795. package/dist/types/components/six-menu-divider/six-menu-divider.d.ts +1 -1
  796. package/dist/types/components/six-menu-item/six-menu-item.d.ts +27 -21
  797. package/dist/types/components/six-menu-label/six-menu-label.d.ts +1 -1
  798. package/dist/types/components/six-picto/six-picto.d.ts +6 -6
  799. package/dist/types/components/six-progress-bar/six-progress-bar.d.ts +5 -5
  800. package/dist/types/components/six-progress-ring/six-progress-ring.d.ts +11 -11
  801. package/dist/types/components/six-radio/six-radio.d.ts +38 -43
  802. package/dist/types/components/six-range/six-range.d.ts +75 -72
  803. package/dist/types/components/six-root/six-root.d.ts +18 -18
  804. package/dist/types/components/six-search-field/six-search-field.d.ts +20 -20
  805. package/dist/types/components/six-select/six-select.d.ts +137 -119
  806. package/dist/types/components/six-select/util.d.ts +1 -1
  807. package/dist/types/components/six-sidebar/six-sidebar.d.ts +45 -45
  808. package/dist/types/components/six-sidebar-item/six-sidebar-item.d.ts +12 -7
  809. package/dist/types/components/six-sidebar-item-group/six-sidebar-item-group.d.ts +25 -19
  810. package/dist/types/components/six-spinner/six-spinner.d.ts +6 -5
  811. package/dist/types/components/six-stage-indicator/six-stage-indicator.d.ts +3 -3
  812. package/dist/types/components/six-switch/six-switch.d.ts +49 -42
  813. package/dist/types/components/six-tab/six-tab.d.ts +20 -20
  814. package/dist/types/components/six-tab-group/six-tab-group.d.ts +35 -38
  815. package/dist/types/components/six-tab-panel/six-tab-panel.d.ts +7 -7
  816. package/dist/types/components/six-tag/six-tag.d.ts +20 -12
  817. package/dist/types/components/six-textarea/six-textarea.d.ts +89 -86
  818. package/dist/types/components/six-tile/six-tile.d.ts +31 -31
  819. package/dist/types/components/six-timepicker/six-timepicker.d.ts +154 -151
  820. package/dist/types/components/six-tooltip/six-tooltip.d.ts +55 -55
  821. package/dist/types/components.d.ts +567 -27
  822. package/dist/types/functional-components/form-control/form-control.d.ts +32 -28
  823. package/dist/types/stencil-public-runtime.d.ts +49 -5
  824. package/dist/types/utils/animation.d.ts +12 -0
  825. package/dist/types/utils/date-util.d.ts +50 -50
  826. package/dist/types/utils/error-messages.d.ts +27 -25
  827. package/dist/types/utils/event-listeners.d.ts +11 -11
  828. package/dist/types/utils/focus-visible.d.ts +2 -2
  829. package/dist/types/utils/modal.d.ts +8 -8
  830. package/dist/types/utils/offset.d.ts +2 -2
  831. package/dist/types/utils/popover.d.ts +21 -21
  832. package/dist/types/utils/slot.d.ts +0 -1
  833. package/dist/types/utils/time.util.d.ts +6 -6
  834. package/dist/types/utils/types.d.ts +1 -1
  835. package/dist/types/wrappers/set-attributes/set-attributes.d.ts +7 -7
  836. package/dist/ui-library/index.esm.js +1 -1
  837. package/dist/ui-library/index.esm.js.map +1 -1
  838. package/dist/ui-library/p-01ae4500.entry.js +2 -0
  839. package/dist/ui-library/p-01ae4500.entry.js.map +1 -0
  840. package/dist/ui-library/p-021f6da9.entry.js +2 -0
  841. package/dist/ui-library/p-021f6da9.entry.js.map +1 -0
  842. package/dist/ui-library/p-0274c52c.entry.js +2 -0
  843. package/dist/ui-library/p-0274c52c.entry.js.map +1 -0
  844. package/dist/ui-library/{p-0cc08e91.js → p-06ba4450.js} +1 -1
  845. package/dist/ui-library/p-06ba4450.js.map +1 -0
  846. package/dist/ui-library/{p-d6798d35.entry.js → p-0cb135aa.entry.js} +2 -2
  847. package/dist/ui-library/p-0cb135aa.entry.js.map +1 -0
  848. package/dist/ui-library/p-0cebf1d2.js +2 -0
  849. package/dist/ui-library/p-0cebf1d2.js.map +1 -0
  850. package/dist/ui-library/p-1431a2a8.entry.js +2 -0
  851. package/dist/ui-library/p-1431a2a8.entry.js.map +1 -0
  852. package/dist/ui-library/p-1aa28025.entry.js +2 -0
  853. package/dist/ui-library/p-1aa28025.entry.js.map +1 -0
  854. package/dist/ui-library/p-1b135e1c.entry.js +2 -0
  855. package/dist/ui-library/p-1b135e1c.entry.js.map +1 -0
  856. package/dist/ui-library/{p-73597d13.entry.js → p-1be990f9.entry.js} +2 -2
  857. package/dist/ui-library/p-1be990f9.entry.js.map +1 -0
  858. package/dist/ui-library/p-2008636b.entry.js +2 -0
  859. package/dist/ui-library/p-2008636b.entry.js.map +1 -0
  860. package/dist/ui-library/p-2132da0a.entry.js +2 -0
  861. package/dist/ui-library/p-2132da0a.entry.js.map +1 -0
  862. package/dist/ui-library/p-2cd674e0.entry.js +2 -0
  863. package/dist/ui-library/p-2cd674e0.entry.js.map +1 -0
  864. package/dist/ui-library/p-2d86ba99.entry.js +2 -0
  865. package/dist/ui-library/p-2d86ba99.entry.js.map +1 -0
  866. package/dist/ui-library/p-31a4a74c.entry.js +2 -0
  867. package/dist/ui-library/p-31a4a74c.entry.js.map +1 -0
  868. package/dist/ui-library/p-3783aed0.entry.js +2 -0
  869. package/dist/ui-library/p-3783aed0.entry.js.map +1 -0
  870. package/dist/ui-library/p-391f10f1.entry.js +2 -0
  871. package/dist/ui-library/p-391f10f1.entry.js.map +1 -0
  872. package/dist/ui-library/p-3dd28dc0.entry.js +2 -0
  873. package/dist/ui-library/p-3dd28dc0.entry.js.map +1 -0
  874. package/dist/ui-library/p-3f0f59b6.entry.js +2 -0
  875. package/dist/ui-library/p-3f0f59b6.entry.js.map +1 -0
  876. package/dist/ui-library/p-46ee280d.entry.js +2 -0
  877. package/dist/ui-library/p-46ee280d.entry.js.map +1 -0
  878. package/dist/ui-library/p-4752a63c.entry.js +2 -0
  879. package/dist/ui-library/p-4752a63c.entry.js.map +1 -0
  880. package/dist/ui-library/p-4772a9d3.entry.js +2 -0
  881. package/dist/ui-library/p-4772a9d3.entry.js.map +1 -0
  882. package/dist/ui-library/p-48c453f1.entry.js +2 -0
  883. package/dist/ui-library/p-48c453f1.entry.js.map +1 -0
  884. package/dist/ui-library/p-4a3ba956.entry.js +2 -0
  885. package/dist/ui-library/p-4a3ba956.entry.js.map +1 -0
  886. package/dist/ui-library/p-4b154936.entry.js +2 -0
  887. package/dist/ui-library/p-4b154936.entry.js.map +1 -0
  888. package/dist/ui-library/p-5a5f6869.entry.js +2 -0
  889. package/dist/ui-library/p-5a5f6869.entry.js.map +1 -0
  890. package/dist/ui-library/{p-dcd7c547.entry.js → p-621c2742.entry.js} +2 -2
  891. package/dist/ui-library/p-621c2742.entry.js.map +1 -0
  892. package/dist/ui-library/p-65778e3d.entry.js +2 -0
  893. package/dist/ui-library/p-65778e3d.entry.js.map +1 -0
  894. package/dist/ui-library/p-67496e8c.js +2 -0
  895. package/dist/ui-library/p-67496e8c.js.map +1 -0
  896. package/dist/ui-library/p-78529c8c.entry.js +2 -0
  897. package/dist/ui-library/p-78529c8c.entry.js.map +1 -0
  898. package/dist/ui-library/{p-28be55f0.entry.js → p-7eb4bbe7.entry.js} +2 -2
  899. package/dist/ui-library/p-7eb4bbe7.entry.js.map +1 -0
  900. package/dist/ui-library/{p-0b2c6348.js → p-7f856f00.js} +1 -1
  901. package/dist/ui-library/p-7f856f00.js.map +1 -0
  902. package/dist/ui-library/{p-eb8f05a9.js → p-8227aaed.js} +2 -2
  903. package/dist/ui-library/p-8227aaed.js.map +1 -0
  904. package/dist/ui-library/{p-e8feb81f.entry.js → p-831517cd.entry.js} +2 -2
  905. package/dist/ui-library/p-831517cd.entry.js.map +1 -0
  906. package/dist/ui-library/{p-4d408fb4.js → p-842b492e.js} +1 -1
  907. package/dist/ui-library/p-842b492e.js.map +1 -0
  908. package/dist/ui-library/{p-25a3bf57.js → p-862d474e.js} +1 -1
  909. package/dist/ui-library/p-862d474e.js.map +1 -0
  910. package/dist/ui-library/{p-820c23f0.entry.js → p-87e197ee.entry.js} +2 -2
  911. package/dist/ui-library/p-87e197ee.entry.js.map +1 -0
  912. package/dist/ui-library/p-88767c27.entry.js +2 -0
  913. package/dist/ui-library/p-88767c27.entry.js.map +1 -0
  914. package/dist/ui-library/{p-60621dc6.js → p-8bfb4bfc.js} +1 -1
  915. package/dist/ui-library/p-8bfb4bfc.js.map +1 -0
  916. package/dist/ui-library/{p-9337cdd6.entry.js → p-8c38a7bd.entry.js} +2 -2
  917. package/dist/ui-library/p-8c38a7bd.entry.js.map +1 -0
  918. package/dist/ui-library/p-943ce0f2.entry.js +2 -0
  919. package/dist/ui-library/p-943ce0f2.entry.js.map +1 -0
  920. package/dist/ui-library/p-98ce9502.entry.js +2 -0
  921. package/dist/ui-library/p-98ce9502.entry.js.map +1 -0
  922. package/dist/ui-library/{p-ba74863a.js → p-998de05d.js} +1 -1
  923. package/dist/ui-library/p-998de05d.js.map +1 -0
  924. package/dist/ui-library/p-a036cc6f.entry.js +2 -0
  925. package/dist/ui-library/p-a036cc6f.entry.js.map +1 -0
  926. package/dist/ui-library/{p-8cf72af6.js → p-a1502802.js} +1 -1
  927. package/dist/ui-library/p-a1502802.js.map +1 -0
  928. package/dist/ui-library/p-a29f6a0e.entry.js +2 -0
  929. package/dist/ui-library/p-a29f6a0e.entry.js.map +1 -0
  930. package/dist/ui-library/p-a3fd8c74.entry.js +2 -0
  931. package/dist/ui-library/p-a3fd8c74.entry.js.map +1 -0
  932. package/dist/ui-library/p-a919b557.entry.js +2 -0
  933. package/dist/ui-library/p-a919b557.entry.js.map +1 -0
  934. package/dist/ui-library/p-ace4ec84.entry.js +2 -0
  935. package/dist/ui-library/p-ace4ec84.entry.js.map +1 -0
  936. package/dist/ui-library/{p-afcbe9da.entry.js → p-adf5a4da.entry.js} +2 -2
  937. package/dist/ui-library/p-adf5a4da.entry.js.map +1 -0
  938. package/dist/ui-library/{p-09779e47.entry.js → p-b5f844f7.entry.js} +2 -2
  939. package/dist/ui-library/p-b5f844f7.entry.js.map +1 -0
  940. package/dist/ui-library/p-b8ea574b.entry.js +2 -0
  941. package/dist/ui-library/p-b8ea574b.entry.js.map +1 -0
  942. package/dist/ui-library/p-ca63a6fa.js +3 -0
  943. package/dist/ui-library/p-ca63a6fa.js.map +1 -0
  944. package/dist/ui-library/p-d221d86a.entry.js +2 -0
  945. package/dist/ui-library/p-d221d86a.entry.js.map +1 -0
  946. package/dist/ui-library/p-d702b6ec.entry.js +2 -0
  947. package/dist/ui-library/p-d702b6ec.entry.js.map +1 -0
  948. package/dist/ui-library/p-db9d2fde.entry.js +2 -0
  949. package/dist/ui-library/p-db9d2fde.entry.js.map +1 -0
  950. package/dist/ui-library/p-e080d5b6.js +2 -0
  951. package/dist/ui-library/p-e080d5b6.js.map +1 -0
  952. package/dist/ui-library/p-e0dd0307.entry.js +2 -0
  953. package/dist/ui-library/p-e0dd0307.entry.js.map +1 -0
  954. package/dist/ui-library/p-e340a0ad.entry.js +2 -0
  955. package/dist/ui-library/p-e340a0ad.entry.js.map +1 -0
  956. package/dist/ui-library/p-efa14ac2.entry.js +2 -0
  957. package/dist/ui-library/p-efa14ac2.entry.js.map +1 -0
  958. package/dist/ui-library/p-f136a6b2.js +2 -0
  959. package/dist/ui-library/p-f136a6b2.js.map +1 -0
  960. package/dist/ui-library/p-fce214eb.entry.js +2 -0
  961. package/dist/ui-library/p-fce214eb.entry.js.map +1 -0
  962. package/dist/ui-library/p-fe87f64b.entry.js +2 -0
  963. package/dist/ui-library/p-fe87f64b.entry.js.map +1 -0
  964. package/dist/ui-library/ui-library.css +1 -10
  965. package/dist/ui-library/ui-library.esm.js +1 -1
  966. package/dist/ui-library/ui-library.esm.js.map +1 -1
  967. package/loader/index.d.ts +1 -1
  968. package/package.json +19 -20
  969. package/dist/cjs/event-listeners-b835dfae.js +0 -61
  970. package/dist/cjs/event-listeners-b835dfae.js.map +0 -1
  971. package/dist/cjs/execution-control-45c84c46.js.map +0 -1
  972. package/dist/cjs/focus-visible-e0d93a95.js +0 -47
  973. package/dist/cjs/focus-visible-e0d93a95.js.map +0 -1
  974. package/dist/cjs/form-8cbd4e0e.js +0 -20
  975. package/dist/cjs/form-8cbd4e0e.js.map +0 -1
  976. package/dist/cjs/form-control-8df00a52.js +0 -33
  977. package/dist/cjs/form-control-8df00a52.js.map +0 -1
  978. package/dist/cjs/index-2f6daa5b.js.map +0 -1
  979. package/dist/cjs/modal-21350fb5.js +0 -52
  980. package/dist/cjs/modal-21350fb5.js.map +0 -1
  981. package/dist/cjs/popover-8885d50f.js.map +0 -1
  982. package/dist/cjs/popup-44836aaf.js +0 -103
  983. package/dist/cjs/popup-44836aaf.js.map +0 -1
  984. package/dist/cjs/scroll-76e6f5d7.js +0 -69
  985. package/dist/cjs/scroll-76e6f5d7.js.map +0 -1
  986. package/dist/cjs/six-checkbox.cjs.entry.js +0 -132
  987. package/dist/cjs/six-checkbox.cjs.entry.js.map +0 -1
  988. package/dist/cjs/six-menu-item.cjs.entry.js +0 -63
  989. package/dist/cjs/six-menu-item.cjs.entry.js.map +0 -1
  990. package/dist/cjs/slot-bccbdb59.js +0 -53
  991. package/dist/cjs/slot-bccbdb59.js.map +0 -1
  992. package/dist/cjs/types-64878648.js +0 -17
  993. package/dist/cjs/types-64878648.js.map +0 -1
  994. package/dist/components/six-tag2.js +0 -74
  995. package/dist/components/six-tag2.js.map +0 -1
  996. package/dist/esm/event-listeners-535f3ad1.js +0 -59
  997. package/dist/esm/event-listeners-535f3ad1.js.map +0 -1
  998. package/dist/esm/execution-control-72cc50f4.js.map +0 -1
  999. package/dist/esm/focus-visible-fa7129a0.js +0 -45
  1000. package/dist/esm/focus-visible-fa7129a0.js.map +0 -1
  1001. package/dist/esm/form-0b9c11cd.js +0 -18
  1002. package/dist/esm/form-control-785c5f79.js +0 -31
  1003. package/dist/esm/form-control-785c5f79.js.map +0 -1
  1004. package/dist/esm/index-5c0f6628.js.map +0 -1
  1005. package/dist/esm/modal-b1d96441.js +0 -49
  1006. package/dist/esm/modal-b1d96441.js.map +0 -1
  1007. package/dist/esm/polyfills/css-shim.js +0 -1
  1008. package/dist/esm/popover-2e72e7d8.js.map +0 -1
  1009. package/dist/esm/popup-678b8592.js +0 -98
  1010. package/dist/esm/popup-678b8592.js.map +0 -1
  1011. package/dist/esm/scroll-180b53fd.js +0 -64
  1012. package/dist/esm/six-checkbox.entry.js +0 -128
  1013. package/dist/esm/six-checkbox.entry.js.map +0 -1
  1014. package/dist/esm/six-menu-item.entry.js +0 -59
  1015. package/dist/esm/six-menu-item.entry.js.map +0 -1
  1016. package/dist/esm/slot-2e64df19.js +0 -48
  1017. package/dist/esm/slot-2e64df19.js.map +0 -1
  1018. package/dist/esm/types-4b10b413.js +0 -17
  1019. package/dist/esm/types-4b10b413.js.map +0 -1
  1020. package/dist/ui-library/p-0045a402.entry.js +0 -2
  1021. package/dist/ui-library/p-0045a402.entry.js.map +0 -1
  1022. package/dist/ui-library/p-0108fe92.entry.js +0 -2
  1023. package/dist/ui-library/p-0108fe92.entry.js.map +0 -1
  1024. package/dist/ui-library/p-03a145f5.entry.js +0 -2
  1025. package/dist/ui-library/p-03a145f5.entry.js.map +0 -1
  1026. package/dist/ui-library/p-087fdd96.entry.js +0 -2
  1027. package/dist/ui-library/p-087fdd96.entry.js.map +0 -1
  1028. package/dist/ui-library/p-09779e47.entry.js.map +0 -1
  1029. package/dist/ui-library/p-097cced4.entry.js +0 -2
  1030. package/dist/ui-library/p-097cced4.entry.js.map +0 -1
  1031. package/dist/ui-library/p-0b2c6348.js.map +0 -1
  1032. package/dist/ui-library/p-0cc08e91.js.map +0 -1
  1033. package/dist/ui-library/p-0fe78f9b.js +0 -2
  1034. package/dist/ui-library/p-0fe78f9b.js.map +0 -1
  1035. package/dist/ui-library/p-21859bca.entry.js +0 -2
  1036. package/dist/ui-library/p-21859bca.entry.js.map +0 -1
  1037. package/dist/ui-library/p-25a3bf57.js.map +0 -1
  1038. package/dist/ui-library/p-2761f908.js +0 -2
  1039. package/dist/ui-library/p-2761f908.js.map +0 -1
  1040. package/dist/ui-library/p-28be55f0.entry.js.map +0 -1
  1041. package/dist/ui-library/p-3929b0af.entry.js +0 -2
  1042. package/dist/ui-library/p-3929b0af.entry.js.map +0 -1
  1043. package/dist/ui-library/p-445ba5b8.entry.js +0 -2
  1044. package/dist/ui-library/p-445ba5b8.entry.js.map +0 -1
  1045. package/dist/ui-library/p-4d408fb4.js.map +0 -1
  1046. package/dist/ui-library/p-502ff3d3.entry.js +0 -2
  1047. package/dist/ui-library/p-502ff3d3.entry.js.map +0 -1
  1048. package/dist/ui-library/p-5a34c93e.entry.js +0 -2
  1049. package/dist/ui-library/p-5a34c93e.entry.js.map +0 -1
  1050. package/dist/ui-library/p-60621dc6.js.map +0 -1
  1051. package/dist/ui-library/p-63703ba3.entry.js +0 -2
  1052. package/dist/ui-library/p-63703ba3.entry.js.map +0 -1
  1053. package/dist/ui-library/p-66180e89.entry.js +0 -2
  1054. package/dist/ui-library/p-66180e89.entry.js.map +0 -1
  1055. package/dist/ui-library/p-686b12ec.entry.js +0 -2
  1056. package/dist/ui-library/p-686b12ec.entry.js.map +0 -1
  1057. package/dist/ui-library/p-6d75f216.entry.js +0 -2
  1058. package/dist/ui-library/p-6d75f216.entry.js.map +0 -1
  1059. package/dist/ui-library/p-71035abf.entry.js +0 -2
  1060. package/dist/ui-library/p-71035abf.entry.js.map +0 -1
  1061. package/dist/ui-library/p-724e154d.entry.js +0 -2
  1062. package/dist/ui-library/p-724e154d.entry.js.map +0 -1
  1063. package/dist/ui-library/p-72ca96e1.entry.js +0 -2
  1064. package/dist/ui-library/p-72ca96e1.entry.js.map +0 -1
  1065. package/dist/ui-library/p-73597d13.entry.js.map +0 -1
  1066. package/dist/ui-library/p-778cf804.entry.js +0 -2
  1067. package/dist/ui-library/p-778cf804.entry.js.map +0 -1
  1068. package/dist/ui-library/p-820c23f0.entry.js.map +0 -1
  1069. package/dist/ui-library/p-87032e26.entry.js +0 -2
  1070. package/dist/ui-library/p-87032e26.entry.js.map +0 -1
  1071. package/dist/ui-library/p-8cf72af6.js.map +0 -1
  1072. package/dist/ui-library/p-8e0b6b7e.entry.js +0 -2
  1073. package/dist/ui-library/p-8e0b6b7e.entry.js.map +0 -1
  1074. package/dist/ui-library/p-912092c0.entry.js +0 -2
  1075. package/dist/ui-library/p-912092c0.entry.js.map +0 -1
  1076. package/dist/ui-library/p-92ca6a84.entry.js +0 -2
  1077. package/dist/ui-library/p-92ca6a84.entry.js.map +0 -1
  1078. package/dist/ui-library/p-9337cdd6.entry.js.map +0 -1
  1079. package/dist/ui-library/p-9461417e.entry.js +0 -2
  1080. package/dist/ui-library/p-9461417e.entry.js.map +0 -1
  1081. package/dist/ui-library/p-97323ad7.entry.js +0 -2
  1082. package/dist/ui-library/p-97323ad7.entry.js.map +0 -1
  1083. package/dist/ui-library/p-a1d4f6cf.entry.js +0 -2
  1084. package/dist/ui-library/p-a1d4f6cf.entry.js.map +0 -1
  1085. package/dist/ui-library/p-a844cb72.entry.js +0 -2
  1086. package/dist/ui-library/p-a844cb72.entry.js.map +0 -1
  1087. package/dist/ui-library/p-ac4f4d45.js +0 -3
  1088. package/dist/ui-library/p-ac4f4d45.js.map +0 -1
  1089. package/dist/ui-library/p-afcbe9da.entry.js.map +0 -1
  1090. package/dist/ui-library/p-b2bf4ac8.entry.js +0 -2
  1091. package/dist/ui-library/p-b2bf4ac8.entry.js.map +0 -1
  1092. package/dist/ui-library/p-b3bff992.entry.js +0 -2
  1093. package/dist/ui-library/p-b3bff992.entry.js.map +0 -1
  1094. package/dist/ui-library/p-b4547fb5.entry.js +0 -2
  1095. package/dist/ui-library/p-b4547fb5.entry.js.map +0 -1
  1096. package/dist/ui-library/p-ba74863a.js.map +0 -1
  1097. package/dist/ui-library/p-baa03951.entry.js +0 -2
  1098. package/dist/ui-library/p-baa03951.entry.js.map +0 -1
  1099. package/dist/ui-library/p-bd8f8eef.entry.js +0 -2
  1100. package/dist/ui-library/p-bd8f8eef.entry.js.map +0 -1
  1101. package/dist/ui-library/p-c57f16af.entry.js +0 -2
  1102. package/dist/ui-library/p-c57f16af.entry.js.map +0 -1
  1103. package/dist/ui-library/p-c5cdba08.entry.js +0 -2
  1104. package/dist/ui-library/p-c5cdba08.entry.js.map +0 -1
  1105. package/dist/ui-library/p-c87810b0.entry.js +0 -2
  1106. package/dist/ui-library/p-c87810b0.entry.js.map +0 -1
  1107. package/dist/ui-library/p-cdcde4cd.entry.js +0 -2
  1108. package/dist/ui-library/p-cdcde4cd.entry.js.map +0 -1
  1109. package/dist/ui-library/p-d6798d35.entry.js.map +0 -1
  1110. package/dist/ui-library/p-d87a6f4d.js +0 -2
  1111. package/dist/ui-library/p-d87a6f4d.js.map +0 -1
  1112. package/dist/ui-library/p-dc3f5996.entry.js +0 -2
  1113. package/dist/ui-library/p-dc3f5996.entry.js.map +0 -1
  1114. package/dist/ui-library/p-dcd7c547.entry.js.map +0 -1
  1115. package/dist/ui-library/p-dd3c76f1.entry.js +0 -2
  1116. package/dist/ui-library/p-dd3c76f1.entry.js.map +0 -1
  1117. package/dist/ui-library/p-e07b3f0c.entry.js +0 -2
  1118. package/dist/ui-library/p-e07b3f0c.entry.js.map +0 -1
  1119. package/dist/ui-library/p-e19a6c95.entry.js +0 -2
  1120. package/dist/ui-library/p-e19a6c95.entry.js.map +0 -1
  1121. package/dist/ui-library/p-e8feb81f.entry.js.map +0 -1
  1122. package/dist/ui-library/p-eb8f05a9.js.map +0 -1
  1123. package/dist/ui-library/p-ef3936e5.entry.js +0 -2
  1124. package/dist/ui-library/p-ef3936e5.entry.js.map +0 -1
  1125. package/dist/ui-library/p-f0dd77e1.entry.js +0 -2
  1126. package/dist/ui-library/p-f0dd77e1.entry.js.map +0 -1
  1127. package/readme.md +0 -156
@@ -3,21 +3,21 @@
3
3
  * To render the popup correctly we render it normally, and then assign this screenposition to the fixed popup
4
4
  */
5
5
  export function adjustPopupForHoisting(hoist, popup, inputElement, wrapper, minPopupHeight, dropdownDirectionChanged) {
6
- if (!hoist || popup == null || inputElement == null || wrapper == null) {
7
- return;
8
- }
9
- // take a snapshot of normally rendered popup
10
- const popupDimensions = setPopupAsFixPosition(popup);
11
- const inputDimensions = inputElement.getBoundingClientRect();
12
- const inputTop = inputDimensions.top;
13
- const popupTop = popupDimensions.top;
14
- const isUp = calcIsDropDownContentUp(inputElement, wrapper, minPopupHeight);
15
- // check screen position to check whether the popup should be moved above or below the trigger element
16
- if (isUp && inputTop < popupTop) {
17
- // move popup above input field if datepicker is at bottom of screen
18
- popup.style.top = `${popupTop - popupDimensions.height - inputDimensions.height}px`;
19
- }
20
- dropdownDirectionChanged(isUp);
6
+ if (!hoist || popup == null || inputElement == null || wrapper == null) {
7
+ return;
8
+ }
9
+ // take a snapshot of normally rendered popup
10
+ const popupDimensions = setPopupAsFixPosition(popup);
11
+ const inputDimensions = inputElement.getBoundingClientRect();
12
+ const inputTop = inputDimensions.top;
13
+ const popupTop = popupDimensions.top;
14
+ const isUp = calcIsDropDownContentUp(inputElement, wrapper, minPopupHeight);
15
+ // check screen position to check whether the popup should be moved above or below the trigger element
16
+ if (isUp && inputTop < popupTop) {
17
+ // move popup above input field if datepicker is at bottom of screen
18
+ popup.style.top = `${popupTop - popupDimensions.height - inputDimensions.height}px`;
19
+ }
20
+ dropdownDirectionChanged(isUp);
21
21
  }
22
22
  /*
23
23
  * For small screens the datepicker popup could be cut-off even though there might still be space within the viewport.
@@ -25,71 +25,71 @@ export function adjustPopupForHoisting(hoist, popup, inputElement, wrapper, minP
25
25
  * we should reposition the popup to use the space available.
26
26
  */
27
27
  export function adjustPopupForSmallScreens(popup) {
28
- // execute after dropdown has been rendered to make sure the popup reference is correctly set
29
- setTimeout(() => {
30
- if (popup == null) {
31
- return;
32
- }
33
- const popupDimensions = popup.getBoundingClientRect();
34
- if (popupDimensions.y < 0 &&
35
- window.innerHeight - popupDimensions.height > 0 &&
36
- Math.abs(popupDimensions.y) <= popupDimensions.height) {
37
- // handle case where popup is cut-off on top but there is still space available
38
- setPopupAsFixPosition(popup);
39
- popup.style.top = '0px';
40
- }
41
- else if (window.innerHeight < popupDimensions.y + popupDimensions.height &&
42
- window.innerHeight > popupDimensions.height &&
43
- Math.abs(popupDimensions.y - window.innerHeight) <= popupDimensions.height) {
44
- // handle case where popup is cut-off at the bottom but there is still space available above
45
- // apply screen position to fixed popup
46
- setPopupAsFixPosition(popup);
47
- popup.style.top = `${window.innerHeight - popupDimensions.height}px`;
48
- }
49
- if (window.innerWidth < popupDimensions.x + popupDimensions.width &&
50
- window.innerWidth > popupDimensions.width &&
51
- Math.abs(popupDimensions.x - window.innerWidth) <= popupDimensions.width) {
52
- // handle case where popup is cut-off to the right
53
- setPopupAsFixPosition(popup);
54
- popup.style.left = `${window.innerWidth - popupDimensions.width}px`;
55
- }
56
- }, 0);
28
+ // execute after dropdown has been rendered to make sure the popup reference is correctly set
29
+ setTimeout(() => {
30
+ if (popup == null) {
31
+ return;
32
+ }
33
+ const popupDimensions = popup.getBoundingClientRect();
34
+ if (popupDimensions.y < 0 &&
35
+ window.innerHeight - popupDimensions.height > 0 &&
36
+ Math.abs(popupDimensions.y) <= popupDimensions.height) {
37
+ // handle case where popup is cut-off on top but there is still space available
38
+ setPopupAsFixPosition(popup);
39
+ popup.style.top = '0px';
40
+ }
41
+ else if (window.innerHeight < popupDimensions.y + popupDimensions.height &&
42
+ window.innerHeight > popupDimensions.height &&
43
+ Math.abs(popupDimensions.y - window.innerHeight) <= popupDimensions.height) {
44
+ // handle case where popup is cut-off at the bottom but there is still space available above
45
+ // apply screen position to fixed popup
46
+ setPopupAsFixPosition(popup);
47
+ popup.style.top = `${window.innerHeight - popupDimensions.height}px`;
48
+ }
49
+ if (window.innerWidth < popupDimensions.x + popupDimensions.width &&
50
+ window.innerWidth > popupDimensions.width &&
51
+ Math.abs(popupDimensions.x - window.innerWidth) <= popupDimensions.width) {
52
+ // handle case where popup is cut-off to the right
53
+ setPopupAsFixPosition(popup);
54
+ popup.style.left = `${window.innerWidth - popupDimensions.width}px`;
55
+ }
56
+ }, 0);
57
57
  }
58
58
  export function calcIsDropDownContentUp(inputElement, wrapper, minPopupHeight) {
59
- const inputBoundingRect = inputElement.getBoundingClientRect();
60
- const wrapperBoundingRect = wrapper.getBoundingClientRect();
61
- const popupHeight = Math.max(wrapperBoundingRect.height, minPopupHeight);
62
- const moreSpaceInTop = inputBoundingRect.y > window.innerHeight / 2;
63
- return moreSpaceInTop && window.innerHeight < inputBoundingRect.bottom + popupHeight;
59
+ const inputBoundingRect = inputElement.getBoundingClientRect();
60
+ const wrapperBoundingRect = wrapper.getBoundingClientRect();
61
+ const popupHeight = Math.max(wrapperBoundingRect.height, minPopupHeight);
62
+ const moreSpaceInTop = inputBoundingRect.y > window.innerHeight / 2;
63
+ return moreSpaceInTop && window.innerHeight < inputBoundingRect.bottom + popupHeight;
64
64
  }
65
65
  export function setPopupAsFixPosition(popup) {
66
- const popupDimensions = popup.getBoundingClientRect();
67
- popup.style.position = 'fixed';
68
- popup.style.top = popupDimensions['top'] + 'px';
69
- popup.style.left = popupDimensions['left'] + 'px';
70
- popup.style.width = popupDimensions['width'] + 'px';
71
- popup.style.height = popupDimensions['height'] + 'px';
72
- return popupDimensions;
66
+ const popupDimensions = popup.getBoundingClientRect();
67
+ popup.style.position = 'fixed';
68
+ popup.style.top = popupDimensions['top'] + 'px';
69
+ popup.style.left = popupDimensions['left'] + 'px';
70
+ popup.style.width = popupDimensions['width'] + 'px';
71
+ popup.style.minHeight = 'fit-content';
72
+ return popupDimensions;
73
73
  }
74
74
  /*
75
75
  * The position of the hoisted datepicker needs to be correctly calculated since the position changes to fixed.
76
76
  * Thus if the user scrolls or adjusts the screen size we need to recalculate the datepicker position.
77
77
  */
78
78
  export function movePopup(hoist, open, popup, inputElement, wrapper, minPopupHeight) {
79
- if (!hoist || !open || popup == null || inputElement == null || wrapper == null) {
80
- return;
81
- }
82
- const popupBoundingClientRect = popup.getBoundingClientRect();
83
- const popupHeight = popupBoundingClientRect.height;
84
- const inputBoundingClientRect = inputElement.getBoundingClientRect();
85
- const inputTop = inputBoundingClientRect.top;
86
- const inputHeight = inputBoundingClientRect.height;
87
- const isUp = calcIsDropDownContentUp(inputElement, wrapper, minPopupHeight);
88
- if (isUp) {
89
- popup.style.top = `${inputTop - popupHeight}px`;
90
- }
91
- else {
92
- popup.style.top = `${inputTop + inputHeight}px`;
93
- }
79
+ if (!hoist || !open || popup == null || inputElement == null || wrapper == null) {
80
+ return;
81
+ }
82
+ const popupBoundingClientRect = popup.getBoundingClientRect();
83
+ const popupHeight = popupBoundingClientRect.height;
84
+ const inputBoundingClientRect = inputElement.getBoundingClientRect();
85
+ const inputTop = inputBoundingClientRect.top;
86
+ const inputHeight = inputBoundingClientRect.height;
87
+ const isUp = calcIsDropDownContentUp(inputElement, wrapper, minPopupHeight);
88
+ if (isUp) {
89
+ popup.style.top = `${inputTop - popupHeight}px`;
90
+ }
91
+ else {
92
+ popup.style.top = `${inputTop + inputHeight}px`;
93
+ }
94
94
  }
95
95
  //# sourceMappingURL=popup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"popup.js","sourceRoot":"","sources":["../../src/utils/popup.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * If the popup is hoisted we popup is hoisted its position will change to fix to not be clipped of by a containing container.\n * To render the popup correctly we render it normally, and then assign this screenposition to the fixed popup\n */\nexport function adjustPopupForHoisting(\n hoist: boolean,\n popup: HTMLElement | undefined,\n inputElement: HTMLElement | undefined,\n wrapper: HTMLElement | undefined,\n minPopupHeight: number,\n dropdownDirectionChanged: (isUp: boolean) => void\n) {\n if (!hoist || popup == null || inputElement == null || wrapper == null) {\n return;\n }\n // take a snapshot of normally rendered popup\n const popupDimensions = setPopupAsFixPosition(popup);\n const inputDimensions = inputElement.getBoundingClientRect();\n const inputTop = inputDimensions.top;\n const popupTop = popupDimensions.top;\n\n const isUp = calcIsDropDownContentUp(inputElement, wrapper, minPopupHeight);\n // check screen position to check whether the popup should be moved above or below the trigger element\n if (isUp && inputTop < popupTop) {\n // move popup above input field if datepicker is at bottom of screen\n popup.style.top = `${popupTop - popupDimensions.height - inputDimensions.height}px`;\n }\n dropdownDirectionChanged(isUp);\n}\n\n/*\n * For small screens the datepicker popup could be cut-off even though there might still be space within the viewport.\n * This is because the popup is always aligned with the trigger input field. However in the scenario of small screens\n * we should reposition the popup to use the space available.\n */\nexport function adjustPopupForSmallScreens(popup?: HTMLElement) {\n // execute after dropdown has been rendered to make sure the popup reference is correctly set\n setTimeout(() => {\n if (popup == null) {\n return;\n }\n const popupDimensions = popup.getBoundingClientRect();\n if (\n popupDimensions.y < 0 &&\n window.innerHeight - popupDimensions.height > 0 &&\n Math.abs(popupDimensions.y) <= popupDimensions.height\n ) {\n // handle case where popup is cut-off on top but there is still space available\n setPopupAsFixPosition(popup);\n popup.style.top = '0px';\n } else if (\n window.innerHeight < popupDimensions.y + popupDimensions.height &&\n window.innerHeight > popupDimensions.height &&\n Math.abs(popupDimensions.y - window.innerHeight) <= popupDimensions.height\n ) {\n // handle case where popup is cut-off at the bottom but there is still space available above\n // apply screen position to fixed popup\n setPopupAsFixPosition(popup);\n popup.style.top = `${window.innerHeight - popupDimensions.height}px`;\n }\n\n if (\n window.innerWidth < popupDimensions.x + popupDimensions.width &&\n window.innerWidth > popupDimensions.width &&\n Math.abs(popupDimensions.x - window.innerWidth) <= popupDimensions.width\n ) {\n // handle case where popup is cut-off to the right\n setPopupAsFixPosition(popup);\n popup.style.left = `${window.innerWidth - popupDimensions.width}px`;\n }\n }, 0);\n}\n\nexport function calcIsDropDownContentUp(\n inputElement: HTMLElement,\n wrapper: HTMLElement,\n minPopupHeight: number\n): boolean {\n const inputBoundingRect = inputElement.getBoundingClientRect();\n const wrapperBoundingRect = wrapper.getBoundingClientRect();\n const popupHeight = Math.max(wrapperBoundingRect.height, minPopupHeight);\n const moreSpaceInTop = inputBoundingRect.y > window.innerHeight / 2;\n return moreSpaceInTop && window.innerHeight < inputBoundingRect.bottom + popupHeight;\n}\n\nexport function setPopupAsFixPosition(popup: HTMLElement): DOMRect {\n const popupDimensions = popup.getBoundingClientRect();\n popup.style.position = 'fixed';\n popup.style.top = popupDimensions['top'] + 'px';\n popup.style.left = popupDimensions['left'] + 'px';\n popup.style.width = popupDimensions['width'] + 'px';\n popup.style.height = popupDimensions['height'] + 'px';\n return popupDimensions;\n}\n\n/*\n * The position of the hoisted datepicker needs to be correctly calculated since the position changes to fixed.\n * Thus if the user scrolls or adjusts the screen size we need to recalculate the datepicker position.\n */\nexport function movePopup(\n hoist: boolean,\n open: boolean,\n popup: HTMLElement | undefined,\n inputElement: HTMLElement | undefined,\n wrapper: HTMLElement | undefined,\n minPopupHeight: number\n) {\n if (!hoist || !open || popup == null || inputElement == null || wrapper == null) {\n return;\n }\n const popupBoundingClientRect = popup.getBoundingClientRect();\n const popupHeight = popupBoundingClientRect.height;\n const inputBoundingClientRect = inputElement.getBoundingClientRect();\n const inputTop = inputBoundingClientRect.top;\n const inputHeight = inputBoundingClientRect.height;\n\n const isUp = calcIsDropDownContentUp(inputElement, wrapper, minPopupHeight);\n\n if (isUp) {\n popup.style.top = `${inputTop - popupHeight}px`;\n } else {\n popup.style.top = `${inputTop + inputHeight}px`;\n }\n}\n"]}
1
+ {"version":3,"file":"popup.js","sourceRoot":"","sources":["../../src/utils/popup.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * If the popup is hoisted we popup is hoisted its position will change to fix to not be clipped of by a containing container.\n * To render the popup correctly we render it normally, and then assign this screenposition to the fixed popup\n */\nexport function adjustPopupForHoisting(\n hoist: boolean,\n popup: HTMLElement | undefined,\n inputElement: HTMLElement | undefined,\n wrapper: HTMLElement | undefined,\n minPopupHeight: number,\n dropdownDirectionChanged: (isUp: boolean) => void\n) {\n if (!hoist || popup == null || inputElement == null || wrapper == null) {\n return;\n }\n // take a snapshot of normally rendered popup\n const popupDimensions = setPopupAsFixPosition(popup);\n const inputDimensions = inputElement.getBoundingClientRect();\n const inputTop = inputDimensions.top;\n const popupTop = popupDimensions.top;\n\n const isUp = calcIsDropDownContentUp(inputElement, wrapper, minPopupHeight);\n // check screen position to check whether the popup should be moved above or below the trigger element\n if (isUp && inputTop < popupTop) {\n // move popup above input field if datepicker is at bottom of screen\n popup.style.top = `${popupTop - popupDimensions.height - inputDimensions.height}px`;\n }\n dropdownDirectionChanged(isUp);\n}\n\n/*\n * For small screens the datepicker popup could be cut-off even though there might still be space within the viewport.\n * This is because the popup is always aligned with the trigger input field. However in the scenario of small screens\n * we should reposition the popup to use the space available.\n */\nexport function adjustPopupForSmallScreens(popup?: HTMLElement) {\n // execute after dropdown has been rendered to make sure the popup reference is correctly set\n setTimeout(() => {\n if (popup == null) {\n return;\n }\n const popupDimensions = popup.getBoundingClientRect();\n if (\n popupDimensions.y < 0 &&\n window.innerHeight - popupDimensions.height > 0 &&\n Math.abs(popupDimensions.y) <= popupDimensions.height\n ) {\n // handle case where popup is cut-off on top but there is still space available\n setPopupAsFixPosition(popup);\n popup.style.top = '0px';\n } else if (\n window.innerHeight < popupDimensions.y + popupDimensions.height &&\n window.innerHeight > popupDimensions.height &&\n Math.abs(popupDimensions.y - window.innerHeight) <= popupDimensions.height\n ) {\n // handle case where popup is cut-off at the bottom but there is still space available above\n // apply screen position to fixed popup\n setPopupAsFixPosition(popup);\n popup.style.top = `${window.innerHeight - popupDimensions.height}px`;\n }\n\n if (\n window.innerWidth < popupDimensions.x + popupDimensions.width &&\n window.innerWidth > popupDimensions.width &&\n Math.abs(popupDimensions.x - window.innerWidth) <= popupDimensions.width\n ) {\n // handle case where popup is cut-off to the right\n setPopupAsFixPosition(popup);\n popup.style.left = `${window.innerWidth - popupDimensions.width}px`;\n }\n }, 0);\n}\n\nexport function calcIsDropDownContentUp(\n inputElement: HTMLElement,\n wrapper: HTMLElement,\n minPopupHeight: number\n): boolean {\n const inputBoundingRect = inputElement.getBoundingClientRect();\n const wrapperBoundingRect = wrapper.getBoundingClientRect();\n const popupHeight = Math.max(wrapperBoundingRect.height, minPopupHeight);\n const moreSpaceInTop = inputBoundingRect.y > window.innerHeight / 2;\n return moreSpaceInTop && window.innerHeight < inputBoundingRect.bottom + popupHeight;\n}\n\nexport function setPopupAsFixPosition(popup: HTMLElement): DOMRect {\n const popupDimensions = popup.getBoundingClientRect();\n popup.style.position = 'fixed';\n popup.style.top = popupDimensions['top'] + 'px';\n popup.style.left = popupDimensions['left'] + 'px';\n popup.style.width = popupDimensions['width'] + 'px';\n popup.style.minHeight = 'fit-content';\n return popupDimensions;\n}\n\n/*\n * The position of the hoisted datepicker needs to be correctly calculated since the position changes to fixed.\n * Thus if the user scrolls or adjusts the screen size we need to recalculate the datepicker position.\n */\nexport function movePopup(\n hoist: boolean,\n open: boolean,\n popup: HTMLElement | undefined,\n inputElement: HTMLElement | undefined,\n wrapper: HTMLElement | undefined,\n minPopupHeight: number\n) {\n if (!hoist || !open || popup == null || inputElement == null || wrapper == null) {\n return;\n }\n const popupBoundingClientRect = popup.getBoundingClientRect();\n const popupHeight = popupBoundingClientRect.height;\n const inputBoundingClientRect = inputElement.getBoundingClientRect();\n const inputTop = inputBoundingClientRect.top;\n const inputHeight = inputBoundingClientRect.height;\n\n const isUp = calcIsDropDownContentUp(inputElement, wrapper, minPopupHeight);\n\n if (isUp) {\n popup.style.top = `${inputTop - popupHeight}px`;\n } else {\n popup.style.top = `${inputTop + inputHeight}px`;\n }\n}\n"]}
@@ -1,48 +1,48 @@
1
- import { getOffset } from './offset';
1
+ import { getOffset } from "./offset";
2
2
  const locks = new Set();
3
3
  //
4
4
  // Prevents body scrolling. Keeps track of which elements requested a lock so multiple levels of locking are possible
5
5
  // without premature unlocking.
6
6
  //
7
7
  export function lockBodyScrolling(lockingEl) {
8
- locks.add(lockingEl);
9
- document.body.classList.add('six-scroll-lock');
8
+ locks.add(lockingEl);
9
+ document.body.classList.add('six-scroll-lock');
10
10
  }
11
11
  //
12
12
  // Unlocks body scrolling. Scrolling will only be unlocked once all elements that requested a lock call this method.
13
13
  //
14
14
  export function unlockBodyScrolling(lockingEl) {
15
- locks.delete(lockingEl);
16
- if (locks.size === 0) {
17
- document.body.classList.remove('six-scroll-lock');
18
- }
15
+ locks.delete(lockingEl);
16
+ if (locks.size === 0) {
17
+ document.body.classList.remove('six-scroll-lock');
18
+ }
19
19
  }
20
20
  //
21
21
  // Scrolls an element into view of its container. If the element is already in view, nothing will happen.
22
22
  //
23
23
  export function scrollIntoView(element, container, direction = 'vertical', behavior = 'smooth') {
24
- const offset = getOffset(element, container);
25
- const offsetTop = offset.top + container.scrollTop;
26
- const offsetLeft = offset.left + container.scrollLeft;
27
- const minX = container.scrollLeft;
28
- const maxX = container.scrollLeft + container.offsetWidth;
29
- const minY = container.scrollTop;
30
- const maxY = container.scrollTop + container.offsetHeight;
31
- if (direction === 'horizontal' || direction === 'both') {
32
- if (offsetLeft < minX) {
33
- container.scrollTo({ left: offsetLeft, behavior });
34
- }
35
- else if (offsetLeft + element.clientWidth > maxX) {
36
- container.scrollTo({ left: offsetLeft - container.offsetWidth + element.clientWidth, behavior });
37
- }
38
- }
39
- if (direction === 'vertical' || direction === 'both') {
40
- if (offsetTop < minY) {
41
- container.scrollTo({ top: offsetTop, behavior });
24
+ const offset = getOffset(element, container);
25
+ const offsetTop = offset.top + container.scrollTop;
26
+ const offsetLeft = offset.left + container.scrollLeft;
27
+ const minX = container.scrollLeft;
28
+ const maxX = container.scrollLeft + container.offsetWidth;
29
+ const minY = container.scrollTop;
30
+ const maxY = container.scrollTop + container.offsetHeight;
31
+ if (direction === 'horizontal' || direction === 'both') {
32
+ if (offsetLeft < minX) {
33
+ container.scrollTo({ left: offsetLeft, behavior });
34
+ }
35
+ else if (offsetLeft + element.clientWidth > maxX) {
36
+ container.scrollTo({ left: offsetLeft - container.offsetWidth + element.clientWidth, behavior });
37
+ }
42
38
  }
43
- else if (offsetTop + element.clientHeight > maxY) {
44
- container.scrollTo({ top: offsetTop - container.offsetHeight + element.clientHeight, behavior });
39
+ if (direction === 'vertical' || direction === 'both') {
40
+ if (offsetTop < minY) {
41
+ container.scrollTo({ top: offsetTop, behavior });
42
+ }
43
+ else if (offsetTop + element.clientHeight > maxY) {
44
+ container.scrollTo({ top: offsetTop - container.offsetHeight + element.clientHeight, behavior });
45
+ }
45
46
  }
46
- }
47
47
  }
48
48
  //# sourceMappingURL=scroll.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scroll.js","sourceRoot":"","sources":["../../src/utils/scroll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;AAExB,EAAE;AACF,qHAAqH;AACrH,+BAA+B;AAC/B,EAAE;AACF,MAAM,UAAU,iBAAiB,CAAC,SAAsB;EACtD,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;EACrB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;AACjD,CAAC;AAED,EAAE;AACF,oHAAoH;AACpH,EAAE;AACF,MAAM,UAAU,mBAAmB,CAAC,SAAsB;EACxD,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;EAExB,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE;IACpB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;GACnD;AACH,CAAC;AAED,EAAE;AACF,yGAAyG;AACzG,EAAE;AACF,MAAM,UAAU,cAAc,CAC5B,OAAoB,EACpB,SAAsB,EACtB,YAAgD,UAAU,EAC1D,WAA8B,QAAQ;EAEtC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;EAC7C,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC;EACnD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC;EACtD,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC;EAClC,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC,WAAW,CAAC;EAC1D,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC;EACjC,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC;EAE1D,IAAI,SAAS,KAAK,YAAY,IAAI,SAAS,KAAK,MAAM,EAAE;IACtD,IAAI,UAAU,GAAG,IAAI,EAAE;MACrB,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;KACpD;SAAM,IAAI,UAAU,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,EAAE;MAClD,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;KAClG;GACF;EAED,IAAI,SAAS,KAAK,UAAU,IAAI,SAAS,KAAK,MAAM,EAAE;IACpD,IAAI,SAAS,GAAG,IAAI,EAAE;MACpB,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;KAClD;SAAM,IAAI,SAAS,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,EAAE;MAClD,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,SAAS,GAAG,SAAS,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;KAClG;GACF;AACH,CAAC","sourcesContent":["import { getOffset } from './offset';\n\nconst locks = new Set();\n\n//\n// Prevents body scrolling. Keeps track of which elements requested a lock so multiple levels of locking are possible\n// without premature unlocking.\n//\nexport function lockBodyScrolling(lockingEl: HTMLElement) {\n locks.add(lockingEl);\n document.body.classList.add('six-scroll-lock');\n}\n\n//\n// Unlocks body scrolling. Scrolling will only be unlocked once all elements that requested a lock call this method.\n//\nexport function unlockBodyScrolling(lockingEl: HTMLElement) {\n locks.delete(lockingEl);\n\n if (locks.size === 0) {\n document.body.classList.remove('six-scroll-lock');\n }\n}\n\n//\n// Scrolls an element into view of its container. If the element is already in view, nothing will happen.\n//\nexport function scrollIntoView(\n element: HTMLElement,\n container: HTMLElement,\n direction: 'horizontal' | 'vertical' | 'both' = 'vertical',\n behavior: 'smooth' | 'auto' = 'smooth'\n) {\n const offset = getOffset(element, container);\n const offsetTop = offset.top + container.scrollTop;\n const offsetLeft = offset.left + container.scrollLeft;\n const minX = container.scrollLeft;\n const maxX = container.scrollLeft + container.offsetWidth;\n const minY = container.scrollTop;\n const maxY = container.scrollTop + container.offsetHeight;\n\n if (direction === 'horizontal' || direction === 'both') {\n if (offsetLeft < minX) {\n container.scrollTo({ left: offsetLeft, behavior });\n } else if (offsetLeft + element.clientWidth > maxX) {\n container.scrollTo({ left: offsetLeft - container.offsetWidth + element.clientWidth, behavior });\n }\n }\n\n if (direction === 'vertical' || direction === 'both') {\n if (offsetTop < minY) {\n container.scrollTo({ top: offsetTop, behavior });\n } else if (offsetTop + element.clientHeight > maxY) {\n container.scrollTo({ top: offsetTop - container.offsetHeight + element.clientHeight, behavior });\n }\n }\n}\n"]}
1
+ {"version":3,"file":"scroll.js","sourceRoot":"","sources":["../../src/utils/scroll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;AAExB,EAAE;AACF,qHAAqH;AACrH,+BAA+B;AAC/B,EAAE;AACF,MAAM,UAAU,iBAAiB,CAAC,SAAsB;IACtD,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACrB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;AACjD,CAAC;AAED,EAAE;AACF,oHAAoH;AACpH,EAAE;AACF,MAAM,UAAU,mBAAmB,CAAC,SAAsB;IACxD,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAExB,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE;QACpB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;KACnD;AACH,CAAC;AAED,EAAE;AACF,yGAAyG;AACzG,EAAE;AACF,MAAM,UAAU,cAAc,CAC5B,OAAoB,EACpB,SAAsB,EACtB,YAAgD,UAAU,EAC1D,WAA8B,QAAQ;IAEtC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC7C,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC;IACnD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC;IACtD,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC;IAClC,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC,WAAW,CAAC;IAC1D,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC;IACjC,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC;IAE1D,IAAI,SAAS,KAAK,YAAY,IAAI,SAAS,KAAK,MAAM,EAAE;QACtD,IAAI,UAAU,GAAG,IAAI,EAAE;YACrB,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;SACpD;aAAM,IAAI,UAAU,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,EAAE;YAClD,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;SAClG;KACF;IAED,IAAI,SAAS,KAAK,UAAU,IAAI,SAAS,KAAK,MAAM,EAAE;QACpD,IAAI,SAAS,GAAG,IAAI,EAAE;YACpB,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;SAClD;aAAM,IAAI,SAAS,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,EAAE;YAClD,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,SAAS,GAAG,SAAS,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;SAClG;KACF;AACH,CAAC","sourcesContent":["import { getOffset } from './offset';\n\nconst locks = new Set();\n\n//\n// Prevents body scrolling. Keeps track of which elements requested a lock so multiple levels of locking are possible\n// without premature unlocking.\n//\nexport function lockBodyScrolling(lockingEl: HTMLElement) {\n locks.add(lockingEl);\n document.body.classList.add('six-scroll-lock');\n}\n\n//\n// Unlocks body scrolling. Scrolling will only be unlocked once all elements that requested a lock call this method.\n//\nexport function unlockBodyScrolling(lockingEl: HTMLElement) {\n locks.delete(lockingEl);\n\n if (locks.size === 0) {\n document.body.classList.remove('six-scroll-lock');\n }\n}\n\n//\n// Scrolls an element into view of its container. If the element is already in view, nothing will happen.\n//\nexport function scrollIntoView(\n element: HTMLElement,\n container: HTMLElement,\n direction: 'horizontal' | 'vertical' | 'both' = 'vertical',\n behavior: 'smooth' | 'auto' = 'smooth'\n) {\n const offset = getOffset(element, container);\n const offsetTop = offset.top + container.scrollTop;\n const offsetLeft = offset.left + container.scrollLeft;\n const minX = container.scrollLeft;\n const maxX = container.scrollLeft + container.offsetWidth;\n const minY = container.scrollTop;\n const maxY = container.scrollTop + container.offsetHeight;\n\n if (direction === 'horizontal' || direction === 'both') {\n if (offsetLeft < minX) {\n container.scrollTo({ left: offsetLeft, behavior });\n } else if (offsetLeft + element.clientWidth > maxX) {\n container.scrollTo({ left: offsetLeft - container.offsetWidth + element.clientWidth, behavior });\n }\n }\n\n if (direction === 'vertical' || direction === 'both') {\n if (offsetTop < minY) {\n container.scrollTo({ top: offsetTop, behavior });\n } else if (offsetTop + element.clientHeight > maxY) {\n container.scrollTo({ top: offsetTop - container.offsetHeight + element.clientHeight, behavior });\n }\n }\n}\n"]}
@@ -0,0 +1,122 @@
1
+ import { scrollIntoView } from "./scroll";
2
+ describe('scrollIntoView', () => {
3
+ describe('vertical scrolling', () => {
4
+ it('should scroll vertically if element is out of view', async () => {
5
+ // given
6
+ const element = {
7
+ clientWidth: 320,
8
+ clientHeight: 56,
9
+ getBoundingClientRect: () => ({
10
+ top: 1744,
11
+ left: 16,
12
+ }),
13
+ };
14
+ const mockScrollTo = jest.fn();
15
+ const container = {
16
+ scrollTop: 0,
17
+ scrollLeft: 0,
18
+ offsetWidth: 320,
19
+ offsetHeight: 754,
20
+ getBoundingClientRect: () => ({
21
+ top: 656,
22
+ left: 16,
23
+ }),
24
+ scrollTo: mockScrollTo,
25
+ };
26
+ // when
27
+ scrollIntoView(element, container);
28
+ // then
29
+ expect(mockScrollTo).toHaveBeenCalledWith({
30
+ top: 390,
31
+ behavior: 'smooth',
32
+ });
33
+ });
34
+ it('should not scroll vertically if element is in view', async () => {
35
+ // given
36
+ const element = {
37
+ clientWidth: 320,
38
+ clientHeight: 56,
39
+ getBoundingClientRect: () => ({
40
+ top: 700,
41
+ left: 16,
42
+ }),
43
+ };
44
+ const mockScrollTo = jest.fn();
45
+ const container = {
46
+ scrollTop: 0,
47
+ scrollLeft: 0,
48
+ offsetWidth: 320,
49
+ offsetHeight: 754,
50
+ getBoundingClientRect: () => ({
51
+ top: 656,
52
+ left: 16,
53
+ }),
54
+ scrollTo: mockScrollTo,
55
+ };
56
+ // when
57
+ scrollIntoView(element, container);
58
+ // then
59
+ expect(mockScrollTo).not.toHaveBeenCalled();
60
+ });
61
+ });
62
+ describe('horizontal scrolling', () => {
63
+ it('should scroll horizontally if element is out of view', async () => {
64
+ // given
65
+ const element = {
66
+ clientWidth: 320,
67
+ clientHeight: 56,
68
+ getBoundingClientRect: () => ({
69
+ top: 500,
70
+ left: 330,
71
+ }),
72
+ };
73
+ const mockScrollTo = jest.fn();
74
+ const container = {
75
+ scrollTop: 0,
76
+ scrollLeft: 0,
77
+ offsetWidth: 320,
78
+ offsetHeight: 754,
79
+ getBoundingClientRect: () => ({
80
+ top: 656,
81
+ left: 16,
82
+ }),
83
+ scrollTo: mockScrollTo,
84
+ };
85
+ // when
86
+ scrollIntoView(element, container, 'horizontal');
87
+ // then
88
+ expect(mockScrollTo).toHaveBeenCalledWith({
89
+ left: 314,
90
+ behavior: 'smooth',
91
+ });
92
+ });
93
+ it('should not scroll vertically if element is in view', async () => {
94
+ // given
95
+ const element = {
96
+ clientWidth: 320,
97
+ clientHeight: 56,
98
+ getBoundingClientRect: () => ({
99
+ top: 500,
100
+ left: 16,
101
+ }),
102
+ };
103
+ const mockScrollTo = jest.fn();
104
+ const container = {
105
+ scrollTop: 0,
106
+ scrollLeft: 0,
107
+ offsetWidth: 320,
108
+ offsetHeight: 754,
109
+ getBoundingClientRect: () => ({
110
+ top: 656,
111
+ left: 16,
112
+ }),
113
+ scrollTo: mockScrollTo,
114
+ };
115
+ // when
116
+ scrollIntoView(element, container, 'horizontal');
117
+ // then
118
+ expect(mockScrollTo).not.toHaveBeenCalled();
119
+ });
120
+ });
121
+ });
122
+ //# sourceMappingURL=scroll.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scroll.spec.js","sourceRoot":"","sources":["../../src/utils/scroll.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { scrollIntoView } from './scroll';\n\ndescribe('scrollIntoView', () => {\n describe('vertical scrolling', () => {\n it('should scroll vertically if element is out of view', async () => {\n // given\n const element: Partial<HTMLElement> = {\n clientWidth: 320,\n clientHeight: 56,\n getBoundingClientRect: () =>\n ({\n top: 1744,\n left: 16,\n } as DOMRect),\n };\n\n const mockScrollTo = jest.fn();\n const container: Partial<HTMLElement> = {\n scrollTop: 0,\n scrollLeft: 0,\n offsetWidth: 320,\n offsetHeight: 754,\n getBoundingClientRect: () =>\n ({\n top: 656,\n left: 16,\n } as DOMRect),\n scrollTo: mockScrollTo,\n };\n\n // when\n scrollIntoView(element as HTMLElement, container as HTMLElement);\n\n // then\n expect(mockScrollTo).toHaveBeenCalledWith({\n top: 390,\n behavior: 'smooth',\n });\n });\n\n it('should not scroll vertically if element is in view', async () => {\n // given\n const element: Partial<HTMLElement> = {\n clientWidth: 320,\n clientHeight: 56,\n getBoundingClientRect: () =>\n ({\n top: 700,\n left: 16,\n } as DOMRect),\n };\n\n const mockScrollTo = jest.fn();\n const container: Partial<HTMLElement> = {\n scrollTop: 0,\n scrollLeft: 0,\n offsetWidth: 320,\n offsetHeight: 754,\n getBoundingClientRect: () =>\n ({\n top: 656,\n left: 16,\n } as DOMRect),\n scrollTo: mockScrollTo,\n };\n\n // when\n scrollIntoView(element as HTMLElement, container as HTMLElement);\n\n // then\n expect(mockScrollTo).not.toHaveBeenCalled();\n });\n });\n\n describe('horizontal scrolling', () => {\n it('should scroll horizontally if element is out of view', async () => {\n // given\n const element: Partial<HTMLElement> = {\n clientWidth: 320,\n clientHeight: 56,\n getBoundingClientRect: () =>\n ({\n top: 500,\n left: 330,\n } as DOMRect),\n };\n\n const mockScrollTo = jest.fn();\n const container: Partial<HTMLElement> = {\n scrollTop: 0,\n scrollLeft: 0,\n offsetWidth: 320,\n offsetHeight: 754,\n getBoundingClientRect: () =>\n ({\n top: 656,\n left: 16,\n } as DOMRect),\n scrollTo: mockScrollTo,\n };\n\n // when\n scrollIntoView(element as HTMLElement, container as HTMLElement, 'horizontal');\n\n // then\n expect(mockScrollTo).toHaveBeenCalledWith({\n left: 314,\n behavior: 'smooth',\n });\n });\n\n it('should not scroll vertically if element is in view', async () => {\n // given\n const element: Partial<HTMLElement> = {\n clientWidth: 320,\n clientHeight: 56,\n getBoundingClientRect: () =>\n ({\n top: 500,\n left: 16,\n } as DOMRect),\n };\n\n const mockScrollTo = jest.fn();\n const container: Partial<HTMLElement> = {\n scrollTop: 0,\n scrollLeft: 0,\n offsetWidth: 320,\n offsetHeight: 754,\n getBoundingClientRect: () =>\n ({\n top: 656,\n left: 16,\n } as DOMRect),\n scrollTo: mockScrollTo,\n };\n\n // when\n scrollIntoView(element as HTMLElement, container as HTMLElement, 'horizontal');\n\n // then\n expect(mockScrollTo).not.toHaveBeenCalled();\n });\n });\n});\n"]}
@@ -3,43 +3,42 @@
3
3
  // string. This is useful because we can't use slot.textContent as an alternative.
4
4
  //
5
5
  export function getTextContent(slot) {
6
- const nodes = slot != null ? slot.assignedNodes({ flatten: true }) : [];
7
- let text = '';
8
- [...nodes].map((node) => {
9
- if (node.nodeType === Node.TEXT_NODE) {
10
- text += node.textContent;
11
- }
12
- });
13
- return text;
6
+ const nodes = slot != null ? slot.assignedNodes({ flatten: true }) : [];
7
+ let text = '';
8
+ [...nodes].map((node) => {
9
+ if (node.nodeType === Node.TEXT_NODE) {
10
+ text += node.textContent;
11
+ }
12
+ });
13
+ return text;
14
14
  }
15
15
  //
16
16
  // Determines whether an element has a slot. If name is specified, the function will look for a corresponding named
17
17
  // slot, otherwise it will look for a "default" slot (e.g. a non-empty text node or an element with no slot attribute).
18
18
  //
19
19
  export function hasSlot(el, name) {
20
- // Look for a named slot
21
- if (name != null && name !== '') {
22
- return el.querySelector(`[slot="${name}"]`) !== null;
23
- }
24
- // Look for a default slot
25
- return Array.from(el.childNodes).some((node) => {
26
- var _a;
27
- if (node.nodeType === node.TEXT_NODE && ((_a = node.textContent) === null || _a === void 0 ? void 0 : _a.trim()) !== '') {
28
- return true;
29
- }
30
- if (node.nodeType === node.ELEMENT_NODE) {
31
- const el = node;
32
- if (!el.hasAttribute('slot')) {
33
- return true;
34
- }
20
+ // Look for a named slot
21
+ if (name != null && name !== '') {
22
+ return el.querySelector(`[slot="${name}"]`) !== null;
35
23
  }
36
- return false;
37
- });
24
+ // Look for a default slot
25
+ return Array.from(el.childNodes).some((node) => {
26
+ var _a;
27
+ if (node.nodeType === node.TEXT_NODE && ((_a = node.textContent) === null || _a === void 0 ? void 0 : _a.trim()) !== '') {
28
+ return true;
29
+ }
30
+ if (node.nodeType === node.ELEMENT_NODE) {
31
+ const el = node;
32
+ if (!el.hasAttribute('slot')) {
33
+ return true;
34
+ }
35
+ }
36
+ return false;
37
+ });
38
38
  }
39
- export const getSlotChildren = (el) => { var _a; return (_a = el.querySelector('slot')) === null || _a === void 0 ? void 0 : _a.assignedElements({ flatten: true }); };
40
39
  export function getSlot(element, slotName) {
41
- if (element == null)
42
- return null;
43
- return element.querySelector(`[slot="${slotName}"]`);
40
+ if (element == null)
41
+ return null;
42
+ return element.querySelector(`[slot="${slotName}"]`);
44
43
  }
45
44
  //# sourceMappingURL=slot.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"slot.js","sourceRoot":"","sources":["../../src/utils/slot.ts"],"names":[],"mappings":"AAAA,EAAE;AACF,kHAAkH;AAClH,kFAAkF;AAClF,EAAE;AACF,MAAM,UAAU,cAAc,CAAC,IAAsB;EACnD,MAAM,KAAK,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;EACxE,IAAI,IAAI,GAAG,EAAE,CAAC;EAEd,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;IACtB,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,EAAE;MACpC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC;KAC1B;EACH,CAAC,CAAC,CAAC;EAEH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,EAAE;AACF,mHAAmH;AACnH,uHAAuH;AACvH,EAAE;AACF,MAAM,UAAU,OAAO,CAAC,EAAe,EAAE,IAAa;EACpD,wBAAwB;EACxB,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,EAAE,EAAE;IAC/B,OAAO,EAAE,CAAC,aAAa,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC;GACtD;EAED,0BAA0B;EAC1B,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;;IAC7C,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,IAAI,CAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,IAAI,EAAE,MAAK,EAAE,EAAE;MACvE,OAAO,IAAI,CAAC;KACb;IAED,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,EAAE;MACvC,MAAM,EAAE,GAAG,IAAmB,CAAC;MAC/B,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE;QAC5B,OAAO,IAAI,CAAC;OACb;KACF;IAED,OAAO,KAAK,CAAC;EACf,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAwB,EAAe,EAAE,EAAE,WACxE,OAAA,MAAA,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,0CAAE,gBAAgB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAQ,CAAA,EAAA,CAAC;AAEvE,MAAM,UAAU,OAAO,CAAC,OAAsC,EAAE,QAAgB;EAC9E,IAAI,OAAO,IAAI,IAAI;IAAE,OAAO,IAAI,CAAC;EACjC,OAAO,OAAO,CAAC,aAAa,CAAC,UAAU,QAAQ,IAAI,CAAC,CAAC;AACvD,CAAC","sourcesContent":["//\n// Given a slot, this function iterates over all of its assigned text nodes and returns the concatenated text as a\n// string. This is useful because we can't use slot.textContent as an alternative.\n//\nexport function getTextContent(slot?: HTMLSlotElement): string {\n const nodes = slot != null ? slot.assignedNodes({ flatten: true }) : [];\n let text = '';\n\n [...nodes].map((node) => {\n if (node.nodeType === Node.TEXT_NODE) {\n text += node.textContent;\n }\n });\n\n return text;\n}\n\n//\n// Determines whether an element has a slot. If name is specified, the function will look for a corresponding named\n// slot, otherwise it will look for a \"default\" slot (e.g. a non-empty text node or an element with no slot attribute).\n//\nexport function hasSlot(el: HTMLElement, name?: string): boolean {\n // Look for a named slot\n if (name != null && name !== '') {\n return el.querySelector(`[slot=\"${name}\"]`) !== null;\n }\n\n // Look for a default slot\n return Array.from(el.childNodes).some((node) => {\n if (node.nodeType === node.TEXT_NODE && node.textContent?.trim() !== '') {\n return true;\n }\n\n if (node.nodeType === node.ELEMENT_NODE) {\n const el = node as HTMLElement;\n if (!el.hasAttribute('slot')) {\n return true;\n }\n }\n\n return false;\n });\n}\n\nexport const getSlotChildren = <T extends HTMLElement>(el: HTMLElement) =>\n el.querySelector('slot')?.assignedElements({ flatten: true }) as T[];\n\nexport function getSlot(element: ParentNode | null | undefined, slotName: string): HTMLElement | null {\n if (element == null) return null;\n return element.querySelector(`[slot=\"${slotName}\"]`);\n}\n"]}
1
+ {"version":3,"file":"slot.js","sourceRoot":"","sources":["../../src/utils/slot.ts"],"names":[],"mappings":"AAAA,EAAE;AACF,kHAAkH;AAClH,kFAAkF;AAClF,EAAE;AACF,MAAM,UAAU,cAAc,CAAC,IAAsB;IACnD,MAAM,KAAK,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,IAAI,IAAI,GAAG,EAAE,CAAC;IAEd,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACtB,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,EAAE;YACpC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC;SAC1B;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,EAAE;AACF,mHAAmH;AACnH,uHAAuH;AACvH,EAAE;AACF,MAAM,UAAU,OAAO,CAAC,EAAe,EAAE,IAAa;IACpD,wBAAwB;IACxB,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,EAAE,EAAE;QAC/B,OAAO,EAAE,CAAC,aAAa,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC;KACtD;IAED,0BAA0B;IAC1B,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;;QAC7C,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,IAAI,CAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,IAAI,EAAE,MAAK,EAAE,EAAE;YACvE,OAAO,IAAI,CAAC;SACb;QAED,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,EAAE;YACvC,MAAM,EAAE,GAAG,IAAmB,CAAC;YAC/B,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE;gBAC5B,OAAO,IAAI,CAAC;aACb;SACF;QAED,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,OAAsC,EAAE,QAAgB;IAC9E,IAAI,OAAO,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IACjC,OAAO,OAAO,CAAC,aAAa,CAAC,UAAU,QAAQ,IAAI,CAAC,CAAC;AACvD,CAAC","sourcesContent":["//\n// Given a slot, this function iterates over all of its assigned text nodes and returns the concatenated text as a\n// string. This is useful because we can't use slot.textContent as an alternative.\n//\nexport function getTextContent(slot?: HTMLSlotElement): string {\n const nodes = slot != null ? slot.assignedNodes({ flatten: true }) : [];\n let text = '';\n\n [...nodes].map((node) => {\n if (node.nodeType === Node.TEXT_NODE) {\n text += node.textContent;\n }\n });\n\n return text;\n}\n\n//\n// Determines whether an element has a slot. If name is specified, the function will look for a corresponding named\n// slot, otherwise it will look for a \"default\" slot (e.g. a non-empty text node or an element with no slot attribute).\n//\nexport function hasSlot(el: HTMLElement, name?: string): boolean {\n // Look for a named slot\n if (name != null && name !== '') {\n return el.querySelector(`[slot=\"${name}\"]`) !== null;\n }\n\n // Look for a default slot\n return Array.from(el.childNodes).some((node) => {\n if (node.nodeType === node.TEXT_NODE && node.textContent?.trim() !== '') {\n return true;\n }\n\n if (node.nodeType === node.ELEMENT_NODE) {\n const el = node as HTMLElement;\n if (!el.hasAttribute('slot')) {\n return true;\n }\n }\n\n return false;\n });\n}\n\nexport function getSlot(element: ParentNode | null | undefined, slotName: string): HTMLElement | null {\n if (element == null) return null;\n return element.querySelector(`[slot=\"${slotName}\"]`);\n}\n"]}
@@ -2,15 +2,15 @@
2
2
  // Determines if the browser supports focus({ preventScroll })
3
3
  //
4
4
  export const isPreventScrollSupported = () => {
5
- let supported = false;
6
- const element = document.createElement('div');
7
- element.focus &&
8
- element.focus({
9
- get preventScroll() {
10
- supported = true;
11
- return false;
12
- },
13
- });
14
- return supported;
5
+ let supported = false;
6
+ const element = document.createElement('div');
7
+ element.focus &&
8
+ element.focus({
9
+ get preventScroll() {
10
+ supported = true;
11
+ return false;
12
+ },
13
+ });
14
+ return supported;
15
15
  };
16
16
  //# sourceMappingURL=support.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"support.js","sourceRoot":"","sources":["../../src/utils/support.ts"],"names":[],"mappings":"AAAA,EAAE;AACF,8DAA8D;AAC9D,EAAE;AACF,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,EAAE;EAC3C,IAAI,SAAS,GAAG,KAAK,CAAC;EAEtB,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;EAC9C,OAAO,CAAC,KAAK;IACX,OAAO,CAAC,KAAK,CAAC;MACZ,IAAI,aAAa;QACf,SAAS,GAAG,IAAI,CAAC;QACjB,OAAO,KAAK,CAAC;MACf,CAAC;KACF,CAAC,CAAC;EAEL,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC","sourcesContent":["//\n// Determines if the browser supports focus({ preventScroll })\n//\nexport const isPreventScrollSupported = () => {\n let supported = false;\n\n const element = document.createElement('div');\n element.focus &&\n element.focus({\n get preventScroll() {\n supported = true;\n return false;\n },\n });\n\n return supported;\n};\n"]}
1
+ {"version":3,"file":"support.js","sourceRoot":"","sources":["../../src/utils/support.ts"],"names":[],"mappings":"AAAA,EAAE;AACF,8DAA8D;AAC9D,EAAE;AACF,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,EAAE;IAC3C,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9C,OAAO,CAAC,KAAK;QACX,OAAO,CAAC,KAAK,CAAC;YACZ,IAAI,aAAa;gBACf,SAAS,GAAG,IAAI,CAAC;gBACjB,OAAO,KAAK,CAAC;YACf,CAAC;SACF,CAAC,CAAC;IAEL,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC","sourcesContent":["//\n// Determines if the browser supports focus({ preventScroll })\n//\nexport const isPreventScrollSupported = () => {\n let supported = false;\n\n const element = document.createElement('div');\n element.focus &&\n element.focus({\n get preventScroll() {\n supported = true;\n return false;\n },\n });\n\n return supported;\n};\n"]}
@@ -1,23 +1,23 @@
1
1
  export function isTabbable(el) {
2
- const tabIndex = el.tabIndex;
3
- return tabIndex > -1;
2
+ const tabIndex = el.tabIndex;
3
+ return tabIndex > -1;
4
4
  }
5
5
  export function getNearestTabbableElement(el) {
6
- // Check the element
7
- if (isTabbable(el)) {
8
- return el;
9
- }
10
- // Check the element's shadow root
11
- if (el.shadowRoot != null) {
12
- const tabbableShadowChild = [...el.shadowRoot.children].find((e) => isTabbable(e));
13
- if (tabbableShadowChild != null) {
14
- return tabbableShadowChild;
6
+ // Check the element
7
+ if (isTabbable(el)) {
8
+ return el;
15
9
  }
16
- }
17
- // Check the element's children
18
- if (el.children != null) {
19
- return [...el.children].map((e) => getNearestTabbableElement(e)).at(0);
20
- }
21
- return undefined;
10
+ // Check the element's shadow root
11
+ if (el.shadowRoot != null) {
12
+ const tabbableShadowChild = [...el.shadowRoot.children].find((e) => isTabbable(e));
13
+ if (tabbableShadowChild != null) {
14
+ return tabbableShadowChild;
15
+ }
16
+ }
17
+ // Check the element's children
18
+ if (el.children != null) {
19
+ return [...el.children].map((e) => getNearestTabbableElement(e)).at(0);
20
+ }
21
+ return undefined;
22
22
  }
23
23
  //# sourceMappingURL=tabbable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabbable.js","sourceRoot":"","sources":["../../src/utils/tabbable.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,UAAU,CAAC,EAAe;EACxC,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC;EAC7B,OAAO,QAAQ,GAAG,CAAC,CAAC,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,EAAe;EACvD,oBAAoB;EACpB,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE;IAClB,OAAO,EAAE,CAAC;GACX;EAED,kCAAkC;EAClC,IAAI,EAAE,CAAC,UAAU,IAAI,IAAI,EAAE;IACzB,MAAM,mBAAmB,GAAG,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAgB,CAAC,CAAgB,CAAC;IACjH,IAAI,mBAAmB,IAAI,IAAI,EAAE;MAC/B,OAAO,mBAAmB,CAAC;KAC5B;GACF;EAED,+BAA+B;EAC/B,IAAI,EAAE,CAAC,QAAQ,IAAI,IAAI,EAAE;IACvB,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,yBAAyB,CAAC,CAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;GACvF;EAED,OAAO,SAAS,CAAC;AACnB,CAAC","sourcesContent":["export function isTabbable(el: HTMLElement) {\n const tabIndex = el.tabIndex;\n return tabIndex > -1;\n}\n\nexport function getNearestTabbableElement(el: HTMLElement): HTMLElement | undefined {\n // Check the element\n if (isTabbable(el)) {\n return el;\n }\n\n // Check the element's shadow root\n if (el.shadowRoot != null) {\n const tabbableShadowChild = [...el.shadowRoot.children].find((e) => isTabbable(e as HTMLElement)) as HTMLElement;\n if (tabbableShadowChild != null) {\n return tabbableShadowChild;\n }\n }\n\n // Check the element's children\n if (el.children != null) {\n return [...el.children].map((e) => getNearestTabbableElement(e as HTMLElement)).at(0);\n }\n\n return undefined;\n}\n"]}
1
+ {"version":3,"file":"tabbable.js","sourceRoot":"","sources":["../../src/utils/tabbable.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,UAAU,CAAC,EAAe;IACxC,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC;IAC7B,OAAO,QAAQ,GAAG,CAAC,CAAC,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,EAAe;IACvD,oBAAoB;IACpB,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE;QAClB,OAAO,EAAE,CAAC;KACX;IAED,kCAAkC;IAClC,IAAI,EAAE,CAAC,UAAU,IAAI,IAAI,EAAE;QACzB,MAAM,mBAAmB,GAAG,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAgB,CAAC,CAAgB,CAAC;QACjH,IAAI,mBAAmB,IAAI,IAAI,EAAE;YAC/B,OAAO,mBAAmB,CAAC;SAC5B;KACF;IAED,+BAA+B;IAC/B,IAAI,EAAE,CAAC,QAAQ,IAAI,IAAI,EAAE;QACvB,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,yBAAyB,CAAC,CAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;KACvF;IAED,OAAO,SAAS,CAAC;AACnB,CAAC","sourcesContent":["export function isTabbable(el: HTMLElement) {\n const tabIndex = el.tabIndex;\n return tabIndex > -1;\n}\n\nexport function getNearestTabbableElement(el: HTMLElement): HTMLElement | undefined {\n // Check the element\n if (isTabbable(el)) {\n return el;\n }\n\n // Check the element's shadow root\n if (el.shadowRoot != null) {\n const tabbableShadowChild = [...el.shadowRoot.children].find((e) => isTabbable(e as HTMLElement)) as HTMLElement;\n if (tabbableShadowChild != null) {\n return tabbableShadowChild;\n }\n }\n\n // Check the element's children\n if (el.children != null) {\n return [...el.children].map((e) => getNearestTabbableElement(e as HTMLElement)).at(0);\n }\n\n return undefined;\n}\n"]}