@six-group/ui-library 0.0.0-insider.a9875a1 → 0.0.0-insider.af88f91

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 (835) hide show
  1. package/dist/cjs/app-globals-3a1e7e63.js +7 -0
  2. package/dist/cjs/app-globals-3a1e7e63.js.map +1 -0
  3. package/dist/cjs/error-messages-6e8049a4.js +119 -0
  4. package/dist/cjs/error-messages-6e8049a4.js.map +1 -0
  5. package/dist/cjs/{form-control-f9bc25dd.js → form-control-de259450.js} +2 -2
  6. package/dist/cjs/{form-control-f9bc25dd.js.map → form-control-de259450.js.map} +1 -1
  7. package/dist/cjs/{index-3baddcdc.js → index-1f707a55.js} +127 -76
  8. package/dist/cjs/index-1f707a55.js.map +1 -0
  9. package/dist/cjs/index.cjs.js +54 -101
  10. package/dist/cjs/index.cjs.js.map +1 -1
  11. package/dist/cjs/loader.cjs.js +5 -3
  12. package/dist/cjs/loader.cjs.js.map +1 -1
  13. package/dist/cjs/{modal-3ce015be.js → modal-bd7fc5bc.js} +1 -18
  14. package/dist/cjs/modal-bd7fc5bc.js.map +1 -0
  15. package/dist/cjs/six-alert.cjs.entry.js +42 -9
  16. package/dist/cjs/six-alert.cjs.entry.js.map +1 -1
  17. package/dist/cjs/six-avatar.cjs.entry.js +5 -4
  18. package/dist/cjs/six-avatar.cjs.entry.js.map +1 -1
  19. package/dist/cjs/six-badge.cjs.entry.js +6 -5
  20. package/dist/cjs/six-badge.cjs.entry.js.map +1 -1
  21. package/dist/cjs/six-button.cjs.entry.js +8 -6
  22. package/dist/cjs/six-button.cjs.entry.js.map +1 -1
  23. package/dist/cjs/six-card.cjs.entry.js +5 -4
  24. package/dist/cjs/six-card.cjs.entry.js.map +1 -1
  25. package/dist/cjs/six-checkbox_2.cjs.entry.js +192 -0
  26. package/dist/cjs/six-checkbox_2.cjs.entry.js.map +1 -0
  27. package/dist/cjs/six-datepicker.cjs.entry.js +43 -14
  28. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -1
  29. package/dist/cjs/six-details.cjs.entry.js +7 -6
  30. package/dist/cjs/six-details.cjs.entry.js.map +1 -1
  31. package/dist/cjs/six-dialog.cjs.entry.js +16 -32
  32. package/dist/cjs/six-dialog.cjs.entry.js.map +1 -1
  33. package/dist/cjs/six-drawer.cjs.entry.js +15 -32
  34. package/dist/cjs/six-drawer.cjs.entry.js.map +1 -1
  35. package/dist/cjs/six-dropdown_2.cjs.entry.js +204 -130
  36. package/dist/cjs/six-dropdown_2.cjs.entry.js.map +1 -1
  37. package/dist/cjs/six-error-page.cjs.entry.js +4 -3
  38. package/dist/cjs/six-error-page.cjs.entry.js.map +1 -1
  39. package/dist/cjs/six-error.cjs.entry.js +5 -4
  40. package/dist/cjs/six-error.cjs.entry.js.map +1 -1
  41. package/dist/cjs/six-file-list-item.cjs.entry.js +6 -5
  42. package/dist/cjs/six-file-list-item.cjs.entry.js.map +1 -1
  43. package/dist/cjs/six-file-list.cjs.entry.js +4 -3
  44. package/dist/cjs/six-file-list.cjs.entry.js.map +1 -1
  45. package/dist/cjs/six-file-upload.cjs.entry.js +32 -9
  46. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -1
  47. package/dist/cjs/six-footer.cjs.entry.js +5 -4
  48. package/dist/cjs/six-footer.cjs.entry.js.map +1 -1
  49. package/dist/cjs/six-group-label.cjs.entry.js +7 -6
  50. package/dist/cjs/six-group-label.cjs.entry.js.map +1 -1
  51. package/dist/cjs/six-header.cjs.entry.js +26 -16
  52. package/dist/cjs/six-header.cjs.entry.js.map +1 -1
  53. package/dist/cjs/six-icon-button.cjs.entry.js +7 -6
  54. package/dist/cjs/six-icon-button.cjs.entry.js.map +1 -1
  55. package/dist/cjs/six-icon.cjs.entry.js +6 -5
  56. package/dist/cjs/six-icon.cjs.entry.js.map +1 -1
  57. package/dist/cjs/six-input.cjs.entry.js +11 -8
  58. package/dist/cjs/six-input.cjs.entry.js.map +1 -1
  59. package/dist/cjs/six-item-picker.cjs.entry.js +7 -6
  60. package/dist/cjs/six-item-picker.cjs.entry.js.map +1 -1
  61. package/dist/cjs/six-language-switcher.cjs.entry.js +11 -6
  62. package/dist/cjs/six-language-switcher.cjs.entry.js.map +1 -1
  63. package/dist/cjs/six-layout-grid.cjs.entry.js +4 -3
  64. package/dist/cjs/six-layout-grid.cjs.entry.js.map +1 -1
  65. package/dist/cjs/six-main-container.cjs.entry.js +4 -3
  66. package/dist/cjs/six-main-container.cjs.entry.js.map +1 -1
  67. package/dist/cjs/six-menu-divider.cjs.entry.js +5 -4
  68. package/dist/cjs/six-menu-divider.cjs.entry.js.map +1 -1
  69. package/dist/cjs/six-menu-label.cjs.entry.js +5 -4
  70. package/dist/cjs/six-menu-label.cjs.entry.js.map +1 -1
  71. package/dist/cjs/six-picto.cjs.entry.js +4 -3
  72. package/dist/cjs/six-picto.cjs.entry.js.map +1 -1
  73. package/dist/cjs/six-progress-bar.cjs.entry.js +6 -5
  74. package/dist/cjs/six-progress-bar.cjs.entry.js.map +1 -1
  75. package/dist/cjs/six-progress-ring.cjs.entry.js +5 -4
  76. package/dist/cjs/six-progress-ring.cjs.entry.js.map +1 -1
  77. package/dist/cjs/six-radio.cjs.entry.js +6 -5
  78. package/dist/cjs/six-radio.cjs.entry.js.map +1 -1
  79. package/dist/cjs/six-range.cjs.entry.js +18 -7
  80. package/dist/cjs/six-range.cjs.entry.js.map +1 -1
  81. package/dist/cjs/six-root.cjs.entry.js +4 -22
  82. package/dist/cjs/six-root.cjs.entry.js.map +1 -1
  83. package/dist/cjs/six-search-field.cjs.entry.js +5 -4
  84. package/dist/cjs/six-search-field.cjs.entry.js.map +1 -1
  85. package/dist/cjs/six-select.cjs.entry.js +334 -177
  86. package/dist/cjs/six-select.cjs.entry.js.map +1 -1
  87. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +5 -4
  88. package/dist/cjs/six-sidebar-item-group.cjs.entry.js.map +1 -1
  89. package/dist/cjs/six-sidebar-item.cjs.entry.js +5 -4
  90. package/dist/cjs/six-sidebar-item.cjs.entry.js.map +1 -1
  91. package/dist/cjs/six-sidebar.cjs.entry.js +6 -5
  92. package/dist/cjs/six-sidebar.cjs.entry.js.map +1 -1
  93. package/dist/cjs/six-spinner.cjs.entry.js +4 -3
  94. package/dist/cjs/six-spinner.cjs.entry.js.map +1 -1
  95. package/dist/cjs/six-stage-indicator.cjs.entry.js +23 -0
  96. package/dist/cjs/six-stage-indicator.cjs.entry.js.map +1 -0
  97. package/dist/cjs/six-switch.cjs.entry.js +8 -7
  98. package/dist/cjs/six-switch.cjs.entry.js.map +1 -1
  99. package/dist/cjs/six-tab-group.cjs.entry.js +35 -9
  100. package/dist/cjs/six-tab-group.cjs.entry.js.map +1 -1
  101. package/dist/cjs/six-tab-panel.cjs.entry.js +5 -4
  102. package/dist/cjs/six-tab-panel.cjs.entry.js.map +1 -1
  103. package/dist/cjs/six-tab.cjs.entry.js +6 -5
  104. package/dist/cjs/six-tab.cjs.entry.js.map +1 -1
  105. package/dist/cjs/six-tag.cjs.entry.js +7 -6
  106. package/dist/cjs/six-tag.cjs.entry.js.map +1 -1
  107. package/dist/cjs/six-textarea.cjs.entry.js +8 -7
  108. package/dist/cjs/six-textarea.cjs.entry.js.map +1 -1
  109. package/dist/cjs/six-tile.cjs.entry.js +8 -7
  110. package/dist/cjs/six-tile.cjs.entry.js.map +1 -1
  111. package/dist/cjs/six-timepicker.cjs.entry.js +7 -6
  112. package/dist/cjs/six-timepicker.cjs.entry.js.map +1 -1
  113. package/dist/cjs/six-tooltip.cjs.entry.js +6 -5
  114. package/dist/cjs/six-tooltip.cjs.entry.js.map +1 -1
  115. package/dist/cjs/{slot-9821749e.js → slot-1b1232a1.js} +1 -3
  116. package/dist/cjs/slot-1b1232a1.js.map +1 -0
  117. package/dist/cjs/{types-0a6d66f6.js → types-d3da200b.js} +3 -1
  118. package/dist/cjs/types-d3da200b.js.map +1 -0
  119. package/dist/cjs/ui-library.cjs.js +6 -4
  120. package/dist/cjs/ui-library.cjs.js.map +1 -1
  121. package/dist/collection/assets/TRADEMARKS.md +3 -3
  122. package/dist/collection/collection-manifest.json +5 -6
  123. package/dist/collection/components/six-alert/six-alert.css +5 -1
  124. package/dist/collection/components/six-alert/six-alert.js +57 -12
  125. package/dist/collection/components/six-alert/six-alert.js.map +1 -1
  126. package/dist/collection/components/six-avatar/six-avatar.css +2 -2
  127. package/dist/collection/components/six-avatar/six-avatar.js +1 -1
  128. package/dist/collection/components/six-avatar/six-avatar.js.map +1 -1
  129. package/dist/collection/components/six-badge/six-badge.css +1 -1
  130. package/dist/collection/components/six-badge/six-badge.js +2 -2
  131. package/dist/collection/components/six-badge/six-badge.js.map +1 -1
  132. package/dist/collection/components/six-button/six-button.css +19 -1
  133. package/dist/collection/components/six-button/six-button.js +8 -6
  134. package/dist/collection/components/six-button/six-button.js.map +1 -1
  135. package/dist/collection/components/six-button/test/six-button.spec.js.map +1 -1
  136. package/dist/collection/components/six-card/six-card.css +4 -5
  137. package/dist/collection/components/six-card/six-card.js +1 -1
  138. package/dist/collection/components/six-card/six-card.js.map +1 -1
  139. package/dist/collection/components/six-checkbox/six-checkbox.css +3 -1
  140. package/dist/collection/components/six-checkbox/six-checkbox.js +5 -4
  141. package/dist/collection/components/six-checkbox/six-checkbox.js.map +1 -1
  142. package/dist/collection/components/six-datepicker/six-date-formats.js +1 -0
  143. package/dist/collection/components/six-datepicker/six-date-formats.js.map +1 -1
  144. package/dist/collection/components/six-datepicker/six-datepicker.css +1 -1
  145. package/dist/collection/components/six-datepicker/six-datepicker.js +20 -16
  146. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -1
  147. package/dist/collection/components/six-details/six-details.css +1 -5
  148. package/dist/collection/components/six-details/six-details.js +3 -3
  149. package/dist/collection/components/six-details/six-details.js.map +1 -1
  150. package/dist/collection/components/six-dialog/six-dialog.css +2 -2
  151. package/dist/collection/components/six-dialog/six-dialog.js +10 -28
  152. package/dist/collection/components/six-dialog/six-dialog.js.map +1 -1
  153. package/dist/collection/components/six-drawer/six-drawer.css +2 -2
  154. package/dist/collection/components/six-drawer/six-drawer.js +9 -28
  155. package/dist/collection/components/six-drawer/six-drawer.js.map +1 -1
  156. package/dist/collection/components/six-dropdown/six-dropdown.css +22 -7
  157. package/dist/collection/components/six-dropdown/six-dropdown.js +216 -124
  158. package/dist/collection/components/six-dropdown/six-dropdown.js.map +1 -1
  159. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js +54 -29
  160. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js.map +1 -1
  161. package/dist/collection/components/six-error/six-error.css +1 -0
  162. package/dist/collection/components/six-error/six-error.js +1 -1
  163. package/dist/collection/components/six-error/six-error.js.map +1 -1
  164. package/dist/collection/components/six-error-page/six-error-page.js +1 -1
  165. package/dist/collection/components/six-error-page/six-error-page.js.map +1 -1
  166. package/dist/collection/components/six-file-list/six-file-list.js +1 -1
  167. package/dist/collection/components/six-file-list/six-file-list.js.map +1 -1
  168. package/dist/collection/components/six-file-list-item/six-file-list-item.css +1 -1
  169. package/dist/collection/components/six-file-list-item/six-file-list-item.js +2 -2
  170. package/dist/collection/components/six-file-list-item/six-file-list-item.js.map +1 -1
  171. package/dist/collection/components/six-file-upload/six-file-upload.css +12 -4
  172. package/dist/collection/components/six-file-upload/six-file-upload.js +85 -7
  173. package/dist/collection/components/six-file-upload/six-file-upload.js.map +1 -1
  174. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js +187 -24
  175. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js.map +1 -1
  176. package/dist/collection/components/six-footer/six-footer.css +2 -2
  177. package/dist/collection/components/six-footer/six-footer.js +1 -1
  178. package/dist/collection/components/six-footer/six-footer.js.map +1 -1
  179. package/dist/collection/components/six-group-label/six-group-label.css +1 -1
  180. package/dist/collection/components/six-group-label/six-group-label.js +1 -1
  181. package/dist/collection/components/six-group-label/six-group-label.js.map +1 -1
  182. package/dist/collection/components/six-header/six-header.css +15 -2
  183. package/dist/collection/components/six-header/six-header.js +60 -14
  184. package/dist/collection/components/six-header/six-header.js.map +1 -1
  185. package/dist/collection/components/six-icon/six-icon.css +3 -7
  186. package/dist/collection/components/six-icon/six-icon.js +2 -2
  187. package/dist/collection/components/six-icon/six-icon.js.map +1 -1
  188. package/dist/collection/components/six-icon-button/six-icon-button.css +1 -1
  189. package/dist/collection/components/six-icon-button/six-icon-button.js +3 -3
  190. package/dist/collection/components/six-icon-button/six-icon-button.js.map +1 -1
  191. package/dist/collection/components/six-input/six-input.css +10 -1
  192. package/dist/collection/components/six-input/six-input.js +47 -19
  193. package/dist/collection/components/six-input/six-input.js.map +1 -1
  194. package/dist/collection/components/six-item-picker/six-item-picker.js +3 -3
  195. package/dist/collection/components/six-item-picker/six-item-picker.js.map +1 -1
  196. package/dist/collection/components/six-item-picker/types.js +2 -0
  197. package/dist/collection/components/six-item-picker/types.js.map +1 -1
  198. package/dist/collection/components/six-language-switcher/six-language-switcher.css +7 -2
  199. package/dist/collection/components/six-language-switcher/six-language-switcher.js +7 -3
  200. package/dist/collection/components/six-language-switcher/six-language-switcher.js.map +1 -1
  201. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js +20 -20
  202. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js.map +1 -1
  203. package/dist/collection/components/six-layout-grid/six-layout-grid.js +1 -1
  204. package/dist/collection/components/six-layout-grid/six-layout-grid.js.map +1 -1
  205. package/dist/collection/components/six-main-container/six-main-container.js +1 -1
  206. package/dist/collection/components/six-main-container/six-main-container.js.map +1 -1
  207. package/dist/collection/components/six-menu/six-menu.css +8 -7
  208. package/dist/collection/components/six-menu/six-menu.js +30 -8
  209. package/dist/collection/components/six-menu/six-menu.js.map +1 -1
  210. package/dist/collection/components/six-menu/test/six-menu.spec.js +6 -6
  211. package/dist/collection/components/six-menu/test/six-menu.spec.js.map +1 -1
  212. package/dist/collection/components/six-menu-divider/six-menu-divider.css +3 -2
  213. package/dist/collection/components/six-menu-divider/six-menu-divider.js +1 -1
  214. package/dist/collection/components/six-menu-divider/six-menu-divider.js.map +1 -1
  215. package/dist/collection/components/six-menu-item/six-menu-item.css +13 -2
  216. package/dist/collection/components/six-menu-item/six-menu-item.js +37 -8
  217. package/dist/collection/components/six-menu-item/six-menu-item.js.map +1 -1
  218. package/dist/collection/components/six-menu-label/six-menu-label.css +1 -1
  219. package/dist/collection/components/six-menu-label/six-menu-label.js +1 -1
  220. package/dist/collection/components/six-menu-label/six-menu-label.js.map +1 -1
  221. package/dist/collection/components/six-picto/six-picto.js +1 -1
  222. package/dist/collection/components/six-picto/six-picto.js.map +1 -1
  223. package/dist/collection/components/six-progress-bar/six-progress-bar.css +1 -1
  224. package/dist/collection/components/six-progress-bar/six-progress-bar.js +2 -2
  225. package/dist/collection/components/six-progress-bar/six-progress-bar.js.map +1 -1
  226. package/dist/collection/components/six-progress-ring/six-progress-ring.css +1 -1
  227. package/dist/collection/components/six-progress-ring/six-progress-ring.js +1 -1
  228. package/dist/collection/components/six-progress-ring/six-progress-ring.js.map +1 -1
  229. package/dist/collection/components/six-radio/six-radio.css +1 -1
  230. package/dist/collection/components/six-radio/six-radio.js +5 -4
  231. package/dist/collection/components/six-radio/six-radio.js.map +1 -1
  232. package/dist/collection/components/six-range/six-range.css +2 -2
  233. package/dist/collection/components/six-range/six-range.js +15 -4
  234. package/dist/collection/components/six-range/six-range.js.map +1 -1
  235. package/dist/collection/components/six-root/six-root.js +1 -69
  236. package/dist/collection/components/six-root/six-root.js.map +1 -1
  237. package/dist/collection/components/six-root/test/six-root.spec.js +0 -7
  238. package/dist/collection/components/six-root/test/six-root.spec.js.map +1 -1
  239. package/dist/collection/components/six-search-field/six-search-field.css +1 -1
  240. package/dist/collection/components/six-search-field/six-search-field.js +1 -1
  241. package/dist/collection/components/six-search-field/six-search-field.js.map +1 -1
  242. package/dist/collection/components/six-select/six-select.css +54 -66
  243. package/dist/collection/components/six-select/six-select.js +345 -178
  244. package/dist/collection/components/six-select/six-select.js.map +1 -1
  245. package/dist/collection/components/six-select/test/six-select.spec.js +31 -15
  246. package/dist/collection/components/six-select/test/six-select.spec.js.map +1 -1
  247. package/dist/collection/components/six-select/test/util.spec.js +23 -1
  248. package/dist/collection/components/six-select/test/util.spec.js.map +1 -1
  249. package/dist/collection/components/six-select/util.js +24 -0
  250. package/dist/collection/components/six-select/util.js.map +1 -1
  251. package/dist/collection/components/six-sidebar/six-sidebar.css +2 -2
  252. package/dist/collection/components/six-sidebar/six-sidebar.js +8 -6
  253. package/dist/collection/components/six-sidebar/six-sidebar.js.map +1 -1
  254. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +2 -2
  255. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js.map +1 -1
  256. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.css +2 -1
  257. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js.map +1 -1
  258. package/dist/collection/components/six-spinner/six-spinner.css +1 -1
  259. package/dist/collection/components/six-stage-indicator/six-stage-indicator.css +1 -1
  260. package/dist/collection/components/six-switch/six-switch.css +1 -1
  261. package/dist/collection/components/six-switch/six-switch.js +5 -4
  262. package/dist/collection/components/six-switch/six-switch.js.map +1 -1
  263. package/dist/collection/components/six-tab/six-tab.css +1 -1
  264. package/dist/collection/components/six-tab/six-tab.js +5 -4
  265. package/dist/collection/components/six-tab/six-tab.js.map +1 -1
  266. package/dist/collection/components/six-tab-group/six-tab-group.css +1 -1
  267. package/dist/collection/components/six-tab-group/six-tab-group.js +36 -9
  268. package/dist/collection/components/six-tab-group/six-tab-group.js.map +1 -1
  269. package/dist/collection/components/six-tab-panel/six-tab-panel.css +1 -1
  270. package/dist/collection/components/six-tab-panel/six-tab-panel.js +1 -1
  271. package/dist/collection/components/six-tab-panel/six-tab-panel.js.map +1 -1
  272. package/dist/collection/components/six-tag/six-tag.css +1 -1
  273. package/dist/collection/components/six-tag/six-tag.js +2 -2
  274. package/dist/collection/components/six-tag/six-tag.js.map +1 -1
  275. package/dist/collection/components/six-textarea/six-textarea.css +1 -1
  276. package/dist/collection/components/six-textarea/six-textarea.js +26 -18
  277. package/dist/collection/components/six-textarea/six-textarea.js.map +1 -1
  278. package/dist/collection/components/six-textarea/test/six-textarea.spec.js.map +1 -1
  279. package/dist/collection/components/six-tile/six-tile.css +2 -2
  280. package/dist/collection/components/six-tile/six-tile.js +3 -3
  281. package/dist/collection/components/six-tile/six-tile.js.map +1 -1
  282. package/dist/collection/components/six-timepicker/six-timepicker.css +1 -1
  283. package/dist/collection/components/six-timepicker/six-timepicker.js +4 -3
  284. package/dist/collection/components/six-timepicker/six-timepicker.js.map +1 -1
  285. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js.map +1 -1
  286. package/dist/collection/components/six-tooltip/six-tooltip.css +1 -1
  287. package/dist/collection/components/six-tooltip/six-tooltip.js +2 -2
  288. package/dist/collection/components/six-tooltip/six-tooltip.js.map +1 -1
  289. package/dist/collection/index.js +1 -0
  290. package/dist/collection/index.js.map +1 -1
  291. package/dist/collection/utils/alert.js +54 -0
  292. package/dist/collection/utils/alert.js.map +1 -0
  293. package/dist/collection/utils/date-util.js +25 -0
  294. package/dist/collection/utils/date-util.js.map +1 -1
  295. package/dist/collection/utils/date-util.spec.js.map +1 -1
  296. package/dist/collection/utils/error-messages.js +7 -0
  297. package/dist/collection/utils/error-messages.js.map +1 -1
  298. package/dist/collection/utils/event-listeners.js.map +1 -1
  299. package/dist/collection/utils/focus-visible.js.map +1 -1
  300. package/dist/collection/utils/form.js.map +1 -1
  301. package/dist/collection/utils/modal.js.map +1 -1
  302. package/dist/collection/utils/popover.js.map +1 -1
  303. package/dist/collection/utils/popup.js.map +1 -1
  304. package/dist/collection/utils/scroll.js.map +1 -1
  305. package/dist/collection/utils/slot.js +0 -1
  306. package/dist/collection/utils/slot.js.map +1 -1
  307. package/dist/collection/utils/tabbable.js.map +1 -1
  308. package/dist/collection/utils/time.util.js.map +1 -1
  309. package/dist/collection/utils/time.util.spec.js.map +1 -1
  310. package/dist/components/index.js +50 -102
  311. package/dist/components/index.js.map +1 -1
  312. package/dist/components/modal.js +1 -17
  313. package/dist/components/modal.js.map +1 -1
  314. package/dist/components/six-alert.js +41 -8
  315. package/dist/components/six-alert.js.map +1 -1
  316. package/dist/components/six-avatar.js +4 -3
  317. package/dist/components/six-avatar.js.map +1 -1
  318. package/dist/components/six-badge.js +5 -4
  319. package/dist/components/six-badge.js.map +1 -1
  320. package/dist/components/six-button.js +1 -142
  321. package/dist/components/six-button.js.map +1 -1
  322. package/dist/components/six-button2.js +148 -0
  323. package/dist/components/six-button2.js.map +1 -0
  324. package/dist/components/six-card.js +4 -3
  325. package/dist/components/six-card.js.map +1 -1
  326. package/dist/components/six-checkbox.js +1 -161
  327. package/dist/components/six-checkbox.js.map +1 -1
  328. package/dist/components/six-checkbox2.js +166 -0
  329. package/dist/components/six-checkbox2.js.map +1 -0
  330. package/dist/components/six-datepicker.js +41 -12
  331. package/dist/components/six-datepicker.js.map +1 -1
  332. package/dist/components/six-details2.js +6 -5
  333. package/dist/components/six-details2.js.map +1 -1
  334. package/dist/components/six-dialog.js +14 -30
  335. package/dist/components/six-dialog.js.map +1 -1
  336. package/dist/components/six-drawer.js +13 -30
  337. package/dist/components/six-drawer.js.map +1 -1
  338. package/dist/components/six-dropdown2.js +204 -127
  339. package/dist/components/six-dropdown2.js.map +1 -1
  340. package/dist/components/six-error-page.js +3 -2
  341. package/dist/components/six-error-page.js.map +1 -1
  342. package/dist/components/six-error2.js +4 -3
  343. package/dist/components/six-error2.js.map +1 -1
  344. package/dist/components/six-file-list-item.js +5 -4
  345. package/dist/components/six-file-list-item.js.map +1 -1
  346. package/dist/components/six-file-list.js +3 -2
  347. package/dist/components/six-file-list.js.map +1 -1
  348. package/dist/components/six-file-upload.js +51 -12
  349. package/dist/components/six-file-upload.js.map +1 -1
  350. package/dist/components/six-footer.js +4 -3
  351. package/dist/components/six-footer.js.map +1 -1
  352. package/dist/components/six-group-label.js +4 -3
  353. package/dist/components/six-group-label.js.map +1 -1
  354. package/dist/components/six-header.js +33 -15
  355. package/dist/components/six-header.js.map +1 -1
  356. package/dist/components/six-icon-button2.js +6 -5
  357. package/dist/components/six-icon-button2.js.map +1 -1
  358. package/dist/components/six-icon2.js +5 -4
  359. package/dist/components/six-icon2.js.map +1 -1
  360. package/dist/components/six-input2.js +9 -5
  361. package/dist/components/six-input2.js.map +1 -1
  362. package/dist/components/six-item-picker2.js +7 -4
  363. package/dist/components/six-item-picker2.js.map +1 -1
  364. package/dist/components/six-language-switcher.js +10 -5
  365. package/dist/components/six-language-switcher.js.map +1 -1
  366. package/dist/components/six-layout-grid.js +3 -2
  367. package/dist/components/six-layout-grid.js.map +1 -1
  368. package/dist/components/six-main-container.js +3 -2
  369. package/dist/components/six-main-container.js.map +1 -1
  370. package/dist/components/six-menu-divider.js +4 -3
  371. package/dist/components/six-menu-divider.js.map +1 -1
  372. package/dist/components/six-menu-item2.js +31 -7
  373. package/dist/components/six-menu-item2.js.map +1 -1
  374. package/dist/components/six-menu-label.js +4 -3
  375. package/dist/components/six-menu-label.js.map +1 -1
  376. package/dist/components/six-menu2.js +26 -9
  377. package/dist/components/six-menu2.js.map +1 -1
  378. package/dist/components/six-picto2.js +3 -2
  379. package/dist/components/six-picto2.js.map +1 -1
  380. package/dist/components/six-progress-bar.js +5 -4
  381. package/dist/components/six-progress-bar.js.map +1 -1
  382. package/dist/components/six-progress-ring.js +4 -3
  383. package/dist/components/six-progress-ring.js.map +1 -1
  384. package/dist/components/six-radio.js +5 -4
  385. package/dist/components/six-radio.js.map +1 -1
  386. package/dist/components/six-range.js +15 -4
  387. package/dist/components/six-range.js.map +1 -1
  388. package/dist/components/six-root.js +6 -34
  389. package/dist/components/six-root.js.map +1 -1
  390. package/dist/components/six-search-field.js +4 -3
  391. package/dist/components/six-search-field.js.map +1 -1
  392. package/dist/components/six-select.js +472 -196
  393. package/dist/components/six-select.js.map +1 -1
  394. package/dist/components/six-sidebar-item-group.js +3 -2
  395. package/dist/components/six-sidebar-item-group.js.map +1 -1
  396. package/dist/components/six-sidebar-item.js +4 -3
  397. package/dist/components/six-sidebar-item.js.map +1 -1
  398. package/dist/components/six-sidebar.js +5 -4
  399. package/dist/components/six-sidebar.js.map +1 -1
  400. package/dist/components/six-spinner2.js +3 -2
  401. package/dist/components/six-spinner2.js.map +1 -1
  402. package/dist/components/six-stage-indicator2.js +3 -2
  403. package/dist/components/six-stage-indicator2.js.map +1 -1
  404. package/dist/components/six-switch.js +5 -4
  405. package/dist/components/six-switch.js.map +1 -1
  406. package/dist/components/six-tab-group.js +36 -9
  407. package/dist/components/six-tab-group.js.map +1 -1
  408. package/dist/components/six-tab-panel.js +4 -3
  409. package/dist/components/six-tab-panel.js.map +1 -1
  410. package/dist/components/six-tab.js +5 -4
  411. package/dist/components/six-tab.js.map +1 -1
  412. package/dist/components/six-tag.js +99 -1
  413. package/dist/components/six-tag.js.map +1 -1
  414. package/dist/components/six-textarea.js +5 -4
  415. package/dist/components/six-textarea.js.map +1 -1
  416. package/dist/components/six-tile.js +6 -5
  417. package/dist/components/six-tile.js.map +1 -1
  418. package/dist/components/six-timepicker2.js +4 -3
  419. package/dist/components/six-timepicker2.js.map +1 -1
  420. package/dist/components/six-tooltip2.js +5 -4
  421. package/dist/components/six-tooltip2.js.map +1 -1
  422. package/dist/components/slot.js +1 -2
  423. package/dist/components/slot.js.map +1 -1
  424. package/dist/components.d.ts +1 -21
  425. package/dist/components.json +733 -242
  426. package/dist/esm/app-globals-0f993ce5.js +5 -0
  427. package/dist/esm/app-globals-0f993ce5.js.map +1 -0
  428. package/dist/esm/error-messages-1eaaad23.js +115 -0
  429. package/dist/esm/error-messages-1eaaad23.js.map +1 -0
  430. package/dist/esm/{form-control-6b30894f.js → form-control-30c5bd8b.js} +2 -2
  431. package/dist/esm/{form-control-6b30894f.js.map → form-control-30c5bd8b.js.map} +1 -1
  432. package/dist/esm/{index-17d8173e.js → index-5390c1d6.js} +127 -76
  433. package/dist/esm/index-5390c1d6.js.map +1 -0
  434. package/dist/esm/index.js +51 -100
  435. package/dist/esm/index.js.map +1 -1
  436. package/dist/esm/loader.js +6 -4
  437. package/dist/esm/loader.js.map +1 -1
  438. package/dist/esm/{modal-96526245.js → modal-6c1288e3.js} +2 -18
  439. package/dist/esm/modal-6c1288e3.js.map +1 -0
  440. package/dist/esm/six-alert.entry.js +42 -9
  441. package/dist/esm/six-alert.entry.js.map +1 -1
  442. package/dist/esm/six-avatar.entry.js +5 -4
  443. package/dist/esm/six-avatar.entry.js.map +1 -1
  444. package/dist/esm/six-badge.entry.js +6 -5
  445. package/dist/esm/six-badge.entry.js.map +1 -1
  446. package/dist/esm/six-button.entry.js +8 -6
  447. package/dist/esm/six-button.entry.js.map +1 -1
  448. package/dist/esm/six-card.entry.js +5 -4
  449. package/dist/esm/six-card.entry.js.map +1 -1
  450. package/dist/esm/six-checkbox_2.entry.js +187 -0
  451. package/dist/esm/six-checkbox_2.entry.js.map +1 -0
  452. package/dist/esm/six-datepicker.entry.js +43 -14
  453. package/dist/esm/six-datepicker.entry.js.map +1 -1
  454. package/dist/esm/six-details.entry.js +7 -6
  455. package/dist/esm/six-details.entry.js.map +1 -1
  456. package/dist/esm/six-dialog.entry.js +16 -32
  457. package/dist/esm/six-dialog.entry.js.map +1 -1
  458. package/dist/esm/six-drawer.entry.js +15 -32
  459. package/dist/esm/six-drawer.entry.js.map +1 -1
  460. package/dist/esm/six-dropdown_2.entry.js +205 -131
  461. package/dist/esm/six-dropdown_2.entry.js.map +1 -1
  462. package/dist/esm/six-error-page.entry.js +4 -3
  463. package/dist/esm/six-error-page.entry.js.map +1 -1
  464. package/dist/esm/six-error.entry.js +5 -4
  465. package/dist/esm/six-error.entry.js.map +1 -1
  466. package/dist/esm/six-file-list-item.entry.js +6 -5
  467. package/dist/esm/six-file-list-item.entry.js.map +1 -1
  468. package/dist/esm/six-file-list.entry.js +4 -3
  469. package/dist/esm/six-file-list.entry.js.map +1 -1
  470. package/dist/esm/six-file-upload.entry.js +32 -9
  471. package/dist/esm/six-file-upload.entry.js.map +1 -1
  472. package/dist/esm/six-footer.entry.js +5 -4
  473. package/dist/esm/six-footer.entry.js.map +1 -1
  474. package/dist/esm/six-group-label.entry.js +7 -6
  475. package/dist/esm/six-group-label.entry.js.map +1 -1
  476. package/dist/esm/six-header.entry.js +26 -16
  477. package/dist/esm/six-header.entry.js.map +1 -1
  478. package/dist/esm/six-icon-button.entry.js +7 -6
  479. package/dist/esm/six-icon-button.entry.js.map +1 -1
  480. package/dist/esm/six-icon.entry.js +6 -5
  481. package/dist/esm/six-icon.entry.js.map +1 -1
  482. package/dist/esm/six-input.entry.js +11 -8
  483. package/dist/esm/six-input.entry.js.map +1 -1
  484. package/dist/esm/six-item-picker.entry.js +7 -6
  485. package/dist/esm/six-item-picker.entry.js.map +1 -1
  486. package/dist/esm/six-language-switcher.entry.js +11 -6
  487. package/dist/esm/six-language-switcher.entry.js.map +1 -1
  488. package/dist/esm/six-layout-grid.entry.js +4 -3
  489. package/dist/esm/six-layout-grid.entry.js.map +1 -1
  490. package/dist/esm/six-main-container.entry.js +4 -3
  491. package/dist/esm/six-main-container.entry.js.map +1 -1
  492. package/dist/esm/six-menu-divider.entry.js +5 -4
  493. package/dist/esm/six-menu-divider.entry.js.map +1 -1
  494. package/dist/esm/six-menu-label.entry.js +5 -4
  495. package/dist/esm/six-menu-label.entry.js.map +1 -1
  496. package/dist/esm/six-picto.entry.js +4 -3
  497. package/dist/esm/six-picto.entry.js.map +1 -1
  498. package/dist/esm/six-progress-bar.entry.js +6 -5
  499. package/dist/esm/six-progress-bar.entry.js.map +1 -1
  500. package/dist/esm/six-progress-ring.entry.js +5 -4
  501. package/dist/esm/six-progress-ring.entry.js.map +1 -1
  502. package/dist/esm/six-radio.entry.js +6 -5
  503. package/dist/esm/six-radio.entry.js.map +1 -1
  504. package/dist/esm/six-range.entry.js +18 -7
  505. package/dist/esm/six-range.entry.js.map +1 -1
  506. package/dist/esm/six-root.entry.js +4 -22
  507. package/dist/esm/six-root.entry.js.map +1 -1
  508. package/dist/esm/six-search-field.entry.js +5 -4
  509. package/dist/esm/six-search-field.entry.js.map +1 -1
  510. package/dist/esm/six-select.entry.js +334 -177
  511. package/dist/esm/six-select.entry.js.map +1 -1
  512. package/dist/esm/six-sidebar-item-group.entry.js +5 -4
  513. package/dist/esm/six-sidebar-item-group.entry.js.map +1 -1
  514. package/dist/esm/six-sidebar-item.entry.js +5 -4
  515. package/dist/esm/six-sidebar-item.entry.js.map +1 -1
  516. package/dist/esm/six-sidebar.entry.js +6 -5
  517. package/dist/esm/six-sidebar.entry.js.map +1 -1
  518. package/dist/esm/six-spinner.entry.js +4 -3
  519. package/dist/esm/six-spinner.entry.js.map +1 -1
  520. package/dist/esm/six-stage-indicator.entry.js +19 -0
  521. package/dist/esm/six-stage-indicator.entry.js.map +1 -0
  522. package/dist/esm/six-switch.entry.js +8 -7
  523. package/dist/esm/six-switch.entry.js.map +1 -1
  524. package/dist/esm/six-tab-group.entry.js +35 -9
  525. package/dist/esm/six-tab-group.entry.js.map +1 -1
  526. package/dist/esm/six-tab-panel.entry.js +5 -4
  527. package/dist/esm/six-tab-panel.entry.js.map +1 -1
  528. package/dist/esm/six-tab.entry.js +6 -5
  529. package/dist/esm/six-tab.entry.js.map +1 -1
  530. package/dist/esm/six-tag.entry.js +7 -6
  531. package/dist/esm/six-tag.entry.js.map +1 -1
  532. package/dist/esm/six-textarea.entry.js +8 -7
  533. package/dist/esm/six-textarea.entry.js.map +1 -1
  534. package/dist/esm/six-tile.entry.js +8 -7
  535. package/dist/esm/six-tile.entry.js.map +1 -1
  536. package/dist/esm/six-timepicker.entry.js +7 -6
  537. package/dist/esm/six-timepicker.entry.js.map +1 -1
  538. package/dist/esm/six-tooltip.entry.js +6 -5
  539. package/dist/esm/six-tooltip.entry.js.map +1 -1
  540. package/dist/esm/{slot-41bc439a.js → slot-56531341.js} +2 -3
  541. package/dist/esm/slot-56531341.js.map +1 -0
  542. package/dist/esm/{types-07748c42.js → types-a07bb999.js} +3 -1
  543. package/dist/esm/types-a07bb999.js.map +1 -0
  544. package/dist/esm/ui-library.js +7 -5
  545. package/dist/esm/ui-library.js.map +1 -1
  546. package/dist/types/components/six-alert/six-alert.d.ts +13 -6
  547. package/dist/types/components/six-button/six-button.d.ts +1 -1
  548. package/dist/types/components/six-datepicker/six-datepicker.d.ts +1 -1
  549. package/dist/types/components/six-dialog/six-dialog.d.ts +1 -0
  550. package/dist/types/components/six-dropdown/six-dropdown.d.ts +28 -9
  551. package/dist/types/components/six-file-upload/six-file-upload.d.ts +10 -0
  552. package/dist/types/components/six-header/six-header.d.ts +5 -1
  553. package/dist/types/components/six-input/six-input.d.ts +4 -0
  554. package/dist/types/components/six-menu/six-menu.d.ts +4 -0
  555. package/dist/types/components/six-menu-item/six-menu-item.d.ts +7 -1
  556. package/dist/types/components/six-range/six-range.d.ts +2 -0
  557. package/dist/types/components/six-root/six-root.d.ts +0 -13
  558. package/dist/types/components/six-select/six-select.d.ts +26 -13
  559. package/dist/types/components/six-select/util.d.ts +2 -0
  560. package/dist/types/components/six-tab-group/six-tab-group.d.ts +4 -1
  561. package/dist/types/components.d.ts +120 -62
  562. package/dist/types/index.d.ts +1 -0
  563. package/dist/types/types.d.ts +1 -0
  564. package/dist/types/utils/alert.d.ts +10 -0
  565. package/dist/types/utils/date-util.d.ts +9 -1
  566. package/dist/types/utils/error-messages.d.ts +1 -0
  567. package/dist/types/utils/slot.d.ts +0 -1
  568. package/dist/ui-library/assets/TRADEMARKS.md +3 -3
  569. package/dist/ui-library/index.esm.js +1 -1
  570. package/dist/ui-library/index.esm.js.map +1 -1
  571. package/dist/ui-library/p-030fa1fa.entry.js +2 -0
  572. package/dist/ui-library/p-030fa1fa.entry.js.map +1 -0
  573. package/dist/ui-library/p-037afc74.entry.js +2 -0
  574. package/dist/ui-library/p-037afc74.entry.js.map +1 -0
  575. package/dist/ui-library/p-03d1b956.entry.js +2 -0
  576. package/dist/ui-library/p-03d1b956.entry.js.map +1 -0
  577. package/dist/ui-library/p-047d02ad.entry.js +2 -0
  578. package/dist/ui-library/p-047d02ad.entry.js.map +1 -0
  579. package/dist/ui-library/p-05eb1bab.js +3 -0
  580. package/dist/ui-library/p-05eb1bab.js.map +1 -0
  581. package/dist/ui-library/p-060069d4.entry.js +2 -0
  582. package/dist/ui-library/p-060069d4.entry.js.map +1 -0
  583. package/dist/ui-library/p-06ba653e.entry.js +2 -0
  584. package/dist/ui-library/p-06ba653e.entry.js.map +1 -0
  585. package/dist/ui-library/p-07c8de65.entry.js +2 -0
  586. package/dist/ui-library/p-07c8de65.entry.js.map +1 -0
  587. package/dist/ui-library/p-0cebf1d2.js +2 -0
  588. package/dist/ui-library/p-0cebf1d2.js.map +1 -0
  589. package/dist/ui-library/p-14e5fccc.entry.js +2 -0
  590. package/dist/ui-library/p-14e5fccc.entry.js.map +1 -0
  591. package/dist/ui-library/p-189602e4.entry.js +2 -0
  592. package/dist/ui-library/p-189602e4.entry.js.map +1 -0
  593. package/dist/ui-library/p-19560508.entry.js +2 -0
  594. package/dist/ui-library/p-19560508.entry.js.map +1 -0
  595. package/dist/ui-library/p-2386627e.entry.js +2 -0
  596. package/dist/ui-library/p-2386627e.entry.js.map +1 -0
  597. package/dist/ui-library/p-32e421a3.entry.js +2 -0
  598. package/dist/ui-library/p-32e421a3.entry.js.map +1 -0
  599. package/dist/ui-library/p-3603dd96.entry.js +2 -0
  600. package/dist/ui-library/p-3603dd96.entry.js.map +1 -0
  601. package/dist/ui-library/p-39ff5f61.entry.js +2 -0
  602. package/dist/ui-library/p-39ff5f61.entry.js.map +1 -0
  603. package/dist/ui-library/p-3b5a76ea.entry.js +2 -0
  604. package/dist/ui-library/p-3b5a76ea.entry.js.map +1 -0
  605. package/dist/ui-library/p-419ed003.entry.js +2 -0
  606. package/dist/ui-library/p-419ed003.entry.js.map +1 -0
  607. package/dist/ui-library/p-45003bae.entry.js +2 -0
  608. package/dist/ui-library/p-45003bae.entry.js.map +1 -0
  609. package/dist/ui-library/p-4963f03c.entry.js +2 -0
  610. package/dist/ui-library/p-4963f03c.entry.js.map +1 -0
  611. package/dist/ui-library/p-4d89932f.entry.js +2 -0
  612. package/dist/ui-library/p-4d89932f.entry.js.map +1 -0
  613. package/dist/ui-library/{p-6907a7dc.js → p-605bdd81.js} +2 -2
  614. package/dist/ui-library/p-63acceb6.entry.js +2 -0
  615. package/dist/ui-library/p-63acceb6.entry.js.map +1 -0
  616. package/dist/ui-library/p-651293e7.js +2 -0
  617. package/dist/ui-library/p-651293e7.js.map +1 -0
  618. package/dist/ui-library/p-6888b9ee.entry.js +2 -0
  619. package/dist/ui-library/p-6888b9ee.entry.js.map +1 -0
  620. package/dist/ui-library/p-6f9153be.entry.js +2 -0
  621. package/dist/ui-library/p-6f9153be.entry.js.map +1 -0
  622. package/dist/ui-library/p-7561b336.entry.js +2 -0
  623. package/dist/ui-library/p-7561b336.entry.js.map +1 -0
  624. package/dist/ui-library/p-785810fa.entry.js +2 -0
  625. package/dist/ui-library/p-785810fa.entry.js.map +1 -0
  626. package/dist/ui-library/p-7c18b8ca.entry.js +2 -0
  627. package/dist/ui-library/p-7c18b8ca.entry.js.map +1 -0
  628. package/dist/ui-library/p-82bd8781.entry.js +2 -0
  629. package/dist/ui-library/p-82bd8781.entry.js.map +1 -0
  630. package/dist/ui-library/{p-0861899a.js → p-862d474e.js} +1 -1
  631. package/dist/ui-library/p-862d474e.js.map +1 -0
  632. package/dist/ui-library/p-89db9a8b.entry.js +2 -0
  633. package/dist/ui-library/p-89db9a8b.entry.js.map +1 -0
  634. package/dist/ui-library/{p-d310a6dd.entry.js → p-8f1d3461.entry.js} +2 -2
  635. package/dist/ui-library/p-8f1d3461.entry.js.map +1 -0
  636. package/dist/ui-library/p-8fb96142.entry.js +2 -0
  637. package/dist/ui-library/p-8fb96142.entry.js.map +1 -0
  638. package/dist/ui-library/p-96d441e9.entry.js +2 -0
  639. package/dist/ui-library/p-96d441e9.entry.js.map +1 -0
  640. package/dist/ui-library/p-9bc1639b.entry.js +2 -0
  641. package/dist/ui-library/p-9bc1639b.entry.js.map +1 -0
  642. package/dist/ui-library/p-9cb83369.entry.js +2 -0
  643. package/dist/ui-library/p-9cb83369.entry.js.map +1 -0
  644. package/dist/ui-library/p-a398e3eb.entry.js +2 -0
  645. package/dist/ui-library/p-a398e3eb.entry.js.map +1 -0
  646. package/dist/ui-library/p-a7e2f511.entry.js +2 -0
  647. package/dist/ui-library/p-a7e2f511.entry.js.map +1 -0
  648. package/dist/ui-library/p-a8863197.entry.js +2 -0
  649. package/dist/ui-library/p-a8863197.entry.js.map +1 -0
  650. package/dist/ui-library/p-a9e009af.entry.js +2 -0
  651. package/dist/ui-library/p-a9e009af.entry.js.map +1 -0
  652. package/dist/ui-library/p-ab921403.entry.js +2 -0
  653. package/dist/ui-library/p-ab921403.entry.js.map +1 -0
  654. package/dist/ui-library/p-ac00076d.entry.js +2 -0
  655. package/dist/ui-library/p-ac00076d.entry.js.map +1 -0
  656. package/dist/ui-library/p-b4bc4915.entry.js +2 -0
  657. package/dist/ui-library/p-b4bc4915.entry.js.map +1 -0
  658. package/dist/ui-library/p-b5acf54d.entry.js +2 -0
  659. package/dist/ui-library/p-b5acf54d.entry.js.map +1 -0
  660. package/dist/ui-library/p-b60c20aa.entry.js +2 -0
  661. package/dist/ui-library/p-b60c20aa.entry.js.map +1 -0
  662. package/dist/ui-library/p-c1d68730.entry.js +2 -0
  663. package/dist/ui-library/p-c1d68730.entry.js.map +1 -0
  664. package/dist/ui-library/p-c35a7cef.entry.js +2 -0
  665. package/dist/ui-library/p-c35a7cef.entry.js.map +1 -0
  666. package/dist/ui-library/p-c62893e5.entry.js +2 -0
  667. package/dist/ui-library/p-c62893e5.entry.js.map +1 -0
  668. package/dist/ui-library/p-c6464bfe.entry.js +2 -0
  669. package/dist/ui-library/p-c6464bfe.entry.js.map +1 -0
  670. package/dist/ui-library/p-cf109cbf.entry.js +2 -0
  671. package/dist/ui-library/p-cf109cbf.entry.js.map +1 -0
  672. package/dist/ui-library/p-d07b549f.entry.js +2 -0
  673. package/dist/ui-library/p-d07b549f.entry.js.map +1 -0
  674. package/dist/ui-library/p-d42f1ea9.entry.js +2 -0
  675. package/dist/ui-library/p-d42f1ea9.entry.js.map +1 -0
  676. package/dist/ui-library/p-e080d5b6.js +2 -0
  677. package/dist/ui-library/p-e080d5b6.js.map +1 -0
  678. package/dist/ui-library/p-e1255160.js +2 -0
  679. package/dist/ui-library/p-e1255160.js.map +1 -0
  680. package/dist/ui-library/p-fe37dadf.entry.js +2 -0
  681. package/dist/ui-library/p-fe37dadf.entry.js.map +1 -0
  682. package/dist/ui-library/p-fe89a7c4.entry.js +2 -0
  683. package/dist/ui-library/p-fe89a7c4.entry.js.map +1 -0
  684. package/dist/ui-library/ui-library.css +1 -10
  685. package/dist/ui-library/ui-library.esm.js +1 -1
  686. package/dist/ui-library/ui-library.esm.js.map +1 -1
  687. package/package.json +10 -13
  688. package/dist/cjs/index-3baddcdc.js.map +0 -1
  689. package/dist/cjs/modal-3ce015be.js.map +0 -1
  690. package/dist/cjs/set-attributes_2.cjs.entry.js +0 -73
  691. package/dist/cjs/set-attributes_2.cjs.entry.js.map +0 -1
  692. package/dist/cjs/six-checkbox.cjs.entry.js +0 -127
  693. package/dist/cjs/six-checkbox.cjs.entry.js.map +0 -1
  694. package/dist/cjs/six-menu-item.cjs.entry.js +0 -63
  695. package/dist/cjs/six-menu-item.cjs.entry.js.map +0 -1
  696. package/dist/cjs/slot-9821749e.js.map +0 -1
  697. package/dist/cjs/types-0a6d66f6.js.map +0 -1
  698. package/dist/collection/components/six-header/assets/six-logo.svg +0 -1
  699. package/dist/collection/components/six-header/test/six-header.spec.js +0 -141
  700. package/dist/collection/components/six-header/test/six-header.spec.js.map +0 -1
  701. package/dist/collection/utils/support.js +0 -16
  702. package/dist/collection/utils/support.js.map +0 -1
  703. package/dist/collection/wrappers/set-attributes/set-attributes.js +0 -74
  704. package/dist/collection/wrappers/set-attributes/set-attributes.js.map +0 -1
  705. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js +0 -16
  706. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js.map +0 -1
  707. package/dist/components/set-attributes.d.ts +0 -11
  708. package/dist/components/set-attributes.js +0 -8
  709. package/dist/components/set-attributes.js.map +0 -1
  710. package/dist/components/set-attributes2.js +0 -73
  711. package/dist/components/set-attributes2.js.map +0 -1
  712. package/dist/components/six-tag2.js +0 -102
  713. package/dist/components/six-tag2.js.map +0 -1
  714. package/dist/esm/index-17d8173e.js.map +0 -1
  715. package/dist/esm/modal-96526245.js.map +0 -1
  716. package/dist/esm/set-attributes_2.entry.js +0 -68
  717. package/dist/esm/set-attributes_2.entry.js.map +0 -1
  718. package/dist/esm/six-checkbox.entry.js +0 -123
  719. package/dist/esm/six-checkbox.entry.js.map +0 -1
  720. package/dist/esm/six-menu-item.entry.js +0 -59
  721. package/dist/esm/six-menu-item.entry.js.map +0 -1
  722. package/dist/esm/slot-41bc439a.js.map +0 -1
  723. package/dist/esm/types-07748c42.js.map +0 -1
  724. package/dist/types/utils/support.d.ts +0 -1
  725. package/dist/types/wrappers/set-attributes/set-attributes.d.ts +0 -9
  726. package/dist/ui-library/assets/six-logo.svg +0 -1
  727. package/dist/ui-library/p-0861899a.js.map +0 -1
  728. package/dist/ui-library/p-0a81b42c.entry.js +0 -2
  729. package/dist/ui-library/p-0a81b42c.entry.js.map +0 -1
  730. package/dist/ui-library/p-0beec94f.js +0 -3
  731. package/dist/ui-library/p-0beec94f.js.map +0 -1
  732. package/dist/ui-library/p-0e7332db.entry.js +0 -2
  733. package/dist/ui-library/p-0e7332db.entry.js.map +0 -1
  734. package/dist/ui-library/p-178f5782.entry.js +0 -2
  735. package/dist/ui-library/p-178f5782.entry.js.map +0 -1
  736. package/dist/ui-library/p-19a61686.entry.js +0 -2
  737. package/dist/ui-library/p-19a61686.entry.js.map +0 -1
  738. package/dist/ui-library/p-1d0c5929.entry.js +0 -2
  739. package/dist/ui-library/p-1d0c5929.entry.js.map +0 -1
  740. package/dist/ui-library/p-23c02c98.entry.js +0 -2
  741. package/dist/ui-library/p-23c02c98.entry.js.map +0 -1
  742. package/dist/ui-library/p-28221447.entry.js +0 -2
  743. package/dist/ui-library/p-28221447.entry.js.map +0 -1
  744. package/dist/ui-library/p-2eed9d8d.entry.js +0 -2
  745. package/dist/ui-library/p-2eed9d8d.entry.js.map +0 -1
  746. package/dist/ui-library/p-3187bc23.entry.js +0 -2
  747. package/dist/ui-library/p-3187bc23.entry.js.map +0 -1
  748. package/dist/ui-library/p-32e1a5ab.entry.js +0 -2
  749. package/dist/ui-library/p-32e1a5ab.entry.js.map +0 -1
  750. package/dist/ui-library/p-32fed3c7.entry.js +0 -2
  751. package/dist/ui-library/p-32fed3c7.entry.js.map +0 -1
  752. package/dist/ui-library/p-3d54ecf2.entry.js +0 -2
  753. package/dist/ui-library/p-3d54ecf2.entry.js.map +0 -1
  754. package/dist/ui-library/p-4229f7e8.entry.js +0 -2
  755. package/dist/ui-library/p-4229f7e8.entry.js.map +0 -1
  756. package/dist/ui-library/p-479d8087.entry.js +0 -2
  757. package/dist/ui-library/p-479d8087.entry.js.map +0 -1
  758. package/dist/ui-library/p-49aa8d1e.entry.js +0 -2
  759. package/dist/ui-library/p-49aa8d1e.entry.js.map +0 -1
  760. package/dist/ui-library/p-58661675.entry.js +0 -2
  761. package/dist/ui-library/p-58661675.entry.js.map +0 -1
  762. package/dist/ui-library/p-5d43ea07.entry.js +0 -2
  763. package/dist/ui-library/p-5d43ea07.entry.js.map +0 -1
  764. package/dist/ui-library/p-6aa2929a.entry.js +0 -2
  765. package/dist/ui-library/p-6aa2929a.entry.js.map +0 -1
  766. package/dist/ui-library/p-7432d409.entry.js +0 -2
  767. package/dist/ui-library/p-7432d409.entry.js.map +0 -1
  768. package/dist/ui-library/p-74a714c0.entry.js +0 -2
  769. package/dist/ui-library/p-74a714c0.entry.js.map +0 -1
  770. package/dist/ui-library/p-76825395.entry.js +0 -2
  771. package/dist/ui-library/p-76825395.entry.js.map +0 -1
  772. package/dist/ui-library/p-816f857d.entry.js +0 -2
  773. package/dist/ui-library/p-816f857d.entry.js.map +0 -1
  774. package/dist/ui-library/p-882fbf6f.entry.js +0 -2
  775. package/dist/ui-library/p-882fbf6f.entry.js.map +0 -1
  776. package/dist/ui-library/p-88fd4973.entry.js +0 -2
  777. package/dist/ui-library/p-88fd4973.entry.js.map +0 -1
  778. package/dist/ui-library/p-8b750c9e.entry.js +0 -2
  779. package/dist/ui-library/p-8b750c9e.entry.js.map +0 -1
  780. package/dist/ui-library/p-911eb578.entry.js +0 -2
  781. package/dist/ui-library/p-911eb578.entry.js.map +0 -1
  782. package/dist/ui-library/p-93fcda4a.entry.js +0 -2
  783. package/dist/ui-library/p-93fcda4a.entry.js.map +0 -1
  784. package/dist/ui-library/p-981b3228.entry.js +0 -2
  785. package/dist/ui-library/p-981b3228.entry.js.map +0 -1
  786. package/dist/ui-library/p-998de05d.js +0 -2
  787. package/dist/ui-library/p-998de05d.js.map +0 -1
  788. package/dist/ui-library/p-9b1ff147.entry.js +0 -2
  789. package/dist/ui-library/p-9b1ff147.entry.js.map +0 -1
  790. package/dist/ui-library/p-a0658b26.entry.js +0 -2
  791. package/dist/ui-library/p-a0658b26.entry.js.map +0 -1
  792. package/dist/ui-library/p-a4e4620c.entry.js +0 -2
  793. package/dist/ui-library/p-a4e4620c.entry.js.map +0 -1
  794. package/dist/ui-library/p-ada23fe3.entry.js +0 -2
  795. package/dist/ui-library/p-ada23fe3.entry.js.map +0 -1
  796. package/dist/ui-library/p-b5ac1219.entry.js +0 -2
  797. package/dist/ui-library/p-b5ac1219.entry.js.map +0 -1
  798. package/dist/ui-library/p-ba247565.entry.js +0 -2
  799. package/dist/ui-library/p-ba247565.entry.js.map +0 -1
  800. package/dist/ui-library/p-bdb79948.entry.js +0 -2
  801. package/dist/ui-library/p-bdb79948.entry.js.map +0 -1
  802. package/dist/ui-library/p-bee65dd9.entry.js +0 -2
  803. package/dist/ui-library/p-bee65dd9.entry.js.map +0 -1
  804. package/dist/ui-library/p-c07b1240.entry.js +0 -2
  805. package/dist/ui-library/p-c07b1240.entry.js.map +0 -1
  806. package/dist/ui-library/p-c12a94ce.entry.js +0 -2
  807. package/dist/ui-library/p-c12a94ce.entry.js.map +0 -1
  808. package/dist/ui-library/p-c1675a45.entry.js +0 -2
  809. package/dist/ui-library/p-c1675a45.entry.js.map +0 -1
  810. package/dist/ui-library/p-c2df8c27.entry.js +0 -2
  811. package/dist/ui-library/p-c2df8c27.entry.js.map +0 -1
  812. package/dist/ui-library/p-c86aa5b3.entry.js +0 -2
  813. package/dist/ui-library/p-c86aa5b3.entry.js.map +0 -1
  814. package/dist/ui-library/p-cd35b3c6.entry.js +0 -2
  815. package/dist/ui-library/p-cd35b3c6.entry.js.map +0 -1
  816. package/dist/ui-library/p-ce373da5.entry.js +0 -2
  817. package/dist/ui-library/p-ce373da5.entry.js.map +0 -1
  818. package/dist/ui-library/p-d2cf4280.entry.js +0 -2
  819. package/dist/ui-library/p-d2cf4280.entry.js.map +0 -1
  820. package/dist/ui-library/p-d310a6dd.entry.js.map +0 -1
  821. package/dist/ui-library/p-dfb6bff6.entry.js +0 -2
  822. package/dist/ui-library/p-dfb6bff6.entry.js.map +0 -1
  823. package/dist/ui-library/p-ee71e3a3.entry.js +0 -2
  824. package/dist/ui-library/p-ee71e3a3.entry.js.map +0 -1
  825. package/dist/ui-library/p-ef317d69.entry.js +0 -2
  826. package/dist/ui-library/p-ef317d69.entry.js.map +0 -1
  827. package/dist/ui-library/p-f385f1c2.entry.js +0 -2
  828. package/dist/ui-library/p-f385f1c2.entry.js.map +0 -1
  829. package/dist/ui-library/p-f73a6bdc.entry.js +0 -2
  830. package/dist/ui-library/p-f73a6bdc.entry.js.map +0 -1
  831. package/dist/ui-library/p-faa04bb5.js +0 -2
  832. package/dist/ui-library/p-faa04bb5.js.map +0 -1
  833. package/dist/ui-library/p-fcd57e0a.entry.js +0 -2
  834. package/dist/ui-library/p-fcd57e0a.entry.js.map +0 -1
  835. /package/dist/ui-library/{p-6907a7dc.js.map → p-605bdd81.js.map} +0 -0
