@six-group/ui-library 0.0.0-insider.e148618 → 0.0.0-insider.e433304

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 (1112) hide show
  1. package/README.md +9 -0
  2. package/dist/cjs/error-messages-6e8049a4.js +119 -0
  3. package/dist/cjs/error-messages-6e8049a4.js.map +1 -0
  4. package/dist/cjs/event-listeners-9fb878f1.js +61 -0
  5. package/dist/cjs/event-listeners-9fb878f1.js.map +1 -0
  6. package/dist/cjs/{execution-control-b4707294.js → execution-control-d728da70.js} +15 -15
  7. package/dist/cjs/{execution-control-b4707294.js.map → execution-control-d728da70.js.map} +1 -1
  8. package/dist/cjs/focus-visible-e2c9255a.js +47 -0
  9. package/dist/cjs/{focus-visible-ae2470dd.js.map → focus-visible-e2c9255a.js.map} +1 -1
  10. package/dist/cjs/form-9ebaae7c.js +20 -0
  11. package/dist/cjs/{form-2df8c5bb.js.map → form-9ebaae7c.js.map} +1 -1
  12. package/dist/cjs/form-control-8d64e974.js +36 -0
  13. package/dist/cjs/form-control-8d64e974.js.map +1 -0
  14. package/dist/cjs/{index-900437fc.js → index-d7748d51.js} +420 -446
  15. package/dist/cjs/index-d7748d51.js.map +1 -0
  16. package/dist/cjs/index.cjs.js +55 -87
  17. package/dist/cjs/index.cjs.js.map +1 -1
  18. package/dist/cjs/loader.cjs.js +2 -2
  19. package/dist/cjs/modal-3ce015be.js +52 -0
  20. package/dist/cjs/modal-3ce015be.js.map +1 -0
  21. package/dist/cjs/{popover-2df7e154.js → popover-1e7c09f1.js} +99 -99
  22. package/dist/cjs/popover-1e7c09f1.js.map +1 -0
  23. package/dist/cjs/popup-e854acda.js +103 -0
  24. package/dist/cjs/popup-e854acda.js.map +1 -0
  25. package/dist/cjs/scroll-68033901.js +68 -0
  26. package/dist/cjs/scroll-68033901.js.map +1 -0
  27. package/dist/cjs/six-alert.cjs.entry.js +142 -110
  28. package/dist/cjs/six-alert.cjs.entry.js.map +1 -1
  29. package/dist/cjs/six-avatar.cjs.entry.js +21 -21
  30. package/dist/cjs/six-avatar.cjs.entry.js.map +1 -1
  31. package/dist/cjs/six-badge.cjs.entry.js +23 -23
  32. package/dist/cjs/six-badge.cjs.entry.js.map +1 -1
  33. package/dist/cjs/six-button.cjs.entry.js +95 -95
  34. package/dist/cjs/six-button.cjs.entry.js.map +1 -1
  35. package/dist/cjs/six-card.cjs.entry.js +8 -8
  36. package/dist/cjs/six-card.cjs.entry.js.map +1 -1
  37. package/dist/cjs/six-checkbox_2.cjs.entry.js +190 -0
  38. package/dist/cjs/six-checkbox_2.cjs.entry.js.map +1 -0
  39. package/dist/cjs/six-datepicker.cjs.entry.js +860 -839
  40. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -1
  41. package/dist/cjs/six-details.cjs.entry.js +127 -127
  42. package/dist/cjs/six-details.cjs.entry.js.map +1 -1
  43. package/dist/cjs/six-dialog.cjs.entry.js +131 -129
  44. package/dist/cjs/six-dialog.cjs.entry.js.map +1 -1
  45. package/dist/cjs/six-drawer.cjs.entry.js +147 -147
  46. package/dist/cjs/six-drawer.cjs.entry.js.map +1 -1
  47. package/dist/cjs/six-dropdown_2.cjs.entry.js +709 -637
  48. package/dist/cjs/six-dropdown_2.cjs.entry.js.map +1 -1
  49. package/dist/cjs/six-error-page.cjs.entry.js +82 -82
  50. package/dist/cjs/six-error-page.cjs.entry.js.map +1 -1
  51. package/dist/cjs/six-error.cjs.entry.js +21 -0
  52. package/dist/cjs/six-error.cjs.entry.js.map +1 -0
  53. package/dist/cjs/six-file-list-item.cjs.entry.js +34 -34
  54. package/dist/cjs/six-file-list-item.cjs.entry.js.map +1 -1
  55. package/dist/cjs/six-file-list.cjs.entry.js +7 -7
  56. package/dist/cjs/six-file-list.cjs.entry.js.map +1 -1
  57. package/dist/cjs/six-file-upload.cjs.entry.js +99 -99
  58. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -1
  59. package/dist/cjs/six-footer.cjs.entry.js +8 -8
  60. package/dist/cjs/six-footer.cjs.entry.js.map +1 -1
  61. package/dist/cjs/six-group-label.cjs.entry.js +43 -43
  62. package/dist/cjs/six-group-label.cjs.entry.js.map +1 -1
  63. package/dist/cjs/six-header.cjs.entry.js +171 -156
  64. package/dist/cjs/six-header.cjs.entry.js.map +1 -1
  65. package/dist/cjs/six-icon-button.cjs.entry.js +32 -32
  66. package/dist/cjs/six-icon-button.cjs.entry.js.map +1 -1
  67. package/dist/cjs/six-icon.cjs.entry.js +22 -22
  68. package/dist/cjs/six-icon.cjs.entry.js.map +1 -1
  69. package/dist/cjs/six-input.cjs.entry.js +192 -187
  70. package/dist/cjs/six-input.cjs.entry.js.map +1 -1
  71. package/dist/cjs/six-item-picker.cjs.entry.js +405 -309
  72. package/dist/cjs/six-item-picker.cjs.entry.js.map +1 -1
  73. package/dist/cjs/six-language-switcher.cjs.entry.js +46 -46
  74. package/dist/cjs/six-language-switcher.cjs.entry.js.map +1 -1
  75. package/dist/cjs/six-layout-grid.cjs.entry.js +20 -20
  76. package/dist/cjs/six-layout-grid.cjs.entry.js.map +1 -1
  77. package/dist/cjs/six-main-container.cjs.entry.js +9 -9
  78. package/dist/cjs/six-main-container.cjs.entry.js.map +1 -1
  79. package/dist/cjs/six-menu-divider.cjs.entry.js +8 -8
  80. package/dist/cjs/six-menu-divider.cjs.entry.js.map +1 -1
  81. package/dist/cjs/six-menu-label.cjs.entry.js +8 -8
  82. package/dist/cjs/six-menu-label.cjs.entry.js.map +1 -1
  83. package/dist/cjs/six-picto.cjs.entry.js +14 -14
  84. package/dist/cjs/six-picto.cjs.entry.js.map +1 -1
  85. package/dist/cjs/six-progress-bar.cjs.entry.js +15 -15
  86. package/dist/cjs/six-progress-bar.cjs.entry.js.map +1 -1
  87. package/dist/cjs/six-progress-ring.cjs.entry.js +30 -30
  88. package/dist/cjs/six-progress-ring.cjs.entry.js.map +1 -1
  89. package/dist/cjs/six-radio.cjs.entry.js +104 -104
  90. package/dist/cjs/six-radio.cjs.entry.js.map +1 -1
  91. package/dist/cjs/six-range.cjs.entry.js +180 -177
  92. package/dist/cjs/six-range.cjs.entry.js.map +1 -1
  93. package/dist/cjs/six-root.cjs.entry.js +11 -30
  94. package/dist/cjs/six-root.cjs.entry.js.map +1 -1
  95. package/dist/cjs/six-search-field.cjs.entry.js +44 -44
  96. package/dist/cjs/six-search-field.cjs.entry.js.map +1 -1
  97. package/dist/cjs/six-select.cjs.entry.js +497 -363
  98. package/dist/cjs/six-select.cjs.entry.js.map +1 -1
  99. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +56 -45
  100. package/dist/cjs/six-sidebar-item-group.cjs.entry.js.map +1 -1
  101. package/dist/cjs/six-sidebar-item.cjs.entry.js +17 -15
  102. package/dist/cjs/six-sidebar-item.cjs.entry.js.map +1 -1
  103. package/dist/cjs/six-sidebar.cjs.entry.js +174 -174
  104. package/dist/cjs/six-sidebar.cjs.entry.js.map +1 -1
  105. package/dist/cjs/six-spinner.cjs.entry.js +15 -15
  106. package/dist/cjs/six-spinner.cjs.entry.js.map +1 -1
  107. package/dist/cjs/six-stage-indicator.cjs.entry.js +22 -0
  108. package/dist/cjs/six-stage-indicator.cjs.entry.js.map +1 -0
  109. package/dist/cjs/six-switch.cjs.entry.js +107 -89
  110. package/dist/cjs/six-switch.cjs.entry.js.map +1 -1
  111. package/dist/cjs/six-tab-group.cjs.entry.js +230 -235
  112. package/dist/cjs/six-tab-group.cjs.entry.js.map +1 -1
  113. package/dist/cjs/six-tab-panel.cjs.entry.js +14 -14
  114. package/dist/cjs/six-tab-panel.cjs.entry.js.map +1 -1
  115. package/dist/cjs/six-tab.cjs.entry.js +55 -39
  116. package/dist/cjs/six-tab.cjs.entry.js.map +1 -1
  117. package/dist/cjs/six-tag.cjs.entry.js +55 -33
  118. package/dist/cjs/six-tag.cjs.entry.js.map +1 -1
  119. package/dist/cjs/six-textarea.cjs.entry.js +181 -178
  120. package/dist/cjs/six-textarea.cjs.entry.js.map +1 -1
  121. package/dist/cjs/six-tile.cjs.entry.js +77 -77
  122. package/dist/cjs/six-tile.cjs.entry.js.map +1 -1
  123. package/dist/cjs/six-timepicker.cjs.entry.js +348 -353
  124. package/dist/cjs/six-timepicker.cjs.entry.js.map +1 -1
  125. package/dist/cjs/six-tooltip.cjs.entry.js +148 -148
  126. package/dist/cjs/six-tooltip.cjs.entry.js.map +1 -1
  127. package/dist/cjs/slot-1b1232a1.js +51 -0
  128. package/dist/cjs/slot-1b1232a1.js.map +1 -0
  129. package/dist/cjs/types-d3da200b.js +19 -0
  130. package/dist/cjs/types-d3da200b.js.map +1 -0
  131. package/dist/cjs/ui-library.cjs.js +3 -3
  132. package/dist/cjs/ui-library.cjs.js.map +1 -1
  133. package/dist/collection/collection-manifest.json +6 -6
  134. package/dist/collection/components/six-alert/six-alert.css +5 -1
  135. package/dist/collection/components/six-alert/six-alert.js +382 -337
  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 +7 -7
  138. package/dist/collection/components/six-alert/test/six-alert.spec.js.map +1 -1
  139. package/dist/collection/components/six-avatar/six-avatar.css +2 -2
  140. package/dist/collection/components/six-avatar/six-avatar.js +111 -111
  141. package/dist/collection/components/six-avatar/six-avatar.js.map +1 -1
  142. package/dist/collection/components/six-avatar/test/six-avatar.spec.js +7 -7
  143. package/dist/collection/components/six-avatar/test/six-avatar.spec.js.map +1 -1
  144. package/dist/collection/components/six-badge/six-badge.css +1 -1
  145. package/dist/collection/components/six-badge/six-badge.js +90 -90
  146. package/dist/collection/components/six-badge/six-badge.js.map +1 -1
  147. package/dist/collection/components/six-badge/test/six-badge.spec.js +7 -7
  148. package/dist/collection/components/six-badge/test/six-badge.spec.js.map +1 -1
  149. package/dist/collection/components/six-button/six-button.css +7 -31
  150. package/dist/collection/components/six-button/six-button.js +447 -446
  151. package/dist/collection/components/six-button/six-button.js.map +1 -1
  152. package/dist/collection/components/six-button/test/six-button.spec.js +44 -44
  153. package/dist/collection/components/six-button/test/six-button.spec.js.map +1 -1
  154. package/dist/collection/components/six-card/six-card.css +4 -5
  155. package/dist/collection/components/six-card/six-card.js +15 -15
  156. package/dist/collection/components/six-card/six-card.js.map +1 -1
  157. package/dist/collection/components/six-card/test/six-card.spec.js +7 -7
  158. package/dist/collection/components/six-card/test/six-card.spec.js.map +1 -1
  159. package/dist/collection/components/six-checkbox/six-checkbox.css +10 -2
  160. package/dist/collection/components/six-checkbox/six-checkbox.js +421 -399
  161. package/dist/collection/components/six-checkbox/six-checkbox.js.map +1 -1
  162. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js +19 -15
  163. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js.map +1 -1
  164. package/dist/collection/components/six-datepicker/components/day-selection.js +8 -8
  165. package/dist/collection/components/six-datepicker/components/day-selection.js.map +1 -1
  166. package/dist/collection/components/six-datepicker/components/month-selection.js +8 -8
  167. package/dist/collection/components/six-datepicker/components/month-selection.js.map +1 -1
  168. package/dist/collection/components/six-datepicker/components/year-selection.js +8 -8
  169. package/dist/collection/components/six-datepicker/components/year-selection.js.map +1 -1
  170. package/dist/collection/components/six-datepicker/six-date-formats.js +21 -20
  171. package/dist/collection/components/six-datepicker/six-date-formats.js.map +1 -1
  172. package/dist/collection/components/six-datepicker/six-datepicker.css +1 -1
  173. package/dist/collection/components/six-datepicker/six-datepicker.js +1052 -1039
  174. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -1
  175. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js +8 -8
  176. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js.map +1 -1
  177. package/dist/collection/components/six-datepicker/test/six-datepicker.test-helpers.js +14 -14
  178. package/dist/collection/components/six-datepicker/test/six-datepicker.test-helpers.js.map +1 -1
  179. package/dist/collection/components/six-details/six-details.css +4 -6
  180. package/dist/collection/components/six-details/six-details.js +410 -410
  181. package/dist/collection/components/six-details/six-details.js.map +1 -1
  182. package/dist/collection/components/six-details/test/six-details.spec.js +7 -7
  183. package/dist/collection/components/six-details/test/six-details.spec.js.map +1 -1
  184. package/dist/collection/components/six-dialog/six-dialog.css +2 -2
  185. package/dist/collection/components/six-dialog/six-dialog.js +356 -354
  186. package/dist/collection/components/six-dialog/six-dialog.js.map +1 -1
  187. package/dist/collection/components/six-dialog/test/six-dialog.spec.js +7 -7
  188. package/dist/collection/components/six-dialog/test/six-dialog.spec.js.map +1 -1
  189. package/dist/collection/components/six-drawer/six-drawer.css +2 -2
  190. package/dist/collection/components/six-drawer/six-drawer.js +409 -409
  191. package/dist/collection/components/six-drawer/six-drawer.js.map +1 -1
  192. package/dist/collection/components/six-drawer/test/six-drawer.spec.js +8 -8
  193. package/dist/collection/components/six-drawer/test/six-drawer.spec.js.map +1 -1
  194. package/dist/collection/components/six-dropdown/six-dropdown.css +22 -6
  195. package/dist/collection/components/six-dropdown/six-dropdown.js +983 -891
  196. package/dist/collection/components/six-dropdown/six-dropdown.js.map +1 -1
  197. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js +92 -67
  198. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js.map +1 -1
  199. package/dist/collection/components/six-error/six-error.css +5 -0
  200. package/dist/collection/components/six-error/six-error.js +25 -0
  201. package/dist/collection/components/six-error/six-error.js.map +1 -0
  202. package/dist/collection/components/six-error-page/six-error-page.js +177 -177
  203. package/dist/collection/components/six-error-page/six-error-page.js.map +1 -1
  204. package/dist/collection/components/six-error-page/test/six-error-page.spec.js +77 -77
  205. package/dist/collection/components/six-error-page/test/six-error-page.spec.js.map +1 -1
  206. package/dist/collection/components/six-file-list/six-file-list.js +15 -15
  207. package/dist/collection/components/six-file-list/six-file-list.js.map +1 -1
  208. package/dist/collection/components/six-file-list/test/six-file-list.spec.js +16 -16
  209. package/dist/collection/components/six-file-list/test/six-file-list.spec.js.map +1 -1
  210. package/dist/collection/components/six-file-list-item/six-file-list-item.css +1 -1
  211. package/dist/collection/components/six-file-list-item/six-file-list-item.js +195 -195
  212. package/dist/collection/components/six-file-list-item/six-file-list-item.js.map +1 -1
  213. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js +42 -42
  214. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js.map +1 -1
  215. package/dist/collection/components/six-file-upload/six-file-upload.css +1 -4
  216. package/dist/collection/components/six-file-upload/six-file-upload.js +291 -291
  217. package/dist/collection/components/six-file-upload/six-file-upload.js.map +1 -1
  218. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js +27 -27
  219. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js.map +1 -1
  220. package/dist/collection/components/six-footer/six-footer.css +2 -2
  221. package/dist/collection/components/six-footer/six-footer.js +15 -15
  222. package/dist/collection/components/six-footer/six-footer.js.map +1 -1
  223. package/dist/collection/components/six-footer/test/six-footer.spec.js +7 -7
  224. package/dist/collection/components/six-footer/test/six-footer.spec.js.map +1 -1
  225. package/dist/collection/components/six-group-label/six-group-label.css +5 -2
  226. package/dist/collection/components/six-group-label/six-group-label.js +155 -155
  227. package/dist/collection/components/six-group-label/six-group-label.js.map +1 -1
  228. package/dist/collection/components/six-group-label/test/six-group-label.spec.js +15 -13
  229. package/dist/collection/components/six-group-label/test/six-group-label.spec.js.map +1 -1
  230. package/dist/collection/components/six-header/six-header.css +6 -2
  231. package/dist/collection/components/six-header/six-header.js +439 -405
  232. package/dist/collection/components/six-header/six-header.js.map +1 -1
  233. package/dist/collection/components/six-header/test/six-header.spec.js +77 -33
  234. package/dist/collection/components/six-header/test/six-header.spec.js.map +1 -1
  235. package/dist/collection/components/six-icon/six-icon.css +5 -2
  236. package/dist/collection/components/six-icon/six-icon.js +71 -71
  237. package/dist/collection/components/six-icon/six-icon.js.map +1 -1
  238. package/dist/collection/components/six-icon/test/six-icon.spec.js +7 -7
  239. package/dist/collection/components/six-icon/test/six-icon.spec.js.map +1 -1
  240. package/dist/collection/components/six-icon-button/six-icon-button.css +5 -5
  241. package/dist/collection/components/six-icon-button/six-icon-button.js +131 -131
  242. package/dist/collection/components/six-icon-button/six-icon-button.js.map +1 -1
  243. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js +7 -7
  244. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js.map +1 -1
  245. package/dist/collection/components/six-input/six-input.css +15 -3
  246. package/dist/collection/components/six-input/six-input.js +970 -919
  247. package/dist/collection/components/six-input/six-input.js.map +1 -1
  248. package/dist/collection/components/six-input/test/six-input.spec.js +10 -8
  249. package/dist/collection/components/six-input/test/six-input.spec.js.map +1 -1
  250. package/dist/collection/components/six-item-picker/six-item-picker.css +8 -0
  251. package/dist/collection/components/six-item-picker/six-item-picker.js +727 -631
  252. package/dist/collection/components/six-item-picker/six-item-picker.js.map +1 -1
  253. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js +82 -82
  254. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js.map +1 -1
  255. package/dist/collection/components/six-item-picker/types.js +9 -7
  256. package/dist/collection/components/six-item-picker/types.js.map +1 -1
  257. package/dist/collection/components/six-language-switcher/six-language-switcher.js +124 -124
  258. package/dist/collection/components/six-language-switcher/six-language-switcher.js.map +1 -1
  259. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js +79 -79
  260. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js.map +1 -1
  261. package/dist/collection/components/six-layout-grid/six-layout-grid.js +54 -54
  262. package/dist/collection/components/six-layout-grid/six-layout-grid.js.map +1 -1
  263. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js +7 -7
  264. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js.map +1 -1
  265. package/dist/collection/components/six-main-container/six-main-container.js +41 -41
  266. package/dist/collection/components/six-main-container/six-main-container.js.map +1 -1
  267. package/dist/collection/components/six-main-container/test/six-main-container.spec.js +7 -7
  268. package/dist/collection/components/six-main-container/test/six-main-container.spec.js.map +1 -1
  269. package/dist/collection/components/six-menu/six-menu.css +8 -7
  270. package/dist/collection/components/six-menu/six-menu.js +388 -366
  271. package/dist/collection/components/six-menu/six-menu.js.map +1 -1
  272. package/dist/collection/components/six-menu/test/six-menu.spec.js +41 -41
  273. package/dist/collection/components/six-menu/test/six-menu.spec.js.map +1 -1
  274. package/dist/collection/components/six-menu-divider/six-menu-divider.css +3 -2
  275. package/dist/collection/components/six-menu-divider/six-menu-divider.js +15 -15
  276. package/dist/collection/components/six-menu-divider/six-menu-divider.js.map +1 -1
  277. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js +7 -7
  278. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js.map +1 -1
  279. package/dist/collection/components/six-menu-item/six-menu-item.css +13 -2
  280. package/dist/collection/components/six-menu-item/six-menu-item.js +209 -180
  281. package/dist/collection/components/six-menu-item/six-menu-item.js.map +1 -1
  282. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js +7 -7
  283. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js.map +1 -1
  284. package/dist/collection/components/six-menu-label/six-menu-label.css +1 -1
  285. package/dist/collection/components/six-menu-label/six-menu-label.js +15 -15
  286. package/dist/collection/components/six-menu-label/six-menu-label.js.map +1 -1
  287. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js +7 -7
  288. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js.map +1 -1
  289. package/dist/collection/components/six-picto/six-picto.js +46 -46
  290. package/dist/collection/components/six-picto/six-picto.js.map +1 -1
  291. package/dist/collection/components/six-picto/test/six-picto.spec.js +13 -13
  292. package/dist/collection/components/six-picto/test/six-picto.spec.js.map +1 -1
  293. package/dist/collection/components/six-progress-bar/six-progress-bar.css +1 -1
  294. package/dist/collection/components/six-progress-bar/six-progress-bar.js +64 -64
  295. package/dist/collection/components/six-progress-bar/six-progress-bar.js.map +1 -1
  296. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js +7 -7
  297. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js.map +1 -1
  298. package/dist/collection/components/six-progress-ring/six-progress-ring.css +1 -1
  299. package/dist/collection/components/six-progress-ring/six-progress-ring.js +100 -100
  300. package/dist/collection/components/six-progress-ring/six-progress-ring.js.map +1 -1
  301. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js +7 -7
  302. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js.map +1 -1
  303. package/dist/collection/components/six-radio/six-radio.css +1 -1
  304. package/dist/collection/components/six-radio/six-radio.js +321 -320
  305. package/dist/collection/components/six-radio/six-radio.js.map +1 -1
  306. package/dist/collection/components/six-radio/test/six-radio.spec.js +13 -13
  307. package/dist/collection/components/six-radio/test/six-radio.spec.js.map +1 -1
  308. package/dist/collection/components/six-range/six-range.css +5 -2
  309. package/dist/collection/components/six-range/six-range.js +564 -542
  310. package/dist/collection/components/six-range/six-range.js.map +1 -1
  311. package/dist/collection/components/six-range/test/six-range.spec.js +11 -9
  312. package/dist/collection/components/six-range/test/six-range.spec.js.map +1 -1
  313. package/dist/collection/components/six-root/six-root.js +84 -152
  314. package/dist/collection/components/six-root/six-root.js.map +1 -1
  315. package/dist/collection/components/six-root/test/six-root.spec.js +7 -14
  316. package/dist/collection/components/six-root/test/six-root.spec.js.map +1 -1
  317. package/dist/collection/components/six-search-field/six-search-field.css +1 -1
  318. package/dist/collection/components/six-search-field/six-search-field.js +169 -169
  319. package/dist/collection/components/six-search-field/six-search-field.js.map +1 -1
  320. package/dist/collection/components/six-search-field/test/six-search-field.spec.js +7 -7
  321. package/dist/collection/components/six-search-field/test/six-search-field.spec.js.map +1 -1
  322. package/dist/collection/components/six-select/six-select.css +61 -73
  323. package/dist/collection/components/six-select/six-select.js +1117 -921
  324. package/dist/collection/components/six-select/six-select.js.map +1 -1
  325. package/dist/collection/components/six-select/test/six-select.spec.js +51 -31
  326. package/dist/collection/components/six-select/test/six-select.spec.js.map +1 -1
  327. package/dist/collection/components/six-select/test/util.spec.js +73 -73
  328. package/dist/collection/components/six-select/test/util.spec.js.map +1 -1
  329. package/dist/collection/components/six-select/util.js +34 -34
  330. package/dist/collection/components/six-select/util.js.map +1 -1
  331. package/dist/collection/components/six-sidebar/six-sidebar.css +2 -2
  332. package/dist/collection/components/six-sidebar/six-sidebar.js +466 -464
  333. package/dist/collection/components/six-sidebar/six-sidebar.js.map +1 -1
  334. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js +7 -7
  335. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js.map +1 -1
  336. package/dist/collection/components/six-sidebar-item/six-sidebar-item.css +6 -1
  337. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +101 -82
  338. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js.map +1 -1
  339. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js +19 -19
  340. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js.map +1 -1
  341. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.css +12 -1
  342. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js +180 -152
  343. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js.map +1 -1
  344. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js +16 -16
  345. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js.map +1 -1
  346. package/dist/collection/components/six-spinner/six-spinner.css +1 -1
  347. package/dist/collection/components/six-spinner/six-spinner.js +47 -46
  348. package/dist/collection/components/six-spinner/six-spinner.js.map +1 -1
  349. package/dist/collection/components/six-spinner/test/six-spinner.spec.js +14 -14
  350. package/dist/collection/components/six-spinner/test/six-spinner.spec.js.map +1 -1
  351. package/dist/collection/components/six-stage-indicator/six-stage-indicator.css +1 -1
  352. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js +45 -45
  353. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js.map +1 -1
  354. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js +37 -37
  355. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js.map +1 -1
  356. package/dist/collection/components/six-switch/six-switch.css +5 -2
  357. package/dist/collection/components/six-switch/six-switch.js +386 -344
  358. package/dist/collection/components/six-switch/six-switch.js.map +1 -1
  359. package/dist/collection/components/six-switch/test/six-switch.spec.js +19 -15
  360. package/dist/collection/components/six-switch/test/six-switch.spec.js.map +1 -1
  361. package/dist/collection/components/six-tab/six-tab.css +55 -6
  362. package/dist/collection/components/six-tab/six-tab.js +206 -189
  363. package/dist/collection/components/six-tab/six-tab.js.map +1 -1
  364. package/dist/collection/components/six-tab-group/six-tab-group.css +1 -32
  365. package/dist/collection/components/six-tab-group/six-tab-group.js +318 -358
  366. package/dist/collection/components/six-tab-group/six-tab-group.js.map +1 -1
  367. package/dist/collection/components/six-tab-panel/six-tab-panel.css +1 -1
  368. package/dist/collection/components/six-tab-panel/six-tab-panel.js +63 -63
  369. package/dist/collection/components/six-tab-panel/six-tab-panel.js.map +1 -1
  370. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js +7 -7
  371. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js.map +1 -1
  372. package/dist/collection/components/six-tag/six-tag.css +7 -1
  373. package/dist/collection/components/six-tag/six-tag.js +161 -139
  374. package/dist/collection/components/six-tag/six-tag.js.map +1 -1
  375. package/dist/collection/components/six-tag/test/six-tag.spec.js +24 -12
  376. package/dist/collection/components/six-tag/test/six-tag.spec.js.map +1 -1
  377. package/dist/collection/components/six-textarea/six-textarea.css +5 -2
  378. package/dist/collection/components/six-textarea/six-textarea.js +792 -763
  379. package/dist/collection/components/six-textarea/six-textarea.js.map +1 -1
  380. package/dist/collection/components/six-textarea/test/six-textarea.spec.js +97 -95
  381. package/dist/collection/components/six-textarea/test/six-textarea.spec.js.map +1 -1
  382. package/dist/collection/components/six-tile/six-tile.css +2 -2
  383. package/dist/collection/components/six-tile/six-tile.js +298 -298
  384. package/dist/collection/components/six-tile/six-tile.js.map +1 -1
  385. package/dist/collection/components/six-tile/test/six-tile.spec.js +14 -14
  386. package/dist/collection/components/six-tile/test/six-tile.spec.js.map +1 -1
  387. package/dist/collection/components/six-timepicker/six-timepicker.css +1 -1
  388. package/dist/collection/components/six-timepicker/six-timepicker.js +825 -812
  389. package/dist/collection/components/six-timepicker/six-timepicker.js.map +1 -1
  390. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js +170 -170
  391. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js.map +1 -1
  392. package/dist/collection/components/six-tooltip/six-tooltip.css +2 -2
  393. package/dist/collection/components/six-tooltip/six-tooltip.js +407 -407
  394. package/dist/collection/components/six-tooltip/six-tooltip.js.map +1 -1
  395. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js +7 -7
  396. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js.map +1 -1
  397. package/dist/collection/functional-components/form-control/form-control.js +19 -17
  398. package/dist/collection/functional-components/form-control/form-control.js.map +1 -1
  399. package/dist/collection/index.js +1 -0
  400. package/dist/collection/index.js.map +1 -1
  401. package/dist/collection/testUtil/delay.js +1 -1
  402. package/dist/collection/testUtil/delay.js.map +1 -1
  403. package/dist/collection/utils/alert.js +54 -0
  404. package/dist/collection/utils/alert.js.map +1 -0
  405. package/dist/collection/utils/animation.js +34 -0
  406. package/dist/collection/utils/animation.js.map +1 -0
  407. package/dist/collection/utils/date-util.js +525 -500
  408. package/dist/collection/utils/date-util.js.map +1 -1
  409. package/dist/collection/utils/date-util.spec.js +984 -984
  410. package/dist/collection/utils/date-util.spec.js.map +1 -1
  411. package/dist/collection/utils/error-messages.js +102 -81
  412. package/dist/collection/utils/error-messages.js.map +1 -1
  413. package/dist/collection/utils/event-listeners.js +51 -51
  414. package/dist/collection/utils/event-listeners.js.map +1 -1
  415. package/dist/collection/utils/execution-control.js +14 -14
  416. package/dist/collection/utils/execution-control.js.map +1 -1
  417. package/dist/collection/utils/focus-visible.js +28 -28
  418. package/dist/collection/utils/focus-visible.js.map +1 -1
  419. package/dist/collection/utils/form.js +12 -12
  420. package/dist/collection/utils/form.js.map +1 -1
  421. package/dist/collection/utils/modal.js +25 -25
  422. package/dist/collection/utils/modal.js.map +1 -1
  423. package/dist/collection/utils/offset.js +4 -4
  424. package/dist/collection/utils/offset.js.map +1 -1
  425. package/dist/collection/utils/popover.js +99 -99
  426. package/dist/collection/utils/popover.js.map +1 -1
  427. package/dist/collection/utils/popup.js +71 -71
  428. package/dist/collection/utils/popup.js.map +1 -1
  429. package/dist/collection/utils/scroll.js +27 -27
  430. package/dist/collection/utils/scroll.js.map +1 -1
  431. package/dist/collection/utils/scroll.spec.js +116 -116
  432. package/dist/collection/utils/scroll.spec.js.map +1 -1
  433. package/dist/collection/utils/slot.js +28 -29
  434. package/dist/collection/utils/slot.js.map +1 -1
  435. package/dist/collection/utils/support.js +10 -10
  436. package/dist/collection/utils/support.js.map +1 -1
  437. package/dist/collection/utils/tabbable.js +17 -17
  438. package/dist/collection/utils/tabbable.js.map +1 -1
  439. package/dist/collection/utils/time.util.js +72 -72
  440. package/dist/collection/utils/time.util.js.map +1 -1
  441. package/dist/collection/utils/time.util.spec.js +353 -353
  442. package/dist/collection/utils/time.util.spec.js.map +1 -1
  443. package/dist/components/event-listeners.js +51 -51
  444. package/dist/components/event-listeners.js.map +1 -1
  445. package/dist/components/execution-control.js +14 -14
  446. package/dist/components/execution-control.js.map +1 -1
  447. package/dist/components/focus-visible.js +28 -28
  448. package/dist/components/focus-visible.js.map +1 -1
  449. package/dist/components/form-control.js +26 -23
  450. package/dist/components/form-control.js.map +1 -1
  451. package/dist/components/form.js +12 -12
  452. package/dist/components/form.js.map +1 -1
  453. package/dist/components/index.d.ts +6 -0
  454. package/dist/components/index.js +113 -149
  455. package/dist/components/index.js.map +1 -1
  456. package/dist/components/modal.js +35 -35
  457. package/dist/components/modal.js.map +1 -1
  458. package/dist/components/popover.js +98 -98
  459. package/dist/components/popover.js.map +1 -1
  460. package/dist/components/scroll.js +32 -32
  461. package/dist/components/scroll.js.map +1 -1
  462. package/dist/components/six-alert.d.ts +2 -2
  463. package/dist/components/six-alert.js +177 -142
  464. package/dist/components/six-alert.js.map +1 -1
  465. package/dist/components/six-avatar.d.ts +2 -2
  466. package/dist/components/six-avatar.js +45 -45
  467. package/dist/components/six-avatar.js.map +1 -1
  468. package/dist/components/six-badge.d.ts +2 -2
  469. package/dist/components/six-badge.js +40 -40
  470. package/dist/components/six-badge.js.map +1 -1
  471. package/dist/components/six-button.d.ts +2 -2
  472. package/dist/components/six-button.js +1 -142
  473. package/dist/components/six-button.js.map +1 -1
  474. package/dist/components/six-button2.js +146 -0
  475. package/dist/components/six-button2.js.map +1 -0
  476. package/dist/components/six-card.d.ts +2 -2
  477. package/dist/components/six-card.js +21 -21
  478. package/dist/components/six-card.js.map +1 -1
  479. package/dist/components/six-checkbox.d.ts +2 -2
  480. package/dist/components/six-checkbox.js +1 -145
  481. package/dist/components/six-checkbox.js.map +1 -1
  482. package/dist/components/six-checkbox2.js +165 -0
  483. package/dist/components/six-checkbox2.js.map +1 -0
  484. package/dist/components/six-datepicker.d.ts +2 -2
  485. package/dist/components/six-datepicker.js +931 -900
  486. package/dist/components/six-datepicker.js.map +1 -1
  487. package/dist/components/six-details.d.ts +2 -2
  488. package/dist/components/six-details2.js +158 -156
  489. package/dist/components/six-details2.js.map +1 -1
  490. package/dist/components/six-dialog.d.ts +2 -2
  491. package/dist/components/six-dialog.js +161 -157
  492. package/dist/components/six-dialog.js.map +1 -1
  493. package/dist/components/six-drawer.d.ts +2 -2
  494. package/dist/components/six-drawer.js +179 -177
  495. package/dist/components/six-drawer.js.map +1 -1
  496. package/dist/components/six-dropdown.d.ts +2 -2
  497. package/dist/components/six-dropdown2.js +553 -464
  498. package/dist/components/six-dropdown2.js.map +1 -1
  499. package/dist/components/six-error-page.d.ts +2 -2
  500. package/dist/components/six-error-page.js +106 -106
  501. package/dist/components/six-error-page.js.map +1 -1
  502. package/dist/components/{set-attributes.d.ts → six-error.d.ts} +4 -4
  503. package/dist/components/six-error.js +8 -0
  504. package/dist/components/six-error.js.map +1 -0
  505. package/dist/components/six-error2.js +32 -0
  506. package/dist/components/six-error2.js.map +1 -0
  507. package/dist/components/six-file-list-item.d.ts +2 -2
  508. package/dist/components/six-file-list-item.js +59 -59
  509. package/dist/components/six-file-list-item.js.map +1 -1
  510. package/dist/components/six-file-list.d.ts +2 -2
  511. package/dist/components/six-file-list.js +20 -20
  512. package/dist/components/six-file-list.js.map +1 -1
  513. package/dist/components/six-file-upload.d.ts +2 -2
  514. package/dist/components/six-file-upload.js +124 -124
  515. package/dist/components/six-file-upload.js.map +1 -1
  516. package/dist/components/six-footer.d.ts +2 -2
  517. package/dist/components/six-footer.js +21 -21
  518. package/dist/components/six-footer.js.map +1 -1
  519. package/dist/components/six-group-label.d.ts +2 -2
  520. package/dist/components/six-group-label.js +71 -62
  521. package/dist/components/six-group-label.js.map +1 -1
  522. package/dist/components/six-header.d.ts +2 -2
  523. package/dist/components/six-header.js +237 -207
  524. package/dist/components/six-header.js.map +1 -1
  525. package/dist/components/six-icon-button.d.ts +2 -2
  526. package/dist/components/six-icon-button2.js +55 -55
  527. package/dist/components/six-icon-button2.js.map +1 -1
  528. package/dist/components/six-icon.d.ts +2 -2
  529. package/dist/components/six-icon2.js +38 -38
  530. package/dist/components/six-icon2.js.map +1 -1
  531. package/dist/components/six-input.d.ts +2 -2
  532. package/dist/components/six-input2.js +258 -239
  533. package/dist/components/six-input2.js.map +1 -1
  534. package/dist/components/six-item-picker.d.ts +2 -2
  535. package/dist/components/six-item-picker2.js +450 -348
  536. package/dist/components/six-item-picker2.js.map +1 -1
  537. package/dist/components/six-language-switcher.d.ts +2 -2
  538. package/dist/components/six-language-switcher.js +64 -62
  539. package/dist/components/six-language-switcher.js.map +1 -1
  540. package/dist/components/six-layout-grid.d.ts +2 -2
  541. package/dist/components/six-layout-grid.js +37 -35
  542. package/dist/components/six-layout-grid.js.map +1 -1
  543. package/dist/components/six-main-container.d.ts +2 -2
  544. package/dist/components/six-main-container.js +24 -24
  545. package/dist/components/six-main-container.js.map +1 -1
  546. package/dist/components/six-menu-divider.d.ts +2 -2
  547. package/dist/components/six-menu-divider.js +21 -21
  548. package/dist/components/six-menu-divider.js.map +1 -1
  549. package/dist/components/six-menu-item.d.ts +2 -2
  550. package/dist/components/six-menu-item2.js +98 -75
  551. package/dist/components/six-menu-item2.js.map +1 -1
  552. package/dist/components/six-menu-label.d.ts +2 -2
  553. package/dist/components/six-menu-label.js +21 -21
  554. package/dist/components/six-menu-label.js.map +1 -1
  555. package/dist/components/six-menu.d.ts +2 -2
  556. package/dist/components/six-menu2.js +236 -220
  557. package/dist/components/six-menu2.js.map +1 -1
  558. package/dist/components/six-picto.d.ts +2 -2
  559. package/dist/components/six-picto2.js +29 -29
  560. package/dist/components/six-picto2.js.map +1 -1
  561. package/dist/components/six-progress-bar.d.ts +2 -2
  562. package/dist/components/six-progress-bar.js +31 -31
  563. package/dist/components/six-progress-bar.js.map +1 -1
  564. package/dist/components/six-progress-ring.d.ts +2 -2
  565. package/dist/components/six-progress-ring.js +49 -47
  566. package/dist/components/six-progress-ring.js.map +1 -1
  567. package/dist/components/six-radio.d.ts +2 -2
  568. package/dist/components/six-radio.js +128 -125
  569. package/dist/components/six-radio.js.map +1 -1
  570. package/dist/components/six-range.d.ts +2 -2
  571. package/dist/components/six-range.js +233 -215
  572. package/dist/components/six-range.js.map +1 -1
  573. package/dist/components/six-root.d.ts +2 -2
  574. package/dist/components/six-root.js +39 -66
  575. package/dist/components/six-root.js.map +1 -1
  576. package/dist/components/six-search-field.d.ts +2 -2
  577. package/dist/components/six-search-field.js +79 -71
  578. package/dist/components/six-search-field.js.map +1 -1
  579. package/dist/components/six-select.d.ts +2 -2
  580. package/dist/components/six-select.js +714 -440
  581. package/dist/components/six-select.js.map +1 -1
  582. package/dist/components/six-sidebar-item-group.d.ts +2 -2
  583. package/dist/components/six-sidebar-item-group.js +87 -75
  584. package/dist/components/six-sidebar-item-group.js.map +1 -1
  585. package/dist/components/six-sidebar-item.d.ts +2 -2
  586. package/dist/components/six-sidebar-item.js +35 -32
  587. package/dist/components/six-sidebar-item.js.map +1 -1
  588. package/dist/components/six-sidebar.d.ts +2 -2
  589. package/dist/components/six-sidebar.js +199 -197
  590. package/dist/components/six-sidebar.js.map +1 -1
  591. package/dist/components/six-spinner.d.ts +2 -2
  592. package/dist/components/six-spinner2.js +30 -30
  593. package/dist/components/six-spinner2.js.map +1 -1
  594. package/dist/components/six-stage-indicator.d.ts +2 -2
  595. package/dist/components/six-stage-indicator2.js +29 -29
  596. package/dist/components/six-stage-indicator2.js.map +1 -1
  597. package/dist/components/six-switch.d.ts +2 -2
  598. package/dist/components/six-switch.js +142 -112
  599. package/dist/components/six-switch.js.map +1 -1
  600. package/dist/components/six-tab-group.d.ts +2 -2
  601. package/dist/components/six-tab-group.js +260 -263
  602. package/dist/components/six-tab-group.js.map +1 -1
  603. package/dist/components/six-tab-panel.d.ts +2 -2
  604. package/dist/components/six-tab-panel.js +30 -30
  605. package/dist/components/six-tab-panel.js.map +1 -1
  606. package/dist/components/six-tab.d.ts +2 -2
  607. package/dist/components/six-tab.js +85 -69
  608. package/dist/components/six-tab.js.map +1 -1
  609. package/dist/components/six-tag.d.ts +2 -2
  610. package/dist/components/six-tag.js +98 -1
  611. package/dist/components/six-tag.js.map +1 -1
  612. package/dist/components/six-textarea.d.ts +2 -2
  613. package/dist/components/six-textarea.js +235 -218
  614. package/dist/components/six-textarea.js.map +1 -1
  615. package/dist/components/six-tile.d.ts +2 -2
  616. package/dist/components/six-tile.js +117 -117
  617. package/dist/components/six-tile.js.map +1 -1
  618. package/dist/components/six-timepicker.d.ts +2 -2
  619. package/dist/components/six-timepicker2.js +491 -487
  620. package/dist/components/six-timepicker2.js.map +1 -1
  621. package/dist/components/six-tooltip.d.ts +2 -2
  622. package/dist/components/six-tooltip2.js +172 -170
  623. package/dist/components/six-tooltip2.js.map +1 -1
  624. package/dist/components/slot.js +29 -30
  625. package/dist/components/slot.js.map +1 -1
  626. package/dist/components.d.ts +1 -21
  627. package/dist/components.json +1079 -288
  628. package/dist/esm/error-messages-1eaaad23.js +115 -0
  629. package/dist/esm/error-messages-1eaaad23.js.map +1 -0
  630. package/dist/esm/event-listeners-706d4309.js +59 -0
  631. package/dist/esm/event-listeners-706d4309.js.map +1 -0
  632. package/dist/esm/{execution-control-e0892a05.js → execution-control-2ebaf4ef.js} +15 -15
  633. package/dist/esm/{execution-control-e0892a05.js.map → execution-control-2ebaf4ef.js.map} +1 -1
  634. package/dist/esm/focus-visible-d9dbfeef.js +45 -0
  635. package/dist/esm/{focus-visible-fc6ac671.js.map → focus-visible-d9dbfeef.js.map} +1 -1
  636. package/dist/esm/form-4b145b7a.js +18 -0
  637. package/dist/esm/{form-81252534.js.map → form-4b145b7a.js.map} +1 -1
  638. package/dist/esm/form-control-d403a9cf.js +34 -0
  639. package/dist/esm/form-control-d403a9cf.js.map +1 -0
  640. package/dist/esm/{index-8a74f992.js → index-79d4ef67.js} +420 -446
  641. package/dist/esm/index-79d4ef67.js.map +1 -0
  642. package/dist/esm/index.js +52 -87
  643. package/dist/esm/index.js.map +1 -1
  644. package/dist/esm/loader.js +3 -3
  645. package/dist/esm/modal-96526245.js +49 -0
  646. package/dist/esm/modal-96526245.js.map +1 -0
  647. package/dist/esm/{popover-136d1f73.js → popover-25996e62.js} +99 -99
  648. package/dist/esm/popover-25996e62.js.map +1 -0
  649. package/dist/esm/popup-7209e9d5.js +98 -0
  650. package/dist/esm/popup-7209e9d5.js.map +1 -0
  651. package/dist/esm/scroll-3e16851e.js +64 -0
  652. package/dist/esm/{scroll-3fb087a2.js.map → scroll-3e16851e.js.map} +1 -1
  653. package/dist/esm/six-alert.entry.js +142 -110
  654. package/dist/esm/six-alert.entry.js.map +1 -1
  655. package/dist/esm/six-avatar.entry.js +21 -21
  656. package/dist/esm/six-avatar.entry.js.map +1 -1
  657. package/dist/esm/six-badge.entry.js +23 -23
  658. package/dist/esm/six-badge.entry.js.map +1 -1
  659. package/dist/esm/six-button.entry.js +95 -95
  660. package/dist/esm/six-button.entry.js.map +1 -1
  661. package/dist/esm/six-card.entry.js +8 -8
  662. package/dist/esm/six-card.entry.js.map +1 -1
  663. package/dist/esm/six-checkbox_2.entry.js +185 -0
  664. package/dist/esm/six-checkbox_2.entry.js.map +1 -0
  665. package/dist/esm/six-datepicker.entry.js +860 -839
  666. package/dist/esm/six-datepicker.entry.js.map +1 -1
  667. package/dist/esm/six-details.entry.js +127 -127
  668. package/dist/esm/six-details.entry.js.map +1 -1
  669. package/dist/esm/six-dialog.entry.js +131 -129
  670. package/dist/esm/six-dialog.entry.js.map +1 -1
  671. package/dist/esm/six-drawer.entry.js +147 -147
  672. package/dist/esm/six-drawer.entry.js.map +1 -1
  673. package/dist/esm/six-dropdown_2.entry.js +709 -637
  674. package/dist/esm/six-dropdown_2.entry.js.map +1 -1
  675. package/dist/esm/six-error-page.entry.js +82 -82
  676. package/dist/esm/six-error-page.entry.js.map +1 -1
  677. package/dist/esm/six-error.entry.js +17 -0
  678. package/dist/esm/six-error.entry.js.map +1 -0
  679. package/dist/esm/six-file-list-item.entry.js +34 -34
  680. package/dist/esm/six-file-list-item.entry.js.map +1 -1
  681. package/dist/esm/six-file-list.entry.js +7 -7
  682. package/dist/esm/six-file-list.entry.js.map +1 -1
  683. package/dist/esm/six-file-upload.entry.js +99 -99
  684. package/dist/esm/six-file-upload.entry.js.map +1 -1
  685. package/dist/esm/six-footer.entry.js +8 -8
  686. package/dist/esm/six-footer.entry.js.map +1 -1
  687. package/dist/esm/six-group-label.entry.js +43 -43
  688. package/dist/esm/six-group-label.entry.js.map +1 -1
  689. package/dist/esm/six-header.entry.js +171 -156
  690. package/dist/esm/six-header.entry.js.map +1 -1
  691. package/dist/esm/six-icon-button.entry.js +32 -32
  692. package/dist/esm/six-icon-button.entry.js.map +1 -1
  693. package/dist/esm/six-icon.entry.js +22 -22
  694. package/dist/esm/six-icon.entry.js.map +1 -1
  695. package/dist/esm/six-input.entry.js +192 -187
  696. package/dist/esm/six-input.entry.js.map +1 -1
  697. package/dist/esm/six-item-picker.entry.js +405 -309
  698. package/dist/esm/six-item-picker.entry.js.map +1 -1
  699. package/dist/esm/six-language-switcher.entry.js +46 -46
  700. package/dist/esm/six-language-switcher.entry.js.map +1 -1
  701. package/dist/esm/six-layout-grid.entry.js +20 -20
  702. package/dist/esm/six-layout-grid.entry.js.map +1 -1
  703. package/dist/esm/six-main-container.entry.js +9 -9
  704. package/dist/esm/six-main-container.entry.js.map +1 -1
  705. package/dist/esm/six-menu-divider.entry.js +8 -8
  706. package/dist/esm/six-menu-divider.entry.js.map +1 -1
  707. package/dist/esm/six-menu-label.entry.js +8 -8
  708. package/dist/esm/six-menu-label.entry.js.map +1 -1
  709. package/dist/esm/six-picto.entry.js +14 -14
  710. package/dist/esm/six-picto.entry.js.map +1 -1
  711. package/dist/esm/six-progress-bar.entry.js +15 -15
  712. package/dist/esm/six-progress-bar.entry.js.map +1 -1
  713. package/dist/esm/six-progress-ring.entry.js +30 -30
  714. package/dist/esm/six-progress-ring.entry.js.map +1 -1
  715. package/dist/esm/six-radio.entry.js +104 -104
  716. package/dist/esm/six-radio.entry.js.map +1 -1
  717. package/dist/esm/six-range.entry.js +180 -177
  718. package/dist/esm/six-range.entry.js.map +1 -1
  719. package/dist/esm/six-root.entry.js +11 -30
  720. package/dist/esm/six-root.entry.js.map +1 -1
  721. package/dist/esm/six-search-field.entry.js +44 -44
  722. package/dist/esm/six-search-field.entry.js.map +1 -1
  723. package/dist/esm/six-select.entry.js +497 -363
  724. package/dist/esm/six-select.entry.js.map +1 -1
  725. package/dist/esm/six-sidebar-item-group.entry.js +56 -45
  726. package/dist/esm/six-sidebar-item-group.entry.js.map +1 -1
  727. package/dist/esm/six-sidebar-item.entry.js +17 -15
  728. package/dist/esm/six-sidebar-item.entry.js.map +1 -1
  729. package/dist/esm/six-sidebar.entry.js +174 -174
  730. package/dist/esm/six-sidebar.entry.js.map +1 -1
  731. package/dist/esm/six-spinner.entry.js +15 -15
  732. package/dist/esm/six-spinner.entry.js.map +1 -1
  733. package/dist/esm/six-stage-indicator.entry.js +18 -0
  734. package/dist/esm/six-stage-indicator.entry.js.map +1 -0
  735. package/dist/esm/six-switch.entry.js +107 -89
  736. package/dist/esm/six-switch.entry.js.map +1 -1
  737. package/dist/esm/six-tab-group.entry.js +230 -235
  738. package/dist/esm/six-tab-group.entry.js.map +1 -1
  739. package/dist/esm/six-tab-panel.entry.js +14 -14
  740. package/dist/esm/six-tab-panel.entry.js.map +1 -1
  741. package/dist/esm/six-tab.entry.js +55 -39
  742. package/dist/esm/six-tab.entry.js.map +1 -1
  743. package/dist/esm/six-tag.entry.js +55 -33
  744. package/dist/esm/six-tag.entry.js.map +1 -1
  745. package/dist/esm/six-textarea.entry.js +181 -178
  746. package/dist/esm/six-textarea.entry.js.map +1 -1
  747. package/dist/esm/six-tile.entry.js +77 -77
  748. package/dist/esm/six-tile.entry.js.map +1 -1
  749. package/dist/esm/six-timepicker.entry.js +348 -353
  750. package/dist/esm/six-timepicker.entry.js.map +1 -1
  751. package/dist/esm/six-tooltip.entry.js +148 -148
  752. package/dist/esm/six-tooltip.entry.js.map +1 -1
  753. package/dist/esm/slot-56531341.js +47 -0
  754. package/dist/esm/slot-56531341.js.map +1 -0
  755. package/dist/esm/types-a07bb999.js +19 -0
  756. package/dist/esm/types-a07bb999.js.map +1 -0
  757. package/dist/esm/ui-library.js +4 -4
  758. package/dist/esm/ui-library.js.map +1 -1
  759. package/dist/types/components/six-alert/six-alert.d.ts +47 -40
  760. package/dist/types/components/six-avatar/six-avatar.d.ts +11 -11
  761. package/dist/types/components/six-badge/six-badge.d.ts +7 -7
  762. package/dist/types/components/six-button/six-button.d.ts +48 -48
  763. package/dist/types/components/six-card/six-card.d.ts +1 -1
  764. package/dist/types/components/six-checkbox/six-checkbox.d.ts +58 -55
  765. package/dist/types/components/six-datepicker/components/day-selection.d.ts +3 -3
  766. package/dist/types/components/six-datepicker/components/month-selection.d.ts +3 -3
  767. package/dist/types/components/six-datepicker/components/year-selection.d.ts +3 -3
  768. package/dist/types/components/six-datepicker/six-date-formats.d.ts +20 -20
  769. package/dist/types/components/six-datepicker/six-datepicker.d.ts +188 -186
  770. package/dist/types/components/six-details/six-details.d.ts +42 -42
  771. package/dist/types/components/six-dialog/six-dialog.d.ts +51 -50
  772. package/dist/types/components/six-drawer/six-drawer.d.ts +58 -58
  773. package/dist/types/components/six-dropdown/six-dropdown.d.ts +131 -112
  774. package/dist/types/components/six-error/six-error.d.ts +9 -0
  775. package/dist/types/components/six-error-page/six-error-page.d.ts +25 -25
  776. package/dist/types/components/six-file-list/six-file-list.d.ts +1 -1
  777. package/dist/types/components/six-file-list-item/six-file-list-item.d.ts +23 -23
  778. package/dist/types/components/six-file-upload/six-file-upload.d.ts +33 -33
  779. package/dist/types/components/six-footer/six-footer.d.ts +1 -1
  780. package/dist/types/components/six-group-label/six-group-label.d.ts +22 -22
  781. package/dist/types/components/six-header/six-header.d.ts +59 -55
  782. package/dist/types/components/six-icon/six-icon.d.ts +5 -5
  783. package/dist/types/components/six-icon-button/six-icon-button.d.ts +18 -18
  784. package/dist/types/components/six-input/six-input.d.ts +112 -103
  785. package/dist/types/components/six-item-picker/six-item-picker.d.ts +95 -88
  786. package/dist/types/components/six-item-picker/types.d.ts +7 -7
  787. package/dist/types/components/six-language-switcher/six-language-switcher.d.ts +15 -15
  788. package/dist/types/components/six-layout-grid/six-layout-grid.d.ts +6 -6
  789. package/dist/types/components/six-main-container/six-main-container.d.ts +4 -4
  790. package/dist/types/components/six-menu/six-menu.d.ts +67 -63
  791. package/dist/types/components/six-menu-divider/six-menu-divider.d.ts +1 -1
  792. package/dist/types/components/six-menu-item/six-menu-item.d.ts +27 -21
  793. package/dist/types/components/six-menu-label/six-menu-label.d.ts +1 -1
  794. package/dist/types/components/six-picto/six-picto.d.ts +6 -6
  795. package/dist/types/components/six-progress-bar/six-progress-bar.d.ts +5 -5
  796. package/dist/types/components/six-progress-ring/six-progress-ring.d.ts +11 -11
  797. package/dist/types/components/six-radio/six-radio.d.ts +38 -38
  798. package/dist/types/components/six-range/six-range.d.ts +75 -72
  799. package/dist/types/components/six-root/six-root.d.ts +8 -21
  800. package/dist/types/components/six-search-field/six-search-field.d.ts +20 -20
  801. package/dist/types/components/six-select/six-select.d.ts +137 -119
  802. package/dist/types/components/six-select/util.d.ts +1 -1
  803. package/dist/types/components/six-sidebar/six-sidebar.d.ts +45 -45
  804. package/dist/types/components/six-sidebar-item/six-sidebar-item.d.ts +12 -7
  805. package/dist/types/components/six-sidebar-item-group/six-sidebar-item-group.d.ts +25 -19
  806. package/dist/types/components/six-spinner/six-spinner.d.ts +6 -5
  807. package/dist/types/components/six-stage-indicator/six-stage-indicator.d.ts +3 -3
  808. package/dist/types/components/six-switch/six-switch.d.ts +49 -42
  809. package/dist/types/components/six-tab/six-tab.d.ts +20 -20
  810. package/dist/types/components/six-tab-group/six-tab-group.d.ts +35 -38
  811. package/dist/types/components/six-tab-panel/six-tab-panel.d.ts +7 -7
  812. package/dist/types/components/six-tag/six-tag.d.ts +20 -12
  813. package/dist/types/components/six-textarea/six-textarea.d.ts +89 -86
  814. package/dist/types/components/six-tile/six-tile.d.ts +31 -31
  815. package/dist/types/components/six-timepicker/six-timepicker.d.ts +154 -151
  816. package/dist/types/components/six-tooltip/six-tooltip.d.ts +55 -55
  817. package/dist/types/components.d.ts +565 -64
  818. package/dist/types/functional-components/form-control/form-control.d.ts +32 -28
  819. package/dist/types/index.d.ts +1 -0
  820. package/dist/types/stencil-public-runtime.d.ts +34 -3
  821. package/dist/types/types.d.ts +1 -0
  822. package/dist/types/utils/alert.d.ts +10 -0
  823. package/dist/types/utils/animation.d.ts +12 -0
  824. package/dist/types/utils/date-util.d.ts +58 -50
  825. package/dist/types/utils/error-messages.d.ts +27 -25
  826. package/dist/types/utils/event-listeners.d.ts +11 -11
  827. package/dist/types/utils/focus-visible.d.ts +2 -2
  828. package/dist/types/utils/modal.d.ts +8 -8
  829. package/dist/types/utils/offset.d.ts +2 -2
  830. package/dist/types/utils/popover.d.ts +21 -21
  831. package/dist/types/utils/slot.d.ts +0 -1
  832. package/dist/types/utils/time.util.d.ts +6 -6
  833. package/dist/types/utils/types.d.ts +1 -1
  834. package/dist/ui-library/index.esm.js +1 -1
  835. package/dist/ui-library/index.esm.js.map +1 -1
  836. package/dist/ui-library/{p-72254eef.entry.js → p-0440335d.entry.js} +2 -2
  837. package/dist/ui-library/p-0440335d.entry.js.map +1 -0
  838. package/dist/ui-library/p-04cc397c.entry.js +2 -0
  839. package/dist/ui-library/{p-a0f290d0.entry.js.map → p-04cc397c.entry.js.map} +1 -1
  840. package/dist/ui-library/{p-5654e4c7.js → p-06ba4450.js} +1 -1
  841. package/dist/ui-library/p-0cebf1d2.js +2 -0
  842. package/dist/ui-library/p-0cebf1d2.js.map +1 -0
  843. package/dist/ui-library/p-0edd3091.entry.js +2 -0
  844. package/dist/ui-library/p-0edd3091.entry.js.map +1 -0
  845. package/dist/ui-library/p-150b7664.entry.js +2 -0
  846. package/dist/ui-library/p-150b7664.entry.js.map +1 -0
  847. package/dist/ui-library/p-1f5840b5.entry.js +2 -0
  848. package/dist/ui-library/p-1f5840b5.entry.js.map +1 -0
  849. package/dist/ui-library/p-28cc013e.entry.js +2 -0
  850. package/dist/ui-library/p-28cc013e.entry.js.map +1 -0
  851. package/dist/ui-library/p-3424bbc0.entry.js +2 -0
  852. package/dist/ui-library/p-3424bbc0.entry.js.map +1 -0
  853. package/dist/ui-library/p-348c68a8.entry.js +2 -0
  854. package/dist/ui-library/p-348c68a8.entry.js.map +1 -0
  855. package/dist/ui-library/p-3723ca06.entry.js +2 -0
  856. package/dist/ui-library/p-3723ca06.entry.js.map +1 -0
  857. package/dist/ui-library/p-37aeac5e.entry.js +2 -0
  858. package/dist/ui-library/p-37aeac5e.entry.js.map +1 -0
  859. package/dist/ui-library/p-3d7fb086.entry.js +2 -0
  860. package/dist/ui-library/p-3d7fb086.entry.js.map +1 -0
  861. package/dist/ui-library/{p-5af44076.entry.js → p-457f7373.entry.js} +2 -2
  862. package/dist/ui-library/{p-5af44076.entry.js.map → p-457f7373.entry.js.map} +1 -1
  863. package/dist/ui-library/p-4a667f31.entry.js +2 -0
  864. package/dist/ui-library/p-4a667f31.entry.js.map +1 -0
  865. package/dist/ui-library/p-50dae789.entry.js +2 -0
  866. package/dist/ui-library/p-50dae789.entry.js.map +1 -0
  867. package/dist/ui-library/{p-b351f889.entry.js → p-546e33d9.entry.js} +2 -2
  868. package/dist/ui-library/{p-ac099e6b.entry.js → p-5db3a705.entry.js} +2 -2
  869. package/dist/ui-library/{p-ac099e6b.entry.js.map → p-5db3a705.entry.js.map} +1 -1
  870. package/dist/ui-library/p-61e66671.js +2 -0
  871. package/dist/ui-library/p-61e66671.js.map +1 -0
  872. package/dist/ui-library/p-6296779b.entry.js +2 -0
  873. package/dist/ui-library/p-6296779b.entry.js.map +1 -0
  874. package/dist/ui-library/p-64b4755d.entry.js +2 -0
  875. package/dist/ui-library/{p-ee950ce2.entry.js.map → p-64b4755d.entry.js.map} +1 -1
  876. package/dist/ui-library/p-6c1b046e.entry.js +2 -0
  877. package/dist/ui-library/p-6c1b046e.entry.js.map +1 -0
  878. package/dist/ui-library/p-7115316e.entry.js +2 -0
  879. package/dist/ui-library/p-7115316e.entry.js.map +1 -0
  880. package/dist/ui-library/p-73dd493f.entry.js +2 -0
  881. package/dist/ui-library/p-73dd493f.entry.js.map +1 -0
  882. package/dist/ui-library/{p-0fdb185d.js → p-7f856f00.js} +1 -1
  883. package/dist/ui-library/{p-1f18768a.js → p-8227aaed.js} +2 -2
  884. package/dist/ui-library/{p-8c0971e0.js → p-842b492e.js} +1 -1
  885. package/dist/ui-library/{p-0f510624.js → p-862d474e.js} +1 -1
  886. package/dist/ui-library/p-862d474e.js.map +1 -0
  887. package/dist/ui-library/p-870b988d.entry.js +2 -0
  888. package/dist/ui-library/p-870b988d.entry.js.map +1 -0
  889. package/dist/ui-library/{p-13b43e04.entry.js → p-884c5cf9.entry.js} +2 -2
  890. package/dist/ui-library/p-8888a367.entry.js +2 -0
  891. package/dist/ui-library/{p-878226a0.entry.js.map → p-8888a367.entry.js.map} +1 -1
  892. package/dist/ui-library/{p-7d95def3.js → p-8bfb4bfc.js} +1 -1
  893. package/dist/ui-library/p-8ced18d8.entry.js +2 -0
  894. package/dist/ui-library/p-8ced18d8.entry.js.map +1 -0
  895. package/dist/ui-library/{p-dfed33c5.entry.js → p-935c78a7.entry.js} +2 -2
  896. package/dist/ui-library/p-961bd001.entry.js +2 -0
  897. package/dist/ui-library/p-961bd001.entry.js.map +1 -0
  898. package/dist/ui-library/{p-9ace84c7.js → p-998de05d.js} +1 -1
  899. package/dist/ui-library/p-9b08068d.entry.js +2 -0
  900. package/dist/ui-library/p-9b08068d.entry.js.map +1 -0
  901. package/dist/ui-library/p-9c79341d.entry.js +2 -0
  902. package/dist/ui-library/{p-3cc5addb.entry.js.map → p-9c79341d.entry.js.map} +1 -1
  903. package/dist/ui-library/{p-698bb2c8.js → p-a1502802.js} +1 -1
  904. package/dist/ui-library/{p-91b51800.entry.js → p-a9c159f2.entry.js} +2 -2
  905. package/dist/ui-library/p-ac57ba5c.entry.js +2 -0
  906. package/dist/ui-library/{p-a6a9ee96.entry.js.map → p-ac57ba5c.entry.js.map} +1 -1
  907. package/dist/ui-library/p-af15381b.js +3 -0
  908. package/dist/ui-library/p-af15381b.js.map +1 -0
  909. package/dist/ui-library/p-b1a5f3cd.entry.js +2 -0
  910. package/dist/ui-library/p-b1a5f3cd.entry.js.map +1 -0
  911. package/dist/ui-library/p-b385a241.entry.js +2 -0
  912. package/dist/ui-library/{p-cd67da3d.entry.js.map → p-b385a241.entry.js.map} +1 -1
  913. package/dist/ui-library/p-b74c5d6b.entry.js +2 -0
  914. package/dist/ui-library/p-b74c5d6b.entry.js.map +1 -0
  915. package/dist/ui-library/p-bf2fb53f.entry.js +2 -0
  916. package/dist/ui-library/p-bf2fb53f.entry.js.map +1 -0
  917. package/dist/ui-library/p-c2c7370b.entry.js +2 -0
  918. package/dist/ui-library/p-c2c7370b.entry.js.map +1 -0
  919. package/dist/ui-library/p-caea1eb6.entry.js +2 -0
  920. package/dist/ui-library/{p-7e3ad38a.entry.js.map → p-caea1eb6.entry.js.map} +1 -1
  921. package/dist/ui-library/p-d3f5b9a8.entry.js +2 -0
  922. package/dist/ui-library/p-d3f5b9a8.entry.js.map +1 -0
  923. package/dist/ui-library/p-d42b18eb.entry.js +2 -0
  924. package/dist/ui-library/{p-264d4ea8.entry.js.map → p-d42b18eb.entry.js.map} +1 -1
  925. package/dist/ui-library/p-d95e292e.entry.js +2 -0
  926. package/dist/ui-library/{p-d367f4f9.entry.js.map → p-d95e292e.entry.js.map} +1 -1
  927. package/dist/ui-library/p-da7f3dbd.entry.js +2 -0
  928. package/dist/ui-library/p-da7f3dbd.entry.js.map +1 -0
  929. package/dist/ui-library/p-dfb89b6a.entry.js +2 -0
  930. package/dist/ui-library/p-dfb89b6a.entry.js.map +1 -0
  931. package/dist/ui-library/p-e080d5b6.js +2 -0
  932. package/dist/ui-library/p-e080d5b6.js.map +1 -0
  933. package/dist/ui-library/p-e6032375.entry.js +2 -0
  934. package/dist/ui-library/p-e6032375.entry.js.map +1 -0
  935. package/dist/ui-library/p-e60d2324.entry.js +2 -0
  936. package/dist/ui-library/p-e60d2324.entry.js.map +1 -0
  937. package/dist/ui-library/p-e8298c6e.entry.js +2 -0
  938. package/dist/ui-library/p-e8298c6e.entry.js.map +1 -0
  939. package/dist/ui-library/p-ed279165.entry.js +2 -0
  940. package/dist/ui-library/p-ed279165.entry.js.map +1 -0
  941. package/dist/ui-library/p-ed61b75c.entry.js +2 -0
  942. package/dist/ui-library/p-ed61b75c.entry.js.map +1 -0
  943. package/dist/ui-library/p-f136a6b2.js +2 -0
  944. package/dist/ui-library/p-f136a6b2.js.map +1 -0
  945. package/dist/ui-library/p-f1ab3384.entry.js +2 -0
  946. package/dist/ui-library/{p-37557787.entry.js.map → p-f1ab3384.entry.js.map} +1 -1
  947. package/dist/ui-library/p-f4ef481c.entry.js +2 -0
  948. package/dist/ui-library/p-f4ef481c.entry.js.map +1 -0
  949. package/dist/ui-library/{p-9b354f5d.entry.js → p-f8cbb8da.entry.js} +2 -2
  950. package/dist/ui-library/ui-library.css +1 -10
  951. package/dist/ui-library/ui-library.esm.js +1 -1
  952. package/dist/ui-library/ui-library.esm.js.map +1 -1
  953. package/package.json +18 -19
  954. package/dist/cjs/event-listeners-fdfe838c.js +0 -61
  955. package/dist/cjs/event-listeners-fdfe838c.js.map +0 -1
  956. package/dist/cjs/focus-visible-ae2470dd.js +0 -47
  957. package/dist/cjs/form-2df8c5bb.js +0 -20
  958. package/dist/cjs/form-control-d369af14.js +0 -33
  959. package/dist/cjs/form-control-d369af14.js.map +0 -1
  960. package/dist/cjs/index-900437fc.js.map +0 -1
  961. package/dist/cjs/modal-d5f074c7.js +0 -52
  962. package/dist/cjs/modal-d5f074c7.js.map +0 -1
  963. package/dist/cjs/popover-2df7e154.js.map +0 -1
  964. package/dist/cjs/popup-f1d9910f.js +0 -103
  965. package/dist/cjs/popup-f1d9910f.js.map +0 -1
  966. package/dist/cjs/scroll-03678de1.js +0 -69
  967. package/dist/cjs/scroll-03678de1.js.map +0 -1
  968. package/dist/cjs/set-attributes_2.cjs.entry.js +0 -73
  969. package/dist/cjs/set-attributes_2.cjs.entry.js.map +0 -1
  970. package/dist/cjs/six-checkbox.cjs.entry.js +0 -124
  971. package/dist/cjs/six-checkbox.cjs.entry.js.map +0 -1
  972. package/dist/cjs/six-menu-item.cjs.entry.js +0 -63
  973. package/dist/cjs/six-menu-item.cjs.entry.js.map +0 -1
  974. package/dist/cjs/slot-6e6a400f.js +0 -53
  975. package/dist/cjs/slot-6e6a400f.js.map +0 -1
  976. package/dist/cjs/types-47199040.js +0 -17
  977. package/dist/cjs/types-47199040.js.map +0 -1
  978. package/dist/collection/components/six-tab/test/six-tab.spec.js +0 -20
  979. package/dist/collection/components/six-tab/test/six-tab.spec.js.map +0 -1
  980. package/dist/collection/components/six-tab-group/test/six-tab-group.spec.js +0 -45
  981. package/dist/collection/components/six-tab-group/test/six-tab-group.spec.js.map +0 -1
  982. package/dist/collection/wrappers/set-attributes/set-attributes.js +0 -74
  983. package/dist/collection/wrappers/set-attributes/set-attributes.js.map +0 -1
  984. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js +0 -16
  985. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js.map +0 -1
  986. package/dist/components/set-attributes.js +0 -8
  987. package/dist/components/set-attributes.js.map +0 -1
  988. package/dist/components/set-attributes2.js +0 -71
  989. package/dist/components/set-attributes2.js.map +0 -1
  990. package/dist/components/six-tag2.js +0 -74
  991. package/dist/components/six-tag2.js.map +0 -1
  992. package/dist/esm/event-listeners-f6e5b0ab.js +0 -59
  993. package/dist/esm/event-listeners-f6e5b0ab.js.map +0 -1
  994. package/dist/esm/focus-visible-fc6ac671.js +0 -45
  995. package/dist/esm/form-81252534.js +0 -18
  996. package/dist/esm/form-control-32cb533f.js +0 -31
  997. package/dist/esm/form-control-32cb533f.js.map +0 -1
  998. package/dist/esm/index-8a74f992.js.map +0 -1
  999. package/dist/esm/modal-7d32e141.js +0 -49
  1000. package/dist/esm/modal-7d32e141.js.map +0 -1
  1001. package/dist/esm/popover-136d1f73.js.map +0 -1
  1002. package/dist/esm/popup-7f89a001.js +0 -98
  1003. package/dist/esm/popup-7f89a001.js.map +0 -1
  1004. package/dist/esm/scroll-3fb087a2.js +0 -64
  1005. package/dist/esm/set-attributes_2.entry.js +0 -68
  1006. package/dist/esm/set-attributes_2.entry.js.map +0 -1
  1007. package/dist/esm/six-checkbox.entry.js +0 -120
  1008. package/dist/esm/six-checkbox.entry.js.map +0 -1
  1009. package/dist/esm/six-menu-item.entry.js +0 -59
  1010. package/dist/esm/six-menu-item.entry.js.map +0 -1
  1011. package/dist/esm/slot-ad36df3a.js +0 -48
  1012. package/dist/esm/slot-ad36df3a.js.map +0 -1
  1013. package/dist/esm/types-59b455aa.js +0 -17
  1014. package/dist/esm/types-59b455aa.js.map +0 -1
  1015. package/dist/types/wrappers/set-attributes/set-attributes.d.ts +0 -9
  1016. package/dist/ui-library/p-0f510624.js.map +0 -1
  1017. package/dist/ui-library/p-1256cc0a.entry.js +0 -2
  1018. package/dist/ui-library/p-1256cc0a.entry.js.map +0 -1
  1019. package/dist/ui-library/p-15559d38.js +0 -2
  1020. package/dist/ui-library/p-15559d38.js.map +0 -1
  1021. package/dist/ui-library/p-19ed7a4c.entry.js +0 -2
  1022. package/dist/ui-library/p-19ed7a4c.entry.js.map +0 -1
  1023. package/dist/ui-library/p-1d0bee53.entry.js +0 -2
  1024. package/dist/ui-library/p-1d0bee53.entry.js.map +0 -1
  1025. package/dist/ui-library/p-1d5ee1a0.entry.js +0 -2
  1026. package/dist/ui-library/p-1d5ee1a0.entry.js.map +0 -1
  1027. package/dist/ui-library/p-21b3b321.entry.js +0 -2
  1028. package/dist/ui-library/p-21b3b321.entry.js.map +0 -1
  1029. package/dist/ui-library/p-2451cfdc.entry.js +0 -2
  1030. package/dist/ui-library/p-2451cfdc.entry.js.map +0 -1
  1031. package/dist/ui-library/p-264d4ea8.entry.js +0 -2
  1032. package/dist/ui-library/p-29ac3d7d.entry.js +0 -2
  1033. package/dist/ui-library/p-29ac3d7d.entry.js.map +0 -1
  1034. package/dist/ui-library/p-314b2096.entry.js +0 -2
  1035. package/dist/ui-library/p-314b2096.entry.js.map +0 -1
  1036. package/dist/ui-library/p-330a4988.entry.js +0 -2
  1037. package/dist/ui-library/p-330a4988.entry.js.map +0 -1
  1038. package/dist/ui-library/p-346f9557.entry.js +0 -2
  1039. package/dist/ui-library/p-346f9557.entry.js.map +0 -1
  1040. package/dist/ui-library/p-37557787.entry.js +0 -2
  1041. package/dist/ui-library/p-3cc5addb.entry.js +0 -2
  1042. package/dist/ui-library/p-3d9de119.entry.js +0 -2
  1043. package/dist/ui-library/p-3d9de119.entry.js.map +0 -1
  1044. package/dist/ui-library/p-411ed539.entry.js +0 -2
  1045. package/dist/ui-library/p-411ed539.entry.js.map +0 -1
  1046. package/dist/ui-library/p-4705a51e.entry.js +0 -2
  1047. package/dist/ui-library/p-4705a51e.entry.js.map +0 -1
  1048. package/dist/ui-library/p-4abed9df.entry.js +0 -2
  1049. package/dist/ui-library/p-4abed9df.entry.js.map +0 -1
  1050. package/dist/ui-library/p-59210f0b.js +0 -2
  1051. package/dist/ui-library/p-59210f0b.js.map +0 -1
  1052. package/dist/ui-library/p-5d6b7353.entry.js +0 -2
  1053. package/dist/ui-library/p-5d6b7353.entry.js.map +0 -1
  1054. package/dist/ui-library/p-613283a7.entry.js +0 -2
  1055. package/dist/ui-library/p-613283a7.entry.js.map +0 -1
  1056. package/dist/ui-library/p-6153045b.js +0 -3
  1057. package/dist/ui-library/p-6153045b.js.map +0 -1
  1058. package/dist/ui-library/p-6197fe2f.entry.js +0 -2
  1059. package/dist/ui-library/p-6197fe2f.entry.js.map +0 -1
  1060. package/dist/ui-library/p-6eb24bcb.entry.js +0 -2
  1061. package/dist/ui-library/p-6eb24bcb.entry.js.map +0 -1
  1062. package/dist/ui-library/p-72254eef.entry.js.map +0 -1
  1063. package/dist/ui-library/p-724875b0.entry.js +0 -2
  1064. package/dist/ui-library/p-724875b0.entry.js.map +0 -1
  1065. package/dist/ui-library/p-7afafb9d.entry.js +0 -2
  1066. package/dist/ui-library/p-7afafb9d.entry.js.map +0 -1
  1067. package/dist/ui-library/p-7e3ad38a.entry.js +0 -2
  1068. package/dist/ui-library/p-83864cfe.entry.js +0 -2
  1069. package/dist/ui-library/p-83864cfe.entry.js.map +0 -1
  1070. package/dist/ui-library/p-878226a0.entry.js +0 -2
  1071. package/dist/ui-library/p-95fbdd0b.entry.js +0 -2
  1072. package/dist/ui-library/p-95fbdd0b.entry.js.map +0 -1
  1073. package/dist/ui-library/p-99e24daf.entry.js +0 -2
  1074. package/dist/ui-library/p-99e24daf.entry.js.map +0 -1
  1075. package/dist/ui-library/p-9c1be3fb.entry.js +0 -2
  1076. package/dist/ui-library/p-9c1be3fb.entry.js.map +0 -1
  1077. package/dist/ui-library/p-a0f290d0.entry.js +0 -2
  1078. package/dist/ui-library/p-a55c7258.entry.js +0 -2
  1079. package/dist/ui-library/p-a55c7258.entry.js.map +0 -1
  1080. package/dist/ui-library/p-a6a9ee96.entry.js +0 -2
  1081. package/dist/ui-library/p-ae601a0f.entry.js +0 -2
  1082. package/dist/ui-library/p-ae601a0f.entry.js.map +0 -1
  1083. package/dist/ui-library/p-bf87464b.entry.js +0 -2
  1084. package/dist/ui-library/p-bf87464b.entry.js.map +0 -1
  1085. package/dist/ui-library/p-c03ebf7d.entry.js +0 -2
  1086. package/dist/ui-library/p-c03ebf7d.entry.js.map +0 -1
  1087. package/dist/ui-library/p-cd67da3d.entry.js +0 -2
  1088. package/dist/ui-library/p-cdaed936.entry.js +0 -2
  1089. package/dist/ui-library/p-cdaed936.entry.js.map +0 -1
  1090. package/dist/ui-library/p-d367f4f9.entry.js +0 -2
  1091. package/dist/ui-library/p-d42c2025.js +0 -2
  1092. package/dist/ui-library/p-d42c2025.js.map +0 -1
  1093. package/dist/ui-library/p-ed381ad9.entry.js +0 -2
  1094. package/dist/ui-library/p-ed381ad9.entry.js.map +0 -1
  1095. package/dist/ui-library/p-ee8342e1.entry.js +0 -2
  1096. package/dist/ui-library/p-ee8342e1.entry.js.map +0 -1
  1097. package/dist/ui-library/p-ee950ce2.entry.js +0 -2
  1098. package/dist/ui-library/p-ff90ffd1.entry.js +0 -2
  1099. package/dist/ui-library/p-ff90ffd1.entry.js.map +0 -1
  1100. package/readme.md +0 -156
  1101. /package/dist/ui-library/{p-5654e4c7.js.map → p-06ba4450.js.map} +0 -0
  1102. /package/dist/ui-library/{p-b351f889.entry.js.map → p-546e33d9.entry.js.map} +0 -0
  1103. /package/dist/ui-library/{p-0fdb185d.js.map → p-7f856f00.js.map} +0 -0
  1104. /package/dist/ui-library/{p-1f18768a.js.map → p-8227aaed.js.map} +0 -0
  1105. /package/dist/ui-library/{p-8c0971e0.js.map → p-842b492e.js.map} +0 -0
  1106. /package/dist/ui-library/{p-13b43e04.entry.js.map → p-884c5cf9.entry.js.map} +0 -0
  1107. /package/dist/ui-library/{p-7d95def3.js.map → p-8bfb4bfc.js.map} +0 -0
  1108. /package/dist/ui-library/{p-dfed33c5.entry.js.map → p-935c78a7.entry.js.map} +0 -0
  1109. /package/dist/ui-library/{p-9ace84c7.js.map → p-998de05d.js.map} +0 -0
  1110. /package/dist/ui-library/{p-698bb2c8.js.map → p-a1502802.js.map} +0 -0
  1111. /package/dist/ui-library/{p-91b51800.entry.js.map → p-a9c159f2.entry.js.map} +0 -0
  1112. /package/dist/ui-library/{p-9b354f5d.entry.js.map → p-f8cbb8da.entry.js.map} +0 -0
