@six-group/ui-library 0.0.0-insider.11a6206 → 0.0.0-insider.1a07fa6

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 (1062) hide show
  1. package/README.md +9 -0
  2. package/dist/cjs/event-listeners-9fb878f1.js +61 -0
  3. package/dist/cjs/event-listeners-9fb878f1.js.map +1 -0
  4. package/dist/cjs/{execution-control-45c84c46.js → execution-control-d728da70.js} +15 -15
  5. package/dist/cjs/execution-control-d728da70.js.map +1 -0
  6. package/dist/cjs/focus-visible-e2c9255a.js +47 -0
  7. package/dist/cjs/focus-visible-e2c9255a.js.map +1 -0
  8. package/dist/cjs/form-9ebaae7c.js +20 -0
  9. package/dist/{esm/form-0b9c11cd.js.map → cjs/form-9ebaae7c.js.map} +1 -1
  10. package/dist/cjs/form-control-f9bc25dd.js +36 -0
  11. package/dist/cjs/form-control-f9bc25dd.js.map +1 -0
  12. package/dist/cjs/{index-2f6daa5b.js → index-3baddcdc.js} +724 -180
  13. package/dist/cjs/index-3baddcdc.js.map +1 -0
  14. package/dist/cjs/index.cjs.js +96 -81
  15. package/dist/cjs/index.cjs.js.map +1 -1
  16. package/dist/cjs/loader.cjs.js +3 -12
  17. package/dist/cjs/loader.cjs.js.map +1 -1
  18. package/dist/cjs/modal-3ce015be.js +52 -0
  19. package/dist/cjs/modal-3ce015be.js.map +1 -0
  20. package/dist/cjs/{popover-8885d50f.js → popover-1e7c09f1.js} +99 -99
  21. package/dist/cjs/popover-1e7c09f1.js.map +1 -0
  22. package/dist/cjs/popup-40a9adbb.js +103 -0
  23. package/dist/cjs/popup-40a9adbb.js.map +1 -0
  24. package/dist/cjs/scroll-68033901.js +68 -0
  25. package/dist/{esm/scroll-180b53fd.js.map → cjs/scroll-68033901.js.map} +1 -1
  26. package/dist/cjs/set-attributes_2.cjs.entry.js +50 -50
  27. package/dist/cjs/set-attributes_2.cjs.entry.js.map +1 -1
  28. package/dist/cjs/six-alert.cjs.entry.js +109 -109
  29. package/dist/cjs/six-alert.cjs.entry.js.map +1 -1
  30. package/dist/cjs/six-avatar.cjs.entry.js +20 -20
  31. package/dist/cjs/six-avatar.cjs.entry.js.map +1 -1
  32. package/dist/cjs/six-badge.cjs.entry.js +22 -22
  33. package/dist/cjs/six-badge.cjs.entry.js.map +1 -1
  34. package/dist/cjs/six-button.cjs.entry.js +95 -95
  35. package/dist/cjs/six-button.cjs.entry.js.map +1 -1
  36. package/dist/cjs/six-card.cjs.entry.js +7 -7
  37. package/dist/cjs/six-card.cjs.entry.js.map +1 -1
  38. package/dist/cjs/six-checkbox.cjs.entry.js +110 -115
  39. package/dist/cjs/six-checkbox.cjs.entry.js.map +1 -1
  40. package/dist/cjs/six-datepicker.cjs.entry.js +834 -837
  41. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -1
  42. package/dist/cjs/six-details.cjs.entry.js +127 -127
  43. package/dist/cjs/six-details.cjs.entry.js.map +1 -1
  44. package/dist/cjs/six-dialog.cjs.entry.js +128 -128
  45. package/dist/cjs/six-dialog.cjs.entry.js.map +1 -1
  46. package/dist/cjs/six-drawer.cjs.entry.js +146 -146
  47. package/dist/cjs/six-drawer.cjs.entry.js.map +1 -1
  48. package/dist/cjs/six-dropdown_2.cjs.entry.js +634 -634
  49. package/dist/cjs/six-dropdown_2.cjs.entry.js.map +1 -1
  50. package/dist/cjs/six-error-page.cjs.entry.js +82 -82
  51. package/dist/cjs/six-error-page.cjs.entry.js.map +1 -1
  52. package/dist/cjs/six-error.cjs.entry.js +21 -0
  53. package/dist/cjs/six-error.cjs.entry.js.map +1 -0
  54. package/dist/cjs/six-file-list-item.cjs.entry.js +33 -33
  55. package/dist/cjs/six-file-list-item.cjs.entry.js.map +1 -1
  56. package/dist/cjs/six-file-list.cjs.entry.js +7 -7
  57. package/dist/cjs/six-file-list.cjs.entry.js.map +1 -1
  58. package/dist/cjs/six-file-upload.cjs.entry.js +98 -98
  59. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -1
  60. package/dist/cjs/six-footer.cjs.entry.js +7 -7
  61. package/dist/cjs/six-footer.cjs.entry.js.map +1 -1
  62. package/dist/cjs/six-group-label.cjs.entry.js +43 -43
  63. package/dist/cjs/six-group-label.cjs.entry.js.map +1 -1
  64. package/dist/cjs/six-header.cjs.entry.js +155 -155
  65. package/dist/cjs/six-header.cjs.entry.js.map +1 -1
  66. package/dist/cjs/six-icon-button.cjs.entry.js +32 -32
  67. package/dist/cjs/six-icon-button.cjs.entry.js.map +1 -1
  68. package/dist/cjs/six-icon.cjs.entry.js +21 -21
  69. package/dist/cjs/six-icon.cjs.entry.js.map +1 -1
  70. package/dist/cjs/six-input.cjs.entry.js +190 -187
  71. package/dist/cjs/six-input.cjs.entry.js.map +1 -1
  72. package/dist/cjs/six-item-picker.cjs.entry.js +307 -307
  73. package/dist/cjs/six-item-picker.cjs.entry.js.map +1 -1
  74. package/dist/cjs/six-language-switcher.cjs.entry.js +46 -46
  75. package/dist/cjs/six-language-switcher.cjs.entry.js.map +1 -1
  76. package/dist/cjs/six-layout-grid.cjs.entry.js +20 -20
  77. package/dist/cjs/six-layout-grid.cjs.entry.js.map +1 -1
  78. package/dist/cjs/six-main-container.cjs.entry.js +9 -9
  79. package/dist/cjs/six-main-container.cjs.entry.js.map +1 -1
  80. package/dist/cjs/six-menu-divider.cjs.entry.js +7 -7
  81. package/dist/cjs/six-menu-divider.cjs.entry.js.map +1 -1
  82. package/dist/cjs/six-menu-item.cjs.entry.js +49 -49
  83. package/dist/cjs/six-menu-item.cjs.entry.js.map +1 -1
  84. package/dist/cjs/six-menu-label.cjs.entry.js +7 -7
  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 +14 -14
  89. package/dist/cjs/six-progress-bar.cjs.entry.js.map +1 -1
  90. package/dist/cjs/six-progress-ring.cjs.entry.js +29 -29
  91. package/dist/cjs/six-progress-ring.cjs.entry.js.map +1 -1
  92. package/dist/cjs/six-radio.cjs.entry.js +103 -111
  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 +43 -43
  99. package/dist/cjs/six-search-field.cjs.entry.js.map +1 -1
  100. package/dist/cjs/six-select.cjs.entry.js +364 -360
  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 +173 -173
  107. package/dist/cjs/six-sidebar.cjs.entry.js.map +1 -1
  108. package/dist/cjs/six-spinner.cjs.entry.js +14 -14
  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 +13 -13
  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 +76 -76
  123. package/dist/cjs/six-tile.cjs.entry.js.map +1 -1
  124. package/dist/cjs/six-timepicker.cjs.entry.js +347 -352
  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-9821749e.js +53 -0
  129. package/dist/cjs/slot-9821749e.js.map +1 -0
  130. package/dist/cjs/types-0a6d66f6.js +17 -0
  131. package/dist/cjs/types-0a6d66f6.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.js +339 -332
  136. package/dist/collection/components/six-alert/six-alert.js.map +1 -1
  137. package/dist/collection/components/six-alert/test/six-alert.spec.js +25 -0
  138. package/dist/collection/components/six-alert/test/six-alert.spec.js.map +1 -0
  139. package/dist/collection/components/six-avatar/six-avatar.js +112 -112
  140. package/dist/collection/components/six-avatar/six-avatar.js.map +1 -1
  141. package/dist/collection/components/six-avatar/test/six-avatar.spec.js +26 -0
  142. package/dist/collection/components/six-avatar/test/six-avatar.spec.js.map +1 -0
  143. package/dist/collection/components/six-badge/six-badge.js +91 -91
  144. package/dist/collection/components/six-badge/six-badge.js.map +1 -1
  145. package/dist/collection/components/six-badge/test/six-badge.spec.js +20 -0
  146. package/dist/collection/components/six-badge/test/six-badge.spec.js.map +1 -0
  147. package/dist/collection/components/six-button/six-button.css +5 -30
  148. package/dist/collection/components/six-button/six-button.js +449 -444
  149. package/dist/collection/components/six-button/six-button.js.map +1 -1
  150. package/dist/collection/components/six-button/test/six-button.spec.js +69 -0
  151. package/dist/collection/components/six-button/test/six-button.spec.js.map +1 -0
  152. package/dist/collection/components/six-card/six-card.js +16 -16
  153. package/dist/collection/components/six-card/six-card.js.map +1 -1
  154. package/dist/collection/components/six-card/test/six-card.spec.js +18 -0
  155. package/dist/collection/components/six-card/test/six-card.spec.js.map +1 -0
  156. package/dist/collection/components/six-checkbox/six-checkbox.css +4 -1
  157. package/dist/collection/components/six-checkbox/six-checkbox.js +423 -420
  158. package/dist/collection/components/six-checkbox/six-checkbox.js.map +1 -1
  159. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js +83 -0
  160. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js.map +1 -0
  161. package/dist/collection/components/six-datepicker/components/day-selection.js +9 -9
  162. package/dist/collection/components/six-datepicker/components/day-selection.js.map +1 -1
  163. package/dist/collection/components/six-datepicker/components/month-selection.js +10 -10
  164. package/dist/collection/components/six-datepicker/components/month-selection.js.map +1 -1
  165. package/dist/collection/components/six-datepicker/components/year-selection.js +10 -10
  166. package/dist/collection/components/six-datepicker/components/year-selection.js.map +1 -1
  167. package/dist/collection/components/six-datepicker/six-date-formats.js +20 -20
  168. package/dist/collection/components/six-datepicker/six-date-formats.js.map +1 -1
  169. package/dist/collection/components/six-datepicker/six-datepicker.js +1060 -1035
  170. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -1
  171. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js +26 -0
  172. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js.map +1 -0
  173. package/dist/collection/components/six-datepicker/test/six-datepicker.test-helpers.js +14 -14
  174. package/dist/collection/components/six-datepicker/test/six-datepicker.test-helpers.js.map +1 -1
  175. package/dist/collection/components/six-details/six-details.css +3 -1
  176. package/dist/collection/components/six-details/six-details.js +412 -406
  177. package/dist/collection/components/six-details/six-details.js.map +1 -1
  178. package/dist/collection/components/six-details/test/six-details.spec.js +36 -0
  179. package/dist/collection/components/six-details/test/six-details.spec.js.map +1 -0
  180. package/dist/collection/components/six-dialog/six-dialog.js +359 -351
  181. package/dist/collection/components/six-dialog/six-dialog.js.map +1 -1
  182. package/dist/collection/components/six-dialog/test/six-dialog.spec.js +34 -0
  183. package/dist/collection/components/six-dialog/test/six-dialog.spec.js.map +1 -0
  184. package/dist/collection/components/six-drawer/six-drawer.js +414 -406
  185. package/dist/collection/components/six-drawer/six-drawer.js.map +1 -1
  186. package/dist/collection/components/six-drawer/test/six-drawer.spec.js +34 -0
  187. package/dist/collection/components/six-drawer/test/six-drawer.spec.js.map +1 -0
  188. package/dist/collection/components/six-dropdown/six-dropdown.css +2 -1
  189. package/dist/collection/components/six-dropdown/six-dropdown.js +897 -885
  190. package/dist/collection/components/six-dropdown/six-dropdown.js.map +1 -1
  191. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js +122 -0
  192. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js.map +1 -0
  193. package/dist/collection/components/six-error/six-error.css +5 -0
  194. package/dist/collection/components/six-error/six-error.js +25 -0
  195. package/dist/collection/components/six-error/six-error.js.map +1 -0
  196. package/dist/collection/components/six-error-page/six-error-page.js +178 -178
  197. package/dist/collection/components/six-error-page/six-error-page.js.map +1 -1
  198. package/dist/collection/components/six-error-page/test/six-error-page.spec.js +240 -0
  199. package/dist/collection/components/six-error-page/test/six-error-page.spec.js.map +1 -0
  200. package/dist/collection/components/six-file-list/six-file-list.js +16 -16
  201. package/dist/collection/components/six-file-list/six-file-list.js.map +1 -1
  202. package/dist/collection/components/six-file-list/test/six-file-list.spec.js +67 -0
  203. package/dist/collection/components/six-file-list/test/six-file-list.spec.js.map +1 -0
  204. package/dist/collection/components/six-file-list-item/six-file-list-item.js +196 -194
  205. package/dist/collection/components/six-file-list-item/six-file-list-item.js.map +1 -1
  206. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js +169 -0
  207. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js.map +1 -0
  208. package/dist/collection/components/six-file-upload/six-file-upload.js +292 -290
  209. package/dist/collection/components/six-file-upload/six-file-upload.js.map +1 -1
  210. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js +103 -0
  211. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js.map +1 -0
  212. package/dist/collection/components/six-footer/six-footer.js +16 -16
  213. package/dist/collection/components/six-footer/six-footer.js.map +1 -1
  214. package/dist/collection/components/six-footer/test/six-footer.spec.js +21 -0
  215. package/dist/collection/components/six-footer/test/six-footer.spec.js.map +1 -0
  216. package/dist/collection/components/six-group-label/six-group-label.css +4 -1
  217. package/dist/collection/components/six-group-label/six-group-label.js +158 -158
  218. package/dist/collection/components/six-group-label/six-group-label.js.map +1 -1
  219. package/dist/collection/components/six-group-label/test/six-group-label.spec.js +45 -0
  220. package/dist/collection/components/six-group-label/test/six-group-label.spec.js.map +1 -0
  221. package/dist/collection/components/six-header/six-header.js +409 -401
  222. package/dist/collection/components/six-header/six-header.js.map +1 -1
  223. package/dist/collection/components/six-header/test/six-header.spec.js +133 -0
  224. package/dist/collection/components/six-header/test/six-header.spec.js.map +1 -0
  225. package/dist/collection/components/six-icon/six-icon.js +72 -72
  226. package/dist/collection/components/six-icon/six-icon.js.map +1 -1
  227. package/dist/collection/components/six-icon/test/six-icon.spec.js +20 -0
  228. package/dist/collection/components/six-icon/test/six-icon.spec.js.map +1 -0
  229. package/dist/collection/components/six-icon-button/six-icon-button.css +4 -4
  230. package/dist/collection/components/six-icon-button/six-icon-button.js +133 -133
  231. package/dist/collection/components/six-icon-button/six-icon-button.js.map +1 -1
  232. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js +23 -0
  233. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js.map +1 -0
  234. package/dist/collection/components/six-input/six-input.css +5 -2
  235. package/dist/collection/components/six-input/six-input.js +947 -913
  236. package/dist/collection/components/six-input/six-input.js.map +1 -1
  237. package/dist/collection/components/six-input/test/six-input.spec.js +39 -0
  238. package/dist/collection/components/six-input/test/six-input.spec.js.map +1 -0
  239. package/dist/collection/components/six-item-picker/six-item-picker.js +634 -630
  240. package/dist/collection/components/six-item-picker/six-item-picker.js.map +1 -1
  241. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js +90 -0
  242. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js.map +1 -0
  243. package/dist/collection/components/six-item-picker/types.js +7 -7
  244. package/dist/collection/components/six-item-picker/types.js.map +1 -1
  245. package/dist/collection/components/six-language-switcher/six-language-switcher.js +125 -123
  246. package/dist/collection/components/six-language-switcher/six-language-switcher.js.map +1 -1
  247. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js +196 -0
  248. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js.map +1 -0
  249. package/dist/collection/components/six-layout-grid/six-layout-grid.js +55 -55
  250. package/dist/collection/components/six-layout-grid/six-layout-grid.js.map +1 -1
  251. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js +18 -0
  252. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js.map +1 -0
  253. package/dist/collection/components/six-main-container/six-main-container.js +42 -42
  254. package/dist/collection/components/six-main-container/six-main-container.js.map +1 -1
  255. package/dist/collection/components/six-main-container/test/six-main-container.spec.js +22 -0
  256. package/dist/collection/components/six-main-container/test/six-main-container.spec.js.map +1 -0
  257. package/dist/collection/components/six-menu/six-menu.js +369 -365
  258. package/dist/collection/components/six-menu/six-menu.js.map +1 -1
  259. package/dist/collection/components/six-menu/test/six-menu.spec.js +93 -0
  260. package/dist/collection/components/six-menu/test/six-menu.spec.js.map +1 -0
  261. package/dist/collection/components/six-menu-divider/six-menu-divider.js +16 -16
  262. package/dist/collection/components/six-menu-divider/six-menu-divider.js.map +1 -1
  263. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js +18 -0
  264. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js.map +1 -0
  265. package/dist/collection/components/six-menu-item/six-menu-item.js +182 -178
  266. package/dist/collection/components/six-menu-item/six-menu-item.js.map +1 -1
  267. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js +33 -0
  268. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js.map +1 -0
  269. package/dist/collection/components/six-menu-label/six-menu-label.js +16 -16
  270. package/dist/collection/components/six-menu-label/six-menu-label.js.map +1 -1
  271. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js +20 -0
  272. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js.map +1 -0
  273. package/dist/collection/components/six-picto/six-picto.js +47 -47
  274. package/dist/collection/components/six-picto/six-picto.js.map +1 -1
  275. package/dist/collection/components/six-picto/test/six-picto.spec.js +33 -0
  276. package/dist/collection/components/six-picto/test/six-picto.spec.js.map +1 -0
  277. package/dist/collection/components/six-progress-bar/six-progress-bar.js +65 -65
  278. package/dist/collection/components/six-progress-bar/six-progress-bar.js.map +1 -1
  279. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js +24 -0
  280. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js.map +1 -0
  281. package/dist/collection/components/six-progress-ring/six-progress-ring.js +101 -101
  282. package/dist/collection/components/six-progress-ring/six-progress-ring.js.map +1 -1
  283. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js +26 -0
  284. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js.map +1 -0
  285. package/dist/collection/components/six-radio/six-radio.js +322 -340
  286. package/dist/collection/components/six-radio/six-radio.js.map +1 -1
  287. package/dist/collection/components/six-radio/test/six-radio.spec.js +63 -0
  288. package/dist/collection/components/six-radio/test/six-radio.spec.js.map +1 -0
  289. package/dist/collection/components/six-range/six-range.css +4 -1
  290. package/dist/collection/components/six-range/six-range.js +567 -540
  291. package/dist/collection/components/six-range/six-range.js.map +1 -1
  292. package/dist/collection/components/six-range/test/six-range.spec.js +34 -0
  293. package/dist/collection/components/six-range/test/six-range.spec.js.map +1 -0
  294. package/dist/collection/components/six-root/six-root.js +153 -151
  295. package/dist/collection/components/six-root/six-root.js.map +1 -1
  296. package/dist/collection/components/six-root/test/six-root.spec.js +43 -0
  297. package/dist/collection/components/six-root/test/six-root.spec.js.map +1 -0
  298. package/dist/collection/components/six-search-field/six-search-field.js +172 -171
  299. package/dist/collection/components/six-search-field/six-search-field.js.map +1 -1
  300. package/dist/collection/components/six-search-field/test/six-search-field.spec.js +22 -0
  301. package/dist/collection/components/six-search-field/test/six-search-field.spec.js.map +1 -0
  302. package/dist/collection/components/six-select/six-select.css +10 -10
  303. package/dist/collection/components/six-select/six-select.js +939 -911
  304. package/dist/collection/components/six-select/six-select.js.map +1 -1
  305. package/dist/collection/components/six-select/test/six-select.spec.js +86 -0
  306. package/dist/collection/components/six-select/test/six-select.spec.js.map +1 -0
  307. package/dist/collection/components/six-select/test/util.spec.js +81 -0
  308. package/dist/collection/components/six-select/test/util.spec.js.map +1 -0
  309. package/dist/collection/components/six-select/util.js +34 -34
  310. package/dist/collection/components/six-select/util.js.map +1 -1
  311. package/dist/collection/components/six-sidebar/six-sidebar.js +466 -454
  312. package/dist/collection/components/six-sidebar/six-sidebar.js.map +1 -1
  313. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js +22 -0
  314. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js.map +1 -0
  315. package/dist/collection/components/six-sidebar-item/six-sidebar-item.css +6 -1
  316. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +102 -83
  317. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js.map +1 -1
  318. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js +50 -0
  319. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js.map +1 -0
  320. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.css +11 -0
  321. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js +182 -154
  322. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js.map +1 -1
  323. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js +53 -0
  324. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js.map +1 -0
  325. package/dist/collection/components/six-spinner/six-spinner.js +47 -47
  326. package/dist/collection/components/six-spinner/six-spinner.js.map +1 -1
  327. package/dist/collection/components/six-spinner/test/six-spinner.spec.js +37 -0
  328. package/dist/collection/components/six-spinner/test/six-spinner.spec.js.map +1 -0
  329. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js +46 -45
  330. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js.map +1 -1
  331. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js +117 -0
  332. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js.map +1 -0
  333. package/dist/collection/components/six-switch/six-switch.css +4 -1
  334. package/dist/collection/components/six-switch/six-switch.js +388 -341
  335. package/dist/collection/components/six-switch/six-switch.js.map +1 -1
  336. package/dist/collection/components/six-switch/test/six-switch.spec.js +73 -0
  337. package/dist/collection/components/six-switch/test/six-switch.spec.js.map +1 -0
  338. package/dist/collection/components/six-tab/six-tab.css +54 -5
  339. package/dist/collection/components/six-tab/six-tab.js +206 -186
  340. package/dist/collection/components/six-tab/six-tab.js.map +1 -1
  341. package/dist/collection/components/six-tab-group/six-tab-group.css +0 -31
  342. package/dist/collection/components/six-tab-group/six-tab-group.js +319 -357
  343. package/dist/collection/components/six-tab-group/six-tab-group.js.map +1 -1
  344. package/dist/collection/components/six-tab-panel/six-tab-panel.js +64 -64
  345. package/dist/collection/components/six-tab-panel/six-tab-panel.js.map +1 -1
  346. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js +20 -0
  347. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js.map +1 -0
  348. package/dist/collection/components/six-tag/six-tag.css +6 -0
  349. package/dist/collection/components/six-tag/six-tag.js +162 -139
  350. package/dist/collection/components/six-tag/six-tag.js.map +1 -1
  351. package/dist/collection/components/six-tag/test/six-tag.spec.js +54 -0
  352. package/dist/collection/components/six-tag/test/six-tag.spec.js.map +1 -0
  353. package/dist/collection/components/six-textarea/six-textarea.css +4 -1
  354. package/dist/collection/components/six-textarea/six-textarea.js +787 -760
  355. package/dist/collection/components/six-textarea/six-textarea.js.map +1 -1
  356. package/dist/collection/components/six-textarea/test/six-textarea.spec.js +119 -0
  357. package/dist/collection/components/six-textarea/test/six-textarea.spec.js.map +1 -0
  358. package/dist/collection/components/six-tile/six-tile.js +300 -296
  359. package/dist/collection/components/six-tile/six-tile.js.map +1 -1
  360. package/dist/collection/components/six-tile/test/six-tile.spec.js +69 -0
  361. package/dist/collection/components/six-tile/test/six-tile.spec.js.map +1 -0
  362. package/dist/collection/components/six-timepicker/six-timepicker.js +831 -813
  363. package/dist/collection/components/six-timepicker/six-timepicker.js.map +1 -1
  364. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js +496 -0
  365. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js.map +1 -0
  366. package/dist/collection/components/six-tooltip/six-tooltip.css +1 -1
  367. package/dist/collection/components/six-tooltip/six-tooltip.js +409 -403
  368. package/dist/collection/components/six-tooltip/six-tooltip.js.map +1 -1
  369. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js +28 -0
  370. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js.map +1 -0
  371. package/dist/collection/functional-components/form-control/form-control.js +20 -18
  372. package/dist/collection/functional-components/form-control/form-control.js.map +1 -1
  373. package/dist/collection/testUtil/delay.js +1 -1
  374. package/dist/collection/testUtil/delay.js.map +1 -1
  375. package/dist/collection/utils/animation.js +34 -0
  376. package/dist/collection/utils/animation.js.map +1 -0
  377. package/dist/collection/utils/date-util.js +501 -501
  378. package/dist/collection/utils/date-util.js.map +1 -1
  379. package/dist/collection/utils/date-util.spec.js +995 -0
  380. package/dist/collection/utils/date-util.spec.js.map +1 -0
  381. package/dist/collection/utils/error-messages.js +95 -81
  382. package/dist/collection/utils/error-messages.js.map +1 -1
  383. package/dist/collection/utils/event-listeners.js +51 -51
  384. package/dist/collection/utils/event-listeners.js.map +1 -1
  385. package/dist/collection/utils/execution-control.js +14 -14
  386. package/dist/collection/utils/execution-control.js.map +1 -1
  387. package/dist/collection/utils/focus-visible.js +28 -28
  388. package/dist/collection/utils/focus-visible.js.map +1 -1
  389. package/dist/collection/utils/form.js +12 -12
  390. package/dist/collection/utils/form.js.map +1 -1
  391. package/dist/collection/utils/modal.js +25 -25
  392. package/dist/collection/utils/modal.js.map +1 -1
  393. package/dist/collection/utils/offset.js +4 -4
  394. package/dist/collection/utils/offset.js.map +1 -1
  395. package/dist/collection/utils/popover.js +100 -100
  396. package/dist/collection/utils/popover.js.map +1 -1
  397. package/dist/collection/utils/popup.js +71 -71
  398. package/dist/collection/utils/popup.js.map +1 -1
  399. package/dist/collection/utils/scroll.js +28 -28
  400. package/dist/collection/utils/scroll.js.map +1 -1
  401. package/dist/collection/utils/scroll.spec.js +122 -0
  402. package/dist/collection/utils/scroll.spec.js.map +1 -0
  403. package/dist/collection/utils/slot.js +28 -28
  404. package/dist/collection/utils/slot.js.map +1 -1
  405. package/dist/collection/utils/support.js +10 -10
  406. package/dist/collection/utils/support.js.map +1 -1
  407. package/dist/collection/utils/tabbable.js +17 -17
  408. package/dist/collection/utils/tabbable.js.map +1 -1
  409. package/dist/collection/utils/time.util.js +72 -72
  410. package/dist/collection/utils/time.util.js.map +1 -1
  411. package/dist/collection/utils/time.util.spec.js +368 -0
  412. package/dist/collection/utils/time.util.spec.js.map +1 -0
  413. package/dist/collection/wrappers/set-attributes/set-attributes.js +66 -66
  414. package/dist/collection/wrappers/set-attributes/set-attributes.js.map +1 -1
  415. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js +16 -0
  416. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js.map +1 -0
  417. package/dist/components/event-listeners.js +51 -51
  418. package/dist/components/event-listeners.js.map +1 -1
  419. package/dist/components/execution-control.js +14 -14
  420. package/dist/components/execution-control.js.map +1 -1
  421. package/dist/components/focus-visible.js +28 -28
  422. package/dist/components/focus-visible.js.map +1 -1
  423. package/dist/components/form-control.js +26 -23
  424. package/dist/components/form-control.js.map +1 -1
  425. package/dist/components/form.js +12 -12
  426. package/dist/components/form.js.map +1 -1
  427. package/dist/components/index.d.ts +6 -0
  428. package/dist/components/index.js +159 -143
  429. package/dist/components/index.js.map +1 -1
  430. package/dist/components/modal.js +35 -35
  431. package/dist/components/modal.js.map +1 -1
  432. package/dist/components/popover.js +98 -98
  433. package/dist/components/popover.js.map +1 -1
  434. package/dist/components/scroll.js +32 -32
  435. package/dist/components/scroll.js.map +1 -1
  436. package/dist/components/set-attributes.d.ts +2 -2
  437. package/dist/components/set-attributes2.js +58 -56
  438. package/dist/components/set-attributes2.js.map +1 -1
  439. package/dist/components/six-alert.d.ts +2 -2
  440. package/dist/components/six-alert.js +144 -141
  441. package/dist/components/six-alert.js.map +1 -1
  442. package/dist/components/six-avatar.d.ts +2 -2
  443. package/dist/components/six-avatar.js +44 -44
  444. package/dist/components/six-avatar.js.map +1 -1
  445. package/dist/components/six-badge.d.ts +2 -2
  446. package/dist/components/six-badge.js +39 -39
  447. package/dist/components/six-badge.js.map +1 -1
  448. package/dist/components/six-button.d.ts +2 -2
  449. package/dist/components/six-button.js +132 -132
  450. package/dist/components/six-button.js.map +1 -1
  451. package/dist/components/six-card.d.ts +2 -2
  452. package/dist/components/six-card.js +20 -20
  453. package/dist/components/six-card.js.map +1 -1
  454. package/dist/components/six-checkbox.d.ts +2 -2
  455. package/dist/components/six-checkbox.js +147 -140
  456. package/dist/components/six-checkbox.js.map +1 -1
  457. package/dist/components/six-datepicker.d.ts +2 -2
  458. package/dist/components/six-datepicker.js +905 -898
  459. package/dist/components/six-datepicker.js.map +1 -1
  460. package/dist/components/six-details.d.ts +2 -2
  461. package/dist/components/six-details2.js +158 -156
  462. package/dist/components/six-details2.js.map +1 -1
  463. package/dist/components/six-dialog.d.ts +2 -2
  464. package/dist/components/six-dialog.js +158 -156
  465. package/dist/components/six-dialog.js.map +1 -1
  466. package/dist/components/six-drawer.d.ts +2 -2
  467. package/dist/components/six-drawer.js +178 -176
  468. package/dist/components/six-drawer.js.map +1 -1
  469. package/dist/components/six-dropdown.d.ts +2 -2
  470. package/dist/components/six-dropdown2.js +473 -460
  471. package/dist/components/six-dropdown2.js.map +1 -1
  472. package/dist/components/six-error-page.d.ts +2 -2
  473. package/dist/components/six-error-page.js +106 -106
  474. package/dist/components/six-error-page.js.map +1 -1
  475. package/dist/components/six-error.d.ts +11 -0
  476. package/dist/components/six-error.js +8 -0
  477. package/dist/components/six-error.js.map +1 -0
  478. package/dist/components/six-error2.js +32 -0
  479. package/dist/components/six-error2.js.map +1 -0
  480. package/dist/components/six-file-list-item.d.ts +2 -2
  481. package/dist/components/six-file-list-item.js +58 -58
  482. package/dist/components/six-file-list-item.js.map +1 -1
  483. package/dist/components/six-file-list.d.ts +2 -2
  484. package/dist/components/six-file-list.js +20 -20
  485. package/dist/components/six-file-list.js.map +1 -1
  486. package/dist/components/six-file-upload.d.ts +2 -2
  487. package/dist/components/six-file-upload.js +123 -123
  488. package/dist/components/six-file-upload.js.map +1 -1
  489. package/dist/components/six-footer.d.ts +2 -2
  490. package/dist/components/six-footer.js +20 -20
  491. package/dist/components/six-footer.js.map +1 -1
  492. package/dist/components/six-group-label.d.ts +2 -2
  493. package/dist/components/six-group-label.js +71 -62
  494. package/dist/components/six-group-label.js.map +1 -1
  495. package/dist/components/six-header.d.ts +2 -2
  496. package/dist/components/six-header.js +214 -206
  497. package/dist/components/six-header.js.map +1 -1
  498. package/dist/components/six-icon-button.d.ts +2 -2
  499. package/dist/components/six-icon-button2.js +55 -55
  500. package/dist/components/six-icon-button2.js.map +1 -1
  501. package/dist/components/six-icon.d.ts +2 -2
  502. package/dist/components/six-icon2.js +37 -37
  503. package/dist/components/six-icon2.js.map +1 -1
  504. package/dist/components/six-input.d.ts +2 -2
  505. package/dist/components/six-input2.js +255 -239
  506. package/dist/components/six-input2.js.map +1 -1
  507. package/dist/components/six-item-picker.d.ts +2 -2
  508. package/dist/components/six-item-picker2.js +350 -346
  509. package/dist/components/six-item-picker2.js.map +1 -1
  510. package/dist/components/six-language-switcher.d.ts +2 -2
  511. package/dist/components/six-language-switcher.js +64 -62
  512. package/dist/components/six-language-switcher.js.map +1 -1
  513. package/dist/components/six-layout-grid.d.ts +2 -2
  514. package/dist/components/six-layout-grid.js +37 -35
  515. package/dist/components/six-layout-grid.js.map +1 -1
  516. package/dist/components/six-main-container.d.ts +2 -2
  517. package/dist/components/six-main-container.js +24 -24
  518. package/dist/components/six-main-container.js.map +1 -1
  519. package/dist/components/six-menu-divider.d.ts +2 -2
  520. package/dist/components/six-menu-divider.js +20 -20
  521. package/dist/components/six-menu-divider.js.map +1 -1
  522. package/dist/components/six-menu-item.d.ts +2 -2
  523. package/dist/components/six-menu-item2.js +74 -74
  524. package/dist/components/six-menu-item2.js.map +1 -1
  525. package/dist/components/six-menu-label.d.ts +2 -2
  526. package/dist/components/six-menu-label.js +20 -20
  527. package/dist/components/six-menu-label.js.map +1 -1
  528. package/dist/components/six-menu.d.ts +2 -2
  529. package/dist/components/six-menu2.js +218 -218
  530. package/dist/components/six-menu2.js.map +1 -1
  531. package/dist/components/six-picto.d.ts +2 -2
  532. package/dist/components/six-picto2.js +29 -29
  533. package/dist/components/six-picto2.js.map +1 -1
  534. package/dist/components/six-progress-bar.d.ts +2 -2
  535. package/dist/components/six-progress-bar.js +30 -30
  536. package/dist/components/six-progress-bar.js.map +1 -1
  537. package/dist/components/six-progress-ring.d.ts +2 -2
  538. package/dist/components/six-progress-ring.js +48 -46
  539. package/dist/components/six-progress-ring.js.map +1 -1
  540. package/dist/components/six-radio.d.ts +2 -2
  541. package/dist/components/six-radio.js +127 -133
  542. package/dist/components/six-radio.js.map +1 -1
  543. package/dist/components/six-range.d.ts +2 -2
  544. package/dist/components/six-range.js +233 -215
  545. package/dist/components/six-range.js.map +1 -1
  546. package/dist/components/six-root.d.ts +2 -2
  547. package/dist/components/six-root.js +66 -64
  548. package/dist/components/six-root.js.map +1 -1
  549. package/dist/components/six-search-field.d.ts +2 -2
  550. package/dist/components/six-search-field.js +78 -70
  551. package/dist/components/six-search-field.js.map +1 -1
  552. package/dist/components/six-select.d.ts +2 -2
  553. package/dist/components/six-select.js +468 -443
  554. package/dist/components/six-select.js.map +1 -1
  555. package/dist/components/six-sidebar-item-group.d.ts +2 -2
  556. package/dist/components/six-sidebar-item-group.js +87 -75
  557. package/dist/components/six-sidebar-item-group.js.map +1 -1
  558. package/dist/components/six-sidebar-item.d.ts +2 -2
  559. package/dist/components/six-sidebar-item.js +35 -32
  560. package/dist/components/six-sidebar-item.js.map +1 -1
  561. package/dist/components/six-sidebar.d.ts +2 -2
  562. package/dist/components/six-sidebar.js +198 -196
  563. package/dist/components/six-sidebar.js.map +1 -1
  564. package/dist/components/six-spinner.d.ts +2 -2
  565. package/dist/components/six-spinner2.js +29 -29
  566. package/dist/components/six-spinner2.js.map +1 -1
  567. package/dist/components/six-stage-indicator.d.ts +2 -2
  568. package/dist/components/six-stage-indicator2.js +28 -28
  569. package/dist/components/six-stage-indicator2.js.map +1 -1
  570. package/dist/components/six-switch.d.ts +2 -2
  571. package/dist/components/six-switch.js +142 -110
  572. package/dist/components/six-switch.js.map +1 -1
  573. package/dist/components/six-tab-group.d.ts +2 -2
  574. package/dist/components/six-tab-group.js +260 -263
  575. package/dist/components/six-tab-group.js.map +1 -1
  576. package/dist/components/six-tab-panel.d.ts +2 -2
  577. package/dist/components/six-tab-panel.js +29 -29
  578. package/dist/components/six-tab-panel.js.map +1 -1
  579. package/dist/components/six-tab.d.ts +2 -2
  580. package/dist/components/six-tab.js +85 -69
  581. package/dist/components/six-tab.js.map +1 -1
  582. package/dist/components/six-tag.d.ts +2 -2
  583. package/dist/components/six-tag2.js +91 -63
  584. package/dist/components/six-tag2.js.map +1 -1
  585. package/dist/components/six-textarea.d.ts +2 -2
  586. package/dist/components/six-textarea.js +236 -223
  587. package/dist/components/six-textarea.js.map +1 -1
  588. package/dist/components/six-tile.d.ts +2 -2
  589. package/dist/components/six-tile.js +116 -116
  590. package/dist/components/six-tile.js.map +1 -1
  591. package/dist/components/six-timepicker.d.ts +2 -2
  592. package/dist/components/six-timepicker2.js +490 -486
  593. package/dist/components/six-timepicker2.js.map +1 -1
  594. package/dist/components/six-tooltip.d.ts +2 -2
  595. package/dist/components/six-tooltip2.js +172 -170
  596. package/dist/components/six-tooltip2.js.map +1 -1
  597. package/dist/components/slot.js +28 -28
  598. package/dist/components/slot.js.map +1 -1
  599. package/dist/components.d.ts +361 -88
  600. package/dist/components.json +4170 -120
  601. package/dist/esm/event-listeners-706d4309.js +59 -0
  602. package/dist/esm/event-listeners-706d4309.js.map +1 -0
  603. package/dist/esm/{execution-control-72cc50f4.js → execution-control-2ebaf4ef.js} +15 -15
  604. package/dist/esm/execution-control-2ebaf4ef.js.map +1 -0
  605. package/dist/esm/focus-visible-d9dbfeef.js +45 -0
  606. package/dist/esm/focus-visible-d9dbfeef.js.map +1 -0
  607. package/dist/esm/form-4b145b7a.js +18 -0
  608. package/dist/esm/form-4b145b7a.js.map +1 -0
  609. package/dist/esm/form-control-6b30894f.js +34 -0
  610. package/dist/esm/form-control-6b30894f.js.map +1 -0
  611. package/dist/esm/{index-5c0f6628.js → index-17d8173e.js} +724 -180
  612. package/dist/esm/index-17d8173e.js.map +1 -0
  613. package/dist/esm/index.js +96 -82
  614. package/dist/esm/index.js.map +1 -1
  615. package/dist/esm/loader.js +4 -13
  616. package/dist/esm/loader.js.map +1 -1
  617. package/dist/esm/modal-96526245.js +49 -0
  618. package/dist/esm/modal-96526245.js.map +1 -0
  619. package/dist/esm/{popover-2e72e7d8.js → popover-25996e62.js} +99 -99
  620. package/dist/esm/popover-25996e62.js.map +1 -0
  621. package/dist/esm/popup-e8049817.js +98 -0
  622. package/dist/esm/popup-e8049817.js.map +1 -0
  623. package/dist/esm/scroll-3e16851e.js +64 -0
  624. package/dist/esm/scroll-3e16851e.js.map +1 -0
  625. package/dist/esm/set-attributes_2.entry.js +50 -50
  626. package/dist/esm/set-attributes_2.entry.js.map +1 -1
  627. package/dist/esm/six-alert.entry.js +109 -109
  628. package/dist/esm/six-alert.entry.js.map +1 -1
  629. package/dist/esm/six-avatar.entry.js +20 -20
  630. package/dist/esm/six-avatar.entry.js.map +1 -1
  631. package/dist/esm/six-badge.entry.js +22 -22
  632. package/dist/esm/six-badge.entry.js.map +1 -1
  633. package/dist/esm/six-button.entry.js +95 -95
  634. package/dist/esm/six-button.entry.js.map +1 -1
  635. package/dist/esm/six-card.entry.js +7 -7
  636. package/dist/esm/six-card.entry.js.map +1 -1
  637. package/dist/esm/six-checkbox.entry.js +110 -115
  638. package/dist/esm/six-checkbox.entry.js.map +1 -1
  639. package/dist/esm/six-datepicker.entry.js +834 -837
  640. package/dist/esm/six-datepicker.entry.js.map +1 -1
  641. package/dist/esm/six-details.entry.js +127 -127
  642. package/dist/esm/six-details.entry.js.map +1 -1
  643. package/dist/esm/six-dialog.entry.js +128 -128
  644. package/dist/esm/six-dialog.entry.js.map +1 -1
  645. package/dist/esm/six-drawer.entry.js +146 -146
  646. package/dist/esm/six-drawer.entry.js.map +1 -1
  647. package/dist/esm/six-dropdown_2.entry.js +634 -634
  648. package/dist/esm/six-dropdown_2.entry.js.map +1 -1
  649. package/dist/esm/six-error-page.entry.js +82 -82
  650. package/dist/esm/six-error-page.entry.js.map +1 -1
  651. package/dist/esm/six-error.entry.js +17 -0
  652. package/dist/esm/six-error.entry.js.map +1 -0
  653. package/dist/esm/six-file-list-item.entry.js +33 -33
  654. package/dist/esm/six-file-list-item.entry.js.map +1 -1
  655. package/dist/esm/six-file-list.entry.js +7 -7
  656. package/dist/esm/six-file-list.entry.js.map +1 -1
  657. package/dist/esm/six-file-upload.entry.js +98 -98
  658. package/dist/esm/six-file-upload.entry.js.map +1 -1
  659. package/dist/esm/six-footer.entry.js +7 -7
  660. package/dist/esm/six-footer.entry.js.map +1 -1
  661. package/dist/esm/six-group-label.entry.js +43 -43
  662. package/dist/esm/six-group-label.entry.js.map +1 -1
  663. package/dist/esm/six-header.entry.js +155 -155
  664. package/dist/esm/six-header.entry.js.map +1 -1
  665. package/dist/esm/six-icon-button.entry.js +32 -32
  666. package/dist/esm/six-icon-button.entry.js.map +1 -1
  667. package/dist/esm/six-icon.entry.js +21 -21
  668. package/dist/esm/six-icon.entry.js.map +1 -1
  669. package/dist/esm/six-input.entry.js +190 -187
  670. package/dist/esm/six-input.entry.js.map +1 -1
  671. package/dist/esm/six-item-picker.entry.js +307 -307
  672. package/dist/esm/six-item-picker.entry.js.map +1 -1
  673. package/dist/esm/six-language-switcher.entry.js +46 -46
  674. package/dist/esm/six-language-switcher.entry.js.map +1 -1
  675. package/dist/esm/six-layout-grid.entry.js +20 -20
  676. package/dist/esm/six-layout-grid.entry.js.map +1 -1
  677. package/dist/esm/six-main-container.entry.js +9 -9
  678. package/dist/esm/six-main-container.entry.js.map +1 -1
  679. package/dist/esm/six-menu-divider.entry.js +7 -7
  680. package/dist/esm/six-menu-divider.entry.js.map +1 -1
  681. package/dist/esm/six-menu-item.entry.js +49 -49
  682. package/dist/esm/six-menu-item.entry.js.map +1 -1
  683. package/dist/esm/six-menu-label.entry.js +7 -7
  684. package/dist/esm/six-menu-label.entry.js.map +1 -1
  685. package/dist/esm/six-picto.entry.js +14 -14
  686. package/dist/esm/six-picto.entry.js.map +1 -1
  687. package/dist/esm/six-progress-bar.entry.js +14 -14
  688. package/dist/esm/six-progress-bar.entry.js.map +1 -1
  689. package/dist/esm/six-progress-ring.entry.js +29 -29
  690. package/dist/esm/six-progress-ring.entry.js.map +1 -1
  691. package/dist/esm/six-radio.entry.js +103 -111
  692. package/dist/esm/six-radio.entry.js.map +1 -1
  693. package/dist/esm/six-range.entry.js +180 -177
  694. package/dist/esm/six-range.entry.js.map +1 -1
  695. package/dist/esm/six-root.entry.js +30 -30
  696. package/dist/esm/six-root.entry.js.map +1 -1
  697. package/dist/esm/six-search-field.entry.js +43 -43
  698. package/dist/esm/six-search-field.entry.js.map +1 -1
  699. package/dist/esm/six-select.entry.js +364 -360
  700. package/dist/esm/six-select.entry.js.map +1 -1
  701. package/dist/esm/six-sidebar-item-group.entry.js +56 -45
  702. package/dist/esm/six-sidebar-item-group.entry.js.map +1 -1
  703. package/dist/esm/six-sidebar-item.entry.js +17 -15
  704. package/dist/esm/six-sidebar-item.entry.js.map +1 -1
  705. package/dist/esm/six-sidebar.entry.js +173 -173
  706. package/dist/esm/six-sidebar.entry.js.map +1 -1
  707. package/dist/esm/six-spinner.entry.js +14 -14
  708. package/dist/esm/six-spinner.entry.js.map +1 -1
  709. package/dist/esm/six-switch.entry.js +107 -87
  710. package/dist/esm/six-switch.entry.js.map +1 -1
  711. package/dist/esm/six-tab-group.entry.js +230 -235
  712. package/dist/esm/six-tab-group.entry.js.map +1 -1
  713. package/dist/esm/six-tab-panel.entry.js +13 -13
  714. package/dist/esm/six-tab-panel.entry.js.map +1 -1
  715. package/dist/esm/six-tab.entry.js +55 -39
  716. package/dist/esm/six-tab.entry.js.map +1 -1
  717. package/dist/esm/six-tag.entry.js +55 -33
  718. package/dist/esm/six-tag.entry.js.map +1 -1
  719. package/dist/esm/six-textarea.entry.js +182 -183
  720. package/dist/esm/six-textarea.entry.js.map +1 -1
  721. package/dist/esm/six-tile.entry.js +76 -76
  722. package/dist/esm/six-tile.entry.js.map +1 -1
  723. package/dist/esm/six-timepicker.entry.js +347 -352
  724. package/dist/esm/six-timepicker.entry.js.map +1 -1
  725. package/dist/esm/six-tooltip.entry.js +148 -148
  726. package/dist/esm/six-tooltip.entry.js.map +1 -1
  727. package/dist/esm/slot-41bc439a.js +48 -0
  728. package/dist/esm/slot-41bc439a.js.map +1 -0
  729. package/dist/esm/types-07748c42.js +17 -0
  730. package/dist/esm/types-07748c42.js.map +1 -0
  731. package/dist/esm/ui-library.js +4 -7
  732. package/dist/esm/ui-library.js.map +1 -1
  733. package/dist/types/components/six-alert/six-alert.d.ts +40 -40
  734. package/dist/types/components/six-avatar/six-avatar.d.ts +11 -11
  735. package/dist/types/components/six-badge/six-badge.d.ts +7 -7
  736. package/dist/types/components/six-button/six-button.d.ts +48 -48
  737. package/dist/types/components/six-card/six-card.d.ts +1 -1
  738. package/dist/types/components/six-checkbox/six-checkbox.d.ts +58 -59
  739. package/dist/types/components/six-datepicker/components/day-selection.d.ts +3 -3
  740. package/dist/types/components/six-datepicker/components/month-selection.d.ts +3 -3
  741. package/dist/types/components/six-datepicker/components/year-selection.d.ts +3 -3
  742. package/dist/types/components/six-datepicker/six-date-formats.d.ts +20 -20
  743. package/dist/types/components/six-datepicker/six-datepicker.d.ts +188 -186
  744. package/dist/types/components/six-details/six-details.d.ts +42 -42
  745. package/dist/types/components/six-dialog/six-dialog.d.ts +50 -50
  746. package/dist/types/components/six-drawer/six-drawer.d.ts +58 -58
  747. package/dist/types/components/six-dropdown/six-dropdown.d.ts +112 -112
  748. package/dist/types/components/six-error/six-error.d.ts +9 -0
  749. package/dist/types/components/six-error-page/six-error-page.d.ts +25 -25
  750. package/dist/types/components/six-file-list/six-file-list.d.ts +1 -1
  751. package/dist/types/components/six-file-list-item/six-file-list-item.d.ts +23 -23
  752. package/dist/types/components/six-file-upload/six-file-upload.d.ts +33 -33
  753. package/dist/types/components/six-footer/six-footer.d.ts +1 -1
  754. package/dist/types/components/six-group-label/six-group-label.d.ts +22 -22
  755. package/dist/types/components/six-header/six-header.d.ts +55 -55
  756. package/dist/types/components/six-icon/six-icon.d.ts +5 -5
  757. package/dist/types/components/six-icon-button/six-icon-button.d.ts +18 -18
  758. package/dist/types/components/six-input/six-input.d.ts +108 -103
  759. package/dist/types/components/six-item-picker/six-item-picker.d.ts +88 -88
  760. package/dist/types/components/six-item-picker/types.d.ts +7 -7
  761. package/dist/types/components/six-language-switcher/six-language-switcher.d.ts +15 -15
  762. package/dist/types/components/six-layout-grid/six-layout-grid.d.ts +6 -6
  763. package/dist/types/components/six-main-container/six-main-container.d.ts +4 -4
  764. package/dist/types/components/six-menu/six-menu.d.ts +63 -63
  765. package/dist/types/components/six-menu-divider/six-menu-divider.d.ts +1 -1
  766. package/dist/types/components/six-menu-item/six-menu-item.d.ts +21 -21
  767. package/dist/types/components/six-menu-label/six-menu-label.d.ts +1 -1
  768. package/dist/types/components/six-picto/six-picto.d.ts +6 -6
  769. package/dist/types/components/six-progress-bar/six-progress-bar.d.ts +5 -5
  770. package/dist/types/components/six-progress-ring/six-progress-ring.d.ts +11 -11
  771. package/dist/types/components/six-radio/six-radio.d.ts +38 -43
  772. package/dist/types/components/six-range/six-range.d.ts +75 -72
  773. package/dist/types/components/six-root/six-root.d.ts +18 -18
  774. package/dist/types/components/six-search-field/six-search-field.d.ts +20 -20
  775. package/dist/types/components/six-select/six-select.d.ts +122 -119
  776. package/dist/types/components/six-select/util.d.ts +1 -1
  777. package/dist/types/components/six-sidebar/six-sidebar.d.ts +45 -45
  778. package/dist/types/components/six-sidebar-item/six-sidebar-item.d.ts +12 -7
  779. package/dist/types/components/six-sidebar-item-group/six-sidebar-item-group.d.ts +25 -19
  780. package/dist/types/components/six-spinner/six-spinner.d.ts +5 -5
  781. package/dist/types/components/six-stage-indicator/six-stage-indicator.d.ts +3 -3
  782. package/dist/types/components/six-switch/six-switch.d.ts +49 -42
  783. package/dist/types/components/six-tab/six-tab.d.ts +20 -20
  784. package/dist/types/components/six-tab-group/six-tab-group.d.ts +35 -38
  785. package/dist/types/components/six-tab-panel/six-tab-panel.d.ts +7 -7
  786. package/dist/types/components/six-tag/six-tag.d.ts +20 -12
  787. package/dist/types/components/six-textarea/six-textarea.d.ts +89 -86
  788. package/dist/types/components/six-tile/six-tile.d.ts +31 -31
  789. package/dist/types/components/six-timepicker/six-timepicker.d.ts +154 -151
  790. package/dist/types/components/six-tooltip/six-tooltip.d.ts +55 -55
  791. package/dist/types/components.d.ts +505 -24
  792. package/dist/types/functional-components/form-control/form-control.d.ts +32 -28
  793. package/dist/types/stencil-public-runtime.d.ts +49 -5
  794. package/dist/types/utils/animation.d.ts +12 -0
  795. package/dist/types/utils/date-util.d.ts +50 -50
  796. package/dist/types/utils/error-messages.d.ts +26 -25
  797. package/dist/types/utils/event-listeners.d.ts +11 -11
  798. package/dist/types/utils/focus-visible.d.ts +2 -2
  799. package/dist/types/utils/modal.d.ts +8 -8
  800. package/dist/types/utils/offset.d.ts +2 -2
  801. package/dist/types/utils/popover.d.ts +21 -21
  802. package/dist/types/utils/time.util.d.ts +6 -6
  803. package/dist/types/utils/types.d.ts +1 -1
  804. package/dist/types/wrappers/set-attributes/set-attributes.d.ts +7 -7
  805. package/dist/ui-library/index.esm.js +1 -1
  806. package/dist/ui-library/index.esm.js.map +1 -1
  807. package/dist/ui-library/{p-0cc08e91.js → p-06ba4450.js} +1 -1
  808. package/dist/ui-library/p-06ba4450.js.map +1 -0
  809. package/dist/ui-library/{p-25a3bf57.js → p-0861899a.js} +1 -1
  810. package/dist/ui-library/p-0861899a.js.map +1 -0
  811. package/dist/ui-library/p-0a81b42c.entry.js +2 -0
  812. package/dist/ui-library/p-0a81b42c.entry.js.map +1 -0
  813. package/dist/ui-library/p-0beec94f.js +3 -0
  814. package/dist/ui-library/p-0beec94f.js.map +1 -0
  815. package/dist/ui-library/{p-bd8f8eef.entry.js → p-100d5a25.entry.js} +2 -2
  816. package/dist/ui-library/p-100d5a25.entry.js.map +1 -0
  817. package/dist/ui-library/{p-097cced4.entry.js → p-178f5782.entry.js} +2 -2
  818. package/dist/ui-library/p-178f5782.entry.js.map +1 -0
  819. package/dist/ui-library/p-19a61686.entry.js +2 -0
  820. package/dist/ui-library/p-19a61686.entry.js.map +1 -0
  821. package/dist/ui-library/{p-73597d13.entry.js → p-1d0c5929.entry.js} +2 -2
  822. package/dist/ui-library/p-1d0c5929.entry.js.map +1 -0
  823. package/dist/ui-library/{p-03a145f5.entry.js → p-23c02c98.entry.js} +2 -2
  824. package/dist/ui-library/p-23c02c98.entry.js.map +1 -0
  825. package/dist/ui-library/{p-dd3c76f1.entry.js → p-2f9f2532.entry.js} +2 -2
  826. package/dist/ui-library/p-2f9f2532.entry.js.map +1 -0
  827. package/dist/ui-library/{p-8e0b6b7e.entry.js → p-3187bc23.entry.js} +2 -2
  828. package/dist/ui-library/p-3187bc23.entry.js.map +1 -0
  829. package/dist/ui-library/{p-502ff3d3.entry.js → p-32e1a5ab.entry.js} +2 -2
  830. package/dist/ui-library/p-32e1a5ab.entry.js.map +1 -0
  831. package/dist/ui-library/{p-baa03951.entry.js → p-3d54ecf2.entry.js} +2 -2
  832. package/dist/ui-library/p-3d54ecf2.entry.js.map +1 -0
  833. package/dist/ui-library/p-4229f7e8.entry.js +2 -0
  834. package/dist/ui-library/p-4229f7e8.entry.js.map +1 -0
  835. package/dist/ui-library/p-479d8087.entry.js +2 -0
  836. package/dist/ui-library/p-479d8087.entry.js.map +1 -0
  837. package/dist/ui-library/{p-ef3936e5.entry.js → p-49aa8d1e.entry.js} +2 -2
  838. package/dist/ui-library/p-49aa8d1e.entry.js.map +1 -0
  839. package/dist/ui-library/{p-cdcde4cd.entry.js → p-58661675.entry.js} +2 -2
  840. package/dist/ui-library/p-58661675.entry.js.map +1 -0
  841. package/dist/ui-library/p-5d43ea07.entry.js +2 -0
  842. package/dist/ui-library/p-5d43ea07.entry.js.map +1 -0
  843. package/dist/ui-library/p-6907a7dc.js +2 -0
  844. package/dist/ui-library/p-6907a7dc.js.map +1 -0
  845. package/dist/ui-library/p-6aa2929a.entry.js +2 -0
  846. package/dist/ui-library/p-6aa2929a.entry.js.map +1 -0
  847. package/dist/ui-library/p-7432d409.entry.js +2 -0
  848. package/dist/ui-library/p-7432d409.entry.js.map +1 -0
  849. package/dist/ui-library/{p-28be55f0.entry.js → p-74a714c0.entry.js} +2 -2
  850. package/dist/ui-library/p-74a714c0.entry.js.map +1 -0
  851. package/dist/ui-library/{p-5a34c93e.entry.js → p-76825395.entry.js} +2 -2
  852. package/dist/ui-library/p-76825395.entry.js.map +1 -0
  853. package/dist/ui-library/{p-0b2c6348.js → p-7f856f00.js} +1 -1
  854. package/dist/ui-library/p-7f856f00.js.map +1 -0
  855. package/dist/ui-library/{p-820c23f0.entry.js → p-816f857d.entry.js} +2 -2
  856. package/dist/ui-library/p-816f857d.entry.js.map +1 -0
  857. package/dist/ui-library/{p-eb8f05a9.js → p-8227aaed.js} +2 -2
  858. package/dist/ui-library/p-8227aaed.js.map +1 -0
  859. package/dist/ui-library/{p-4d408fb4.js → p-842b492e.js} +1 -1
  860. package/dist/ui-library/p-842b492e.js.map +1 -0
  861. package/dist/ui-library/p-882fbf6f.entry.js +2 -0
  862. package/dist/ui-library/p-882fbf6f.entry.js.map +1 -0
  863. package/dist/ui-library/{p-3929b0af.entry.js → p-88fd4973.entry.js} +2 -2
  864. package/dist/ui-library/p-88fd4973.entry.js.map +1 -0
  865. package/dist/ui-library/{p-66180e89.entry.js → p-8b750c9e.entry.js} +2 -2
  866. package/dist/ui-library/p-8b750c9e.entry.js.map +1 -0
  867. package/dist/ui-library/{p-60621dc6.js → p-8bfb4bfc.js} +1 -1
  868. package/dist/ui-library/p-8bfb4bfc.js.map +1 -0
  869. package/dist/ui-library/p-911eb578.entry.js +2 -0
  870. package/dist/ui-library/p-911eb578.entry.js.map +1 -0
  871. package/dist/ui-library/p-93fcda4a.entry.js +2 -0
  872. package/dist/ui-library/p-93fcda4a.entry.js.map +1 -0
  873. package/dist/ui-library/{p-9461417e.entry.js → p-981b3228.entry.js} +2 -2
  874. package/dist/ui-library/p-981b3228.entry.js.map +1 -0
  875. package/dist/ui-library/{p-ba74863a.js → p-998de05d.js} +1 -1
  876. package/dist/ui-library/p-998de05d.js.map +1 -0
  877. package/dist/ui-library/{p-09779e47.entry.js → p-9b1ff147.entry.js} +2 -2
  878. package/dist/ui-library/p-9b1ff147.entry.js.map +1 -0
  879. package/dist/ui-library/{p-8cf72af6.js → p-a1502802.js} +1 -1
  880. package/dist/ui-library/p-a1502802.js.map +1 -0
  881. package/dist/ui-library/p-a21f8d06.entry.js +2 -0
  882. package/dist/ui-library/p-a21f8d06.entry.js.map +1 -0
  883. package/dist/ui-library/{p-f0dd77e1.entry.js → p-a2461274.entry.js} +2 -2
  884. package/dist/ui-library/p-a2461274.entry.js.map +1 -0
  885. package/dist/ui-library/p-a4e4620c.entry.js +2 -0
  886. package/dist/ui-library/p-a4e4620c.entry.js.map +1 -0
  887. package/dist/ui-library/{p-6d75f216.entry.js → p-ada23fe3.entry.js} +2 -2
  888. package/dist/ui-library/p-ada23fe3.entry.js.map +1 -0
  889. package/dist/ui-library/{p-a1d4f6cf.entry.js → p-b5ac1219.entry.js} +2 -2
  890. package/dist/ui-library/p-b5ac1219.entry.js.map +1 -0
  891. package/dist/ui-library/{p-72ca96e1.entry.js → p-ba247565.entry.js} +2 -2
  892. package/dist/ui-library/p-ba247565.entry.js.map +1 -0
  893. package/dist/ui-library/p-bdb79948.entry.js +2 -0
  894. package/dist/ui-library/p-bdb79948.entry.js.map +1 -0
  895. package/dist/ui-library/p-c021a9c9.entry.js +2 -0
  896. package/dist/ui-library/p-c021a9c9.entry.js.map +1 -0
  897. package/dist/ui-library/p-c07b1240.entry.js +2 -0
  898. package/dist/ui-library/p-c07b1240.entry.js.map +1 -0
  899. package/dist/ui-library/p-c12a94ce.entry.js +2 -0
  900. package/dist/ui-library/p-c12a94ce.entry.js.map +1 -0
  901. package/dist/ui-library/{p-dcd7c547.entry.js → p-c1675a45.entry.js} +2 -2
  902. package/dist/ui-library/p-c1675a45.entry.js.map +1 -0
  903. package/dist/ui-library/{p-912092c0.entry.js → p-c2df8c27.entry.js} +2 -2
  904. package/dist/ui-library/p-c2df8c27.entry.js.map +1 -0
  905. package/dist/ui-library/p-c86aa5b3.entry.js +2 -0
  906. package/dist/ui-library/p-c86aa5b3.entry.js.map +1 -0
  907. package/dist/ui-library/{p-afcbe9da.entry.js → p-cd35b3c6.entry.js} +2 -2
  908. package/dist/ui-library/p-cd35b3c6.entry.js.map +1 -0
  909. package/dist/ui-library/p-d2cf4280.entry.js +2 -0
  910. package/dist/ui-library/p-d2cf4280.entry.js.map +1 -0
  911. package/dist/ui-library/{p-e8feb81f.entry.js → p-d310a6dd.entry.js} +2 -2
  912. package/dist/ui-library/p-d310a6dd.entry.js.map +1 -0
  913. package/dist/ui-library/{p-63703ba3.entry.js → p-d6838141.entry.js} +2 -2
  914. package/dist/ui-library/p-d6838141.entry.js.map +1 -0
  915. package/dist/ui-library/{p-686b12ec.entry.js → p-dc908cbb.entry.js} +2 -2
  916. package/dist/ui-library/p-dc908cbb.entry.js.map +1 -0
  917. package/dist/ui-library/{p-21859bca.entry.js → p-dfb6bff6.entry.js} +2 -2
  918. package/dist/ui-library/p-dfb6bff6.entry.js.map +1 -0
  919. package/dist/ui-library/{p-445ba5b8.entry.js → p-ee71e3a3.entry.js} +2 -2
  920. package/dist/ui-library/p-ee71e3a3.entry.js.map +1 -0
  921. package/dist/ui-library/{p-97323ad7.entry.js → p-ef317d69.entry.js} +2 -2
  922. package/dist/ui-library/p-ef317d69.entry.js.map +1 -0
  923. package/dist/ui-library/{p-0fe78f9b.js → p-f2ef23c4.js} +1 -1
  924. package/dist/ui-library/p-f2ef23c4.js.map +1 -0
  925. package/dist/ui-library/p-f385f1c2.entry.js +2 -0
  926. package/dist/ui-library/p-f385f1c2.entry.js.map +1 -0
  927. package/dist/ui-library/{p-d6798d35.entry.js → p-f73a6bdc.entry.js} +2 -2
  928. package/dist/ui-library/p-f73a6bdc.entry.js.map +1 -0
  929. package/dist/ui-library/{p-d87a6f4d.js → p-faa04bb5.js} +1 -1
  930. package/dist/ui-library/p-faa04bb5.js.map +1 -0
  931. package/dist/ui-library/p-fcd57e0a.entry.js +2 -0
  932. package/dist/ui-library/p-fcd57e0a.entry.js.map +1 -0
  933. package/dist/ui-library/ui-library.css +2 -2
  934. package/dist/ui-library/ui-library.esm.js +1 -1
  935. package/dist/ui-library/ui-library.esm.js.map +1 -1
  936. package/loader/index.d.ts +1 -1
  937. package/package.json +16 -14
  938. package/dist/cjs/event-listeners-b835dfae.js +0 -61
  939. package/dist/cjs/event-listeners-b835dfae.js.map +0 -1
  940. package/dist/cjs/execution-control-45c84c46.js.map +0 -1
  941. package/dist/cjs/focus-visible-e0d93a95.js +0 -47
  942. package/dist/cjs/focus-visible-e0d93a95.js.map +0 -1
  943. package/dist/cjs/form-8cbd4e0e.js +0 -20
  944. package/dist/cjs/form-8cbd4e0e.js.map +0 -1
  945. package/dist/cjs/form-control-8df00a52.js +0 -33
  946. package/dist/cjs/form-control-8df00a52.js.map +0 -1
  947. package/dist/cjs/index-2f6daa5b.js.map +0 -1
  948. package/dist/cjs/modal-21350fb5.js +0 -52
  949. package/dist/cjs/modal-21350fb5.js.map +0 -1
  950. package/dist/cjs/popover-8885d50f.js.map +0 -1
  951. package/dist/cjs/popup-44836aaf.js +0 -103
  952. package/dist/cjs/popup-44836aaf.js.map +0 -1
  953. package/dist/cjs/scroll-76e6f5d7.js +0 -69
  954. package/dist/cjs/scroll-76e6f5d7.js.map +0 -1
  955. package/dist/cjs/slot-bccbdb59.js +0 -53
  956. package/dist/cjs/slot-bccbdb59.js.map +0 -1
  957. package/dist/cjs/types-64878648.js +0 -17
  958. package/dist/cjs/types-64878648.js.map +0 -1
  959. package/dist/esm/event-listeners-535f3ad1.js +0 -59
  960. package/dist/esm/event-listeners-535f3ad1.js.map +0 -1
  961. package/dist/esm/execution-control-72cc50f4.js.map +0 -1
  962. package/dist/esm/focus-visible-fa7129a0.js +0 -45
  963. package/dist/esm/focus-visible-fa7129a0.js.map +0 -1
  964. package/dist/esm/form-0b9c11cd.js +0 -18
  965. package/dist/esm/form-control-785c5f79.js +0 -31
  966. package/dist/esm/form-control-785c5f79.js.map +0 -1
  967. package/dist/esm/index-5c0f6628.js.map +0 -1
  968. package/dist/esm/modal-b1d96441.js +0 -49
  969. package/dist/esm/modal-b1d96441.js.map +0 -1
  970. package/dist/esm/polyfills/css-shim.js +0 -1
  971. package/dist/esm/popover-2e72e7d8.js.map +0 -1
  972. package/dist/esm/popup-678b8592.js +0 -98
  973. package/dist/esm/popup-678b8592.js.map +0 -1
  974. package/dist/esm/scroll-180b53fd.js +0 -64
  975. package/dist/esm/slot-2e64df19.js +0 -48
  976. package/dist/esm/slot-2e64df19.js.map +0 -1
  977. package/dist/esm/types-4b10b413.js +0 -17
  978. package/dist/esm/types-4b10b413.js.map +0 -1
  979. package/dist/ui-library/p-0045a402.entry.js +0 -2
  980. package/dist/ui-library/p-0045a402.entry.js.map +0 -1
  981. package/dist/ui-library/p-0108fe92.entry.js +0 -2
  982. package/dist/ui-library/p-0108fe92.entry.js.map +0 -1
  983. package/dist/ui-library/p-03a145f5.entry.js.map +0 -1
  984. package/dist/ui-library/p-087fdd96.entry.js +0 -2
  985. package/dist/ui-library/p-087fdd96.entry.js.map +0 -1
  986. package/dist/ui-library/p-09779e47.entry.js.map +0 -1
  987. package/dist/ui-library/p-097cced4.entry.js.map +0 -1
  988. package/dist/ui-library/p-0b2c6348.js.map +0 -1
  989. package/dist/ui-library/p-0cc08e91.js.map +0 -1
  990. package/dist/ui-library/p-0fe78f9b.js.map +0 -1
  991. package/dist/ui-library/p-21859bca.entry.js.map +0 -1
  992. package/dist/ui-library/p-25a3bf57.js.map +0 -1
  993. package/dist/ui-library/p-2761f908.js +0 -2
  994. package/dist/ui-library/p-2761f908.js.map +0 -1
  995. package/dist/ui-library/p-28be55f0.entry.js.map +0 -1
  996. package/dist/ui-library/p-3929b0af.entry.js.map +0 -1
  997. package/dist/ui-library/p-445ba5b8.entry.js.map +0 -1
  998. package/dist/ui-library/p-4d408fb4.js.map +0 -1
  999. package/dist/ui-library/p-502ff3d3.entry.js.map +0 -1
  1000. package/dist/ui-library/p-5a34c93e.entry.js.map +0 -1
  1001. package/dist/ui-library/p-60621dc6.js.map +0 -1
  1002. package/dist/ui-library/p-63703ba3.entry.js.map +0 -1
  1003. package/dist/ui-library/p-66180e89.entry.js.map +0 -1
  1004. package/dist/ui-library/p-686b12ec.entry.js.map +0 -1
  1005. package/dist/ui-library/p-6d75f216.entry.js.map +0 -1
  1006. package/dist/ui-library/p-71035abf.entry.js +0 -2
  1007. package/dist/ui-library/p-71035abf.entry.js.map +0 -1
  1008. package/dist/ui-library/p-724e154d.entry.js +0 -2
  1009. package/dist/ui-library/p-724e154d.entry.js.map +0 -1
  1010. package/dist/ui-library/p-72ca96e1.entry.js.map +0 -1
  1011. package/dist/ui-library/p-73597d13.entry.js.map +0 -1
  1012. package/dist/ui-library/p-778cf804.entry.js +0 -2
  1013. package/dist/ui-library/p-778cf804.entry.js.map +0 -1
  1014. package/dist/ui-library/p-820c23f0.entry.js.map +0 -1
  1015. package/dist/ui-library/p-87032e26.entry.js +0 -2
  1016. package/dist/ui-library/p-87032e26.entry.js.map +0 -1
  1017. package/dist/ui-library/p-8cf72af6.js.map +0 -1
  1018. package/dist/ui-library/p-8e0b6b7e.entry.js.map +0 -1
  1019. package/dist/ui-library/p-912092c0.entry.js.map +0 -1
  1020. package/dist/ui-library/p-92ca6a84.entry.js +0 -2
  1021. package/dist/ui-library/p-92ca6a84.entry.js.map +0 -1
  1022. package/dist/ui-library/p-9337cdd6.entry.js +0 -2
  1023. package/dist/ui-library/p-9337cdd6.entry.js.map +0 -1
  1024. package/dist/ui-library/p-9461417e.entry.js.map +0 -1
  1025. package/dist/ui-library/p-97323ad7.entry.js.map +0 -1
  1026. package/dist/ui-library/p-a1d4f6cf.entry.js.map +0 -1
  1027. package/dist/ui-library/p-a844cb72.entry.js +0 -2
  1028. package/dist/ui-library/p-a844cb72.entry.js.map +0 -1
  1029. package/dist/ui-library/p-ac4f4d45.js +0 -3
  1030. package/dist/ui-library/p-ac4f4d45.js.map +0 -1
  1031. package/dist/ui-library/p-afcbe9da.entry.js.map +0 -1
  1032. package/dist/ui-library/p-b2bf4ac8.entry.js +0 -2
  1033. package/dist/ui-library/p-b2bf4ac8.entry.js.map +0 -1
  1034. package/dist/ui-library/p-b3bff992.entry.js +0 -2
  1035. package/dist/ui-library/p-b3bff992.entry.js.map +0 -1
  1036. package/dist/ui-library/p-b4547fb5.entry.js +0 -2
  1037. package/dist/ui-library/p-b4547fb5.entry.js.map +0 -1
  1038. package/dist/ui-library/p-ba74863a.js.map +0 -1
  1039. package/dist/ui-library/p-baa03951.entry.js.map +0 -1
  1040. package/dist/ui-library/p-bd8f8eef.entry.js.map +0 -1
  1041. package/dist/ui-library/p-c57f16af.entry.js +0 -2
  1042. package/dist/ui-library/p-c57f16af.entry.js.map +0 -1
  1043. package/dist/ui-library/p-c5cdba08.entry.js +0 -2
  1044. package/dist/ui-library/p-c5cdba08.entry.js.map +0 -1
  1045. package/dist/ui-library/p-c87810b0.entry.js +0 -2
  1046. package/dist/ui-library/p-c87810b0.entry.js.map +0 -1
  1047. package/dist/ui-library/p-cdcde4cd.entry.js.map +0 -1
  1048. package/dist/ui-library/p-d6798d35.entry.js.map +0 -1
  1049. package/dist/ui-library/p-d87a6f4d.js.map +0 -1
  1050. package/dist/ui-library/p-dc3f5996.entry.js +0 -2
  1051. package/dist/ui-library/p-dc3f5996.entry.js.map +0 -1
  1052. package/dist/ui-library/p-dcd7c547.entry.js.map +0 -1
  1053. package/dist/ui-library/p-dd3c76f1.entry.js.map +0 -1
  1054. package/dist/ui-library/p-e07b3f0c.entry.js +0 -2
  1055. package/dist/ui-library/p-e07b3f0c.entry.js.map +0 -1
  1056. package/dist/ui-library/p-e19a6c95.entry.js +0 -2
  1057. package/dist/ui-library/p-e19a6c95.entry.js.map +0 -1
  1058. package/dist/ui-library/p-e8feb81f.entry.js.map +0 -1
  1059. package/dist/ui-library/p-eb8f05a9.js.map +0 -1
  1060. package/dist/ui-library/p-ef3936e5.entry.js.map +0 -1
  1061. package/dist/ui-library/p-f0dd77e1.entry.js.map +0 -1
  1062. 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.height = popupDimensions['height'] + 'px';
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.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,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,43 @@
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
39
  export const getSlotChildren = (el) => { var _a; return (_a = el.querySelector('slot')) === null || _a === void 0 ? void 0 : _a.assignedElements({ flatten: true }); };
40
40
  export function getSlot(element, slotName) {
41
- if (element == null)
42
- return null;
43
- return element.querySelector(`[slot="${slotName}"]`);
41
+ if (element == null)
42
+ return null;
43
+ return element.querySelector(`[slot="${slotName}"]`);
44
44
  }
45
45
  //# 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,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;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 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"]}
@@ -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"]}