@@ -2,12 +2,13 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-3baddcdc.js');
5
+ const index = require('./index-1f707a55.js');
6
6
  const eventListeners = require('./event-listeners-9fb878f1.js');
7
- const formControl = require('./form-control-f9bc25dd.js');
8
- const slot = require('./slot-9821749e.js');
7
+ const formControl = require('./form-control-de259450.js');
8
+ const slot = require('./slot-1b1232a1.js');
9
9
 
10
- const sixSwitchCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}.form-control .form-control__label{display:none}.form-control .form-control__help-text{display:none}.form-control .form-control__error-text{display:none;text-align:left}.form-control--has-label .form-control__label{display:inline-block;color:var(--six-input-label-color);font-weight:var(--six-font-weight-bold);margin-bottom:var(--six-spacing-x-small)}.form-control--has-label .form-control__label__required::after{color:var(--six-color-danger-800);content:\"*\";transform:scale(1.1);margin-left:var(--six-spacing-xxx-small);position:absolute}.form-control--has-label.form-control--small .form-control__label{font-size:var(--six-input-label-font-size-small)}.form-control--has-label.form-control--medium .form-control__label{font-size:var(--six-input-label-font-size-medium)}.form-control--has-label.form-control--large .form-control_label{font-size:var(--six-input-label-font-size-large)}.form-control--has-help-text .form-control__help-text{display:block;color:var(--six-input-help-text-color);margin-top:var(--six-spacing-x-small)}.form-control--has-help-text .form-control__help-text ::slotted(*){margin-top:var(--six-spacing-xxx-small)}.form-control--has-help-text.form-control--small .form-control__help-text{font-size:var(--six-input-help-text-font-size-small)}.form-control--has-help-text.form-control--medium .form-control__help-text{font-size:var(--six-input-help-text-font-size-medium)}.form-control--has-help-text.form-control--large .form-control__help-text{font-size:var(--six-input-help-text-font-size-large)}.form-control--has-error-text .form-control__error-text{display:block;margin-top:var(--six-spacing-xxx-small)}.form-control--has-error-text .form-control__error-text ::slotted(*){margin-top:var(--six-spacing-xxx-small)}.form-control--has-error-text.form-control--small .form-control__error-text{font-size:var(--six-input-help-text-font-size-small)}.form-control--has-error-text.form-control--medium .form-control__error-text{font-size:var(--six-input-help-text-font-size-medium)}.form-control--has-error-text.form-control--large .form-control__error-text{font-size:var(--six-input-help-text-font-size-large)}.form-control--disabled .form-control__help-text{color:var(--six-input-help-text-color-disabled)}.form-control--disabled .form-control__label{color:var(--six-input-label-color-disabled)}.form-control--invalid:not(.form-control--disabled) .form-control__label{color:var(--six-input-label-color)}:host{--height:var(--six-selection-control-toggle-size);--thumb-size:calc(var(--six-selection-control-toggle-size) - 4px);--width:calc(var(--height) * 2);display:inline-block}.switch{display:inline-flex;align-items:center;font-family:var(--six-font-family);font-size:var(--six-input-font-size-medium);font-weight:var(--six-input-font-weight);color:var(--six-input-color);vertical-align:middle;cursor:pointer}.switch__control{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--width);height:var(--height);background-color:var(--six-selection-control-color-disabled);border-radius:var(--height);transition:var(--six-transition-fast) border-color, var(--six-transition-fast) background-color}.switch__control .switch__thumb{width:var(--thumb-size);height:var(--thumb-size);background-color:var(--six-input-background-color);border-radius:50%;transform:translateX(calc(var(--width) / -2 + var(--thumb-size) / 2 - (var(--thumb-size) - var(--height)) / 2));transition:var(--six-transition-fast) transform ease, var(--six-transition-fast) background-color, var(--six-transition-fast) border-color, var(--six-transition-fast) box-shadow}.switch__control input[type=checkbox]{position:absolute;opacity:0;padding:0;margin:0;pointer-events:none}.switch:not(.switch--checked):not(.switch--disabled) .switch__control:hover{background-color:var(--six-input-border-color-hover)}.switch--checked .switch__control{background-color:var(--six-selection-control-color)}.switch--checked .switch__control .switch__thumb{background-color:var(--six-color-white);transform:translateX(calc(var(--width) / 2 - var(--thumb-size) / 2 + (var(--thumb-size) - var(--height)) / 2))}.switch.switch--checked:not(.switch--disabled) .switch__control:hover{background-color:var(--six-input-border-color-focus)}.switch--disabled{cursor:not-allowed;color:var(--six-selection-control-color-disabled)}.switch--disabled .switch__control{background-color:var(--six-selection-control-color-disabled)}.switch--disabled.switch--checked .switch__control{background-color:var(--six-selection-control-color-disabled)}.switch__label{line-height:var(--height);margin-left:0.5em;user-select:none}";
10
+ const sixSwitchCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}.form-control .form-control__label{display:none}.form-control .form-control__help-text{display:none}.form-control .form-control__error-text{display:none;text-align:left}.form-control--has-label .form-control__label{display:inline-block;color:var(--six-input-label-color);font-weight:var(--six-font-weight-bold);margin-bottom:var(--six-spacing-x-small)}.form-control--has-label .form-control__label__required::after{color:var(--six-color-danger-800);content:\"*\";transform:scale(1.1);margin-left:var(--six-spacing-xxx-small);position:absolute}.form-control--has-label.form-control--small .form-control__label{font-size:var(--six-input-label-font-size-small)}.form-control--has-label.form-control--medium .form-control__label{font-size:var(--six-input-label-font-size-medium)}.form-control--has-label.form-control--large .form-control_label{font-size:var(--six-input-label-font-size-large)}.form-control--has-help-text .form-control__help-text{display:block;color:var(--six-input-help-text-color);margin-top:var(--six-spacing-x-small)}.form-control--has-help-text .form-control__help-text ::slotted(*){margin-top:var(--six-spacing-xxx-small)}.form-control--has-help-text.form-control--small .form-control__help-text{font-size:var(--six-input-help-text-font-size-small)}.form-control--has-help-text.form-control--medium .form-control__help-text{font-size:var(--six-input-help-text-font-size-medium)}.form-control--has-help-text.form-control--large .form-control__help-text{font-size:var(--six-input-help-text-font-size-large)}.form-control--has-error-text .form-control__error-text{display:block;margin-top:var(--six-spacing-xxx-small)}.form-control--has-error-text .form-control__error-text ::slotted(*){margin-top:var(--six-spacing-xxx-small)}.form-control--has-error-text.form-control--small .form-control__error-text{font-size:var(--six-input-help-text-font-size-small)}.form-control--has-error-text.form-control--medium .form-control__error-text{font-size:var(--six-input-help-text-font-size-medium)}.form-control--has-error-text.form-control--large .form-control__error-text{font-size:var(--six-input-help-text-font-size-large)}.form-control--disabled .form-control__help-text{color:var(--six-input-help-text-color-disabled)}.form-control--disabled .form-control__label{color:var(--six-input-label-color-disabled)}.form-control--invalid:not(.form-control--disabled) .form-control__label{color:var(--six-input-label-color)}:host{--height:var(--six-selection-control-toggle-size);--thumb-size:calc(var(--six-selection-control-toggle-size) - 4px);--width:calc(var(--height) * 2);display:inline-block}.switch{display:inline-flex;align-items:center;font-family:var(--six-font-family);font-size:var(--six-input-font-size-medium);font-weight:var(--six-input-font-weight);color:var(--six-input-color);vertical-align:middle;cursor:pointer}.switch__control{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--width);height:var(--height);background-color:var(--six-selection-control-color-disabled);border-radius:var(--height);transition:var(--six-transition-fast) border-color, var(--six-transition-fast) background-color}.switch__control .switch__thumb{width:var(--thumb-size);height:var(--thumb-size);background-color:var(--six-input-background-color);border-radius:50%;transform:translateX(calc(var(--width) / -2 + var(--thumb-size) / 2 - (var(--thumb-size) - var(--height)) / 2));transition:var(--six-transition-fast) transform ease, var(--six-transition-fast) background-color, var(--six-transition-fast) border-color, var(--six-transition-fast) box-shadow}.switch__control input[type=checkbox]{position:absolute;opacity:0;padding:0;margin:0;pointer-events:none}.switch:not(.switch--checked):not(.switch--disabled) .switch__control:hover{background-color:var(--six-input-border-color-hover)}.switch--checked .switch__control{background-color:var(--six-selection-control-color)}.switch--checked .switch__control .switch__thumb{background-color:var(--six-color-white);transform:translateX(calc(var(--width) / 2 - var(--thumb-size) / 2 + (var(--thumb-size) - var(--height)) / 2))}.switch.switch--checked:not(.switch--disabled) .switch__control:hover{background-color:var(--six-input-border-color-focus)}.switch--disabled{cursor:not-allowed;color:var(--six-selection-control-color-disabled)}.switch--disabled .switch__control{background-color:var(--six-selection-control-color-disabled)}.switch--disabled.switch--checked .switch__control{background-color:var(--six-selection-control-color-disabled)}.switch__label{line-height:var(--height);margin-left:0.5em;user-select:none}";
11
+ const SixSwitchStyle0 = sixSwitchCss;
11
12
 
12
13
  let id = 0;
13
14
  const SixSwitch = class {
@@ -102,12 +103,12 @@ const SixSwitch = class {
102
103
  (_a = this.inputElement) === null || _a === void 0 ? void 0 : _a.blur();
103
104
  }
104
105
  render() {
105
- return (index.h(formControl.FormControl, { inputId: this.switchId, label: this.label, labelId: this.labelId, hasLabelSlot: false, errorTextId: this.errorTextId, errorText: this.errorText, errorTextCount: this.errorTextCount, hasErrorTextSlot: this.hasErrorTextSlot, size: "medium", disabled: this.disabled, required: this.required, displayError: this.invalid }, index.h("label", { part: "base", htmlFor: this.switchId, class: {
106
+ return (index.h(formControl.FormControl, { key: '9d6b19d30b6fbe9edaca09765fb987496085af3d', inputId: this.switchId, label: this.label, labelId: this.labelId, hasLabelSlot: false, errorTextId: this.errorTextId, errorText: this.errorText, errorTextCount: this.errorTextCount, hasErrorTextSlot: this.hasErrorTextSlot, size: "medium", disabled: this.disabled, required: this.required, displayError: this.invalid }, index.h("label", { key: '3e17b60e405ebdbb9a2329677b7ba58bf5b39506', part: "base", htmlFor: this.switchId, class: {
106
107
  switch: true,
107
108
  'switch--checked': this.checked,
108
109
  'switch--disabled': this.disabled,
109
110
  'switch--focused': this.hasFocus,
110
- }, onMouseDown: this.handleMouseDown }, index.h("span", { part: "control", class: "switch__control" }, index.h("span", { part: "thumb", class: "switch__thumb" }), index.h("input", { ref: (el) => (this.inputElement = el), id: this.switchId, type: "checkbox", name: this.name, value: this.value, checked: this.checked, disabled: this.disabled, required: this.required, role: "switch", "aria-checked": this.checked ? 'true' : 'false', "aria-labelledby": this.labelId, onClick: this.handleClick, onBlur: this.handleBlur, onFocus: this.handleFocus, onKeyDown: this.handleKeyDown })), index.h("span", { part: "label", id: this.labelId, class: "switch__label" }, index.h("slot", null)))));
111
+ }, onMouseDown: this.handleMouseDown }, index.h("span", { key: 'a8f0a78413ef612287e59d371ecc4a4de3f95d86', part: "control", class: "switch__control" }, index.h("span", { key: '02e2e4f0ebea74189adaae5c5820e72c317fb3c8', part: "thumb", class: "switch__thumb" }), index.h("input", { key: '50f37e2801b211be3a3f378f3f59c736f10900ea', ref: (el) => (this.inputElement = el), id: this.switchId, type: "checkbox", name: this.name, value: this.value, checked: this.checked, disabled: this.disabled, required: this.required, role: "switch", "aria-checked": this.checked ? 'true' : 'false', "aria-labelledby": this.labelId, onClick: this.handleClick, onBlur: this.handleBlur, onFocus: this.handleFocus, onKeyDown: this.handleKeyDown })), index.h("span", { key: '9a4e42a33a099be2301b47553f1238f2e4acf027', part: "label", id: this.labelId, class: "switch__label" }, index.h("slot", { key: 'f393ef7b2eb5621a4a203d0502017a428412080d' })))));
111
112
  }
112
113
  get host() { return index.getElement(this); }
113
114
  static get watchers() { return {
@@ -116,7 +117,7 @@ const SixSwitch = class {
116
117
  "label": ["handleLabelChange"]
117
118
  }; }
118
119
  };
119
- SixSwitch.style = sixSwitchCss;
120
+ SixSwitch.style = SixSwitchStyle0;
120
121
 
121
122
  exports.six_switch = SixSwitch;
122
123
 
@@ -1 +1 @@
1
- {"file":"six-switch.entry.cjs.js","mappings":"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","names":["EventListeners","hasSlot","h","FormControl"],"sources":["src/components/six-switch/six-switch.scss?tag=six-switch&encapsulation=shadow","src/components/six-switch/six-switch.tsx"],"sourcesContent":["@import 'src/global/component';\n@import '../../functional-components/form-control/form-control';\n\n/**\n * @prop --width: The width of the switch.\n * @prop --height: The height of the switch.\n * @prop --thumb-size: The size of the thumb.\n */\n:host {\n --height: var(--six-selection-control-toggle-size);\n --thumb-size: calc(var(--six-selection-control-toggle-size) - 4px);\n --width: calc(var(--height) * 2);\n\n display: inline-block;\n}\n\n.switch {\n display: inline-flex;\n align-items: center;\n font-family: var(--six-font-family);\n font-size: var(--six-input-font-size-medium);\n font-weight: var(--six-input-font-weight);\n color: var(--six-input-color);\n vertical-align: middle;\n cursor: pointer;\n}\n\n.switch__control {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--width);\n height: var(--height);\n background-color: var(--six-selection-control-color-disabled);\n border-radius: var(--height);\n transition: var(--six-transition-fast) border-color, var(--six-transition-fast) background-color;\n\n .switch__thumb {\n width: var(--thumb-size);\n height: var(--thumb-size);\n background-color: var(--six-input-background-color);\n border-radius: 50%;\n transform: translateX(calc(var(--width) / -2 + var(--thumb-size) / 2 - (var(--thumb-size) - var(--height)) / 2));\n transition: var(--six-transition-fast) transform ease, var(--six-transition-fast) background-color,\n var(--six-transition-fast) border-color, var(--six-transition-fast) box-shadow;\n }\n\n input[type='checkbox'] {\n position: absolute;\n opacity: 0;\n padding: 0;\n margin: 0;\n pointer-events: none;\n }\n}\n\n// Hover\n.switch:not(.switch--checked):not(.switch--disabled) .switch__control:hover {\n background-color: var(--six-input-border-color-hover);\n}\n\n// Checked\n.switch--checked .switch__control {\n background-color: var(--six-selection-control-color);\n\n .switch__thumb {\n background-color: var(--six-color-white);\n transform: translateX(calc(var(--width) / 2 - var(--thumb-size) / 2 + (var(--thumb-size) - var(--height)) / 2));\n }\n}\n\n// Checked + hover\n.switch.switch--checked:not(.switch--disabled) .switch__control:hover {\n background-color: var(--six-input-border-color-focus);\n}\n\n// Disabled\n.switch--disabled {\n cursor: not-allowed;\n color: var(--six-selection-control-color-disabled);\n\n .switch__control {\n background-color: var(--six-selection-control-color-disabled);\n }\n\n &.switch--checked .switch__control {\n background-color: var(--six-selection-control-color-disabled);\n }\n}\n\n.switch__label {\n line-height: var(--height);\n margin-left: 0.5em;\n user-select: none;\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { EmptyPayload } from '../../utils/types';\nimport { EventListeners } from '../../utils/event-listeners';\nimport FormControl from '../../functional-components/form-control/form-control';\nimport { hasSlot } from '../../utils/slot';\n\nlet id = 0;\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 - The switch's label.\n * @slot error-text - Error text that is shown for validation errors. Alternatively, you can use the error-text prop.\n *\n * @part base - The component's base wrapper.\n * @part control - The switch control.\n * @part thumb - The switch position indicator.\n * @part label - The switch label.\n */\n\n@Component({\n tag: 'six-switch',\n styleUrl: 'six-switch.scss',\n shadow: true,\n})\nexport class SixSwitch {\n private switchId = `switch-${++id}`;\n private labelId = `switch-label-${id}`;\n private errorTextId = `input-error-text-${id}`;\n\n private inputElement?: HTMLInputElement;\n private eventListeners = new EventListeners();\n\n @Element() host!: HTMLSixSwitchElement;\n\n @State() hasFocus = false;\n @State() hasErrorTextSlot = false;\n\n /** The switch's name attribute. */\n @Prop() name = '';\n\n /** The switch's value attribute. */\n @Prop() value = 'on';\n\n /** Set to true to disable the switch. */\n @Prop() disabled = false;\n\n /** Set to true to show an asterisk beneath the label. */\n @Prop() required = false;\n\n /** Set to true to draw the switch in a checked state. */\n @Prop({ mutable: true, reflect: true }) checked = false;\n\n /** The label text. */\n @Prop() label = '';\n\n /** The error message shown, if `invalid` is set to true. */\n @Prop() errorText: string | string[] = '';\n\n /** The number of error texts to be shown (if the error-text slot isn't used). Defaults to 1 */\n @Prop() errorTextCount?: number;\n\n /** If this property is set to true and an error message is provided by `errorText`, the error message is displayed. */\n @Prop({ reflect: true }) invalid = false;\n\n componentWillLoad() {\n this.handleSlotChange();\n }\n\n @Watch('checked')\n handleCheckedChange() {\n if (this.inputElement != null) {\n this.inputElement.checked = this.checked;\n this.checked = this.inputElement.checked;\n }\n }\n\n /** Emitted when the control loses focus. */\n @Event({ eventName: 'six-switch-blur' }) sixBlur!: EventEmitter<boolean>;\n\n /** Emitted when the control's checked state changes. */\n @Event({ eventName: 'six-switch-change' }) sixChange!: EventEmitter<boolean>;\n\n /** Emitted when the control gains focus. */\n @Event({ eventName: 'six-switch-focus' }) sixFocus!: EventEmitter<EmptyPayload>;\n\n connectedCallback() {\n this.host.shadowRoot?.addEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.forward('six-switch-change', 'change', this.host);\n this.eventListeners.forward('six-switch-blur', 'blur', this.host);\n this.eventListeners.forward('six-switch-focus', 'focus', this.host);\n }\n\n disconnectedCallback() {\n this.host.shadowRoot?.removeEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.removeAll();\n }\n\n @Watch('errorText')\n @Watch('label')\n handleLabelChange() {\n this.handleSlotChange();\n }\n\n private handleSlotChange = () => {\n this.hasErrorTextSlot = hasSlot(this.host, 'error-text');\n };\n\n /** Sets focus on the switch. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.inputElement?.focus(options);\n }\n\n /** Removes focus from the switch. */\n @Method()\n async removeFocus() {\n this.inputElement?.blur();\n }\n\n private handleClick = () => {\n if (this.inputElement != null) {\n this.checked = this.inputElement.checked;\n this.sixChange.emit(this.checked);\n }\n };\n\n private handleBlur = () => {\n this.hasFocus = false;\n this.sixBlur.emit(this.checked);\n };\n\n private handleFocus = () => {\n this.hasFocus = true;\n this.sixFocus.emit();\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === 'ArrowLeft') {\n event.preventDefault();\n this.checked = false;\n this.sixChange.emit(this.checked);\n }\n\n if (event.key === 'ArrowRight') {\n event.preventDefault();\n this.checked = true;\n this.sixChange.emit(this.checked);\n }\n };\n\n private handleMouseDown = (event: MouseEvent) => {\n // Prevent clicks on the label from briefly blurring the input\n event.preventDefault();\n this.inputElement?.focus();\n };\n\n render() {\n return (\n <FormControl\n inputId={this.switchId}\n label={this.label}\n labelId={this.labelId}\n hasLabelSlot={false}\n errorTextId={this.errorTextId}\n errorText={this.errorText}\n errorTextCount={this.errorTextCount}\n hasErrorTextSlot={this.hasErrorTextSlot}\n size=\"medium\"\n disabled={this.disabled}\n required={this.required}\n displayError={this.invalid}\n >\n <label\n part=\"base\"\n htmlFor={this.switchId}\n class={{\n switch: true,\n 'switch--checked': this.checked,\n 'switch--disabled': this.disabled,\n 'switch--focused': this.hasFocus,\n }}\n onMouseDown={this.handleMouseDown}\n >\n <span part=\"control\" class=\"switch__control\">\n <span part=\"thumb\" class=\"switch__thumb\" />\n\n <input\n ref={(el) => (this.inputElement = el)}\n id={this.switchId}\n type=\"checkbox\"\n name={this.name}\n value={this.value}\n checked={this.checked}\n disabled={this.disabled}\n required={this.required}\n role=\"switch\"\n aria-checked={this.checked ? 'true' : 'false'}\n aria-labelledby={this.labelId}\n onClick={this.handleClick}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onKeyDown={this.handleKeyDown}\n />\n </span>\n\n <span part=\"label\" id={this.labelId} class=\"switch__label\">\n <slot />\n </span>\n </label>\n </FormControl>\n );\n }\n}\n"],"version":3}
1
+ {"file":"six-switch.entry.cjs.js","mappings":"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","names":["EventListeners","hasSlot","h","FormControl"],"sources":["src/components/six-switch/six-switch.scss?tag=six-switch&encapsulation=shadow","src/components/six-switch/six-switch.tsx"],"sourcesContent":["@import 'src/global/component';\n@import '../../functional-components/form-control/form-control';\n\n/**\n * @prop --width: The width of the switch.\n * @prop --height: The height of the switch.\n * @prop --thumb-size: The size of the thumb.\n */\n:host {\n --height: var(--six-selection-control-toggle-size);\n --thumb-size: calc(var(--six-selection-control-toggle-size) - 4px);\n --width: calc(var(--height) * 2);\n\n display: inline-block;\n}\n\n.switch {\n display: inline-flex;\n align-items: center;\n font-family: var(--six-font-family);\n font-size: var(--six-input-font-size-medium);\n font-weight: var(--six-input-font-weight);\n color: var(--six-input-color);\n vertical-align: middle;\n cursor: pointer;\n}\n\n.switch__control {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--width);\n height: var(--height);\n background-color: var(--six-selection-control-color-disabled);\n border-radius: var(--height);\n transition: var(--six-transition-fast) border-color, var(--six-transition-fast) background-color;\n\n .switch__thumb {\n width: var(--thumb-size);\n height: var(--thumb-size);\n background-color: var(--six-input-background-color);\n border-radius: 50%;\n transform: translateX(calc(var(--width) / -2 + var(--thumb-size) / 2 - (var(--thumb-size) - var(--height)) / 2));\n transition: var(--six-transition-fast) transform ease, var(--six-transition-fast) background-color,\n var(--six-transition-fast) border-color, var(--six-transition-fast) box-shadow;\n }\n\n input[type='checkbox'] {\n position: absolute;\n opacity: 0;\n padding: 0;\n margin: 0;\n pointer-events: none;\n }\n}\n\n// Hover\n.switch:not(.switch--checked):not(.switch--disabled) .switch__control:hover {\n background-color: var(--six-input-border-color-hover);\n}\n\n// Checked\n.switch--checked .switch__control {\n background-color: var(--six-selection-control-color);\n\n .switch__thumb {\n background-color: var(--six-color-white);\n transform: translateX(calc(var(--width) / 2 - var(--thumb-size) / 2 + (var(--thumb-size) - var(--height)) / 2));\n }\n}\n\n// Checked + hover\n.switch.switch--checked:not(.switch--disabled) .switch__control:hover {\n background-color: var(--six-input-border-color-focus);\n}\n\n// Disabled\n.switch--disabled {\n cursor: not-allowed;\n color: var(--six-selection-control-color-disabled);\n\n .switch__control {\n background-color: var(--six-selection-control-color-disabled);\n }\n\n &.switch--checked .switch__control {\n background-color: var(--six-selection-control-color-disabled);\n }\n}\n\n.switch__label {\n line-height: var(--height);\n margin-left: 0.5em;\n user-select: none;\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { EmptyPayload } from '../../utils/types';\nimport { EventListeners } from '../../utils/event-listeners';\nimport FormControl from '../../functional-components/form-control/form-control';\nimport { hasSlot } from '../../utils/slot';\n\nlet id = 0;\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 - The switch's label.\n * @slot error-text - Error text that is shown for validation errors. Alternatively, you can use the error-text prop.\n *\n * @part base - The component's base wrapper.\n * @part control - The switch control.\n * @part thumb - The switch position indicator.\n * @part label - The switch label.\n */\n\n@Component({\n tag: 'six-switch',\n styleUrl: 'six-switch.scss',\n shadow: true,\n})\nexport class SixSwitch {\n private switchId = `switch-${++id}`;\n private labelId = `switch-label-${id}`;\n private errorTextId = `input-error-text-${id}`;\n\n private inputElement?: HTMLInputElement;\n private eventListeners = new EventListeners();\n\n @Element() host!: HTMLSixSwitchElement;\n\n @State() hasFocus = false;\n @State() hasErrorTextSlot = false;\n\n /** The switch's name attribute. */\n @Prop() name = '';\n\n /** The switch's value attribute. */\n @Prop() value = 'on';\n\n /** Set to true to disable the switch. */\n @Prop() disabled = false;\n\n /** Set to true to show an asterisk beneath the label. */\n @Prop() required = false;\n\n /** Set to true to draw the switch in a checked state. */\n @Prop({ mutable: true, reflect: true }) checked = false;\n\n /** The label text. */\n @Prop() label = '';\n\n /** The error message shown, if `invalid` is set to true. */\n @Prop() errorText: string | string[] = '';\n\n /** The number of error texts to be shown (if the error-text slot isn't used). Defaults to 1 */\n @Prop() errorTextCount?: number;\n\n /** If this property is set to true and an error message is provided by `errorText`, the error message is displayed. */\n @Prop({ reflect: true }) invalid = false;\n\n componentWillLoad() {\n this.handleSlotChange();\n }\n\n @Watch('checked')\n handleCheckedChange() {\n if (this.inputElement != null) {\n this.inputElement.checked = this.checked;\n this.checked = this.inputElement.checked;\n }\n }\n\n /** Emitted when the control loses focus. */\n @Event({ eventName: 'six-switch-blur' }) sixBlur!: EventEmitter<boolean>;\n\n /** Emitted when the control's checked state changes. */\n @Event({ eventName: 'six-switch-change' }) sixChange!: EventEmitter<boolean>;\n\n /** Emitted when the control gains focus. */\n @Event({ eventName: 'six-switch-focus' }) sixFocus!: EventEmitter<EmptyPayload>;\n\n connectedCallback() {\n this.host.shadowRoot?.addEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.forward('six-switch-change', 'change', this.host);\n this.eventListeners.forward('six-switch-blur', 'blur', this.host);\n this.eventListeners.forward('six-switch-focus', 'focus', this.host);\n }\n\n disconnectedCallback() {\n this.host.shadowRoot?.removeEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.removeAll();\n }\n\n @Watch('errorText')\n @Watch('label')\n handleLabelChange() {\n this.handleSlotChange();\n }\n\n private handleSlotChange = () => {\n this.hasErrorTextSlot = hasSlot(this.host, 'error-text');\n };\n\n /** Sets focus on the switch. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.inputElement?.focus(options);\n }\n\n /** Removes focus from the switch. */\n @Method()\n async removeFocus() {\n this.inputElement?.blur();\n }\n\n private handleClick = () => {\n if (this.inputElement != null) {\n this.checked = this.inputElement.checked;\n this.sixChange.emit(this.checked);\n }\n };\n\n private handleBlur = () => {\n this.hasFocus = false;\n this.sixBlur.emit(this.checked);\n };\n\n private handleFocus = () => {\n this.hasFocus = true;\n this.sixFocus.emit();\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === 'ArrowLeft') {\n event.preventDefault();\n this.checked = false;\n this.sixChange.emit(this.checked);\n }\n\n if (event.key === 'ArrowRight') {\n event.preventDefault();\n this.checked = true;\n this.sixChange.emit(this.checked);\n }\n };\n\n private handleMouseDown = (event: MouseEvent) => {\n // Prevent clicks on the label from briefly blurring the input\n event.preventDefault();\n this.inputElement?.focus();\n };\n\n render() {\n return (\n <FormControl\n inputId={this.switchId}\n label={this.label}\n labelId={this.labelId}\n hasLabelSlot={false}\n errorTextId={this.errorTextId}\n errorText={this.errorText}\n errorTextCount={this.errorTextCount}\n hasErrorTextSlot={this.hasErrorTextSlot}\n size=\"medium\"\n disabled={this.disabled}\n required={this.required}\n displayError={this.invalid}\n >\n <label\n part=\"base\"\n htmlFor={this.switchId}\n class={{\n switch: true,\n 'switch--checked': this.checked,\n 'switch--disabled': this.disabled,\n 'switch--focused': this.hasFocus,\n }}\n onMouseDown={this.handleMouseDown}\n >\n <span part=\"control\" class=\"switch__control\">\n <span part=\"thumb\" class=\"switch__thumb\" />\n\n <input\n ref={(el) => (this.inputElement = el)}\n id={this.switchId}\n type=\"checkbox\"\n name={this.name}\n value={this.value}\n checked={this.checked}\n disabled={this.disabled}\n required={this.required}\n role=\"switch\"\n aria-checked={this.checked ? 'true' : 'false'}\n aria-labelledby={this.labelId}\n onClick={this.handleClick}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onKeyDown={this.handleKeyDown}\n />\n </span>\n\n <span part=\"label\" id={this.labelId} class=\"switch__label\">\n <slot />\n </span>\n </label>\n </FormControl>\n );\n }\n}\n"],"version":3}
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-3baddcdc.js');
5
+ const index = require('./index-1f707a55.js');
6
6
  const scroll = require('./scroll-68033901.js');
7
7
 
8
8
  /**
@@ -39,7 +39,8 @@ function flipAnimate(element, fromElement, options = {
39
39
  ], options);
40
40
  }
41
41
 
42
- const sixTabGroupCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}: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}";
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}";
43
+ const SixTabGroupStyle0 = sixTabGroupCss;
43
44
 
44
45
  const SixTabGroup = class {
45
46
  constructor(hostRef) {
@@ -111,7 +112,8 @@ const SixTabGroup = class {
111
112
  behavior: 'smooth',
112
113
  });
113
114
  };
114
- this.hasScrollControls = false;
115
+ this.hasLeftControl = false;
116
+ this.hasRightControl = false;
115
117
  this.placement = 'top';
116
118
  this.noScrollControls = false;
117
119
  }
@@ -133,6 +135,13 @@ const SixTabGroup = class {
133
135
  this.resizeObserver = new ResizeObserver(() => this.updateScrollControls());
134
136
  this.resizeObserver.observe(this.nav);
135
137
  requestAnimationFrame(() => this.updateScrollControls());
138
+ this.nav.addEventListener('scroll', () => {
139
+ if (this.nav == null) {
140
+ return;
141
+ }
142
+ this.hasRightControl = this.calculateRightControlVisibility();
143
+ this.hasLeftControl = this.calculateLeftControlVisibility();
144
+ });
136
145
  // Update aria labels if the DOM changes
137
146
  this.mutationObserver = new MutationObserver((mutations) => {
138
147
  if (mutations.some((mutation) => {
@@ -180,12 +189,29 @@ const SixTabGroup = class {
180
189
  getActiveTab() {
181
190
  return this.getAllTabs().find((el) => el.active);
182
191
  }
192
+ calculateRightControlVisibility() {
193
+ var _a, _b, _c;
194
+ if (this.nav == null) {
195
+ return false;
196
+ }
197
+ return Math.abs((_a = this.nav) === null || _a === void 0 ? void 0 : _a.scrollLeft) + ((_b = this.nav) === null || _b === void 0 ? void 0 : _b.clientWidth) < ((_c = this.nav) === null || _c === void 0 ? void 0 : _c.scrollWidth) - 1;
198
+ }
199
+ calculateLeftControlVisibility() {
200
+ var _a;
201
+ if (this.nav == null) {
202
+ return false;
203
+ }
204
+ return Math.abs((_a = this.nav) === null || _a === void 0 ? void 0 : _a.scrollLeft) > 0;
205
+ }
183
206
  updateScrollControls() {
184
207
  if (this.nav == null)
185
208
  return;
186
- this.hasScrollControls = this.noScrollControls
209
+ this.hasRightControl = this.noScrollControls
210
+ ? false
211
+ : ['top', 'bottom'].includes(this.placement) && this.calculateRightControlVisibility();
212
+ this.hasLeftControl = this.noScrollControls
187
213
  ? false
188
- : ['top', 'bottom'].includes(this.placement) && this.nav.scrollWidth > this.nav.clientWidth;
214
+ : ['top', 'bottom'].includes(this.placement) && this.calculateLeftControlVisibility();
189
215
  }
190
216
  setActiveTab(tab, emitEvents = true) {
191
217
  var _a, _b, _c;
@@ -228,22 +254,22 @@ const SixTabGroup = class {
228
254
  });
229
255
  }
230
256
  render() {
231
- return (index.h("div", { part: "base", ref: (el) => (this.tabGroup = el), class: {
257
+ return (index.h("div", { key: '36be38a8a29e4c551a670e6ab4e3efed68dda0b8', part: "base", ref: (el) => (this.tabGroup = el), class: {
232
258
  'tab-group': true,
233
259
  // Placements
234
260
  'tab-group--top': this.placement === 'top',
235
261
  'tab-group--bottom': this.placement === 'bottom',
236
262
  'tab-group--left': this.placement === 'left',
237
263
  '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))));
264
+ 'tab-group--has-scroll-controls': this.hasRightControl || this.hasLeftControl,
265
+ }, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, index.h("div", { key: '04b3f5dea207ac614d91bafa647bcef07bd89dfc', class: "tab-group__nav-container" }, this.hasLeftControl && (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", { key: '5f8fdd3dbb4589b9616e048fb5cc59ffe41fb534', ref: (el) => (this.tabs = el), part: "tabs", class: "tab-group__tabs", role: "tablist" }, index.h("slot", { key: 'a1d71effb433bdf3cca519eb2639af35ae481114', name: "nav" }))), this.hasRightControl && (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", { key: 'e8a619a1263d91f502ae3301e96bd439979b1c70', ref: (el) => (this.body = el), part: "body", class: "tab-group__body" }, index.h("slot", { key: 'df7a1ab8629777eb970258b76633c2282ed1169b' }))));
240
266
  }
241
267
  get host() { return index.getElement(this); }
242
268
  static get watchers() { return {
243
269
  "noScrollControls": ["handleNoScrollControlsChange"]
244
270
  }; }
245
271
  };
246
- SixTabGroup.style = sixTabGroupCss;
272
+ SixTabGroup.style = SixTabGroupStyle0;
247
273
 
248
274
  exports.six_tab_group = SixTabGroup;
249
275
 
@@ -1 +1 @@
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}
1
+ {"file":"six-tab-group.entry.cjs.js","mappings":";;;;;;;AAAA;;;;;;;;;;;SAWgB,WAAW,CACzB,OAAgB,EAChB,WAAoB,EACpB,UAAoC;IAClC,QAAQ,EAAE,GAAG;IACb,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,MAAM;CACb;IAED,MAAM,YAAY,GAAG,WAAW,CAAC,qBAAqB,EAAE,CAAC;IACzD,MAAM,cAAc,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAEvD,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC;IACvD,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC;IACrD,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC;IACzD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;IAE3D,OAAO,CAAC,OAAO,CACb;QACE;YACE,eAAe,EAAE,UAAU;YAC3B,SAAS,EAAE,aAAa,MAAM,OAAO,MAAM,aAAa,MAAM,KAAK,MAAM,GAAG;SAC7E;QACD;YACE,eAAe,EAAE,UAAU;YAC3B,SAAS,EAAE,MAAM;SAClB;KACF,EACD,OAAO,CACR,CAAC;AACJ;;ACzCA,MAAM,cAAc,GAAG,yxDAAyxD,CAAC;AACjzD,0BAAe,cAAc;;MCgChB,WAAW;;;;;QA+Gd,gBAAW,GAAG,CAAC,KAAiB;YACtC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAqB,CAAC;YAC3C,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,CAAC,eAAe,CAAC,CAAC;;YAG/C,IAAI,QAAQ,KAAK,IAAI,CAAC,IAAI,EAAE;gBAC1B,OAAO,KAAK,CAAC;aACd;YAED,IAAI,GAAG,IAAI,IAAI,EAAE;gBACf,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;aACxB;SACF,CAAC;QAEM,kBAAa,GAAG,CAAC,KAAoB;YAC3C,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI;gBAAE,OAAO;YAE7B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAqB,CAAC;YAC3C,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,CAAC,eAAe,CAAC,CAAC;;YAG/C,IAAI,QAAQ,KAAK,IAAI,CAAC,IAAI,EAAE;gBAC1B,OAAO,KAAK,CAAC;aACd;;YAGD,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;gBAC1F,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAkC,CAAC;gBAE7D,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,SAAS,EAAE;oBAC5D,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;oBAC/B,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;oBAEnC,IAAI,KAAK,CAAC,GAAG,KAAK,MAAM,EAAE;wBACxB,KAAK,GAAG,CAAC,CAAC;qBACX;yBAAM,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,EAAE;wBAC9B,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;qBACzB;yBAAM,IAAI,KAAK,CAAC,GAAG,KAAK,WAAW,EAAE;wBACpC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;qBAChC;yBAAM,IAAI,KAAK,CAAC,GAAG,KAAK,YAAY,EAAE;wBACrC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;qBAC9C;oBAED,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC9C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;oBAE/B,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;wBAC9CA,qBAAc,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;qBACrD;oBAED,KAAK,CAAC,cAAc,EAAE,CAAC;iBACxB;aACF;SACF,CAAC;QAEM,qBAAgB,GAAG;YACzB,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI;gBAAE,OAAO;YAE7B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;gBACd,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW;gBAChD,QAAQ,EAAE,QAAQ;aACnB,CAAC,CAAC;SACJ,CAAC;QAEM,sBAAiB,GAAG;YAC1B,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI;gBAAE,OAAO;YAE7B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;gBACd,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW;gBAChD,QAAQ,EAAE,QAAQ;aACnB,CAAC,CAAC;SACJ,CAAC;8BA7KwB,KAAK;+BACJ,KAAK;yBAGyB,KAAK;gCAGnC,KAAK;;IAGhC,4BAA4B;QAC1B,IAAI,CAAC,oBAAoB,EAAE,CAAC;KAC7B;IAQD,gBAAgB;QACd,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI;YAAE,OAAO;;QAGtD,MAAM,QAAQ,GAAG,IAAI,oBAAoB,CAAC,CAAC,OAAO,EAAE,QAAQ;YAC1D,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,iBAAiB,GAAG,CAAC,EAAE;gBACpC,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;gBACtE,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;aACvC;SACF,CAAC,CAAC;QACH,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC;QAC5E,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtC,qBAAqB,CAAC,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC;QAEzD,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,QAAQ,EAAE;YAClC,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,EAAE;gBACpB,OAAO;aACR;YACD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,+BAA+B,EAAE,CAAC;YAE9D,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,8BAA8B,EAAE,CAAC;SAC7D,CAAC,CAAC;;QAGH,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,CAAC,SAAS;YACrD,IACE,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ;;gBACtB,OAAO,CAAC,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC,QAAQ,CAAC,MAAA,QAAQ,CAAC,aAAa,mCAAI,EAAE,CAAC,CAAC;aACrF,CAAC,EACF;gBACA,UAAU,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;aACxC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;KAChG;IAED,oBAAoB;QAClB,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,EAAE;YAC7G,OAAO;SACR;QACD,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACzC;;IAID,MAAM,IAAI,CAAC,KAAa;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;QAElD,IAAI,GAAG,IAAI,IAAI,EAAE;YACf,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;SACxB;KACF;IAEO,UAAU,CAAC,eAAe,GAAG,KAAK;;QACxC,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,IAAI,0CAAE,aAAa,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,IAAI,IAAI,IAAI;YAAE,OAAO,EAAE,CAAC;QAE5B,OAAO,CAAC,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAW;YACrD,OAAO,eAAe;kBAClB,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,SAAS;kBACtC,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,SAAS,IAAI,CAAE,EAAwB,CAAC,QAAQ,CAAC;SACnF,CAAwB,CAAC;KAC3B;IAEO,YAAY;;QAClB,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,IAAI,0CAAE,aAAa,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,IAAI,IAAI,IAAI;YAAE,OAAO,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAW,KAAK,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,eAAe,CAEvG,CAAC;KACH;IAEO,YAAY;QAClB,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC;KAClD;IA6EO,+BAA+B;;QACrC,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,EAAE;YACpB,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,MAAA,IAAI,CAAC,GAAG,0CAAE,UAAU,CAAC,IAAG,MAAA,IAAI,CAAC,GAAG,0CAAE,WAAW,CAAA,GAAG,CAAA,MAAA,IAAI,CAAC,GAAG,0CAAE,WAAW,IAAG,CAAC,CAAC;KAC3F;IAEO,8BAA8B;;QACpC,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,EAAE;YACpB,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,MAAA,IAAI,CAAC,GAAG,0CAAE,UAAU,CAAC,GAAG,CAAC,CAAC;KAC3C;IAEO,oBAAoB;QAC1B,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI;YAAE,OAAO;QAE7B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB;cACxC,KAAK;cACL,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,+BAA+B,EAAE,CAAC;QAEzF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,gBAAgB;cACvC,KAAK;cACL,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,8BAA8B,EAAE,CAAC;KACzF;IAEO,YAAY,CAAC,GAAsB,EAAE,UAAU,GAAG,IAAI;;QAC5D,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI;YAAE,OAAO;QAE7B,MAAM,YAAY,GAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,UAAU,0CAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;QACvE,MAAM,YAAY,GAAG,MAAA,MAAA,IAAI,CAAC,YAAY,EAAE,0CAAE,UAAU,0CAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;QAEvF,IAAI,YAAY,IAAI,IAAI,IAAI,YAAY,IAAI,IAAI,EAAE;YAChD,WAAW,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;SACzC;QAED,IAAI,GAAG,KAAK,IAAI,CAAC,SAAS,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE;YAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;YACnC,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;;YAGrB,IAAI,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,MAAM,GAAG,EAAE,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YACnE,IAAI,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,eAAK,QAAC,EAAE,CAAC,MAAM,GAAG,EAAE,CAAC,IAAI,MAAK,MAAA,IAAI,CAAC,SAAS,0CAAE,KAAK,CAAA,EAAC,EAAA,CAAC,CAAC;YAEjF,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gBAC9CA,qBAAc,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;aACxD;;YAGD,IAAI,UAAU,EAAE;gBACd,IAAI,WAAW,IAAI,IAAI,EAAE;oBACvB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC;iBACnD;gBAED,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;aACtD;SACF;KACF;IAEO,aAAa;QACnB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;;QAGnC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG;;YACX,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;YACzD,IAAI,KAAK,IAAI,IAAI,EAAE;gBACjB,GAAG,CAAC,YAAY,CAAC,eAAe,EAAE,MAAA,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,mCAAI,EAAE,CAAC,CAAC;gBAClE,KAAK,CAAC,YAAY,CAAC,iBAAiB,EAAE,MAAA,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,mCAAI,EAAE,CAAC,CAAC;aACrE;SACF,CAAC,CAAC;KACJ;IAED,MAAM;QACJ,QACEC,kEACE,IAAI,EAAC,MAAM,EACX,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,EACjC,KAAK,EAAE;gBACL,WAAW,EAAE,IAAI;;gBAGjB,gBAAgB,EAAE,IAAI,CAAC,SAAS,KAAK,KAAK;gBAC1C,mBAAmB,EAAE,IAAI,CAAC,SAAS,KAAK,QAAQ;gBAChD,iBAAiB,EAAE,IAAI,CAAC,SAAS,KAAK,MAAM;gBAC5C,kBAAkB,EAAE,IAAI,CAAC,SAAS,KAAK,OAAO;gBAE9C,gCAAgC,EAAE,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,cAAc;aAC9E,EACD,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,SAAS,EAAE,IAAI,CAAC,aAAa,IAE7BA,kEAAK,KAAK,EAAC,0BAA0B,IAClC,IAAI,CAAC,cAAc,KAClBA,6BACE,KAAK,EAAC,yDAAyD,EAC/D,WAAW,EAAC,oBAAoB,EAChC,IAAI,EAAC,cAAc,EACnB,OAAO,EAAE,IAAI,CAAC,gBAAgB,GAC9B,CACH,EACDA,iBAAK,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,GAAG,EAAC,KAAK,EAAC,IAAI,EAAC,KAAK,EAAC,KAAK,EAAC,gBAAgB,IAC5EA,kEAAK,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,iBAAiB,EAAC,IAAI,EAAC,SAAS,IACpFA,mEAAM,IAAI,EAAC,KAAK,GAAG,CACf,CACF,EACL,IAAI,CAAC,eAAe,KACnBA,6BACE,KAAK,EAAC,0DAA0D,EAChE,WAAW,EAAC,oBAAoB,EAChC,IAAI,EAAC,eAAe,EACpB,OAAO,EAAE,IAAI,CAAC,iBAAiB,GAC/B,CACH,CACG,EAENA,kEAAK,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,iBAAiB,IACrEA,oEAAQ,CACJ,CACF,EACN;KACH;;;;;;;;;;","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() hasLeftControl = false;\n @State() hasRightControl = 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 this.nav.addEventListener('scroll', () => {\n if (this.nav == null) {\n return;\n }\n this.hasRightControl = this.calculateRightControlVisibility();\n\n this.hasLeftControl = this.calculateLeftControlVisibility();\n });\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 calculateRightControlVisibility() {\n if (this.nav == null) {\n return false;\n }\n return Math.abs(this.nav?.scrollLeft) + this.nav?.clientWidth < this.nav?.scrollWidth - 1;\n }\n\n private calculateLeftControlVisibility() {\n if (this.nav == null) {\n return false;\n }\n return Math.abs(this.nav?.scrollLeft) > 0;\n }\n\n private updateScrollControls() {\n if (this.nav == null) return;\n\n this.hasRightControl = this.noScrollControls\n ? false\n : ['top', 'bottom'].includes(this.placement) && this.calculateRightControlVisibility();\n\n this.hasLeftControl = this.noScrollControls\n ? false\n : ['top', 'bottom'].includes(this.placement) && this.calculateLeftControlVisibility();\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.hasRightControl || this.hasLeftControl,\n }}\n onClick={this.handleClick}\n onKeyDown={this.handleKeyDown}\n >\n <div class=\"tab-group__nav-container\">\n {this.hasLeftControl && (\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.hasRightControl && (\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}
@@ -2,9 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-3baddcdc.js');
5
+ const index = require('./index-1f707a55.js');
6
6
 
7
- const sixTabPanelCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{display:block;font-family:var(--six-font-family)}.tab-panel{border:solid 1px transparent;padding:20px 20px}";
7
+ const sixTabPanelCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}:host{display:block;font-family:var(--six-font-family)}.tab-panel{border:solid 1px transparent;padding:20px 20px}";
8
+ const SixTabPanelStyle0 = sixTabPanelCss;
8
9
 
9
10
  let id = 0;
10
11
  const SixTabPanel = class {
@@ -17,11 +18,11 @@ const SixTabPanel = class {
17
18
  render() {
18
19
  return (
19
20
  // If the user didn't provide an ID, we'll set one, so we can link tabs and tab panels with aria labels
20
- index.h(index.Host, { id: this.host.id || this.componentId, style: { display: this.active ? 'block' : 'none' } }, index.h("div", { part: "base", class: "tab-panel", role: "tabpanel", "aria-selected": this.active ? 'true' : 'false', "aria-hidden": this.active ? 'false' : 'true' }, index.h("slot", null))));
21
+ index.h(index.Host, { key: '9c332526981d228cc31dc50a84ebcb530b80fafd', id: this.host.id || this.componentId, style: { display: this.active ? 'block' : 'none' } }, index.h("div", { key: 'f83c683193cd57ae41b8d0a5192b77ecfe4e1f20', part: "base", class: "tab-panel", role: "tabpanel", "aria-selected": this.active ? 'true' : 'false', "aria-hidden": this.active ? 'false' : 'true' }, index.h("slot", { key: '4f86b7b5bb9aa47f2ea11dc2b76ace19bc2f458a' }))));
21
22
  }
22
23
  get host() { return index.getElement(this); }
23
24
  };
24
- SixTabPanel.style = sixTabPanelCss;
25
+ SixTabPanel.style = SixTabPanelStyle0;
25
26
 
26
27
  exports.six_tab_panel = SixTabPanel;
27
28
 
@@ -1 +1 @@
1
- {"file":"six-tab-panel.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,cAAc,GAAG,yNAAyN;;ACEhP,IAAI,EAAE,GAAG,CAAC,CAAC;MAkBE,WAAW;;;QACd,gBAAW,GAAG,aAAa,EAAE,EAAE,EAAE,CAAC;oBAK3B,EAAE;sBAGiB,KAAK;;IAEvC,MAAM;QACJ;;QAEEA,QAACC,UAAI,IAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,IAC5FD,iBACE,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,WAAW,EACjB,IAAI,EAAC,UAAU,mBACA,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,iBAChC,IAAI,CAAC,MAAM,GAAG,OAAO,GAAG,MAAM,IAE3CA,qBAAQ,CACJ,CACD,EACP;KACH;;;;;;;","names":["h","Host"],"sources":["src/components/six-tab-panel/six-tab-panel.scss?tag=six-tab-panel&encapsulation=shadow","src/components/six-tab-panel/six-tab-panel.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: block;\n font-family: var(--six-font-family);\n}\n\n.tab-panel {\n border: solid 1px transparent;\n padding: 20px 20px;\n}\n","import { Component, Element, h, Host, Prop } from '@stencil/core';\n\nlet id = 0;\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 - The tab panel's content.\n *\n * @part base - The component's base wrapper.\n */\n\n@Component({\n tag: 'six-tab-panel',\n styleUrl: 'six-tab-panel.scss',\n shadow: true,\n})\nexport class SixTabPanel {\n private componentId = `tab-panel-${++id}`;\n\n @Element() host!: HTMLSixTabPanelElement;\n\n /** The tab panel's name. */\n @Prop() name = '';\n\n /** When true, the tab panel will be shown. */\n @Prop({ reflect: true }) active = false;\n\n render() {\n return (\n // If the user didn't provide an ID, we'll set one, so we can link tabs and tab panels with aria labels\n <Host id={this.host.id || this.componentId} style={{ display: this.active ? 'block' : 'none' }}>\n <div\n part=\"base\"\n class=\"tab-panel\"\n role=\"tabpanel\"\n aria-selected={this.active ? 'true' : 'false'}\n aria-hidden={this.active ? 'false' : 'true'}\n >\n <slot />\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"six-tab-panel.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,cAAc,GAAG,4NAA4N,CAAC;AACpP,0BAAe,cAAc;;ACC7B,IAAI,EAAE,GAAG,CAAC,CAAC;MAkBE,WAAW;;;QACd,gBAAW,GAAG,aAAa,EAAE,EAAE,EAAE,CAAC;oBAK3B,EAAE;sBAGiB,KAAK;;IAEvC,MAAM;QACJ;;QAEEA,QAACC,UAAI,qDAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,IAC5FD,kEACE,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,WAAW,EACjB,IAAI,EAAC,UAAU,mBACA,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,iBAChC,IAAI,CAAC,MAAM,GAAG,OAAO,GAAG,MAAM,IAE3CA,oEAAQ,CACJ,CACD,EACP;KACH;;;;;;;","names":["h","Host"],"sources":["src/components/six-tab-panel/six-tab-panel.scss?tag=six-tab-panel&encapsulation=shadow","src/components/six-tab-panel/six-tab-panel.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: block;\n font-family: var(--six-font-family);\n}\n\n.tab-panel {\n border: solid 1px transparent;\n padding: 20px 20px;\n}\n","import { Component, Element, h, Host, Prop } from '@stencil/core';\n\nlet id = 0;\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 - The tab panel's content.\n *\n * @part base - The component's base wrapper.\n */\n\n@Component({\n tag: 'six-tab-panel',\n styleUrl: 'six-tab-panel.scss',\n shadow: true,\n})\nexport class SixTabPanel {\n private componentId = `tab-panel-${++id}`;\n\n @Element() host!: HTMLSixTabPanelElement;\n\n /** The tab panel's name. */\n @Prop() name = '';\n\n /** When true, the tab panel will be shown. */\n @Prop({ reflect: true }) active = false;\n\n render() {\n return (\n // If the user didn't provide an ID, we'll set one, so we can link tabs and tab panels with aria labels\n <Host id={this.host.id || this.componentId} style={{ display: this.active ? 'block' : 'none' }}>\n <div\n part=\"base\"\n class=\"tab-panel\"\n role=\"tabpanel\"\n aria-selected={this.active ? 'true' : 'false'}\n aria-hidden={this.active ? 'false' : 'true'}\n >\n <slot />\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -2,9 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-3baddcdc.js');
5
+ const index = require('./index-1f707a55.js');
6
6
 
7
- const sixTabCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{display:flex}.tab{display:inline-flex;align-items:center;font-family:var(--six-font-family);font-size:var(--six-font-size-small);font-weight:var(--six-font-weight-semibold);color:var(--six-tab-color);padding:var(--six-spacing-medium) var(--six-spacing-large);white-space:nowrap;user-select:none;cursor:pointer;width:100%}.tab:focus{outline:none}.tab:focus-visible{outline:var(--six-focus-ring);outline-offset:calc(-1 * var(--six-focus-ring-width) - var(--six-focus-ring-offset))}.tab.tab--active:not(.tab--disabled){color:var(--six-tab-color-active);font-weight:var(--six-font-weight-bold)}.tab.tab--closable{padding-right:var(--six-spacing-small)}.tab.tab--disabled{color:var(--six-tab-color-disabled);cursor:not-allowed}.tab:hover:not(.tab--disabled){color:var(--six-tab-color-hover)}.tab__close-button{font-size:var(--six-font-size-large);margin-left:var(--six-spacing-xx-small)}.tab__close-button::part(base){padding:var(--six-spacing-xxx-small)}.tab__indicator{position:absolute}.tab__indicator.tab__indicator--active{background-color:var(--six-tab-border-color-active)}.tab--top{margin-bottom:var(--six-spacing-xxx-small)}.tab__indicator--top{width:100%;bottom:0;height:var(--six-tab-border-width)}.tab--bottom{margin-top:var(--six-spacing-xxx-small)}.tab__indicator--bottom{width:100%;top:0;height:var(--six-tab-border-width)}.tab--left{margin-right:var(--six-spacing-xxx-small)}.tab__indicator--left{height:100%;right:0;top:0;width:var(--six-tab-border-width)}.tab--right{margin-left:var(--six-spacing-xxx-small)}.tab__indicator--right{height:100%;left:0;top:0;width:var(--six-tab-border-width)}";
7
+ const sixTabCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}:host{display:flex}.tab{display:inline-flex;align-items:center;font-family:var(--six-font-family);font-size:var(--six-font-size-small);font-weight:var(--six-font-weight-semibold);color:var(--six-tab-color);padding:var(--six-spacing-medium) var(--six-spacing-large);white-space:nowrap;user-select:none;cursor:pointer;width:100%}.tab:focus{outline:none}.tab:focus-visible{outline:var(--six-focus-ring);outline-offset:calc(-1 * var(--six-focus-ring-width) - var(--six-focus-ring-offset))}.tab.tab--active:not(.tab--disabled){color:var(--six-tab-color-active);font-weight:var(--six-font-weight-bold)}.tab.tab--closable{padding-right:var(--six-spacing-small)}.tab.tab--disabled{color:var(--six-tab-color-disabled);cursor:not-allowed}.tab:hover:not(.tab--disabled){color:var(--six-tab-color-hover)}.tab__close-button{font-size:var(--six-font-size-large);margin-left:var(--six-spacing-xx-small)}.tab__close-button::part(base){padding:var(--six-spacing-xxx-small)}.tab__indicator{position:absolute}.tab__indicator.tab__indicator--active{background-color:var(--six-tab-border-color-active)}.tab--top{margin-bottom:var(--six-spacing-xxx-small)}.tab__indicator--top{width:100%;bottom:0;height:var(--six-tab-border-width)}.tab--bottom{margin-top:var(--six-spacing-xxx-small)}.tab__indicator--bottom{width:100%;top:0;height:var(--six-tab-border-width)}.tab--left{margin-right:var(--six-spacing-xxx-small)}.tab__indicator--left{height:100%;right:0;top:0;width:var(--six-tab-border-width)}.tab--right{margin-left:var(--six-spacing-xxx-small)}.tab__indicator--right{height:100%;left:0;top:0;width:var(--six-tab-border-width)}";
8
+ const SixTabStyle0 = sixTabCss;
8
9
 
9
10
  let id = 0;
10
11
  const SixTab = class {
@@ -39,7 +40,7 @@ const SixTab = class {
39
40
  const placement = (_a = tabGroup === null || tabGroup === void 0 ? void 0 : tabGroup.placement) !== null && _a !== void 0 ? _a : 'top';
40
41
  return (
41
42
  // If the user didn't provide an ID, we'll set one, so we can link tabs and tab panels with aria labels
42
- index.h(index.Host, { id: this.host.id || this.componentId }, index.h("div", { part: "base", ref: (el) => (this.tab = el), class: {
43
+ index.h(index.Host, { key: '66eaedc782e87077c15d655a283127bba7e89dd8', id: this.host.id || this.componentId }, index.h("div", { key: 'dd59ec7e9406b1baab4f4fda287cfdaf98d79c31', part: "base", ref: (el) => (this.tab = el), class: {
43
44
  tab: true,
44
45
  // Placements
45
46
  'tab--top': placement === 'top',
@@ -50,7 +51,7 @@ const SixTab = class {
50
51
  'tab--active': this.active,
51
52
  'tab--closable': this.closable,
52
53
  'tab--disabled': this.disabled,
53
- }, role: "tab", "aria-disabled": this.disabled ? 'true' : 'false', "aria-selected": this.active ? 'true' : 'false', tabindex: this.disabled || !this.active ? '-1' : '0' }, index.h("slot", null), this.closable && (index.h("six-icon-button", { name: "close", size: "xSmall", exportparts: "base:close-button", class: "tab__close-button", onClick: this.handleCloseClick, tabIndex: -1, "aria-hidden": "true" }))), index.h("div", { class: {
54
+ }, role: "tab", "aria-disabled": this.disabled ? 'true' : 'false', "aria-selected": this.active ? 'true' : 'false', tabindex: this.disabled || !this.active ? '-1' : '0' }, index.h("slot", { key: 'bd701cd5777e3d1cadbf3907534470a96e46a66d' }), this.closable && (index.h("six-icon-button", { name: "close", size: "xSmall", exportparts: "base:close-button", class: "tab__close-button", onClick: this.handleCloseClick, tabIndex: -1, "aria-hidden": "true" }))), index.h("div", { key: 'f80103185d457827fc8c2e990791dd947743daef', part: this.active ? 'active-tab-indicator' : '', class: {
54
55
  tab__indicator: true,
55
56
  'tab__indicator--active': this.active,
56
57
  // Placements
@@ -62,7 +63,7 @@ const SixTab = class {
62
63
  }
63
64
  get host() { return index.getElement(this); }
64
65
  };
65
- SixTab.style = sixTabCss;
66
+ SixTab.style = SixTabStyle0;
66
67
 
67
68
  exports.six_tab = SixTab;
68
69
 
@@ -1 +1 @@
1
- {"file":"six-tab.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,SAAS,GAAG,irDAAirD;;ACGnsD,IAAI,EAAE,GAAG,CAAC,CAAC;MAmBE,MAAM;;;;QACT,gBAAW,GAAG,OAAO,EAAE,EAAE,EAAE,CAAC;qBAMH,EAAE;sBAGD,KAAK;wBAGpB,KAAK;wBAGY,KAAK;;IAKzC,iBAAiB;QACf,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC1D;;IAID,MAAM,QAAQ,CAAC,OAAsB;;QACnC,MAAA,IAAI,CAAC,GAAG,0CAAE,KAAK,CAAC,OAAO,CAAC,CAAC;KAC1B;;IAID,MAAM,WAAW;;QACf,MAAA,IAAI,CAAC,GAAG,0CAAE,IAAI,EAAE,CAAC;KAClB;IAEO,gBAAgB;QACtB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;KACtB;IAED,MAAM;;QACJ,MAAM,QAAQ,GAAkC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACnF,MAAM,SAAS,GAAG,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,SAAS,mCAAI,KAAK,CAAC;QAC/C;;QAEEA,QAACC,UAAI,IAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,WAAW,IACxCD,iBACE,IAAI,EAAC,MAAM,EACX,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,EAC5B,KAAK,EAAE;gBACL,GAAG,EAAE,IAAI;;gBAGT,UAAU,EAAE,SAAS,KAAK,KAAK;gBAC/B,aAAa,EAAE,SAAS,KAAK,QAAQ;gBACrC,WAAW,EAAE,SAAS,KAAK,MAAM;gBACjC,YAAY,EAAE,SAAS,KAAK,OAAO;;gBAGnC,aAAa,EAAE,IAAI,CAAC,MAAM;gBAC1B,eAAe,EAAE,IAAI,CAAC,QAAQ;gBAC9B,eAAe,EAAE,IAAI,CAAC,QAAQ;aAC/B,EACD,IAAI,EAAC,KAAK,mBACK,IAAI,CAAC,QAAQ,GAAG,MAAM,GAAG,OAAO,mBAChC,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,EAC7C,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,GAAG,IAEpDA,qBAAQ,EACP,IAAI,CAAC,QAAQ,KACZA,6BACE,IAAI,EAAC,OAAO,EACZ,IAAI,EAAC,QAAQ,EACb,WAAW,EAAC,mBAAmB,EAC/B,KAAK,EAAC,mBAAmB,EACzB,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAC9B,QAAQ,EAAE,CAAC,CAAC,iBACA,MAAM,GAClB,CACH,CACG,EACNA,iBACE,KAAK,EAAE;gBACL,cAAc,EAAE,IAAI;gBACpB,wBAAwB,EAAE,IAAI,CAAC,MAAM;;gBAGrC,qBAAqB,EAAE,SAAS,KAAK,KAAK;gBAC1C,wBAAwB,EAAE,SAAS,KAAK,QAAQ;gBAChD,sBAAsB,EAAE,SAAS,KAAK,MAAM;gBAC5C,uBAAuB,EAAE,SAAS,KAAK,OAAO;aAC/C,GACI,CACF,EACP;KACH;;;;;;;","names":["h","Host"],"sources":["src/components/six-tab/six-tab.scss?tag=six-tab&encapsulation=shadow","src/components/six-tab/six-tab.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: flex;\n}\n\n.tab {\n display: inline-flex;\n align-items: center;\n font-family: var(--six-font-family);\n font-size: var(--six-font-size-small);\n font-weight: var(--six-font-weight-semibold);\n color: var(--six-tab-color);\n padding: var(--six-spacing-medium) var(--six-spacing-large);\n white-space: nowrap;\n user-select: none;\n cursor: pointer;\n width: 100%;\n\n &:focus {\n outline: none;\n }\n\n &:focus-visible {\n outline: var(--six-focus-ring);\n outline-offset: calc(-1 * var(--six-focus-ring-width) - var(--six-focus-ring-offset));\n }\n\n &.tab--active:not(.tab--disabled) {\n color: var(--six-tab-color-active);\n font-weight: var(--six-font-weight-bold);\n }\n\n &.tab--closable {\n padding-right: var(--six-spacing-small);\n }\n\n &.tab--disabled {\n color: var(--six-tab-color-disabled);\n cursor: not-allowed;\n }\n\n &:hover:not(.tab--disabled) {\n color: var(--six-tab-color-hover);\n }\n}\n\n.tab__close-button {\n font-size: var(--six-font-size-large);\n margin-left: var(--six-spacing-xx-small);\n\n &::part(base) {\n padding: var(--six-spacing-xxx-small);\n }\n}\n\n// TAB INDICATOR\n.tab__indicator {\n position: absolute;\n &.tab__indicator--active {\n background-color: var(--six-tab-border-color-active);\n }\n}\n\n// TOP\n.tab--top {\n margin-bottom: var(--six-spacing-xxx-small);\n}\n\n.tab__indicator--top {\n width: 100%;\n bottom: 0;\n height: var(--six-tab-border-width);\n}\n\n// BOTTOM\n.tab--bottom {\n margin-top: var(--six-spacing-xxx-small);\n}\n\n.tab__indicator--bottom {\n width: 100%;\n top: 0;\n height: var(--six-tab-border-width);\n}\n\n// LEFT\n.tab--left {\n margin-right: var(--six-spacing-xxx-small);\n}\n\n.tab__indicator--left {\n height: 100%;\n right: 0;\n top: 0;\n width: var(--six-tab-border-width);\n}\n\n// RIGHT\n.tab--right {\n margin-left: var(--six-spacing-xxx-small);\n}\n\n.tab__indicator--right {\n height: 100%;\n left: 0;\n top: 0;\n width: var(--six-tab-border-width);\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Method, Prop } from '@stencil/core';\nimport { EmptyPayload } from '../../utils/types';\n\nlet id = 0;\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 - The tab's label.\n *\n * @part base - The component's base wrapper.\n * @part close-button - The close button, which is the icon button's base wrapper.\n */\n\n@Component({\n tag: 'six-tab',\n styleUrl: 'six-tab.scss',\n shadow: true,\n})\nexport class SixTab {\n private componentId = `tab-${++id}`;\n private tab?: HTMLElement;\n\n @Element() host!: HTMLSixTabElement;\n\n /** The name of the tab panel the tab will control. The panel must be located in the same tab group. */\n @Prop({ reflect: true }) panel = '';\n\n /** Set to true to draw the tab in an active state. */\n @Prop({ reflect: true }) active = false;\n\n /** When true, the tab will be rendered with a close icon. */\n @Prop() closable = false;\n\n /** Set to true to draw the tab in a disabled state. */\n @Prop({ reflect: true }) disabled = false;\n\n /** Emitted when the tab is closable and the close button is activated. */\n @Event({ eventName: 'six-tab-close' }) sixClose!: EventEmitter<EmptyPayload>;\n\n connectedCallback() {\n this.handleCloseClick = this.handleCloseClick.bind(this);\n }\n\n /** Sets focus to the tab. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.tab?.focus(options);\n }\n\n /** Removes focus from the tab. */\n @Method()\n async removeFocus() {\n this.tab?.blur();\n }\n\n private handleCloseClick() {\n this.sixClose.emit();\n }\n\n render() {\n const tabGroup: HTMLSixTabGroupElement | null = this.host.closest('six-tab-group');\n const placement = tabGroup?.placement ?? 'top';\n return (\n // If the user didn't provide an ID, we'll set one, so we can link tabs and tab panels with aria labels\n <Host id={this.host.id || this.componentId}>\n <div\n part=\"base\"\n ref={(el) => (this.tab = el)}\n class={{\n tab: true,\n\n // Placements\n 'tab--top': placement === 'top',\n 'tab--bottom': placement === 'bottom',\n 'tab--left': placement === 'left',\n 'tab--right': placement === 'right',\n\n // States\n 'tab--active': this.active,\n 'tab--closable': this.closable,\n 'tab--disabled': this.disabled,\n }}\n role=\"tab\"\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-selected={this.active ? 'true' : 'false'}\n tabindex={this.disabled || !this.active ? '-1' : '0'}\n >\n <slot />\n {this.closable && (\n <six-icon-button\n name=\"close\"\n size=\"xSmall\"\n exportparts=\"base:close-button\"\n class=\"tab__close-button\"\n onClick={this.handleCloseClick}\n tabIndex={-1}\n aria-hidden=\"true\"\n />\n )}\n </div>\n <div\n class={{\n tab__indicator: true,\n 'tab__indicator--active': this.active,\n\n // Placements\n 'tab__indicator--top': placement === 'top',\n 'tab__indicator--bottom': placement === 'bottom',\n 'tab__indicator--left': placement === 'left',\n 'tab__indicator--right': placement === 'right',\n }}\n ></div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"six-tab.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,SAAS,GAAG,orDAAorD,CAAC;AACvsD,qBAAe,SAAS;;ACExB,IAAI,EAAE,GAAG,CAAC,CAAC;MAmBE,MAAM;;;;QACT,gBAAW,GAAG,OAAO,EAAE,EAAE,EAAE,CAAC;qBAMH,EAAE;sBAGD,KAAK;wBAGpB,KAAK;wBAGY,KAAK;;IAKzC,iBAAiB;QACf,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC1D;;IAID,MAAM,QAAQ,CAAC,OAAsB;;QACnC,MAAA,IAAI,CAAC,GAAG,0CAAE,KAAK,CAAC,OAAO,CAAC,CAAC;KAC1B;;IAID,MAAM,WAAW;;QACf,MAAA,IAAI,CAAC,GAAG,0CAAE,IAAI,EAAE,CAAC;KAClB;IAEO,gBAAgB;QACtB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;KACtB;IAED,MAAM;;QACJ,MAAM,QAAQ,GAAkC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACnF,MAAM,SAAS,GAAG,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,SAAS,mCAAI,KAAK,CAAC;QAC/C;;QAEEA,QAACC,UAAI,qDAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,WAAW,IACxCD,kEACE,IAAI,EAAC,MAAM,EACX,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,EAC5B,KAAK,EAAE;gBACL,GAAG,EAAE,IAAI;;gBAGT,UAAU,EAAE,SAAS,KAAK,KAAK;gBAC/B,aAAa,EAAE,SAAS,KAAK,QAAQ;gBACrC,WAAW,EAAE,SAAS,KAAK,MAAM;gBACjC,YAAY,EAAE,SAAS,KAAK,OAAO;;gBAGnC,aAAa,EAAE,IAAI,CAAC,MAAM;gBAC1B,eAAe,EAAE,IAAI,CAAC,QAAQ;gBAC9B,eAAe,EAAE,IAAI,CAAC,QAAQ;aAC/B,EACD,IAAI,EAAC,KAAK,mBACK,IAAI,CAAC,QAAQ,GAAG,MAAM,GAAG,OAAO,mBAChC,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,EAC7C,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,GAAG,IAEpDA,oEAAQ,EACP,IAAI,CAAC,QAAQ,KACZA,6BACE,IAAI,EAAC,OAAO,EACZ,IAAI,EAAC,QAAQ,EACb,WAAW,EAAC,mBAAmB,EAC/B,KAAK,EAAC,mBAAmB,EACzB,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAC9B,QAAQ,EAAE,CAAC,CAAC,iBACA,MAAM,GAClB,CACH,CACG,EACNA,kEACE,IAAI,EAAE,IAAI,CAAC,MAAM,GAAG,sBAAsB,GAAG,EAAE,EAC/C,KAAK,EAAE;gBACL,cAAc,EAAE,IAAI;gBACpB,wBAAwB,EAAE,IAAI,CAAC,MAAM;;gBAGrC,qBAAqB,EAAE,SAAS,KAAK,KAAK;gBAC1C,wBAAwB,EAAE,SAAS,KAAK,QAAQ;gBAChD,sBAAsB,EAAE,SAAS,KAAK,MAAM;gBAC5C,uBAAuB,EAAE,SAAS,KAAK,OAAO;aAC/C,GACI,CACF,EACP;KACH;;;;;;;","names":["h","Host"],"sources":["src/components/six-tab/six-tab.scss?tag=six-tab&encapsulation=shadow","src/components/six-tab/six-tab.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: flex;\n}\n\n.tab {\n display: inline-flex;\n align-items: center;\n font-family: var(--six-font-family);\n font-size: var(--six-font-size-small);\n font-weight: var(--six-font-weight-semibold);\n color: var(--six-tab-color);\n padding: var(--six-spacing-medium) var(--six-spacing-large);\n white-space: nowrap;\n user-select: none;\n cursor: pointer;\n width: 100%;\n\n &:focus {\n outline: none;\n }\n\n &:focus-visible {\n outline: var(--six-focus-ring);\n outline-offset: calc(-1 * var(--six-focus-ring-width) - var(--six-focus-ring-offset));\n }\n\n &.tab--active:not(.tab--disabled) {\n color: var(--six-tab-color-active);\n font-weight: var(--six-font-weight-bold);\n }\n\n &.tab--closable {\n padding-right: var(--six-spacing-small);\n }\n\n &.tab--disabled {\n color: var(--six-tab-color-disabled);\n cursor: not-allowed;\n }\n\n &:hover:not(.tab--disabled) {\n color: var(--six-tab-color-hover);\n }\n}\n\n.tab__close-button {\n font-size: var(--six-font-size-large);\n margin-left: var(--six-spacing-xx-small);\n\n &::part(base) {\n padding: var(--six-spacing-xxx-small);\n }\n}\n\n// TAB INDICATOR\n.tab__indicator {\n position: absolute;\n &.tab__indicator--active {\n background-color: var(--six-tab-border-color-active);\n }\n}\n\n// TOP\n.tab--top {\n margin-bottom: var(--six-spacing-xxx-small);\n}\n\n.tab__indicator--top {\n width: 100%;\n bottom: 0;\n height: var(--six-tab-border-width);\n}\n\n// BOTTOM\n.tab--bottom {\n margin-top: var(--six-spacing-xxx-small);\n}\n\n.tab__indicator--bottom {\n width: 100%;\n top: 0;\n height: var(--six-tab-border-width);\n}\n\n// LEFT\n.tab--left {\n margin-right: var(--six-spacing-xxx-small);\n}\n\n.tab__indicator--left {\n height: 100%;\n right: 0;\n top: 0;\n width: var(--six-tab-border-width);\n}\n\n// RIGHT\n.tab--right {\n margin-left: var(--six-spacing-xxx-small);\n}\n\n.tab__indicator--right {\n height: 100%;\n left: 0;\n top: 0;\n width: var(--six-tab-border-width);\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Method, Prop } from '@stencil/core';\nimport { EmptyPayload } from '../../utils/types';\n\nlet id = 0;\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 - The tab's label.\n *\n * @part base - The component's base wrapper.\n * @part close-button - The close button, which is the icon button's base wrapper.\n */\n\n@Component({\n tag: 'six-tab',\n styleUrl: 'six-tab.scss',\n shadow: true,\n})\nexport class SixTab {\n private componentId = `tab-${++id}`;\n private tab?: HTMLElement;\n\n @Element() host!: HTMLSixTabElement;\n\n /** The name of the tab panel the tab will control. The panel must be located in the same tab group. */\n @Prop({ reflect: true }) panel = '';\n\n /** Set to true to draw the tab in an active state. */\n @Prop({ reflect: true }) active = false;\n\n /** When true, the tab will be rendered with a close icon. */\n @Prop() closable = false;\n\n /** Set to true to draw the tab in a disabled state. */\n @Prop({ reflect: true }) disabled = false;\n\n /** Emitted when the tab is closable and the close button is activated. */\n @Event({ eventName: 'six-tab-close' }) sixClose!: EventEmitter<EmptyPayload>;\n\n connectedCallback() {\n this.handleCloseClick = this.handleCloseClick.bind(this);\n }\n\n /** Sets focus to the tab. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.tab?.focus(options);\n }\n\n /** Removes focus from the tab. */\n @Method()\n async removeFocus() {\n this.tab?.blur();\n }\n\n private handleCloseClick() {\n this.sixClose.emit();\n }\n\n render() {\n const tabGroup: HTMLSixTabGroupElement | null = this.host.closest('six-tab-group');\n const placement = tabGroup?.placement ?? 'top';\n return (\n // If the user didn't provide an ID, we'll set one, so we can link tabs and tab panels with aria labels\n <Host id={this.host.id || this.componentId}>\n <div\n part=\"base\"\n ref={(el) => (this.tab = el)}\n class={{\n tab: true,\n\n // Placements\n 'tab--top': placement === 'top',\n 'tab--bottom': placement === 'bottom',\n 'tab--left': placement === 'left',\n 'tab--right': placement === 'right',\n\n // States\n 'tab--active': this.active,\n 'tab--closable': this.closable,\n 'tab--disabled': this.disabled,\n }}\n role=\"tab\"\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-selected={this.active ? 'true' : 'false'}\n tabindex={this.disabled || !this.active ? '-1' : '0'}\n >\n <slot />\n {this.closable && (\n <six-icon-button\n name=\"close\"\n size=\"xSmall\"\n exportparts=\"base:close-button\"\n class=\"tab__close-button\"\n onClick={this.handleCloseClick}\n tabIndex={-1}\n aria-hidden=\"true\"\n />\n )}\n </div>\n <div\n part={this.active ? 'active-tab-indicator' : ''}\n class={{\n tab__indicator: true,\n 'tab__indicator--active': this.active,\n\n // Placements\n 'tab__indicator--top': placement === 'top',\n 'tab__indicator--bottom': placement === 'bottom',\n 'tab__indicator--left': placement === 'left',\n 'tab__indicator--right': placement === 'right',\n }}\n ></div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -2,11 +2,12 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-3baddcdc.js');
6
- const slot = require('./slot-9821749e.js');
5
+ const index = require('./index-1f707a55.js');
6
+ const slot = require('./slot-1b1232a1.js');
7
7
  const executionControl = require('./execution-control-d728da70.js');
8
8
 
9
- const sixTagCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{display:inline-block;overflow:hidden}.tag{display:flex;align-items:center;border:solid 1px;font-family:var(--six-font-family);line-height:1;white-space:nowrap;user-select:none;cursor:default}.tag__content{text-overflow:ellipsis;overflow:hidden}.tag__clear::part(base){color:inherit;padding:0}.tag--info{color:var(--six-color-white);background-color:var(--six-color-web-rock-900);border-color:var(--six-color-web-rock-900)}.tag--success{color:var(--six-color-web-rock-900);border-color:var(--six-color-success-500);background-color:var(--six-color-success-500)}.tag--primary{color:var(--six-color-web-rock-900);border-color:var(--six-color-clay-50);background-color:var(--six-color-clay-50)}.tag--warning{color:var(--six-color-web-rock-900);border-color:var(--six-color-warning-700);background-color:var(--six-color-warning-700)}.tag--danger{color:var(--six-color-white);border-color:var(--six-color-danger-800);background-color:var(--six-color-danger-800)}.tag--action{color:var(--six-color-white);border-color:var(--six-color-action-500);background-color:var(--six-color-action-500)}.tag--small{font-size:var(--six-button-font-size-small);height:calc(var(--six-height-small) * 0.8);line-height:calc(var(--six-height-small) - var(--six-border-width) * 2);border-radius:var(--six-input-border-radius-small);padding:0 var(--six-spacing-x-small)}.tag--small .tag__clear{margin-left:var(--six-spacing-xx-small);margin-right:calc(-1 * var(--six-spacing-xxx-small))}.tag--medium{font-size:var(--six-button-font-size-medium);height:calc(var(--six-height-medium) * 0.8);line-height:calc(var(--six-height-medium) - var(--six-border-width) * 2);border-radius:var(--six-input-border-radius-medium);padding:0 var(--six-spacing-small)}.tag--medium .tag__clear{margin-left:var(--six-spacing-xx-small);margin-right:calc(-1 * var(--six-spacing-xx-small))}.tag--large{font-size:var(--six-button-font-size-large);height:calc(var(--six-height-large) * 0.8);line-height:calc(var(--six-height-large) - var(--six-border-width) * 2);border-radius:var(--six-input-border-radius-large);padding:0 var(--six-spacing-medium)}.tag--large .tag__clear{margin-left:var(--six-spacing-xx-small);margin-right:calc(-1 * var(--six-spacing-x-small))}.tag--pill{border-radius:var(--six-border-radius-pill)}";
9
+ const sixTagCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}:host{display:inline-block;overflow:hidden}.tag{display:flex;align-items:center;border:solid 1px;font-family:var(--six-font-family);line-height:1;white-space:nowrap;user-select:none;cursor:default}.tag__content{text-overflow:ellipsis;overflow:hidden}.tag__clear::part(base){color:inherit;padding:0}.tag--info{color:var(--six-color-white);background-color:var(--six-color-web-rock-900);border-color:var(--six-color-web-rock-900)}.tag--success{color:var(--six-color-web-rock-900);border-color:var(--six-color-success-500);background-color:var(--six-color-success-500)}.tag--primary{color:var(--six-color-web-rock-900);border-color:var(--six-color-clay-50);background-color:var(--six-color-clay-50)}.tag--warning{color:var(--six-color-web-rock-900);border-color:var(--six-color-warning-700);background-color:var(--six-color-warning-700)}.tag--danger{color:var(--six-color-white);border-color:var(--six-color-danger-800);background-color:var(--six-color-danger-800)}.tag--action{color:var(--six-color-white);border-color:var(--six-color-action-500);background-color:var(--six-color-action-500)}.tag--small{font-size:var(--six-button-font-size-small);height:calc(var(--six-height-small) * 0.8);line-height:calc(var(--six-height-small) - var(--six-border-width) * 2);border-radius:var(--six-input-border-radius-small);padding:0 var(--six-spacing-x-small)}.tag--small .tag__clear{margin-left:var(--six-spacing-xx-small);margin-right:calc(-1 * var(--six-spacing-xxx-small))}.tag--medium{font-size:var(--six-button-font-size-medium);height:calc(var(--six-height-medium) * 0.8);line-height:calc(var(--six-height-medium) - var(--six-border-width) * 2);border-radius:var(--six-input-border-radius-medium);padding:0 var(--six-spacing-small)}.tag--medium .tag__clear{margin-left:var(--six-spacing-xx-small);margin-right:calc(-1 * var(--six-spacing-xx-small))}.tag--large{font-size:var(--six-button-font-size-large);height:calc(var(--six-height-large) * 0.8);line-height:calc(var(--six-height-large) - var(--six-border-width) * 2);border-radius:var(--six-input-border-radius-large);padding:0 var(--six-spacing-medium)}.tag--large .tag__clear{margin-left:var(--six-spacing-xx-small);margin-right:calc(-1 * var(--six-spacing-x-small))}.tag--pill{border-radius:var(--six-border-radius-pill)}";
10
+ const SixTagStyle0 = sixTagCss;
10
11
 
11
12
  const SixTag = class {
12
13
  constructor(hostRef) {
@@ -41,7 +42,7 @@ const SixTag = class {
41
42
  this.resizeObserver.disconnect();
42
43
  }
43
44
  render() {
44
- return (index.h("span", { part: "base", class: {
45
+ return (index.h("span", { key: '6a02aa0235a9b590604bc92647ac73e22e304136', part: "base", class: {
45
46
  tag: true,
46
47
  // Types
47
48
  'tag--primary': this.type === 'primary',
@@ -58,10 +59,10 @@ const SixTag = class {
58
59
  // Modifers
59
60
  'tag--pill': this.pill,
60
61
  'tag--clear': this.clearable,
61
- } }, index.h("six-tooltip", { ref: (el) => (this.tooltipElement = el) }, index.h("span", { ref: (el) => (this.contentElement = el), part: "content", class: "tag__content" }, index.h("slot", { ref: (el) => (this.contentSlotElement = el) }))), this.clearable && (index.h("six-icon-button", { exportparts: "base:clear-button", size: "xSmall", name: "clear", class: "tag__clear", onClick: this.handleClearClick }))));
62
+ } }, index.h("six-tooltip", { key: 'e42c81922948e9b944bb828479351e8e3ba87a3b', ref: (el) => (this.tooltipElement = el) }, index.h("span", { key: '84b8a6a071f9c45c5aaec65c0667df111a357562', ref: (el) => (this.contentElement = el), part: "content", class: "tag__content" }, index.h("slot", { key: '757dcb510fef07b947876706c8a53e07d28bdc7f', ref: (el) => (this.contentSlotElement = el) }))), this.clearable && (index.h("six-icon-button", { exportparts: "base:clear-button", size: "xSmall", name: "clear", class: "tag__clear", onClick: this.handleClearClick }))));
62
63
  }
63
64
  };
64
- SixTag.style = sixTagCss;
65
+ SixTag.style = SixTagStyle0;
65
66
 
66
67
  exports.six_tag = SixTag;
67
68