@@ -2,251 +2,246 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-900437fc.js');
6
- const scroll = require('./scroll-03678de1.js');
7
- const focusVisible = require('./focus-visible-ae2470dd.js');
5
+ const index = require('./index-d7748d51.js');
6
+ const scroll = require('./scroll-68033901.js');
8
7
 
9
- const sixTabGroupCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{--tabs-border-color:var(--six-tab-border-color);display:block}.tab-group{display:flex;border:solid 1px transparent;border-radius:0}.tab-group .tab-group__tabs{display:flex;position:relative}.tab-group .tab-group__active-tab-indicator{position:absolute;transition:var(--six-transition-fast) transform ease, var(--six-transition-fast) width ease}.tab-group:not(.focus-visible) ::slotted(six-tab){--focus-ring:none}.tab-group--has-scroll-controls .tab-group__nav-container{position:relative;padding:0 var(--six-spacing-x-large)}.tab-group__scroll-button{display:flex;align-items:center;justify-content:center;position:absolute;top:0;bottom:0;width:var(--six-spacing-x-large)}.tab-group__scroll-button--left{left:0}.tab-group__scroll-button--right{right:0}.tab-group--top{flex-direction:column}.tab-group--top .tab-group__nav-container{order:1}.tab-group--top .tab-group__nav{display:flex;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.tab-group--top .tab-group__nav::-webkit-scrollbar{width:0;height:0}.tab-group--top .tab-group__tabs{flex:1 1 auto;position:relative;flex-direction:row;border-bottom:solid var(--six-tab-border-width) var(--tabs-border-color)}.tab-group--top .tab-group__active-tab-indicator{bottom:-2px;border-bottom:solid var(--six-tab-border-width-active) var(--six-tab-border-color-active)}.tab-group--top .tab-group__body{order:2}.tab-group--bottom{flex-direction:column}.tab-group--bottom .tab-group__nav-container{order:2}.tab-group--bottom .tab-group__nav{display:flex;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.tab-group--bottom .tab-group__nav::-webkit-scrollbar{width:0;height:0}.tab-group--bottom .tab-group__tabs{flex:1 1 auto;position:relative;flex-direction:row;border-top:solid var(--six-tab-border-width) var(--tabs-border-color)}.tab-group--bottom .tab-group__active-tab-indicator{top:-2px;border-top:solid var(--six-tab-border-width-active) var(--six-tab-border-color-active)}.tab-group--bottom .tab-group__body{order:1}.tab-group--left{flex-direction:row}.tab-group--left .tab-group__nav-container{order:1}.tab-group--left .tab-group__tabs{flex:0 0 auto;flex-direction:column;border-right:solid var(--six-tab-border-width) var(--tabs-border-color)}.tab-group--left .tab-group__active-tab-indicator{right:-2px;border-right:solid var(--six-tab-border-width-active) var(--six-tab-border-color-active)}.tab-group--left .tab-group__body{flex:1 1 auto;order:2}.tab-group--right{flex-direction:row}.tab-group--right .tab-group__nav-container{order:2}.tab-group--right .tab-group__tabs{flex:0 0 auto;flex-direction:column;border-left:solid var(--six-tab-border-width) var(--tabs-border-color)}.tab-group--right .tab-group__active-tab-indicator{left:-2px;border-left:solid var(--six-tab-border-width-active) var(--six-tab-border-color-active)}.tab-group--right .tab-group__body{flex:1 1 auto;order:1}";
8
+ /**
9
+ * Animates a given `element` from the position and dimension of `fromElement` to
10
+ * its current position and dimension. Can be useful to implement the FLIP animation technique.
11
+ *
12
+ * @see {@link https://css-tricks.com/animating-layouts-with-the-flip-technique/} for details on the FLIP technique.
13
+ *
14
+ * @param {Element} element - The element to animate.
15
+ * @param {Element} fromElement - The element representing the initial position and dimensions.
16
+ * @param {KeyframeAnimationOptions} [options={ duration: 150, easing: 'ease', fill: 'both' }] - Optional animation parameters.
17
+ *
18
+ */
19
+ function flipAnimate(element, fromElement, options = {
20
+ duration: 150,
21
+ easing: 'ease',
22
+ fill: 'both',
23
+ }) {
24
+ const dimensionsTo = fromElement.getBoundingClientRect();
25
+ const dimensionsFrom = element.getBoundingClientRect();
26
+ const deltaX = dimensionsTo.left - dimensionsFrom.left;
27
+ const deltaY = dimensionsTo.top - dimensionsFrom.top;
28
+ const deltaW = dimensionsTo.width / dimensionsFrom.width;
29
+ const deltaH = dimensionsTo.height / dimensionsFrom.height;
30
+ element.animate([
31
+ {
32
+ transformOrigin: 'top left',
33
+ transform: `translate(${deltaX}px, ${deltaY}px) scale(${deltaW}, ${deltaH})`,
34
+ },
35
+ {
36
+ transformOrigin: 'top left',
37
+ transform: 'none',
38
+ },
39
+ ], options);
40
+ }
41
+
42
+ const sixTabGroupCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}:host{display:block}.tab-group{display:flex;border:solid 1px transparent;border-radius:0}.tab-group .tab-group__tabs{display:flex;position:relative}.tab-group--has-scroll-controls .tab-group__nav-container{position:relative;padding:0 var(--six-spacing-x-large)}.tab-group__scroll-button{display:flex;align-items:center;justify-content:center;position:absolute;top:0;bottom:0;width:var(--six-spacing-x-large)}.tab-group__scroll-button--left{left:0}.tab-group__scroll-button--right{right:0}.tab-group--top{flex-direction:column}.tab-group--top .tab-group__nav-container{order:1}.tab-group--top .tab-group__nav{display:flex;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.tab-group--top .tab-group__nav::-webkit-scrollbar{width:0;height:0}.tab-group--top .tab-group__tabs{flex:1 1 auto;position:relative;flex-direction:row}.tab-group--top .tab-group__body{order:2}.tab-group--bottom{flex-direction:column}.tab-group--bottom .tab-group__nav-container{order:2}.tab-group--bottom .tab-group__nav{display:flex;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.tab-group--bottom .tab-group__nav::-webkit-scrollbar{width:0;height:0}.tab-group--bottom .tab-group__tabs{flex:1 1 auto;position:relative;flex-direction:row}.tab-group--bottom .tab-group__body{order:1}.tab-group--left{flex-direction:row}.tab-group--left .tab-group__nav-container{order:1}.tab-group--left .tab-group__tabs{flex:0 0 auto;flex-direction:column}.tab-group--left .tab-group__body{flex:1 1 auto;order:2}.tab-group--right{flex-direction:row}.tab-group--right .tab-group__nav-container{order:2}.tab-group--right .tab-group__tabs{flex:0 0 auto;flex-direction:column}.tab-group--right .tab-group__body{flex:1 1 auto;order:1}";
10
43
 
11
44
  const SixTabGroup = class {
12
- constructor(hostRef) {
13
- index.registerInstance(this, hostRef);
14
- this.sixTabShow = index.createEvent(this, "six-tab-show", 7);
15
- this.sixTabHide = index.createEvent(this, "six-tab-hide", 7);
16
- this.handleClick = (event) => {
17
- const target = event.target;
18
- const tab = target.closest('six-tab');
19
- const tabGroup = tab === null || tab === void 0 ? void 0 : tab.closest('six-tab-group');
20
- // Ensure the target tab is in this tab group
21
- if (tabGroup !== this.host) {
22
- return false;
23
- }
24
- if (tab != null) {
25
- this.setActiveTab(tab);
26
- }
27
- };
28
- this.handleKeyDown = (event) => {
29
- if (this.nav == null)
30
- return;
31
- const target = event.target;
32
- const tab = target.closest('six-tab');
33
- const tabGroup = tab === null || tab === void 0 ? void 0 : tab.closest('six-tab-group');
34
- // Ensure the target tab is in this tab group
35
- if (tabGroup !== this.host) {
36
- return false;
37
- }
38
- // Activate a tab
39
- if (['Enter', ' '].includes(event.key)) {
40
- if (tab != null) {
41
- this.setActiveTab(tab);
42
- event.preventDefault();
45
+ constructor(hostRef) {
46
+ index.registerInstance(this, hostRef);
47
+ this.sixTabShow = index.createEvent(this, "six-tab-show", 7);
48
+ this.sixTabHide = index.createEvent(this, "six-tab-hide", 7);
49
+ this.handleClick = (event) => {
50
+ const target = event.target;
51
+ const tab = target.closest('six-tab');
52
+ const tabGroup = tab === null || tab === void 0 ? void 0 : tab.closest('six-tab-group');
53
+ // Ensure the target tab is in this tab group
54
+ if (tabGroup !== this.host) {
55
+ return false;
56
+ }
57
+ if (tab != null) {
58
+ this.setActiveTab(tab);
59
+ }
60
+ };
61
+ this.handleKeyDown = (event) => {
62
+ if (this.nav == null)
63
+ return;
64
+ const target = event.target;
65
+ const tab = target.closest('six-tab');
66
+ const tabGroup = tab === null || tab === void 0 ? void 0 : tab.closest('six-tab-group');
67
+ // Ensure the target tab is in this tab group
68
+ if (tabGroup !== this.host) {
69
+ return false;
70
+ }
71
+ // Move focus left or right
72
+ if (['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown', 'Home', 'End'].includes(event.key)) {
73
+ const activeEl = document.activeElement;
74
+ if (activeEl && activeEl.tagName.toLowerCase() === 'six-tab') {
75
+ const tabs = this.getAllTabs();
76
+ let index = tabs.indexOf(activeEl);
77
+ if (event.key === 'Home') {
78
+ index = 0;
79
+ }
80
+ else if (event.key === 'End') {
81
+ index = tabs.length - 1;
82
+ }
83
+ else if (event.key === 'ArrowLeft') {
84
+ index = Math.max(0, index - 1);
85
+ }
86
+ else if (event.key === 'ArrowRight') {
87
+ index = Math.min(tabs.length - 1, index + 1);
88
+ }
89
+ tabs[index].setFocus({ preventScroll: true });
90
+ this.setActiveTab(tabs[index]);
91
+ if (['top', 'bottom'].includes(this.placement)) {
92
+ scroll.scrollIntoView(tabs[index], this.nav, 'horizontal');
93
+ }
94
+ event.preventDefault();
95
+ }
96
+ }
97
+ };
98
+ this.handleScrollLeft = () => {
99
+ if (this.nav == null)
100
+ return;
101
+ this.nav.scroll({
102
+ left: this.nav.scrollLeft - this.nav.clientWidth,
103
+ behavior: 'smooth',
104
+ });
105
+ };
106
+ this.handleScrollRight = () => {
107
+ if (this.nav == null)
108
+ return;
109
+ this.nav.scroll({
110
+ left: this.nav.scrollLeft + this.nav.clientWidth,
111
+ behavior: 'smooth',
112
+ });
113
+ };
114
+ this.hasScrollControls = false;
115
+ this.placement = 'top';
116
+ this.noScrollControls = false;
117
+ }
118
+ handleNoScrollControlsChange() {
119
+ this.updateScrollControls();
120
+ }
121
+ componentDidLoad() {
122
+ if (this.tabGroup == null || this.nav == null)
123
+ return;
124
+ // Set initial tab state when the tabs first become visible
125
+ const observer = new IntersectionObserver((entries, observer) => {
126
+ if (entries[0].intersectionRatio > 0) {
127
+ this.setAriaLabels();
128
+ this.setActiveTab(this.getActiveTab() || this.getAllTabs()[0], false);
129
+ observer.unobserve(entries[0].target);
130
+ }
131
+ });
132
+ observer.observe(this.host);
133
+ this.resizeObserver = new ResizeObserver(() => this.updateScrollControls());
134
+ this.resizeObserver.observe(this.nav);
135
+ requestAnimationFrame(() => this.updateScrollControls());
136
+ // Update aria labels if the DOM changes
137
+ this.mutationObserver = new MutationObserver((mutations) => {
138
+ if (mutations.some((mutation) => {
139
+ var _a;
140
+ return !['aria-labelledby', 'aria-controls'].includes((_a = mutation.attributeName) !== null && _a !== void 0 ? _a : '');
141
+ })) {
142
+ setTimeout(() => this.setAriaLabels());
143
+ }
144
+ });
145
+ this.mutationObserver.observe(this.host, { attributes: true, childList: true, subtree: true });
146
+ }
147
+ disconnectedCallback() {
148
+ if (this.mutationObserver == null || this.tabGroup == null || this.nav == null || this.resizeObserver == null) {
149
+ return;
43
150
  }
44
- }
45
- // Move focus left or right
46
- if (['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown', 'Home', 'End'].includes(event.key)) {
47
- const activeEl = document.activeElement;
48
- if (activeEl && activeEl.tagName.toLowerCase() === 'six-tab') {
49
- const tabs = this.getAllTabs();
50
- let index = tabs.indexOf(activeEl);
51
- if (event.key === 'Home') {
52
- index = 0;
53
- }
54
- else if (event.key === 'End') {
55
- index = tabs.length - 1;
56
- }
57
- else if (event.key === 'ArrowLeft') {
58
- index = Math.max(0, index - 1);
59
- }
60
- else if (event.key === 'ArrowRight') {
61
- index = Math.min(tabs.length - 1, index + 1);
62
- }
63
- tabs[index].setFocus({ preventScroll: true });
64
- if (['top', 'bottom'].includes(this.placement)) {
65
- scroll.scrollIntoView(tabs[index], this.nav, 'horizontal');
66
- }
67
- event.preventDefault();
151
+ this.mutationObserver.disconnect();
152
+ this.resizeObserver.unobserve(this.nav);
153
+ }
154
+ /** Shows the specified tab panel. */
155
+ async show(panel) {
156
+ const tabs = this.getAllTabs();
157
+ const tab = tabs.find((el) => el.panel === panel);
158
+ if (tab != null) {
159
+ this.setActiveTab(tab);
68
160
  }
69
- }
70
- };
71
- this.handleScrollLeft = () => {
72
- if (this.nav == null)
73
- return;
74
- this.nav.scroll({
75
- left: this.nav.scrollLeft - this.nav.clientWidth,
76
- behavior: 'smooth',
77
- });
78
- };
79
- this.handleScrollRight = () => {
80
- if (this.nav == null)
81
- return;
82
- this.nav.scroll({
83
- left: this.nav.scrollLeft + this.nav.clientWidth,
84
- behavior: 'smooth',
85
- });
86
- };
87
- this.syncActiveTabIndicator = () => {
88
- if (this.activeTabIndicator == null || this.nav == null)
89
- return;
90
- const tab = this.getActiveTab();
91
- if (tab != null) {
92
- this.activeTabIndicator.style.display = 'block';
93
- }
94
- else {
95
- this.activeTabIndicator.style.display = 'none';
96
- return;
97
- }
98
- const width = tab.clientWidth;
99
- const height = tab.clientHeight;
100
- const offset = scroll.getOffset(tab, this.nav);
101
- const offsetTop = offset.top + this.nav.scrollTop;
102
- const offsetLeft = offset.left + this.nav.scrollLeft;
103
- switch (this.placement) {
104
- case 'top':
105
- case 'bottom':
106
- this.activeTabIndicator.style.width = `${width}px`;
107
- this.activeTabIndicator.style.height = '';
108
- this.activeTabIndicator.style.transform = `translateX(${offsetLeft}px)`;
109
- break;
110
- case 'left':
111
- case 'right':
112
- this.activeTabIndicator.style.width = '';
113
- this.activeTabIndicator.style.height = `${height}px`;
114
- this.activeTabIndicator.style.transform = `translateY(${offsetTop}px)`;
115
- break;
116
- }
117
- };
118
- this.hasScrollControls = false;
119
- this.placement = 'top';
120
- this.noScrollControls = false;
121
- }
122
- handlePlacementChange() {
123
- this.syncActiveTabIndicator();
124
- }
125
- handleNoScrollControlsChange() {
126
- this.updateScrollControls();
127
- }
128
- componentDidLoad() {
129
- if (this.tabGroup == null || this.nav == null)
130
- return;
131
- // Set initial tab state when the tabs first become visible
132
- const observer = new IntersectionObserver((entries, observer) => {
133
- if (entries[0].intersectionRatio > 0) {
134
- this.setAriaLabels();
135
- this.setActiveTab(this.getActiveTab() || this.getAllTabs()[0], false);
136
- observer.unobserve(entries[0].target);
137
- }
138
- });
139
- observer.observe(this.host);
140
- focusVisible.focusVisible.observe(this.tabGroup);
141
- this.resizeObserver = new ResizeObserver(() => this.updateScrollControls());
142
- this.resizeObserver.observe(this.nav);
143
- requestAnimationFrame(() => this.updateScrollControls());
144
- // Update aria labels if the DOM changes
145
- this.mutationObserver = new MutationObserver((mutations) => {
146
- if (mutations.some((mutation) => {
161
+ }
162
+ getAllTabs(includeDisabled = false) {
163
+ var _a;
164
+ const slot = (_a = this.tabs) === null || _a === void 0 ? void 0 : _a.querySelector('slot');
165
+ if (slot == null)
166
+ return [];
167
+ return [...slot.assignedElements()].filter((el) => {
168
+ return includeDisabled
169
+ ? el.tagName.toLowerCase() === 'six-tab'
170
+ : el.tagName.toLowerCase() === 'six-tab' && !el.disabled;
171
+ });
172
+ }
173
+ getAllPanels() {
147
174
  var _a;
148
- return !['aria-labelledby', 'aria-controls'].includes((_a = mutation.attributeName) !== null && _a !== void 0 ? _a : '');
149
- })) {
150
- setTimeout(() => this.setAriaLabels());
151
- }
152
- });
153
- this.mutationObserver.observe(this.host, { attributes: true, childList: true, subtree: true });
154
- }
155
- disconnectedCallback() {
156
- if (this.mutationObserver == null || this.tabGroup == null || this.nav == null || this.resizeObserver == null) {
157
- return;
175
+ const slot = (_a = this.body) === null || _a === void 0 ? void 0 : _a.querySelector('slot');
176
+ if (slot == null)
177
+ return [];
178
+ return [...slot.assignedElements()].filter((el) => el.tagName.toLowerCase() === 'six-tab-panel');
179
+ }
180
+ getActiveTab() {
181
+ return this.getAllTabs().find((el) => el.active);
158
182
  }
159
- this.mutationObserver.disconnect();
160
- focusVisible.focusVisible.unobserve(this.tabGroup);
161
- this.resizeObserver.unobserve(this.nav);
162
- }
163
- /** Shows the specified tab panel. */
164
- async show(panel) {
165
- const tabs = this.getAllTabs();
166
- const tab = tabs.find((el) => el.panel === panel);
167
- if (tab != null) {
168
- this.setActiveTab(tab);
183
+ updateScrollControls() {
184
+ if (this.nav == null)
185
+ return;
186
+ this.hasScrollControls = this.noScrollControls
187
+ ? false
188
+ : ['top', 'bottom'].includes(this.placement) && this.nav.scrollWidth > this.nav.clientWidth;
169
189
  }
170
- }
171
- getAllTabs(includeDisabled = false) {
172
- var _a;
173
- const slot = (_a = this.tabs) === null || _a === void 0 ? void 0 : _a.querySelector('slot');
174
- if (slot == null)
175
- return [];
176
- return [...slot.assignedElements()].filter((el) => {
177
- return includeDisabled
178
- ? el.tagName.toLowerCase() === 'six-tab'
179
- : el.tagName.toLowerCase() === 'six-tab' && !el.disabled;
180
- });
181
- }
182
- getAllPanels() {
183
- var _a;
184
- const slot = (_a = this.body) === null || _a === void 0 ? void 0 : _a.querySelector('slot');
185
- if (slot == null)
186
- return [];
187
- return [...slot.assignedElements()].filter((el) => el.tagName.toLowerCase() === 'six-tab-panel');
188
- }
189
- getActiveTab() {
190
- return this.getAllTabs().find((el) => el.active);
191
- }
192
- updateScrollControls() {
193
- if (this.nav == null)
194
- return;
195
- this.hasScrollControls = this.noScrollControls
196
- ? false
197
- : ['top', 'bottom'].includes(this.placement) && this.nav.scrollWidth > this.nav.clientWidth;
198
- }
199
- setActiveTab(tab, emitEvents = true) {
200
- if (this.nav == null)
201
- return;
202
- if (tab != null && tab !== this.activeTab && !tab.disabled) {
203
- const previousTab = this.activeTab;
204
- this.activeTab = tab;
205
- // Sync tabs and panels
206
- this.getAllTabs().map((el) => (el.active = el === this.activeTab));
207
- this.getAllPanels().map((el) => { var _a; return (el.active = el.name === ((_a = this.activeTab) === null || _a === void 0 ? void 0 : _a.panel)); });
208
- this.syncActiveTabIndicator();
209
- if (['top', 'bottom'].includes(this.placement)) {
210
- scroll.scrollIntoView(this.activeTab, this.nav, 'horizontal');
211
- }
212
- // Emit events
213
- if (emitEvents) {
214
- if (previousTab != null) {
215
- this.sixTabHide.emit({ name: previousTab.panel });
190
+ setActiveTab(tab, emitEvents = true) {
191
+ var _a, _b, _c;
192
+ if (this.nav == null)
193
+ return;
194
+ const newIndicator = (_a = tab === null || tab === void 0 ? void 0 : tab.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.tab__indicator');
195
+ const oldIndicator = (_c = (_b = this.getActiveTab()) === null || _b === void 0 ? void 0 : _b.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.tab__indicator');
196
+ if (oldIndicator != null && newIndicator != null) {
197
+ flipAnimate(newIndicator, oldIndicator);
216
198
  }
217
- this.sixTabShow.emit({ name: this.activeTab.panel });
218
- }
199
+ if (tab !== this.activeTab && !tab.disabled) {
200
+ const previousTab = this.activeTab;
201
+ this.activeTab = tab;
202
+ // Sync tabs and panels
203
+ this.getAllTabs().map((el) => (el.active = el === this.activeTab));
204
+ this.getAllPanels().map((el) => { var _a; return (el.active = el.name === ((_a = this.activeTab) === null || _a === void 0 ? void 0 : _a.panel)); });
205
+ if (['top', 'bottom'].includes(this.placement)) {
206
+ scroll.scrollIntoView(this.activeTab, this.nav, 'horizontal');
207
+ }
208
+ // Emit events
209
+ if (emitEvents) {
210
+ if (previousTab != null) {
211
+ this.sixTabHide.emit({ name: previousTab.panel });
212
+ }
213
+ this.sixTabShow.emit({ name: this.activeTab.panel });
214
+ }
215
+ }
216
+ }
217
+ setAriaLabels() {
218
+ const tabs = this.getAllTabs();
219
+ const panels = this.getAllPanels();
220
+ // Link each tab with its corresponding panel
221
+ tabs.map((tab) => {
222
+ var _a, _b;
223
+ const panel = panels.find((el) => el.name === tab.panel);
224
+ if (panel != null) {
225
+ tab.setAttribute('aria-controls', (_a = panel.getAttribute('id')) !== null && _a !== void 0 ? _a : '');
226
+ panel.setAttribute('aria-labelledby', (_b = tab.getAttribute('id')) !== null && _b !== void 0 ? _b : '');
227
+ }
228
+ });
229
+ }
230
+ render() {
231
+ return (index.h("div", { part: "base", ref: (el) => (this.tabGroup = el), class: {
232
+ 'tab-group': true,
233
+ // Placements
234
+ 'tab-group--top': this.placement === 'top',
235
+ 'tab-group--bottom': this.placement === 'bottom',
236
+ 'tab-group--left': this.placement === 'left',
237
+ 'tab-group--right': this.placement === 'right',
238
+ 'tab-group--has-scroll-controls': this.hasScrollControls,
239
+ }, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, index.h("div", { class: "tab-group__nav-container" }, this.hasScrollControls && (index.h("six-icon-button", { class: "tab-group__scroll-button tab-group__scroll-button--left", exportparts: "base:scroll-button", name: "chevron_left", onClick: this.handleScrollLeft })), index.h("div", { ref: (el) => (this.nav = el), key: "nav", part: "nav", class: "tab-group__nav" }, index.h("div", { ref: (el) => (this.tabs = el), part: "tabs", class: "tab-group__tabs", role: "tablist" }, index.h("slot", { name: "nav" }))), this.hasScrollControls && (index.h("six-icon-button", { class: "tab-group__scroll-button tab-group__scroll-button--right", exportparts: "base:scroll-button", name: "chevron_right", onClick: this.handleScrollRight }))), index.h("div", { ref: (el) => (this.body = el), part: "body", class: "tab-group__body" }, index.h("slot", null))));
219
240
  }
220
- }
221
- setAriaLabels() {
222
- const tabs = this.getAllTabs();
223
- const panels = this.getAllPanels();
224
- // Link each tab with its corresponding panel
225
- tabs.map((tab) => {
226
- var _a, _b;
227
- const panel = panels.find((el) => el.name === tab.panel);
228
- if (panel != null) {
229
- tab.setAttribute('aria-controls', (_a = panel.getAttribute('id')) !== null && _a !== void 0 ? _a : '');
230
- panel.setAttribute('aria-labelledby', (_b = tab.getAttribute('id')) !== null && _b !== void 0 ? _b : '');
231
- }
232
- });
233
- }
234
- render() {
235
- return (index.h("div", { part: "base", ref: (el) => (this.tabGroup = el), class: {
236
- 'tab-group': true,
237
- // Placements
238
- 'tab-group--top': this.placement === 'top',
239
- 'tab-group--bottom': this.placement === 'bottom',
240
- 'tab-group--left': this.placement === 'left',
241
- 'tab-group--right': this.placement === 'right',
242
- 'tab-group--has-scroll-controls': this.hasScrollControls,
243
- }, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, index.h("div", { class: "tab-group__nav-container" }, this.hasScrollControls && (index.h("six-icon-button", { class: "tab-group__scroll-button tab-group__scroll-button--left", exportparts: "base:scroll-button", name: "chevron_left", onClick: this.handleScrollLeft })), index.h("div", { ref: (el) => (this.nav = el), key: "nav", part: "nav", class: "tab-group__nav" }, index.h("div", { ref: (el) => (this.tabs = el), part: "tabs", class: "tab-group__tabs", role: "tablist" }, index.h("div", { ref: (el) => (this.activeTabIndicator = el), part: "active-tab-indicator", class: "tab-group__active-tab-indicator" }), index.h("slot", { name: "nav", onSlotchange: this.syncActiveTabIndicator }))), this.hasScrollControls && (index.h("six-icon-button", { class: "tab-group__scroll-button tab-group__scroll-button--right", exportparts: "base:scroll-button", name: "chevron_right", onClick: this.handleScrollRight }))), index.h("div", { ref: (el) => (this.body = el), part: "body", class: "tab-group__body" }, index.h("slot", { onSlotchange: this.syncActiveTabIndicator }))));
244
- }
245
- get host() { return index.getElement(this); }
246
- static get watchers() { return {
247
- "placement": ["handlePlacementChange"],
248
- "noScrollControls": ["handleNoScrollControlsChange"]
249
- }; }
241
+ get host() { return index.getElement(this); }
242
+ static get watchers() { return {
243
+ "noScrollControls": ["handleNoScrollControlsChange"]
244
+ }; }
250
245
  };
251
246
  SixTabGroup.style = sixTabGroupCss;
252
247
 
@@ -1 +1 @@
1
- {"file":"six-tab-group.entry.cjs.js","mappings":"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","names":["scrollIntoView","getOffset","focusVisible","h"],"sources":["src/components/six-tab-group/six-tab-group.scss?tag=six-tab-group&encapsulation=shadow","src/components/six-tab-group/six-tab-group.tsx"],"sourcesContent":["@import 'src/global/component';\n@import 'src/global/mixins/hide-scrollbar';\n\n/**\n * @prop --tabs-border-color: The color of the border that separates tabs.\n */\n:host {\n --tabs-border-color: var(--six-tab-border-color);\n display: block;\n}\n\n.tab-group {\n display: flex;\n border: solid 1px transparent;\n border-radius: 0;\n\n .tab-group__tabs {\n display: flex;\n position: relative;\n }\n\n .tab-group__active-tab-indicator {\n position: absolute;\n transition: var(--six-transition-fast) transform ease, var(--six-transition-fast) width ease;\n }\n\n // Remove the focus ring when the user isn't interacting with a keyboard\n &:not(.focus-visible) ::slotted(six-tab) {\n --focus-ring: none;\n }\n}\n\n.tab-group--has-scroll-controls .tab-group__nav-container {\n position: relative;\n padding: 0 var(--six-spacing-x-large);\n}\n\n.tab-group__scroll-button {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n top: 0;\n bottom: 0;\n width: var(--six-spacing-x-large);\n}\n\n.tab-group__scroll-button--left {\n left: 0;\n}\n\n.tab-group__scroll-button--right {\n right: 0;\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Top\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.tab-group--top {\n flex-direction: column;\n\n .tab-group__nav-container {\n order: 1;\n }\n\n .tab-group__nav {\n display: flex;\n overflow-x: auto;\n @include hide-scrollbar();\n }\n\n .tab-group__tabs {\n flex: 1 1 auto;\n position: relative;\n flex-direction: row;\n border-bottom: solid var(--six-tab-border-width) var(--tabs-border-color);\n }\n\n .tab-group__active-tab-indicator {\n bottom: -2px;\n border-bottom: solid var(--six-tab-border-width-active) var(--six-tab-border-color-active);\n }\n\n .tab-group__body {\n order: 2;\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Bottom\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.tab-group--bottom {\n flex-direction: column;\n\n .tab-group__nav-container {\n order: 2;\n }\n\n .tab-group__nav {\n display: flex;\n overflow-x: auto;\n @include hide-scrollbar();\n }\n\n .tab-group__tabs {\n flex: 1 1 auto;\n position: relative;\n flex-direction: row;\n border-top: solid var(--six-tab-border-width) var(--tabs-border-color);\n }\n\n .tab-group__active-tab-indicator {\n top: calc(-1 * 2px);\n border-top: solid var(--six-tab-border-width-active) var(--six-tab-border-color-active);\n }\n\n .tab-group__body {\n order: 1;\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Left\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.tab-group--left {\n flex-direction: row;\n\n .tab-group__nav-container {\n order: 1;\n }\n\n .tab-group__tabs {\n flex: 0 0 auto;\n flex-direction: column;\n border-right: solid var(--six-tab-border-width) var(--tabs-border-color);\n }\n\n .tab-group__active-tab-indicator {\n right: calc(-1 * 2px);\n border-right: solid var(--six-tab-border-width-active) var(--six-tab-border-color-active);\n }\n\n .tab-group__body {\n flex: 1 1 auto;\n order: 2;\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Right\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.tab-group--right {\n flex-direction: row;\n\n .tab-group__nav-container {\n order: 2;\n }\n\n .tab-group__tabs {\n flex: 0 0 auto;\n flex-direction: column;\n border-left: solid var(--six-tab-border-width) var(--tabs-border-color);\n }\n\n .tab-group__active-tab-indicator {\n left: calc(-1 * 2px);\n border-left: solid var(--six-tab-border-width-active) var(--six-tab-border-color-active);\n }\n\n .tab-group__body {\n flex: 1 1 auto;\n order: 1;\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { getOffset } from '../../utils/offset';\nimport { scrollIntoView } from '../../utils/scroll';\nimport { focusVisible } from '../../utils/focus-visible';\n\nexport interface SixTabShowPayload {\n name: string;\n}\n\nexport interface SixTabHidePayload {\n name: string;\n}\n\n/**\n * @since 1.0\n * @status stable\n *\n * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.\n *\n * @slot nav - Used for grouping tabs in the tab group.\n * @slot - Used for grouping tab panels in the tab group.\n *\n * @part base - The component's base wrapper.\n * @part nav - The tab group navigation container.\n * @part tabs - The container that wraps the slotted tabs.\n * @part active-tab-indicator - An element that displays the currently selected tab. This is a child of the tab's container.\n * @part body - The tab group body where tab panels are slotted in.\n * @part scroll-button - The previous and next scroll buttons that appear when tabs are scrollable.\n */\n@Component({\n tag: 'six-tab-group',\n styleUrl: 'six-tab-group.scss',\n shadow: true,\n})\nexport class SixTabGroup {\n private activeTab?: HTMLSixTabElement;\n private activeTabIndicator?: HTMLElement;\n private body?: HTMLElement;\n private mutationObserver?: MutationObserver;\n private nav?: HTMLElement;\n private resizeObserver?: ResizeObserver;\n private tabGroup?: HTMLElement;\n private tabs?: HTMLElement;\n\n @Element() host!: HTMLSixTabGroupElement;\n\n @State() hasScrollControls = false;\n\n /** The placement of the tabs. */\n @Prop() placement: 'top' | 'bottom' | 'left' | 'right' = 'top';\n\n /** Disables the scroll arrows that appear when tabs overflow. */\n @Prop() noScrollControls = false;\n\n @Watch('placement')\n handlePlacementChange() {\n this.syncActiveTabIndicator();\n }\n\n @Watch('noScrollControls')\n handleNoScrollControlsChange() {\n this.updateScrollControls();\n }\n\n /** Emitted when a tab is shown. */\n @Event({ eventName: 'six-tab-show' }) sixTabShow!: EventEmitter<SixTabShowPayload>;\n\n /** Emitted when a tab is hidden. */\n @Event({ eventName: 'six-tab-hide' }) sixTabHide!: EventEmitter<SixTabHidePayload>;\n\n componentDidLoad() {\n if (this.tabGroup == null || this.nav == null) return;\n\n // Set initial tab state when the tabs first become visible\n const observer = new IntersectionObserver((entries, observer) => {\n if (entries[0].intersectionRatio > 0) {\n this.setAriaLabels();\n this.setActiveTab(this.getActiveTab() || this.getAllTabs()[0], false);\n observer.unobserve(entries[0].target);\n }\n });\n observer.observe(this.host);\n\n focusVisible.observe(this.tabGroup);\n\n this.resizeObserver = new ResizeObserver(() => this.updateScrollControls());\n this.resizeObserver.observe(this.nav);\n requestAnimationFrame(() => this.updateScrollControls());\n\n // Update aria labels if the DOM changes\n this.mutationObserver = new MutationObserver((mutations) => {\n if (\n mutations.some((mutation) => {\n return !['aria-labelledby', 'aria-controls'].includes(mutation.attributeName ?? '');\n })\n ) {\n setTimeout(() => this.setAriaLabels());\n }\n });\n this.mutationObserver.observe(this.host, { attributes: true, childList: true, subtree: true });\n }\n\n disconnectedCallback() {\n if (this.mutationObserver == null || this.tabGroup == null || this.nav == null || this.resizeObserver == null) {\n return;\n }\n\n this.mutationObserver.disconnect();\n focusVisible.unobserve(this.tabGroup);\n this.resizeObserver.unobserve(this.nav);\n }\n\n /** Shows the specified tab panel. */\n @Method()\n async show(panel: string) {\n const tabs = this.getAllTabs();\n const tab = tabs.find((el) => el.panel === panel);\n\n if (tab != null) {\n this.setActiveTab(tab);\n }\n }\n\n private getAllTabs(includeDisabled = false): HTMLSixTabElement[] {\n const slot = this.tabs?.querySelector('slot');\n if (slot == null) return [];\n\n return [...slot.assignedElements()].filter((el: Element) => {\n return includeDisabled\n ? el.tagName.toLowerCase() === 'six-tab'\n : el.tagName.toLowerCase() === 'six-tab' && !(el as HTMLSixTabElement).disabled;\n }) as [HTMLSixTabElement];\n }\n\n private getAllPanels(): HTMLSixTabPanelElement[] {\n const slot = this.body?.querySelector('slot');\n if (slot == null) return [];\n return [...slot.assignedElements()].filter((el: Element) => el.tagName.toLowerCase() === 'six-tab-panel') as [\n HTMLSixTabPanelElement\n ];\n }\n\n private getActiveTab() {\n return this.getAllTabs().find((el) => el.active);\n }\n\n private handleClick = (event: MouseEvent) => {\n const target = event.target as HTMLElement;\n const tab = target.closest('six-tab');\n const tabGroup = tab?.closest('six-tab-group');\n\n // Ensure the target tab is in this tab group\n if (tabGroup !== this.host) {\n return false;\n }\n\n if (tab != null) {\n this.setActiveTab(tab);\n }\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (this.nav == null) return;\n\n const target = event.target as HTMLElement;\n const tab = target.closest('six-tab');\n const tabGroup = tab?.closest('six-tab-group');\n\n // Ensure the target tab is in this tab group\n if (tabGroup !== this.host) {\n return false;\n }\n\n // Activate a tab\n if (['Enter', ' '].includes(event.key)) {\n if (tab != null) {\n this.setActiveTab(tab);\n event.preventDefault();\n }\n }\n\n // Move focus left or right\n if (['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown', 'Home', 'End'].includes(event.key)) {\n const activeEl = document.activeElement as HTMLSixTabElement;\n\n if (activeEl && activeEl.tagName.toLowerCase() === 'six-tab') {\n const tabs = this.getAllTabs();\n let index = tabs.indexOf(activeEl);\n\n if (event.key === 'Home') {\n index = 0;\n } else if (event.key === 'End') {\n index = tabs.length - 1;\n } else if (event.key === 'ArrowLeft') {\n index = Math.max(0, index - 1);\n } else if (event.key === 'ArrowRight') {\n index = Math.min(tabs.length - 1, index + 1);\n }\n\n tabs[index].setFocus({ preventScroll: true });\n\n if (['top', 'bottom'].includes(this.placement)) {\n scrollIntoView(tabs[index], this.nav, 'horizontal');\n }\n\n event.preventDefault();\n }\n }\n };\n\n private handleScrollLeft = () => {\n if (this.nav == null) return;\n\n this.nav.scroll({\n left: this.nav.scrollLeft - this.nav.clientWidth,\n behavior: 'smooth',\n });\n };\n\n private handleScrollRight = () => {\n if (this.nav == null) return;\n\n this.nav.scroll({\n left: this.nav.scrollLeft + this.nav.clientWidth,\n behavior: 'smooth',\n });\n };\n\n private updateScrollControls() {\n if (this.nav == null) return;\n\n this.hasScrollControls = this.noScrollControls\n ? false\n : ['top', 'bottom'].includes(this.placement) && this.nav.scrollWidth > this.nav.clientWidth;\n }\n\n private setActiveTab(tab: HTMLSixTabElement, emitEvents = true) {\n if (this.nav == null) return;\n\n if (tab != null && tab !== this.activeTab && !tab.disabled) {\n const previousTab = this.activeTab;\n this.activeTab = tab;\n\n // Sync tabs and panels\n this.getAllTabs().map((el) => (el.active = el === this.activeTab));\n this.getAllPanels().map((el) => (el.active = el.name === this.activeTab?.panel));\n this.syncActiveTabIndicator();\n\n if (['top', 'bottom'].includes(this.placement)) {\n scrollIntoView(this.activeTab, this.nav, 'horizontal');\n }\n\n // Emit events\n if (emitEvents) {\n if (previousTab != null) {\n this.sixTabHide.emit({ name: previousTab.panel });\n }\n\n this.sixTabShow.emit({ name: this.activeTab.panel });\n }\n }\n }\n\n private setAriaLabels() {\n const tabs = this.getAllTabs();\n const panels = this.getAllPanels();\n\n // Link each tab with its corresponding panel\n tabs.map((tab) => {\n const panel = panels.find((el) => el.name === tab.panel);\n if (panel != null) {\n tab.setAttribute('aria-controls', panel.getAttribute('id') ?? '');\n panel.setAttribute('aria-labelledby', tab.getAttribute('id') ?? '');\n }\n });\n }\n\n private syncActiveTabIndicator = () => {\n if (this.activeTabIndicator == null || this.nav == null) return;\n\n const tab = this.getActiveTab();\n\n if (tab != null) {\n this.activeTabIndicator.style.display = 'block';\n } else {\n this.activeTabIndicator.style.display = 'none';\n return;\n }\n\n const width = tab.clientWidth;\n const height = tab.clientHeight;\n const offset = getOffset(tab, this.nav);\n const offsetTop = offset.top + this.nav.scrollTop;\n const offsetLeft = offset.left + this.nav.scrollLeft;\n\n switch (this.placement) {\n case 'top':\n case 'bottom':\n this.activeTabIndicator.style.width = `${width}px`;\n this.activeTabIndicator.style.height = '';\n this.activeTabIndicator.style.transform = `translateX(${offsetLeft}px)`;\n break;\n\n case 'left':\n case 'right':\n this.activeTabIndicator.style.width = '';\n this.activeTabIndicator.style.height = `${height}px`;\n this.activeTabIndicator.style.transform = `translateY(${offsetTop}px)`;\n break;\n }\n };\n\n render() {\n return (\n <div\n part=\"base\"\n ref={(el) => (this.tabGroup = el)}\n class={{\n 'tab-group': true,\n\n // Placements\n 'tab-group--top': this.placement === 'top',\n 'tab-group--bottom': this.placement === 'bottom',\n 'tab-group--left': this.placement === 'left',\n 'tab-group--right': this.placement === 'right',\n\n 'tab-group--has-scroll-controls': this.hasScrollControls,\n }}\n onClick={this.handleClick}\n onKeyDown={this.handleKeyDown}\n >\n <div class=\"tab-group__nav-container\">\n {this.hasScrollControls && (\n <six-icon-button\n class=\"tab-group__scroll-button tab-group__scroll-button--left\"\n exportparts=\"base:scroll-button\"\n name=\"chevron_left\"\n onClick={this.handleScrollLeft}\n />\n )}\n <div ref={(el) => (this.nav = el)} key=\"nav\" part=\"nav\" class=\"tab-group__nav\">\n <div ref={(el) => (this.tabs = el)} part=\"tabs\" class=\"tab-group__tabs\" role=\"tablist\">\n <div\n ref={(el) => (this.activeTabIndicator = el)}\n part=\"active-tab-indicator\"\n class=\"tab-group__active-tab-indicator\"\n />\n <slot name=\"nav\" onSlotchange={this.syncActiveTabIndicator} />\n </div>\n </div>\n {this.hasScrollControls && (\n <six-icon-button\n class=\"tab-group__scroll-button tab-group__scroll-button--right\"\n exportparts=\"base:scroll-button\"\n name=\"chevron_right\"\n onClick={this.handleScrollRight}\n />\n )}\n </div>\n\n <div ref={(el) => (this.body = el)} part=\"body\" class=\"tab-group__body\">\n <slot onSlotchange={this.syncActiveTabIndicator} />\n </div>\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"six-tab-group.entry.cjs.js","mappings":"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","names":["scrollIntoView","h"],"sources":["src/utils/animation.ts","src/components/six-tab-group/six-tab-group.scss?tag=six-tab-group&encapsulation=shadow","src/components/six-tab-group/six-tab-group.tsx"],"sourcesContent":["/**\n * Animates a given `element` from the position and dimension of `fromElement` to\n * its current position and dimension. Can be useful to implement the FLIP animation technique.\n *\n * @see {@link https://css-tricks.com/animating-layouts-with-the-flip-technique/} for details on the FLIP technique.\n *\n * @param {Element} element - The element to animate.\n * @param {Element} fromElement - The element representing the initial position and dimensions.\n * @param {KeyframeAnimationOptions} [options={ duration: 150, easing: 'ease', fill: 'both' }] - Optional animation parameters.\n *\n */\nexport function flipAnimate(\n element: Element,\n fromElement: Element,\n options: KeyframeAnimationOptions = {\n duration: 150,\n easing: 'ease',\n fill: 'both',\n }\n) {\n const dimensionsTo = fromElement.getBoundingClientRect();\n const dimensionsFrom = element.getBoundingClientRect();\n\n const deltaX = dimensionsTo.left - dimensionsFrom.left;\n const deltaY = dimensionsTo.top - dimensionsFrom.top;\n const deltaW = dimensionsTo.width / dimensionsFrom.width;\n const deltaH = dimensionsTo.height / dimensionsFrom.height;\n\n element.animate(\n [\n {\n transformOrigin: 'top left',\n transform: `translate(${deltaX}px, ${deltaY}px) scale(${deltaW}, ${deltaH})`,\n },\n {\n transformOrigin: 'top left',\n transform: 'none',\n },\n ],\n options\n );\n}\n","@import 'src/global/component';\n@import 'src/global/mixins/hide-scrollbar';\n\n:host {\n display: block;\n}\n\n.tab-group {\n display: flex;\n border: solid 1px transparent;\n border-radius: 0;\n\n .tab-group__tabs {\n display: flex;\n position: relative;\n }\n}\n\n.tab-group--has-scroll-controls .tab-group__nav-container {\n position: relative;\n padding: 0 var(--six-spacing-x-large);\n}\n\n.tab-group__scroll-button {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n top: 0;\n bottom: 0;\n width: var(--six-spacing-x-large);\n}\n\n.tab-group__scroll-button--left {\n left: 0;\n}\n\n.tab-group__scroll-button--right {\n right: 0;\n}\n\n// TOP\n.tab-group--top {\n flex-direction: column;\n\n .tab-group__nav-container {\n order: 1;\n }\n\n .tab-group__nav {\n display: flex;\n overflow-x: auto;\n @include hide-scrollbar();\n }\n\n .tab-group__tabs {\n flex: 1 1 auto;\n position: relative;\n flex-direction: row;\n }\n\n .tab-group__body {\n order: 2;\n }\n}\n\n// Bottom\n.tab-group--bottom {\n flex-direction: column;\n\n .tab-group__nav-container {\n order: 2;\n }\n\n .tab-group__nav {\n display: flex;\n overflow-x: auto;\n @include hide-scrollbar();\n }\n\n .tab-group__tabs {\n flex: 1 1 auto;\n position: relative;\n flex-direction: row;\n }\n\n .tab-group__body {\n order: 1;\n }\n}\n\n// Left\n\n.tab-group--left {\n flex-direction: row;\n\n .tab-group__nav-container {\n order: 1;\n }\n\n .tab-group__tabs {\n flex: 0 0 auto;\n flex-direction: column;\n }\n\n .tab-group__body {\n flex: 1 1 auto;\n order: 2;\n }\n}\n\n// Right\n.tab-group--right {\n flex-direction: row;\n\n .tab-group__nav-container {\n order: 2;\n }\n\n .tab-group__tabs {\n flex: 0 0 auto;\n flex-direction: column;\n }\n\n .tab-group__body {\n flex: 1 1 auto;\n order: 1;\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { scrollIntoView } from '../../utils/scroll';\nimport { flipAnimate } from '../../utils/animation';\n\nexport interface SixTabShowPayload {\n name: string;\n}\n\nexport interface SixTabHidePayload {\n name: string;\n}\n\n/**\n * @since 1.0\n * @status stable\n *\n * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.\n *\n * @slot nav - Used for grouping tabs in the tab group.\n * @slot - Used for grouping tab panels in the tab group.\n *\n * @part base - The component's base wrapper.\n * @part nav - The tab group navigation container.\n * @part tabs - The container that wraps the slotted tabs.\n * @part active-tab-indicator - An element that displays the currently selected tab. This is a child of the tab's container.\n * @part body - The tab group body where tab panels are slotted in.\n * @part scroll-button - The previous and next scroll buttons that appear when tabs are scrollable.\n */\n@Component({\n tag: 'six-tab-group',\n styleUrl: 'six-tab-group.scss',\n shadow: true,\n})\nexport class SixTabGroup {\n private activeTab?: HTMLSixTabElement;\n private body?: HTMLElement;\n private mutationObserver?: MutationObserver;\n private nav?: HTMLElement;\n private resizeObserver?: ResizeObserver;\n private tabGroup?: HTMLElement;\n private tabs?: HTMLElement;\n\n @Element() host!: HTMLSixTabGroupElement;\n\n @State() hasScrollControls = false;\n\n /** The placement of the tabs. */\n @Prop() placement: 'top' | 'bottom' | 'left' | 'right' = 'top';\n\n /** Disables the scroll arrows that appear when tabs overflow. */\n @Prop() noScrollControls = false;\n\n @Watch('noScrollControls')\n handleNoScrollControlsChange() {\n this.updateScrollControls();\n }\n\n /** Emitted when a tab is shown. */\n @Event({ eventName: 'six-tab-show' }) sixTabShow!: EventEmitter<SixTabShowPayload>;\n\n /** Emitted when a tab is hidden. */\n @Event({ eventName: 'six-tab-hide' }) sixTabHide!: EventEmitter<SixTabHidePayload>;\n\n componentDidLoad() {\n if (this.tabGroup == null || this.nav == null) return;\n\n // Set initial tab state when the tabs first become visible\n const observer = new IntersectionObserver((entries, observer) => {\n if (entries[0].intersectionRatio > 0) {\n this.setAriaLabels();\n this.setActiveTab(this.getActiveTab() || this.getAllTabs()[0], false);\n observer.unobserve(entries[0].target);\n }\n });\n observer.observe(this.host);\n this.resizeObserver = new ResizeObserver(() => this.updateScrollControls());\n this.resizeObserver.observe(this.nav);\n requestAnimationFrame(() => this.updateScrollControls());\n\n // Update aria labels if the DOM changes\n this.mutationObserver = new MutationObserver((mutations) => {\n if (\n mutations.some((mutation) => {\n return !['aria-labelledby', 'aria-controls'].includes(mutation.attributeName ?? '');\n })\n ) {\n setTimeout(() => this.setAriaLabels());\n }\n });\n this.mutationObserver.observe(this.host, { attributes: true, childList: true, subtree: true });\n }\n\n disconnectedCallback() {\n if (this.mutationObserver == null || this.tabGroup == null || this.nav == null || this.resizeObserver == null) {\n return;\n }\n this.mutationObserver.disconnect();\n this.resizeObserver.unobserve(this.nav);\n }\n\n /** Shows the specified tab panel. */\n @Method()\n async show(panel: string) {\n const tabs = this.getAllTabs();\n const tab = tabs.find((el) => el.panel === panel);\n\n if (tab != null) {\n this.setActiveTab(tab);\n }\n }\n\n private getAllTabs(includeDisabled = false): HTMLSixTabElement[] {\n const slot = this.tabs?.querySelector('slot');\n if (slot == null) return [];\n\n return [...slot.assignedElements()].filter((el: Element) => {\n return includeDisabled\n ? el.tagName.toLowerCase() === 'six-tab'\n : el.tagName.toLowerCase() === 'six-tab' && !(el as HTMLSixTabElement).disabled;\n }) as [HTMLSixTabElement];\n }\n\n private getAllPanels(): HTMLSixTabPanelElement[] {\n const slot = this.body?.querySelector('slot');\n if (slot == null) return [];\n return [...slot.assignedElements()].filter((el: Element) => el.tagName.toLowerCase() === 'six-tab-panel') as [\n HTMLSixTabPanelElement\n ];\n }\n\n private getActiveTab() {\n return this.getAllTabs().find((el) => el.active);\n }\n\n private handleClick = (event: MouseEvent) => {\n const target = event.target as HTMLElement;\n const tab = target.closest('six-tab');\n const tabGroup = tab?.closest('six-tab-group');\n\n // Ensure the target tab is in this tab group\n if (tabGroup !== this.host) {\n return false;\n }\n\n if (tab != null) {\n this.setActiveTab(tab);\n }\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (this.nav == null) return;\n\n const target = event.target as HTMLElement;\n const tab = target.closest('six-tab');\n const tabGroup = tab?.closest('six-tab-group');\n\n // Ensure the target tab is in this tab group\n if (tabGroup !== this.host) {\n return false;\n }\n\n // Move focus left or right\n if (['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown', 'Home', 'End'].includes(event.key)) {\n const activeEl = document.activeElement as HTMLSixTabElement;\n\n if (activeEl && activeEl.tagName.toLowerCase() === 'six-tab') {\n const tabs = this.getAllTabs();\n let index = tabs.indexOf(activeEl);\n\n if (event.key === 'Home') {\n index = 0;\n } else if (event.key === 'End') {\n index = tabs.length - 1;\n } else if (event.key === 'ArrowLeft') {\n index = Math.max(0, index - 1);\n } else if (event.key === 'ArrowRight') {\n index = Math.min(tabs.length - 1, index + 1);\n }\n\n tabs[index].setFocus({ preventScroll: true });\n this.setActiveTab(tabs[index]);\n\n if (['top', 'bottom'].includes(this.placement)) {\n scrollIntoView(tabs[index], this.nav, 'horizontal');\n }\n\n event.preventDefault();\n }\n }\n };\n\n private handleScrollLeft = () => {\n if (this.nav == null) return;\n\n this.nav.scroll({\n left: this.nav.scrollLeft - this.nav.clientWidth,\n behavior: 'smooth',\n });\n };\n\n private handleScrollRight = () => {\n if (this.nav == null) return;\n\n this.nav.scroll({\n left: this.nav.scrollLeft + this.nav.clientWidth,\n behavior: 'smooth',\n });\n };\n\n private updateScrollControls() {\n if (this.nav == null) return;\n\n this.hasScrollControls = this.noScrollControls\n ? false\n : ['top', 'bottom'].includes(this.placement) && this.nav.scrollWidth > this.nav.clientWidth;\n }\n\n private setActiveTab(tab: HTMLSixTabElement, emitEvents = true) {\n if (this.nav == null) return;\n\n const newIndicator = tab?.shadowRoot?.querySelector('.tab__indicator');\n const oldIndicator = this.getActiveTab()?.shadowRoot?.querySelector('.tab__indicator');\n\n if (oldIndicator != null && newIndicator != null) {\n flipAnimate(newIndicator, oldIndicator);\n }\n\n if (tab !== this.activeTab && !tab.disabled) {\n const previousTab = this.activeTab;\n this.activeTab = tab;\n\n // Sync tabs and panels\n this.getAllTabs().map((el) => (el.active = el === this.activeTab));\n this.getAllPanels().map((el) => (el.active = el.name === this.activeTab?.panel));\n\n if (['top', 'bottom'].includes(this.placement)) {\n scrollIntoView(this.activeTab, this.nav, 'horizontal');\n }\n\n // Emit events\n if (emitEvents) {\n if (previousTab != null) {\n this.sixTabHide.emit({ name: previousTab.panel });\n }\n\n this.sixTabShow.emit({ name: this.activeTab.panel });\n }\n }\n }\n\n private setAriaLabels() {\n const tabs = this.getAllTabs();\n const panels = this.getAllPanels();\n\n // Link each tab with its corresponding panel\n tabs.map((tab) => {\n const panel = panels.find((el) => el.name === tab.panel);\n if (panel != null) {\n tab.setAttribute('aria-controls', panel.getAttribute('id') ?? '');\n panel.setAttribute('aria-labelledby', tab.getAttribute('id') ?? '');\n }\n });\n }\n\n render() {\n return (\n <div\n part=\"base\"\n ref={(el) => (this.tabGroup = el)}\n class={{\n 'tab-group': true,\n\n // Placements\n 'tab-group--top': this.placement === 'top',\n 'tab-group--bottom': this.placement === 'bottom',\n 'tab-group--left': this.placement === 'left',\n 'tab-group--right': this.placement === 'right',\n\n 'tab-group--has-scroll-controls': this.hasScrollControls,\n }}\n onClick={this.handleClick}\n onKeyDown={this.handleKeyDown}\n >\n <div class=\"tab-group__nav-container\">\n {this.hasScrollControls && (\n <six-icon-button\n class=\"tab-group__scroll-button tab-group__scroll-button--left\"\n exportparts=\"base:scroll-button\"\n name=\"chevron_left\"\n onClick={this.handleScrollLeft}\n />\n )}\n <div ref={(el) => (this.nav = el)} key=\"nav\" part=\"nav\" class=\"tab-group__nav\">\n <div ref={(el) => (this.tabs = el)} part=\"tabs\" class=\"tab-group__tabs\" role=\"tablist\">\n <slot name=\"nav\" />\n </div>\n </div>\n {this.hasScrollControls && (\n <six-icon-button\n class=\"tab-group__scroll-button tab-group__scroll-button--right\"\n exportparts=\"base:scroll-button\"\n name=\"chevron_right\"\n onClick={this.handleScrollRight}\n />\n )}\n </div>\n\n <div ref={(el) => (this.body = el)} part=\"body\" class=\"tab-group__body\">\n <slot />\n </div>\n </div>\n );\n }\n}\n"],"version":3}