@six-group/ui-library 0.0.0-insider.b8b84f6 → 0.0.0-insider.bb295d8

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 (1105) hide show
  1. package/README.md +9 -0
  2. package/dist/cjs/error-messages-6e8049a4.js +119 -0
  3. package/dist/cjs/error-messages-6e8049a4.js.map +1 -0
  4. package/dist/cjs/event-listeners-9fb878f1.js +61 -0
  5. package/dist/cjs/event-listeners-9fb878f1.js.map +1 -0
  6. package/dist/cjs/{execution-control-b4707294.js → execution-control-d728da70.js} +15 -15
  7. package/dist/cjs/{execution-control-b4707294.js.map → execution-control-d728da70.js.map} +1 -1
  8. package/dist/cjs/focus-visible-e2c9255a.js +47 -0
  9. package/dist/cjs/{focus-visible-ae2470dd.js.map → focus-visible-e2c9255a.js.map} +1 -1
  10. package/dist/cjs/form-9ebaae7c.js +20 -0
  11. package/dist/cjs/{form-2df8c5bb.js.map → form-9ebaae7c.js.map} +1 -1
  12. package/dist/cjs/form-control-72186fcc.js +36 -0
  13. package/dist/cjs/form-control-72186fcc.js.map +1 -0
  14. package/dist/cjs/{index-900437fc.js → index-5dd19c4b.js} +584 -154
  15. package/dist/cjs/index-5dd19c4b.js.map +1 -0
  16. package/dist/cjs/index.cjs.js +55 -87
  17. package/dist/cjs/index.cjs.js.map +1 -1
  18. package/dist/cjs/loader.cjs.js +2 -2
  19. package/dist/cjs/modal-3ce015be.js +52 -0
  20. package/dist/cjs/modal-3ce015be.js.map +1 -0
  21. package/dist/cjs/{popover-2df7e154.js → popover-1e7c09f1.js} +99 -99
  22. package/dist/cjs/popover-1e7c09f1.js.map +1 -0
  23. package/dist/cjs/popup-e854acda.js +103 -0
  24. package/dist/cjs/popup-e854acda.js.map +1 -0
  25. package/dist/cjs/scroll-68033901.js +68 -0
  26. package/dist/cjs/scroll-68033901.js.map +1 -0
  27. package/dist/cjs/set-attributes_2.cjs.entry.js +51 -51
  28. package/dist/cjs/set-attributes_2.cjs.entry.js.map +1 -1
  29. package/dist/cjs/six-alert.cjs.entry.js +133 -110
  30. package/dist/cjs/six-alert.cjs.entry.js.map +1 -1
  31. package/dist/cjs/six-avatar.cjs.entry.js +21 -21
  32. package/dist/cjs/six-avatar.cjs.entry.js.map +1 -1
  33. package/dist/cjs/six-badge.cjs.entry.js +23 -23
  34. package/dist/cjs/six-badge.cjs.entry.js.map +1 -1
  35. package/dist/cjs/six-button.cjs.entry.js +95 -95
  36. package/dist/cjs/six-button.cjs.entry.js.map +1 -1
  37. package/dist/cjs/six-card.cjs.entry.js +8 -8
  38. package/dist/cjs/six-card.cjs.entry.js.map +1 -1
  39. package/dist/cjs/six-checkbox_2.cjs.entry.js +190 -0
  40. package/dist/cjs/six-checkbox_2.cjs.entry.js.map +1 -0
  41. package/dist/cjs/six-datepicker.cjs.entry.js +835 -839
  42. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -1
  43. package/dist/cjs/six-details.cjs.entry.js +127 -127
  44. package/dist/cjs/six-details.cjs.entry.js.map +1 -1
  45. package/dist/cjs/six-dialog.cjs.entry.js +129 -129
  46. package/dist/cjs/six-dialog.cjs.entry.js.map +1 -1
  47. package/dist/cjs/six-drawer.cjs.entry.js +147 -147
  48. package/dist/cjs/six-drawer.cjs.entry.js.map +1 -1
  49. package/dist/cjs/six-dropdown_2.cjs.entry.js +707 -637
  50. package/dist/cjs/six-dropdown_2.cjs.entry.js.map +1 -1
  51. package/dist/cjs/six-error-page.cjs.entry.js +82 -82
  52. package/dist/cjs/six-error-page.cjs.entry.js.map +1 -1
  53. package/dist/cjs/six-error.cjs.entry.js +21 -0
  54. package/dist/cjs/six-error.cjs.entry.js.map +1 -0
  55. package/dist/cjs/six-file-list-item.cjs.entry.js +34 -34
  56. package/dist/cjs/six-file-list-item.cjs.entry.js.map +1 -1
  57. package/dist/cjs/six-file-list.cjs.entry.js +7 -7
  58. package/dist/cjs/six-file-list.cjs.entry.js.map +1 -1
  59. package/dist/cjs/six-file-upload.cjs.entry.js +99 -99
  60. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -1
  61. package/dist/cjs/six-footer.cjs.entry.js +8 -8
  62. package/dist/cjs/six-footer.cjs.entry.js.map +1 -1
  63. package/dist/cjs/six-group-label.cjs.entry.js +43 -43
  64. package/dist/cjs/six-group-label.cjs.entry.js.map +1 -1
  65. package/dist/cjs/six-header.cjs.entry.js +171 -156
  66. package/dist/cjs/six-header.cjs.entry.js.map +1 -1
  67. package/dist/cjs/six-icon-button.cjs.entry.js +32 -32
  68. package/dist/cjs/six-icon-button.cjs.entry.js.map +1 -1
  69. package/dist/cjs/six-icon.cjs.entry.js +22 -22
  70. package/dist/cjs/six-icon.cjs.entry.js.map +1 -1
  71. package/dist/cjs/six-input.cjs.entry.js +192 -187
  72. package/dist/cjs/six-input.cjs.entry.js.map +1 -1
  73. package/dist/cjs/six-item-picker.cjs.entry.js +405 -309
  74. package/dist/cjs/six-item-picker.cjs.entry.js.map +1 -1
  75. package/dist/cjs/six-language-switcher.cjs.entry.js +46 -46
  76. package/dist/cjs/six-language-switcher.cjs.entry.js.map +1 -1
  77. package/dist/cjs/six-layout-grid.cjs.entry.js +20 -20
  78. package/dist/cjs/six-layout-grid.cjs.entry.js.map +1 -1
  79. package/dist/cjs/six-main-container.cjs.entry.js +9 -9
  80. package/dist/cjs/six-main-container.cjs.entry.js.map +1 -1
  81. package/dist/cjs/six-menu-divider.cjs.entry.js +8 -8
  82. package/dist/cjs/six-menu-divider.cjs.entry.js.map +1 -1
  83. package/dist/cjs/six-menu-label.cjs.entry.js +8 -8
  84. package/dist/cjs/six-menu-label.cjs.entry.js.map +1 -1
  85. package/dist/cjs/six-picto.cjs.entry.js +14 -14
  86. package/dist/cjs/six-picto.cjs.entry.js.map +1 -1
  87. package/dist/cjs/six-progress-bar.cjs.entry.js +15 -15
  88. package/dist/cjs/six-progress-bar.cjs.entry.js.map +1 -1
  89. package/dist/cjs/six-progress-ring.cjs.entry.js +30 -30
  90. package/dist/cjs/six-progress-ring.cjs.entry.js.map +1 -1
  91. package/dist/cjs/six-radio.cjs.entry.js +104 -104
  92. package/dist/cjs/six-radio.cjs.entry.js.map +1 -1
  93. package/dist/cjs/six-range.cjs.entry.js +180 -177
  94. package/dist/cjs/six-range.cjs.entry.js.map +1 -1
  95. package/dist/cjs/six-root.cjs.entry.js +30 -30
  96. package/dist/cjs/six-root.cjs.entry.js.map +1 -1
  97. package/dist/cjs/six-search-field.cjs.entry.js +44 -44
  98. package/dist/cjs/six-search-field.cjs.entry.js.map +1 -1
  99. package/dist/cjs/six-select.cjs.entry.js +497 -363
  100. package/dist/cjs/six-select.cjs.entry.js.map +1 -1
  101. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +56 -45
  102. package/dist/cjs/six-sidebar-item-group.cjs.entry.js.map +1 -1
  103. package/dist/cjs/six-sidebar-item.cjs.entry.js +17 -15
  104. package/dist/cjs/six-sidebar-item.cjs.entry.js.map +1 -1
  105. package/dist/cjs/six-sidebar.cjs.entry.js +174 -174
  106. package/dist/cjs/six-sidebar.cjs.entry.js.map +1 -1
  107. package/dist/cjs/six-spinner.cjs.entry.js +15 -15
  108. package/dist/cjs/six-spinner.cjs.entry.js.map +1 -1
  109. package/dist/cjs/six-switch.cjs.entry.js +107 -89
  110. package/dist/cjs/six-switch.cjs.entry.js.map +1 -1
  111. package/dist/cjs/six-tab-group.cjs.entry.js +230 -235
  112. package/dist/cjs/six-tab-group.cjs.entry.js.map +1 -1
  113. package/dist/cjs/six-tab-panel.cjs.entry.js +14 -14
  114. package/dist/cjs/six-tab-panel.cjs.entry.js.map +1 -1
  115. package/dist/cjs/six-tab.cjs.entry.js +55 -39
  116. package/dist/cjs/six-tab.cjs.entry.js.map +1 -1
  117. package/dist/cjs/six-tag.cjs.entry.js +55 -33
  118. package/dist/cjs/six-tag.cjs.entry.js.map +1 -1
  119. package/dist/cjs/six-textarea.cjs.entry.js +181 -178
  120. package/dist/cjs/six-textarea.cjs.entry.js.map +1 -1
  121. package/dist/cjs/six-tile.cjs.entry.js +77 -77
  122. package/dist/cjs/six-tile.cjs.entry.js.map +1 -1
  123. package/dist/cjs/six-timepicker.cjs.entry.js +348 -353
  124. package/dist/cjs/six-timepicker.cjs.entry.js.map +1 -1
  125. package/dist/cjs/six-tooltip.cjs.entry.js +148 -148
  126. package/dist/cjs/six-tooltip.cjs.entry.js.map +1 -1
  127. package/dist/cjs/slot-1b1232a1.js +51 -0
  128. package/dist/cjs/slot-1b1232a1.js.map +1 -0
  129. package/dist/cjs/types-d3da200b.js +19 -0
  130. package/dist/cjs/types-d3da200b.js.map +1 -0
  131. package/dist/cjs/ui-library.cjs.js +3 -3
  132. package/dist/cjs/ui-library.cjs.js.map +1 -1
  133. package/dist/collection/collection-manifest.json +4 -3
  134. package/dist/collection/components/six-alert/six-alert.css +5 -1
  135. package/dist/collection/components/six-alert/six-alert.js +373 -337
  136. package/dist/collection/components/six-alert/six-alert.js.map +1 -1
  137. package/dist/collection/components/six-alert/test/six-alert.spec.js +7 -7
  138. package/dist/collection/components/six-alert/test/six-alert.spec.js.map +1 -1
  139. package/dist/collection/components/six-avatar/six-avatar.css +2 -2
  140. package/dist/collection/components/six-avatar/six-avatar.js +111 -111
  141. package/dist/collection/components/six-avatar/six-avatar.js.map +1 -1
  142. package/dist/collection/components/six-avatar/test/six-avatar.spec.js +7 -7
  143. package/dist/collection/components/six-avatar/test/six-avatar.spec.js.map +1 -1
  144. package/dist/collection/components/six-badge/six-badge.css +1 -1
  145. package/dist/collection/components/six-badge/six-badge.js +90 -90
  146. package/dist/collection/components/six-badge/six-badge.js.map +1 -1
  147. package/dist/collection/components/six-badge/test/six-badge.spec.js +7 -7
  148. package/dist/collection/components/six-badge/test/six-badge.spec.js.map +1 -1
  149. package/dist/collection/components/six-button/six-button.css +7 -31
  150. package/dist/collection/components/six-button/six-button.js +447 -446
  151. package/dist/collection/components/six-button/six-button.js.map +1 -1
  152. package/dist/collection/components/six-button/test/six-button.spec.js +44 -44
  153. package/dist/collection/components/six-button/test/six-button.spec.js.map +1 -1
  154. package/dist/collection/components/six-card/six-card.css +4 -5
  155. package/dist/collection/components/six-card/six-card.js +15 -15
  156. package/dist/collection/components/six-card/six-card.js.map +1 -1
  157. package/dist/collection/components/six-card/test/six-card.spec.js +7 -7
  158. package/dist/collection/components/six-card/test/six-card.spec.js.map +1 -1
  159. package/dist/collection/components/six-checkbox/six-checkbox.css +10 -2
  160. package/dist/collection/components/six-checkbox/six-checkbox.js +421 -399
  161. package/dist/collection/components/six-checkbox/six-checkbox.js.map +1 -1
  162. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js +19 -15
  163. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js.map +1 -1
  164. package/dist/collection/components/six-datepicker/components/day-selection.js +8 -8
  165. package/dist/collection/components/six-datepicker/components/day-selection.js.map +1 -1
  166. package/dist/collection/components/six-datepicker/components/month-selection.js +8 -8
  167. package/dist/collection/components/six-datepicker/components/month-selection.js.map +1 -1
  168. package/dist/collection/components/six-datepicker/components/year-selection.js +8 -8
  169. package/dist/collection/components/six-datepicker/components/year-selection.js.map +1 -1
  170. package/dist/collection/components/six-datepicker/six-date-formats.js +21 -20
  171. package/dist/collection/components/six-datepicker/six-date-formats.js.map +1 -1
  172. package/dist/collection/components/six-datepicker/six-datepicker.css +1 -1
  173. package/dist/collection/components/six-datepicker/six-datepicker.js +1052 -1039
  174. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -1
  175. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js +8 -8
  176. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js.map +1 -1
  177. package/dist/collection/components/six-datepicker/test/six-datepicker.test-helpers.js +14 -14
  178. package/dist/collection/components/six-datepicker/test/six-datepicker.test-helpers.js.map +1 -1
  179. package/dist/collection/components/six-details/six-details.css +4 -2
  180. package/dist/collection/components/six-details/six-details.js +410 -410
  181. package/dist/collection/components/six-details/six-details.js.map +1 -1
  182. package/dist/collection/components/six-details/test/six-details.spec.js +7 -7
  183. package/dist/collection/components/six-details/test/six-details.spec.js.map +1 -1
  184. package/dist/collection/components/six-dialog/six-dialog.css +2 -2
  185. package/dist/collection/components/six-dialog/six-dialog.js +354 -354
  186. package/dist/collection/components/six-dialog/six-dialog.js.map +1 -1
  187. package/dist/collection/components/six-dialog/test/six-dialog.spec.js +7 -7
  188. package/dist/collection/components/six-dialog/test/six-dialog.spec.js.map +1 -1
  189. package/dist/collection/components/six-drawer/six-drawer.css +2 -2
  190. package/dist/collection/components/six-drawer/six-drawer.js +409 -409
  191. package/dist/collection/components/six-drawer/six-drawer.js.map +1 -1
  192. package/dist/collection/components/six-drawer/test/six-drawer.spec.js +8 -8
  193. package/dist/collection/components/six-drawer/test/six-drawer.spec.js.map +1 -1
  194. package/dist/collection/components/six-dropdown/six-dropdown.css +22 -6
  195. package/dist/collection/components/six-dropdown/six-dropdown.js +981 -891
  196. package/dist/collection/components/six-dropdown/six-dropdown.js.map +1 -1
  197. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js +92 -67
  198. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js.map +1 -1
  199. package/dist/collection/components/six-error/six-error.css +5 -0
  200. package/dist/collection/components/six-error/six-error.js +25 -0
  201. package/dist/collection/components/six-error/six-error.js.map +1 -0
  202. package/dist/collection/components/six-error-page/six-error-page.js +177 -177
  203. package/dist/collection/components/six-error-page/six-error-page.js.map +1 -1
  204. package/dist/collection/components/six-error-page/test/six-error-page.spec.js +77 -77
  205. package/dist/collection/components/six-error-page/test/six-error-page.spec.js.map +1 -1
  206. package/dist/collection/components/six-file-list/six-file-list.js +15 -15
  207. package/dist/collection/components/six-file-list/six-file-list.js.map +1 -1
  208. package/dist/collection/components/six-file-list/test/six-file-list.spec.js +16 -16
  209. package/dist/collection/components/six-file-list/test/six-file-list.spec.js.map +1 -1
  210. package/dist/collection/components/six-file-list-item/six-file-list-item.css +1 -1
  211. package/dist/collection/components/six-file-list-item/six-file-list-item.js +195 -195
  212. package/dist/collection/components/six-file-list-item/six-file-list-item.js.map +1 -1
  213. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js +42 -42
  214. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js.map +1 -1
  215. package/dist/collection/components/six-file-upload/six-file-upload.css +1 -4
  216. package/dist/collection/components/six-file-upload/six-file-upload.js +291 -291
  217. package/dist/collection/components/six-file-upload/six-file-upload.js.map +1 -1
  218. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js +27 -27
  219. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js.map +1 -1
  220. package/dist/collection/components/six-footer/six-footer.css +2 -2
  221. package/dist/collection/components/six-footer/six-footer.js +15 -15
  222. package/dist/collection/components/six-footer/six-footer.js.map +1 -1
  223. package/dist/collection/components/six-footer/test/six-footer.spec.js +7 -7
  224. package/dist/collection/components/six-footer/test/six-footer.spec.js.map +1 -1
  225. package/dist/collection/components/six-group-label/six-group-label.css +5 -2
  226. package/dist/collection/components/six-group-label/six-group-label.js +155 -155
  227. package/dist/collection/components/six-group-label/six-group-label.js.map +1 -1
  228. package/dist/collection/components/six-group-label/test/six-group-label.spec.js +15 -13
  229. package/dist/collection/components/six-group-label/test/six-group-label.spec.js.map +1 -1
  230. package/dist/collection/components/six-header/six-header.css +6 -2
  231. package/dist/collection/components/six-header/six-header.js +439 -405
  232. package/dist/collection/components/six-header/six-header.js.map +1 -1
  233. package/dist/collection/components/six-header/test/six-header.spec.js +77 -33
  234. package/dist/collection/components/six-header/test/six-header.spec.js.map +1 -1
  235. package/dist/collection/components/six-icon/six-icon.css +5 -2
  236. package/dist/collection/components/six-icon/six-icon.js +71 -71
  237. package/dist/collection/components/six-icon/six-icon.js.map +1 -1
  238. package/dist/collection/components/six-icon/test/six-icon.spec.js +7 -7
  239. package/dist/collection/components/six-icon/test/six-icon.spec.js.map +1 -1
  240. package/dist/collection/components/six-icon-button/six-icon-button.css +5 -5
  241. package/dist/collection/components/six-icon-button/six-icon-button.js +131 -131
  242. package/dist/collection/components/six-icon-button/six-icon-button.js.map +1 -1
  243. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js +7 -7
  244. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js.map +1 -1
  245. package/dist/collection/components/six-input/six-input.css +14 -2
  246. package/dist/collection/components/six-input/six-input.js +970 -919
  247. package/dist/collection/components/six-input/six-input.js.map +1 -1
  248. package/dist/collection/components/six-input/test/six-input.spec.js +10 -8
  249. package/dist/collection/components/six-input/test/six-input.spec.js.map +1 -1
  250. package/dist/collection/components/six-item-picker/six-item-picker.css +8 -0
  251. package/dist/collection/components/six-item-picker/six-item-picker.js +727 -631
  252. package/dist/collection/components/six-item-picker/six-item-picker.js.map +1 -1
  253. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js +82 -82
  254. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js.map +1 -1
  255. package/dist/collection/components/six-item-picker/types.js +9 -7
  256. package/dist/collection/components/six-item-picker/types.js.map +1 -1
  257. package/dist/collection/components/six-language-switcher/six-language-switcher.js +124 -124
  258. package/dist/collection/components/six-language-switcher/six-language-switcher.js.map +1 -1
  259. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js +79 -79
  260. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js.map +1 -1
  261. package/dist/collection/components/six-layout-grid/six-layout-grid.js +54 -54
  262. package/dist/collection/components/six-layout-grid/six-layout-grid.js.map +1 -1
  263. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js +7 -7
  264. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js.map +1 -1
  265. package/dist/collection/components/six-main-container/six-main-container.js +41 -41
  266. package/dist/collection/components/six-main-container/six-main-container.js.map +1 -1
  267. package/dist/collection/components/six-main-container/test/six-main-container.spec.js +7 -7
  268. package/dist/collection/components/six-main-container/test/six-main-container.spec.js.map +1 -1
  269. package/dist/collection/components/six-menu/six-menu.css +8 -7
  270. package/dist/collection/components/six-menu/six-menu.js +388 -366
  271. package/dist/collection/components/six-menu/six-menu.js.map +1 -1
  272. package/dist/collection/components/six-menu/test/six-menu.spec.js +41 -41
  273. package/dist/collection/components/six-menu/test/six-menu.spec.js.map +1 -1
  274. package/dist/collection/components/six-menu-divider/six-menu-divider.css +3 -2
  275. package/dist/collection/components/six-menu-divider/six-menu-divider.js +15 -15
  276. package/dist/collection/components/six-menu-divider/six-menu-divider.js.map +1 -1
  277. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js +7 -7
  278. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js.map +1 -1
  279. package/dist/collection/components/six-menu-item/six-menu-item.css +13 -2
  280. package/dist/collection/components/six-menu-item/six-menu-item.js +209 -180
  281. package/dist/collection/components/six-menu-item/six-menu-item.js.map +1 -1
  282. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js +7 -7
  283. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js.map +1 -1
  284. package/dist/collection/components/six-menu-label/six-menu-label.css +1 -1
  285. package/dist/collection/components/six-menu-label/six-menu-label.js +15 -15
  286. package/dist/collection/components/six-menu-label/six-menu-label.js.map +1 -1
  287. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js +7 -7
  288. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js.map +1 -1
  289. package/dist/collection/components/six-picto/six-picto.js +46 -46
  290. package/dist/collection/components/six-picto/six-picto.js.map +1 -1
  291. package/dist/collection/components/six-picto/test/six-picto.spec.js +13 -13
  292. package/dist/collection/components/six-picto/test/six-picto.spec.js.map +1 -1
  293. package/dist/collection/components/six-progress-bar/six-progress-bar.css +1 -1
  294. package/dist/collection/components/six-progress-bar/six-progress-bar.js +64 -64
  295. package/dist/collection/components/six-progress-bar/six-progress-bar.js.map +1 -1
  296. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js +7 -7
  297. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js.map +1 -1
  298. package/dist/collection/components/six-progress-ring/six-progress-ring.css +1 -1
  299. package/dist/collection/components/six-progress-ring/six-progress-ring.js +100 -100
  300. package/dist/collection/components/six-progress-ring/six-progress-ring.js.map +1 -1
  301. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js +7 -7
  302. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js.map +1 -1
  303. package/dist/collection/components/six-radio/six-radio.css +1 -1
  304. package/dist/collection/components/six-radio/six-radio.js +321 -320
  305. package/dist/collection/components/six-radio/six-radio.js.map +1 -1
  306. package/dist/collection/components/six-radio/test/six-radio.spec.js +13 -13
  307. package/dist/collection/components/six-radio/test/six-radio.spec.js.map +1 -1
  308. package/dist/collection/components/six-range/six-range.css +5 -2
  309. package/dist/collection/components/six-range/six-range.js +564 -542
  310. package/dist/collection/components/six-range/six-range.js.map +1 -1
  311. package/dist/collection/components/six-range/test/six-range.spec.js +11 -9
  312. package/dist/collection/components/six-range/test/six-range.spec.js.map +1 -1
  313. package/dist/collection/components/six-root/six-root.js +152 -152
  314. package/dist/collection/components/six-root/six-root.js.map +1 -1
  315. package/dist/collection/components/six-root/test/six-root.spec.js +10 -10
  316. package/dist/collection/components/six-root/test/six-root.spec.js.map +1 -1
  317. package/dist/collection/components/six-search-field/six-search-field.css +1 -1
  318. package/dist/collection/components/six-search-field/six-search-field.js +169 -169
  319. package/dist/collection/components/six-search-field/six-search-field.js.map +1 -1
  320. package/dist/collection/components/six-search-field/test/six-search-field.spec.js +7 -7
  321. package/dist/collection/components/six-search-field/test/six-search-field.spec.js.map +1 -1
  322. package/dist/collection/components/six-select/six-select.css +58 -67
  323. package/dist/collection/components/six-select/six-select.js +1117 -921
  324. package/dist/collection/components/six-select/six-select.js.map +1 -1
  325. package/dist/collection/components/six-select/test/six-select.spec.js +51 -31
  326. package/dist/collection/components/six-select/test/six-select.spec.js.map +1 -1
  327. package/dist/collection/components/six-select/test/util.spec.js +73 -73
  328. package/dist/collection/components/six-select/test/util.spec.js.map +1 -1
  329. package/dist/collection/components/six-select/util.js +34 -34
  330. package/dist/collection/components/six-select/util.js.map +1 -1
  331. package/dist/collection/components/six-sidebar/six-sidebar.css +2 -2
  332. package/dist/collection/components/six-sidebar/six-sidebar.js +466 -464
  333. package/dist/collection/components/six-sidebar/six-sidebar.js.map +1 -1
  334. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js +7 -7
  335. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js.map +1 -1
  336. package/dist/collection/components/six-sidebar-item/six-sidebar-item.css +6 -1
  337. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +101 -82
  338. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js.map +1 -1
  339. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js +19 -19
  340. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js.map +1 -1
  341. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.css +12 -1
  342. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js +180 -152
  343. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js.map +1 -1
  344. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js +16 -16
  345. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js.map +1 -1
  346. package/dist/collection/components/six-spinner/six-spinner.css +1 -1
  347. package/dist/collection/components/six-spinner/six-spinner.js +47 -46
  348. package/dist/collection/components/six-spinner/six-spinner.js.map +1 -1
  349. package/dist/collection/components/six-spinner/test/six-spinner.spec.js +14 -14
  350. package/dist/collection/components/six-spinner/test/six-spinner.spec.js.map +1 -1
  351. package/dist/collection/components/six-stage-indicator/six-stage-indicator.css +1 -1
  352. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js +45 -45
  353. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js.map +1 -1
  354. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js +37 -37
  355. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js.map +1 -1
  356. package/dist/collection/components/six-switch/six-switch.css +5 -2
  357. package/dist/collection/components/six-switch/six-switch.js +386 -344
  358. package/dist/collection/components/six-switch/six-switch.js.map +1 -1
  359. package/dist/collection/components/six-switch/test/six-switch.spec.js +19 -15
  360. package/dist/collection/components/six-switch/test/six-switch.spec.js.map +1 -1
  361. package/dist/collection/components/six-tab/six-tab.css +55 -6
  362. package/dist/collection/components/six-tab/six-tab.js +206 -189
  363. package/dist/collection/components/six-tab/six-tab.js.map +1 -1
  364. package/dist/collection/components/six-tab-group/six-tab-group.css +1 -32
  365. package/dist/collection/components/six-tab-group/six-tab-group.js +318 -358
  366. package/dist/collection/components/six-tab-group/six-tab-group.js.map +1 -1
  367. package/dist/collection/components/six-tab-panel/six-tab-panel.css +1 -1
  368. package/dist/collection/components/six-tab-panel/six-tab-panel.js +63 -63
  369. package/dist/collection/components/six-tab-panel/six-tab-panel.js.map +1 -1
  370. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js +7 -7
  371. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js.map +1 -1
  372. package/dist/collection/components/six-tag/six-tag.css +1 -1
  373. package/dist/collection/components/six-tag/six-tag.js +161 -139
  374. package/dist/collection/components/six-tag/six-tag.js.map +1 -1
  375. package/dist/collection/components/six-tag/test/six-tag.spec.js +24 -12
  376. package/dist/collection/components/six-tag/test/six-tag.spec.js.map +1 -1
  377. package/dist/collection/components/six-textarea/six-textarea.css +5 -2
  378. package/dist/collection/components/six-textarea/six-textarea.js +792 -763
  379. package/dist/collection/components/six-textarea/six-textarea.js.map +1 -1
  380. package/dist/collection/components/six-textarea/test/six-textarea.spec.js +97 -95
  381. package/dist/collection/components/six-textarea/test/six-textarea.spec.js.map +1 -1
  382. package/dist/collection/components/six-tile/six-tile.css +2 -2
  383. package/dist/collection/components/six-tile/six-tile.js +298 -298
  384. package/dist/collection/components/six-tile/six-tile.js.map +1 -1
  385. package/dist/collection/components/six-tile/test/six-tile.spec.js +14 -14
  386. package/dist/collection/components/six-tile/test/six-tile.spec.js.map +1 -1
  387. package/dist/collection/components/six-timepicker/six-timepicker.css +1 -1
  388. package/dist/collection/components/six-timepicker/six-timepicker.js +825 -812
  389. package/dist/collection/components/six-timepicker/six-timepicker.js.map +1 -1
  390. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js +170 -170
  391. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js.map +1 -1
  392. package/dist/collection/components/six-tooltip/six-tooltip.css +2 -2
  393. package/dist/collection/components/six-tooltip/six-tooltip.js +407 -407
  394. package/dist/collection/components/six-tooltip/six-tooltip.js.map +1 -1
  395. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js +7 -7
  396. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js.map +1 -1
  397. package/dist/collection/functional-components/form-control/form-control.js +19 -17
  398. package/dist/collection/functional-components/form-control/form-control.js.map +1 -1
  399. package/dist/collection/index.js +1 -0
  400. package/dist/collection/index.js.map +1 -1
  401. package/dist/collection/testUtil/delay.js +1 -1
  402. package/dist/collection/testUtil/delay.js.map +1 -1
  403. package/dist/collection/utils/alert.js +54 -0
  404. package/dist/collection/utils/alert.js.map +1 -0
  405. package/dist/collection/utils/animation.js +34 -0
  406. package/dist/collection/utils/animation.js.map +1 -0
  407. package/dist/collection/utils/date-util.js +500 -500
  408. package/dist/collection/utils/date-util.js.map +1 -1
  409. package/dist/collection/utils/date-util.spec.js +984 -984
  410. package/dist/collection/utils/date-util.spec.js.map +1 -1
  411. package/dist/collection/utils/error-messages.js +102 -81
  412. package/dist/collection/utils/error-messages.js.map +1 -1
  413. package/dist/collection/utils/event-listeners.js +51 -51
  414. package/dist/collection/utils/event-listeners.js.map +1 -1
  415. package/dist/collection/utils/execution-control.js +14 -14
  416. package/dist/collection/utils/execution-control.js.map +1 -1
  417. package/dist/collection/utils/focus-visible.js +28 -28
  418. package/dist/collection/utils/focus-visible.js.map +1 -1
  419. package/dist/collection/utils/form.js +12 -12
  420. package/dist/collection/utils/form.js.map +1 -1
  421. package/dist/collection/utils/modal.js +25 -25
  422. package/dist/collection/utils/modal.js.map +1 -1
  423. package/dist/collection/utils/offset.js +4 -4
  424. package/dist/collection/utils/offset.js.map +1 -1
  425. package/dist/collection/utils/popover.js +99 -99
  426. package/dist/collection/utils/popover.js.map +1 -1
  427. package/dist/collection/utils/popup.js +71 -71
  428. package/dist/collection/utils/popup.js.map +1 -1
  429. package/dist/collection/utils/scroll.js +27 -27
  430. package/dist/collection/utils/scroll.js.map +1 -1
  431. package/dist/collection/utils/scroll.spec.js +116 -116
  432. package/dist/collection/utils/scroll.spec.js.map +1 -1
  433. package/dist/collection/utils/slot.js +28 -29
  434. package/dist/collection/utils/slot.js.map +1 -1
  435. package/dist/collection/utils/support.js +10 -10
  436. package/dist/collection/utils/support.js.map +1 -1
  437. package/dist/collection/utils/tabbable.js +17 -17
  438. package/dist/collection/utils/tabbable.js.map +1 -1
  439. package/dist/collection/utils/time.util.js +72 -72
  440. package/dist/collection/utils/time.util.js.map +1 -1
  441. package/dist/collection/utils/time.util.spec.js +353 -353
  442. package/dist/collection/utils/time.util.spec.js.map +1 -1
  443. package/dist/collection/wrappers/set-attributes/set-attributes.js +65 -65
  444. package/dist/collection/wrappers/set-attributes/set-attributes.js.map +1 -1
  445. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js +7 -7
  446. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js.map +1 -1
  447. package/dist/components/event-listeners.js +51 -51
  448. package/dist/components/event-listeners.js.map +1 -1
  449. package/dist/components/execution-control.js +14 -14
  450. package/dist/components/execution-control.js.map +1 -1
  451. package/dist/components/focus-visible.js +28 -28
  452. package/dist/components/focus-visible.js.map +1 -1
  453. package/dist/components/form-control.js +26 -23
  454. package/dist/components/form-control.js.map +1 -1
  455. package/dist/components/form.js +12 -12
  456. package/dist/components/form.js.map +1 -1
  457. package/dist/components/index.d.ts +6 -0
  458. package/dist/components/index.js +114 -148
  459. package/dist/components/index.js.map +1 -1
  460. package/dist/components/modal.js +35 -35
  461. package/dist/components/modal.js.map +1 -1
  462. package/dist/components/popover.js +98 -98
  463. package/dist/components/popover.js.map +1 -1
  464. package/dist/components/scroll.js +32 -32
  465. package/dist/components/scroll.js.map +1 -1
  466. package/dist/components/set-attributes.d.ts +2 -2
  467. package/dist/components/set-attributes2.js +58 -56
  468. package/dist/components/set-attributes2.js.map +1 -1
  469. package/dist/components/six-alert.d.ts +2 -2
  470. package/dist/components/six-alert.js +168 -142
  471. package/dist/components/six-alert.js.map +1 -1
  472. package/dist/components/six-avatar.d.ts +2 -2
  473. package/dist/components/six-avatar.js +45 -45
  474. package/dist/components/six-avatar.js.map +1 -1
  475. package/dist/components/six-badge.d.ts +2 -2
  476. package/dist/components/six-badge.js +40 -40
  477. package/dist/components/six-badge.js.map +1 -1
  478. package/dist/components/six-button.d.ts +2 -2
  479. package/dist/components/six-button.js +1 -142
  480. package/dist/components/six-button.js.map +1 -1
  481. package/dist/components/six-button2.js +146 -0
  482. package/dist/components/six-button2.js.map +1 -0
  483. package/dist/components/six-card.d.ts +2 -2
  484. package/dist/components/six-card.js +21 -21
  485. package/dist/components/six-card.js.map +1 -1
  486. package/dist/components/six-checkbox.d.ts +2 -2
  487. package/dist/components/six-checkbox.js +1 -145
  488. package/dist/components/six-checkbox.js.map +1 -1
  489. package/dist/components/six-checkbox2.js +165 -0
  490. package/dist/components/six-checkbox2.js.map +1 -0
  491. package/dist/components/six-datepicker.d.ts +2 -2
  492. package/dist/components/six-datepicker.js +906 -900
  493. package/dist/components/six-datepicker.js.map +1 -1
  494. package/dist/components/six-details.d.ts +2 -2
  495. package/dist/components/six-details2.js +158 -156
  496. package/dist/components/six-details2.js.map +1 -1
  497. package/dist/components/six-dialog.d.ts +2 -2
  498. package/dist/components/six-dialog.js +159 -157
  499. package/dist/components/six-dialog.js.map +1 -1
  500. package/dist/components/six-drawer.d.ts +2 -2
  501. package/dist/components/six-drawer.js +179 -177
  502. package/dist/components/six-drawer.js.map +1 -1
  503. package/dist/components/six-dropdown.d.ts +2 -2
  504. package/dist/components/six-dropdown2.js +551 -464
  505. package/dist/components/six-dropdown2.js.map +1 -1
  506. package/dist/components/six-error-page.d.ts +2 -2
  507. package/dist/components/six-error-page.js +106 -106
  508. package/dist/components/six-error-page.js.map +1 -1
  509. package/dist/components/six-error.d.ts +11 -0
  510. package/dist/components/six-error.js +8 -0
  511. package/dist/components/six-error.js.map +1 -0
  512. package/dist/components/six-error2.js +32 -0
  513. package/dist/components/six-error2.js.map +1 -0
  514. package/dist/components/six-file-list-item.d.ts +2 -2
  515. package/dist/components/six-file-list-item.js +59 -59
  516. package/dist/components/six-file-list-item.js.map +1 -1
  517. package/dist/components/six-file-list.d.ts +2 -2
  518. package/dist/components/six-file-list.js +20 -20
  519. package/dist/components/six-file-list.js.map +1 -1
  520. package/dist/components/six-file-upload.d.ts +2 -2
  521. package/dist/components/six-file-upload.js +124 -124
  522. package/dist/components/six-file-upload.js.map +1 -1
  523. package/dist/components/six-footer.d.ts +2 -2
  524. package/dist/components/six-footer.js +21 -21
  525. package/dist/components/six-footer.js.map +1 -1
  526. package/dist/components/six-group-label.d.ts +2 -2
  527. package/dist/components/six-group-label.js +71 -62
  528. package/dist/components/six-group-label.js.map +1 -1
  529. package/dist/components/six-header.d.ts +2 -2
  530. package/dist/components/six-header.js +237 -207
  531. package/dist/components/six-header.js.map +1 -1
  532. package/dist/components/six-icon-button.d.ts +2 -2
  533. package/dist/components/six-icon-button2.js +55 -55
  534. package/dist/components/six-icon-button2.js.map +1 -1
  535. package/dist/components/six-icon.d.ts +2 -2
  536. package/dist/components/six-icon2.js +38 -38
  537. package/dist/components/six-icon2.js.map +1 -1
  538. package/dist/components/six-input.d.ts +2 -2
  539. package/dist/components/six-input2.js +258 -239
  540. package/dist/components/six-input2.js.map +1 -1
  541. package/dist/components/six-item-picker.d.ts +2 -2
  542. package/dist/components/six-item-picker2.js +450 -348
  543. package/dist/components/six-item-picker2.js.map +1 -1
  544. package/dist/components/six-language-switcher.d.ts +2 -2
  545. package/dist/components/six-language-switcher.js +64 -62
  546. package/dist/components/six-language-switcher.js.map +1 -1
  547. package/dist/components/six-layout-grid.d.ts +2 -2
  548. package/dist/components/six-layout-grid.js +37 -35
  549. package/dist/components/six-layout-grid.js.map +1 -1
  550. package/dist/components/six-main-container.d.ts +2 -2
  551. package/dist/components/six-main-container.js +24 -24
  552. package/dist/components/six-main-container.js.map +1 -1
  553. package/dist/components/six-menu-divider.d.ts +2 -2
  554. package/dist/components/six-menu-divider.js +21 -21
  555. package/dist/components/six-menu-divider.js.map +1 -1
  556. package/dist/components/six-menu-item.d.ts +2 -2
  557. package/dist/components/six-menu-item2.js +98 -75
  558. package/dist/components/six-menu-item2.js.map +1 -1
  559. package/dist/components/six-menu-label.d.ts +2 -2
  560. package/dist/components/six-menu-label.js +21 -21
  561. package/dist/components/six-menu-label.js.map +1 -1
  562. package/dist/components/six-menu.d.ts +2 -2
  563. package/dist/components/six-menu2.js +236 -220
  564. package/dist/components/six-menu2.js.map +1 -1
  565. package/dist/components/six-picto.d.ts +2 -2
  566. package/dist/components/six-picto2.js +29 -29
  567. package/dist/components/six-picto2.js.map +1 -1
  568. package/dist/components/six-progress-bar.d.ts +2 -2
  569. package/dist/components/six-progress-bar.js +31 -31
  570. package/dist/components/six-progress-bar.js.map +1 -1
  571. package/dist/components/six-progress-ring.d.ts +2 -2
  572. package/dist/components/six-progress-ring.js +49 -47
  573. package/dist/components/six-progress-ring.js.map +1 -1
  574. package/dist/components/six-radio.d.ts +2 -2
  575. package/dist/components/six-radio.js +128 -125
  576. package/dist/components/six-radio.js.map +1 -1
  577. package/dist/components/six-range.d.ts +2 -2
  578. package/dist/components/six-range.js +233 -215
  579. package/dist/components/six-range.js.map +1 -1
  580. package/dist/components/six-root.d.ts +2 -2
  581. package/dist/components/six-root.js +66 -64
  582. package/dist/components/six-root.js.map +1 -1
  583. package/dist/components/six-search-field.d.ts +2 -2
  584. package/dist/components/six-search-field.js +79 -71
  585. package/dist/components/six-search-field.js.map +1 -1
  586. package/dist/components/six-select.d.ts +2 -2
  587. package/dist/components/six-select.js +714 -440
  588. package/dist/components/six-select.js.map +1 -1
  589. package/dist/components/six-sidebar-item-group.d.ts +2 -2
  590. package/dist/components/six-sidebar-item-group.js +87 -75
  591. package/dist/components/six-sidebar-item-group.js.map +1 -1
  592. package/dist/components/six-sidebar-item.d.ts +2 -2
  593. package/dist/components/six-sidebar-item.js +35 -32
  594. package/dist/components/six-sidebar-item.js.map +1 -1
  595. package/dist/components/six-sidebar.d.ts +2 -2
  596. package/dist/components/six-sidebar.js +199 -197
  597. package/dist/components/six-sidebar.js.map +1 -1
  598. package/dist/components/six-spinner.d.ts +2 -2
  599. package/dist/components/six-spinner2.js +30 -30
  600. package/dist/components/six-spinner2.js.map +1 -1
  601. package/dist/components/six-stage-indicator.d.ts +2 -2
  602. package/dist/components/six-stage-indicator2.js +29 -29
  603. package/dist/components/six-stage-indicator2.js.map +1 -1
  604. package/dist/components/six-switch.d.ts +2 -2
  605. package/dist/components/six-switch.js +142 -112
  606. package/dist/components/six-switch.js.map +1 -1
  607. package/dist/components/six-tab-group.d.ts +2 -2
  608. package/dist/components/six-tab-group.js +260 -263
  609. package/dist/components/six-tab-group.js.map +1 -1
  610. package/dist/components/six-tab-panel.d.ts +2 -2
  611. package/dist/components/six-tab-panel.js +30 -30
  612. package/dist/components/six-tab-panel.js.map +1 -1
  613. package/dist/components/six-tab.d.ts +2 -2
  614. package/dist/components/six-tab.js +85 -69
  615. package/dist/components/six-tab.js.map +1 -1
  616. package/dist/components/six-tag.d.ts +2 -2
  617. package/dist/components/six-tag.js +98 -1
  618. package/dist/components/six-tag.js.map +1 -1
  619. package/dist/components/six-textarea.d.ts +2 -2
  620. package/dist/components/six-textarea.js +235 -218
  621. package/dist/components/six-textarea.js.map +1 -1
  622. package/dist/components/six-tile.d.ts +2 -2
  623. package/dist/components/six-tile.js +117 -117
  624. package/dist/components/six-tile.js.map +1 -1
  625. package/dist/components/six-timepicker.d.ts +2 -2
  626. package/dist/components/six-timepicker2.js +491 -487
  627. package/dist/components/six-timepicker2.js.map +1 -1
  628. package/dist/components/six-tooltip.d.ts +2 -2
  629. package/dist/components/six-tooltip2.js +172 -170
  630. package/dist/components/six-tooltip2.js.map +1 -1
  631. package/dist/components/slot.js +29 -30
  632. package/dist/components/slot.js.map +1 -1
  633. package/dist/components.d.ts +1 -21
  634. package/dist/components.json +1094 -210
  635. package/dist/esm/error-messages-1eaaad23.js +115 -0
  636. package/dist/esm/error-messages-1eaaad23.js.map +1 -0
  637. package/dist/esm/event-listeners-706d4309.js +59 -0
  638. package/dist/esm/event-listeners-706d4309.js.map +1 -0
  639. package/dist/esm/{execution-control-e0892a05.js → execution-control-2ebaf4ef.js} +15 -15
  640. package/dist/esm/{execution-control-e0892a05.js.map → execution-control-2ebaf4ef.js.map} +1 -1
  641. package/dist/esm/focus-visible-d9dbfeef.js +45 -0
  642. package/dist/esm/{focus-visible-fc6ac671.js.map → focus-visible-d9dbfeef.js.map} +1 -1
  643. package/dist/esm/form-4b145b7a.js +18 -0
  644. package/dist/esm/{form-81252534.js.map → form-4b145b7a.js.map} +1 -1
  645. package/dist/esm/form-control-77fcccd0.js +34 -0
  646. package/dist/esm/form-control-77fcccd0.js.map +1 -0
  647. package/dist/esm/{index-8a74f992.js → index-6c10d50b.js} +584 -154
  648. package/dist/esm/index-6c10d50b.js.map +1 -0
  649. package/dist/esm/index.js +52 -87
  650. package/dist/esm/index.js.map +1 -1
  651. package/dist/esm/loader.js +3 -3
  652. package/dist/esm/modal-96526245.js +49 -0
  653. package/dist/esm/modal-96526245.js.map +1 -0
  654. package/dist/esm/{popover-136d1f73.js → popover-25996e62.js} +99 -99
  655. package/dist/esm/popover-25996e62.js.map +1 -0
  656. package/dist/esm/popup-7209e9d5.js +98 -0
  657. package/dist/esm/popup-7209e9d5.js.map +1 -0
  658. package/dist/esm/scroll-3e16851e.js +64 -0
  659. package/dist/esm/{scroll-3fb087a2.js.map → scroll-3e16851e.js.map} +1 -1
  660. package/dist/esm/set-attributes_2.entry.js +51 -51
  661. package/dist/esm/set-attributes_2.entry.js.map +1 -1
  662. package/dist/esm/six-alert.entry.js +133 -110
  663. package/dist/esm/six-alert.entry.js.map +1 -1
  664. package/dist/esm/six-avatar.entry.js +21 -21
  665. package/dist/esm/six-avatar.entry.js.map +1 -1
  666. package/dist/esm/six-badge.entry.js +23 -23
  667. package/dist/esm/six-badge.entry.js.map +1 -1
  668. package/dist/esm/six-button.entry.js +95 -95
  669. package/dist/esm/six-button.entry.js.map +1 -1
  670. package/dist/esm/six-card.entry.js +8 -8
  671. package/dist/esm/six-card.entry.js.map +1 -1
  672. package/dist/esm/six-checkbox_2.entry.js +185 -0
  673. package/dist/esm/six-checkbox_2.entry.js.map +1 -0
  674. package/dist/esm/six-datepicker.entry.js +835 -839
  675. package/dist/esm/six-datepicker.entry.js.map +1 -1
  676. package/dist/esm/six-details.entry.js +127 -127
  677. package/dist/esm/six-details.entry.js.map +1 -1
  678. package/dist/esm/six-dialog.entry.js +129 -129
  679. package/dist/esm/six-dialog.entry.js.map +1 -1
  680. package/dist/esm/six-drawer.entry.js +147 -147
  681. package/dist/esm/six-drawer.entry.js.map +1 -1
  682. package/dist/esm/six-dropdown_2.entry.js +707 -637
  683. package/dist/esm/six-dropdown_2.entry.js.map +1 -1
  684. package/dist/esm/six-error-page.entry.js +82 -82
  685. package/dist/esm/six-error-page.entry.js.map +1 -1
  686. package/dist/esm/six-error.entry.js +17 -0
  687. package/dist/esm/six-error.entry.js.map +1 -0
  688. package/dist/esm/six-file-list-item.entry.js +34 -34
  689. package/dist/esm/six-file-list-item.entry.js.map +1 -1
  690. package/dist/esm/six-file-list.entry.js +7 -7
  691. package/dist/esm/six-file-list.entry.js.map +1 -1
  692. package/dist/esm/six-file-upload.entry.js +99 -99
  693. package/dist/esm/six-file-upload.entry.js.map +1 -1
  694. package/dist/esm/six-footer.entry.js +8 -8
  695. package/dist/esm/six-footer.entry.js.map +1 -1
  696. package/dist/esm/six-group-label.entry.js +43 -43
  697. package/dist/esm/six-group-label.entry.js.map +1 -1
  698. package/dist/esm/six-header.entry.js +171 -156
  699. package/dist/esm/six-header.entry.js.map +1 -1
  700. package/dist/esm/six-icon-button.entry.js +32 -32
  701. package/dist/esm/six-icon-button.entry.js.map +1 -1
  702. package/dist/esm/six-icon.entry.js +22 -22
  703. package/dist/esm/six-icon.entry.js.map +1 -1
  704. package/dist/esm/six-input.entry.js +192 -187
  705. package/dist/esm/six-input.entry.js.map +1 -1
  706. package/dist/esm/six-item-picker.entry.js +405 -309
  707. package/dist/esm/six-item-picker.entry.js.map +1 -1
  708. package/dist/esm/six-language-switcher.entry.js +46 -46
  709. package/dist/esm/six-language-switcher.entry.js.map +1 -1
  710. package/dist/esm/six-layout-grid.entry.js +20 -20
  711. package/dist/esm/six-layout-grid.entry.js.map +1 -1
  712. package/dist/esm/six-main-container.entry.js +9 -9
  713. package/dist/esm/six-main-container.entry.js.map +1 -1
  714. package/dist/esm/six-menu-divider.entry.js +8 -8
  715. package/dist/esm/six-menu-divider.entry.js.map +1 -1
  716. package/dist/esm/six-menu-label.entry.js +8 -8
  717. package/dist/esm/six-menu-label.entry.js.map +1 -1
  718. package/dist/esm/six-picto.entry.js +14 -14
  719. package/dist/esm/six-picto.entry.js.map +1 -1
  720. package/dist/esm/six-progress-bar.entry.js +15 -15
  721. package/dist/esm/six-progress-bar.entry.js.map +1 -1
  722. package/dist/esm/six-progress-ring.entry.js +30 -30
  723. package/dist/esm/six-progress-ring.entry.js.map +1 -1
  724. package/dist/esm/six-radio.entry.js +104 -104
  725. package/dist/esm/six-radio.entry.js.map +1 -1
  726. package/dist/esm/six-range.entry.js +180 -177
  727. package/dist/esm/six-range.entry.js.map +1 -1
  728. package/dist/esm/six-root.entry.js +30 -30
  729. package/dist/esm/six-root.entry.js.map +1 -1
  730. package/dist/esm/six-search-field.entry.js +44 -44
  731. package/dist/esm/six-search-field.entry.js.map +1 -1
  732. package/dist/esm/six-select.entry.js +497 -363
  733. package/dist/esm/six-select.entry.js.map +1 -1
  734. package/dist/esm/six-sidebar-item-group.entry.js +56 -45
  735. package/dist/esm/six-sidebar-item-group.entry.js.map +1 -1
  736. package/dist/esm/six-sidebar-item.entry.js +17 -15
  737. package/dist/esm/six-sidebar-item.entry.js.map +1 -1
  738. package/dist/esm/six-sidebar.entry.js +174 -174
  739. package/dist/esm/six-sidebar.entry.js.map +1 -1
  740. package/dist/esm/six-spinner.entry.js +15 -15
  741. package/dist/esm/six-spinner.entry.js.map +1 -1
  742. package/dist/esm/six-switch.entry.js +107 -89
  743. package/dist/esm/six-switch.entry.js.map +1 -1
  744. package/dist/esm/six-tab-group.entry.js +230 -235
  745. package/dist/esm/six-tab-group.entry.js.map +1 -1
  746. package/dist/esm/six-tab-panel.entry.js +14 -14
  747. package/dist/esm/six-tab-panel.entry.js.map +1 -1
  748. package/dist/esm/six-tab.entry.js +55 -39
  749. package/dist/esm/six-tab.entry.js.map +1 -1
  750. package/dist/esm/six-tag.entry.js +55 -33
  751. package/dist/esm/six-tag.entry.js.map +1 -1
  752. package/dist/esm/six-textarea.entry.js +181 -178
  753. package/dist/esm/six-textarea.entry.js.map +1 -1
  754. package/dist/esm/six-tile.entry.js +77 -77
  755. package/dist/esm/six-tile.entry.js.map +1 -1
  756. package/dist/esm/six-timepicker.entry.js +348 -353
  757. package/dist/esm/six-timepicker.entry.js.map +1 -1
  758. package/dist/esm/six-tooltip.entry.js +148 -148
  759. package/dist/esm/six-tooltip.entry.js.map +1 -1
  760. package/dist/esm/slot-56531341.js +47 -0
  761. package/dist/esm/slot-56531341.js.map +1 -0
  762. package/dist/esm/types-a07bb999.js +19 -0
  763. package/dist/esm/types-a07bb999.js.map +1 -0
  764. package/dist/esm/ui-library.js +4 -4
  765. package/dist/esm/ui-library.js.map +1 -1
  766. package/dist/types/components/six-alert/six-alert.d.ts +43 -40
  767. package/dist/types/components/six-avatar/six-avatar.d.ts +11 -11
  768. package/dist/types/components/six-badge/six-badge.d.ts +7 -7
  769. package/dist/types/components/six-button/six-button.d.ts +48 -48
  770. package/dist/types/components/six-card/six-card.d.ts +1 -1
  771. package/dist/types/components/six-checkbox/six-checkbox.d.ts +58 -55
  772. package/dist/types/components/six-datepicker/components/day-selection.d.ts +3 -3
  773. package/dist/types/components/six-datepicker/components/month-selection.d.ts +3 -3
  774. package/dist/types/components/six-datepicker/components/year-selection.d.ts +3 -3
  775. package/dist/types/components/six-datepicker/six-date-formats.d.ts +20 -20
  776. package/dist/types/components/six-datepicker/six-datepicker.d.ts +188 -186
  777. package/dist/types/components/six-details/six-details.d.ts +42 -42
  778. package/dist/types/components/six-dialog/six-dialog.d.ts +50 -50
  779. package/dist/types/components/six-drawer/six-drawer.d.ts +58 -58
  780. package/dist/types/components/six-dropdown/six-dropdown.d.ts +131 -112
  781. package/dist/types/components/six-error/six-error.d.ts +9 -0
  782. package/dist/types/components/six-error-page/six-error-page.d.ts +25 -25
  783. package/dist/types/components/six-file-list/six-file-list.d.ts +1 -1
  784. package/dist/types/components/six-file-list-item/six-file-list-item.d.ts +23 -23
  785. package/dist/types/components/six-file-upload/six-file-upload.d.ts +33 -33
  786. package/dist/types/components/six-footer/six-footer.d.ts +1 -1
  787. package/dist/types/components/six-group-label/six-group-label.d.ts +22 -22
  788. package/dist/types/components/six-header/six-header.d.ts +59 -55
  789. package/dist/types/components/six-icon/six-icon.d.ts +5 -5
  790. package/dist/types/components/six-icon-button/six-icon-button.d.ts +18 -18
  791. package/dist/types/components/six-input/six-input.d.ts +112 -103
  792. package/dist/types/components/six-item-picker/six-item-picker.d.ts +95 -88
  793. package/dist/types/components/six-item-picker/types.d.ts +7 -7
  794. package/dist/types/components/six-language-switcher/six-language-switcher.d.ts +15 -15
  795. package/dist/types/components/six-layout-grid/six-layout-grid.d.ts +6 -6
  796. package/dist/types/components/six-main-container/six-main-container.d.ts +4 -4
  797. package/dist/types/components/six-menu/six-menu.d.ts +67 -63
  798. package/dist/types/components/six-menu-divider/six-menu-divider.d.ts +1 -1
  799. package/dist/types/components/six-menu-item/six-menu-item.d.ts +27 -21
  800. package/dist/types/components/six-menu-label/six-menu-label.d.ts +1 -1
  801. package/dist/types/components/six-picto/six-picto.d.ts +6 -6
  802. package/dist/types/components/six-progress-bar/six-progress-bar.d.ts +5 -5
  803. package/dist/types/components/six-progress-ring/six-progress-ring.d.ts +11 -11
  804. package/dist/types/components/six-radio/six-radio.d.ts +38 -38
  805. package/dist/types/components/six-range/six-range.d.ts +75 -72
  806. package/dist/types/components/six-root/six-root.d.ts +18 -18
  807. package/dist/types/components/six-search-field/six-search-field.d.ts +20 -20
  808. package/dist/types/components/six-select/six-select.d.ts +137 -119
  809. package/dist/types/components/six-select/util.d.ts +1 -1
  810. package/dist/types/components/six-sidebar/six-sidebar.d.ts +45 -45
  811. package/dist/types/components/six-sidebar-item/six-sidebar-item.d.ts +12 -7
  812. package/dist/types/components/six-sidebar-item-group/six-sidebar-item-group.d.ts +25 -19
  813. package/dist/types/components/six-spinner/six-spinner.d.ts +6 -5
  814. package/dist/types/components/six-stage-indicator/six-stage-indicator.d.ts +3 -3
  815. package/dist/types/components/six-switch/six-switch.d.ts +49 -42
  816. package/dist/types/components/six-tab/six-tab.d.ts +20 -20
  817. package/dist/types/components/six-tab-group/six-tab-group.d.ts +35 -38
  818. package/dist/types/components/six-tab-panel/six-tab-panel.d.ts +7 -7
  819. package/dist/types/components/six-tag/six-tag.d.ts +20 -12
  820. package/dist/types/components/six-textarea/six-textarea.d.ts +89 -86
  821. package/dist/types/components/six-tile/six-tile.d.ts +31 -31
  822. package/dist/types/components/six-timepicker/six-timepicker.d.ts +154 -151
  823. package/dist/types/components/six-tooltip/six-tooltip.d.ts +55 -55
  824. package/dist/types/components.d.ts +573 -22
  825. package/dist/types/functional-components/form-control/form-control.d.ts +32 -28
  826. package/dist/types/index.d.ts +1 -0
  827. package/dist/types/stencil-public-runtime.d.ts +34 -3
  828. package/dist/types/types.d.ts +1 -0
  829. package/dist/types/utils/alert.d.ts +10 -0
  830. package/dist/types/utils/animation.d.ts +12 -0
  831. package/dist/types/utils/date-util.d.ts +50 -50
  832. package/dist/types/utils/error-messages.d.ts +27 -25
  833. package/dist/types/utils/event-listeners.d.ts +11 -11
  834. package/dist/types/utils/focus-visible.d.ts +2 -2
  835. package/dist/types/utils/modal.d.ts +8 -8
  836. package/dist/types/utils/offset.d.ts +2 -2
  837. package/dist/types/utils/popover.d.ts +21 -21
  838. package/dist/types/utils/slot.d.ts +0 -1
  839. package/dist/types/utils/time.util.d.ts +6 -6
  840. package/dist/types/utils/types.d.ts +1 -1
  841. package/dist/types/wrappers/set-attributes/set-attributes.d.ts +7 -7
  842. package/dist/ui-library/index.esm.js +1 -1
  843. package/dist/ui-library/index.esm.js.map +1 -1
  844. package/dist/ui-library/p-01ae4500.entry.js +2 -0
  845. package/dist/ui-library/p-01ae4500.entry.js.map +1 -0
  846. package/dist/ui-library/p-021f6da9.entry.js +2 -0
  847. package/dist/ui-library/p-021f6da9.entry.js.map +1 -0
  848. package/dist/ui-library/p-0274c52c.entry.js +2 -0
  849. package/dist/ui-library/p-0274c52c.entry.js.map +1 -0
  850. package/dist/ui-library/{p-5654e4c7.js → p-06ba4450.js} +1 -1
  851. package/dist/ui-library/{p-9b354f5d.entry.js → p-0cb135aa.entry.js} +2 -2
  852. package/dist/ui-library/p-0cebf1d2.js +2 -0
  853. package/dist/ui-library/p-0cebf1d2.js.map +1 -0
  854. package/dist/ui-library/p-1431a2a8.entry.js +2 -0
  855. package/dist/ui-library/p-1431a2a8.entry.js.map +1 -0
  856. package/dist/ui-library/p-1aa28025.entry.js +2 -0
  857. package/dist/ui-library/p-1aa28025.entry.js.map +1 -0
  858. package/dist/ui-library/p-1b135e1c.entry.js +2 -0
  859. package/dist/ui-library/{p-7e3ad38a.entry.js.map → p-1b135e1c.entry.js.map} +1 -1
  860. package/dist/ui-library/{p-ac099e6b.entry.js → p-1be990f9.entry.js} +2 -2
  861. package/dist/ui-library/{p-ac099e6b.entry.js.map → p-1be990f9.entry.js.map} +1 -1
  862. package/dist/ui-library/p-2008636b.entry.js +2 -0
  863. package/dist/ui-library/p-2008636b.entry.js.map +1 -0
  864. package/dist/ui-library/p-2132da0a.entry.js +2 -0
  865. package/dist/ui-library/p-2132da0a.entry.js.map +1 -0
  866. package/dist/ui-library/p-2cd674e0.entry.js +2 -0
  867. package/dist/ui-library/{p-878226a0.entry.js.map → p-2cd674e0.entry.js.map} +1 -1
  868. package/dist/ui-library/p-2d86ba99.entry.js +2 -0
  869. package/dist/ui-library/p-2d86ba99.entry.js.map +1 -0
  870. package/dist/ui-library/p-31a4a74c.entry.js +2 -0
  871. package/dist/ui-library/p-31a4a74c.entry.js.map +1 -0
  872. package/dist/ui-library/p-3783aed0.entry.js +2 -0
  873. package/dist/ui-library/p-3783aed0.entry.js.map +1 -0
  874. package/dist/ui-library/p-391f10f1.entry.js +2 -0
  875. package/dist/ui-library/p-391f10f1.entry.js.map +1 -0
  876. package/dist/ui-library/p-3dd28dc0.entry.js +2 -0
  877. package/dist/ui-library/{p-37557787.entry.js.map → p-3dd28dc0.entry.js.map} +1 -1
  878. package/dist/ui-library/p-46ee280d.entry.js +2 -0
  879. package/dist/ui-library/{p-724875b0.entry.js.map → p-46ee280d.entry.js.map} +1 -1
  880. package/dist/ui-library/p-4752a63c.entry.js +2 -0
  881. package/dist/ui-library/{p-264d4ea8.entry.js.map → p-4752a63c.entry.js.map} +1 -1
  882. package/dist/ui-library/p-4772a9d3.entry.js +2 -0
  883. package/dist/ui-library/p-4772a9d3.entry.js.map +1 -0
  884. package/dist/ui-library/p-4a3ba956.entry.js +2 -0
  885. package/dist/ui-library/p-4a3ba956.entry.js.map +1 -0
  886. package/dist/ui-library/p-4b154936.entry.js +2 -0
  887. package/dist/ui-library/p-4b154936.entry.js.map +1 -0
  888. package/dist/ui-library/p-5a5f6869.entry.js +2 -0
  889. package/dist/ui-library/p-5a5f6869.entry.js.map +1 -0
  890. package/dist/ui-library/{p-b351f889.entry.js → p-621c2742.entry.js} +2 -2
  891. package/dist/ui-library/p-65778e3d.entry.js +2 -0
  892. package/dist/ui-library/p-65778e3d.entry.js.map +1 -0
  893. package/dist/ui-library/p-66cd3b0c.entry.js +2 -0
  894. package/dist/ui-library/p-66cd3b0c.entry.js.map +1 -0
  895. package/dist/ui-library/p-67496e8c.js +2 -0
  896. package/dist/ui-library/p-67496e8c.js.map +1 -0
  897. package/dist/ui-library/p-78529c8c.entry.js +2 -0
  898. package/dist/ui-library/{p-cd67da3d.entry.js.map → p-78529c8c.entry.js.map} +1 -1
  899. package/dist/ui-library/{p-0fdb185d.js → p-7f856f00.js} +1 -1
  900. package/dist/ui-library/{p-1f18768a.js → p-8227aaed.js} +2 -2
  901. package/dist/ui-library/{p-13b43e04.entry.js → p-831517cd.entry.js} +2 -2
  902. package/dist/ui-library/{p-8c0971e0.js → p-842b492e.js} +1 -1
  903. package/dist/ui-library/{p-0f510624.js → p-862d474e.js} +1 -1
  904. package/dist/ui-library/p-862d474e.js.map +1 -0
  905. package/dist/ui-library/{p-dfed33c5.entry.js → p-87e197ee.entry.js} +2 -2
  906. package/dist/ui-library/p-88767c27.entry.js +2 -0
  907. package/dist/ui-library/{p-a6a9ee96.entry.js.map → p-88767c27.entry.js.map} +1 -1
  908. package/dist/ui-library/{p-7d95def3.js → p-8bfb4bfc.js} +1 -1
  909. package/dist/ui-library/{p-72254eef.entry.js → p-8c38a7bd.entry.js} +2 -2
  910. package/dist/ui-library/p-8c38a7bd.entry.js.map +1 -0
  911. package/dist/ui-library/p-943ce0f2.entry.js +2 -0
  912. package/dist/ui-library/p-943ce0f2.entry.js.map +1 -0
  913. package/dist/ui-library/{p-5af44076.entry.js → p-979eabb5.entry.js} +2 -2
  914. package/dist/ui-library/{p-5af44076.entry.js.map → p-979eabb5.entry.js.map} +1 -1
  915. package/dist/ui-library/p-98ce9502.entry.js +2 -0
  916. package/dist/ui-library/p-98ce9502.entry.js.map +1 -0
  917. package/dist/ui-library/{p-9ace84c7.js → p-998de05d.js} +1 -1
  918. package/dist/ui-library/p-a036cc6f.entry.js +2 -0
  919. package/dist/ui-library/{p-3cc5addb.entry.js.map → p-a036cc6f.entry.js.map} +1 -1
  920. package/dist/ui-library/{p-698bb2c8.js → p-a1502802.js} +1 -1
  921. package/dist/ui-library/p-a29f6a0e.entry.js +2 -0
  922. package/dist/ui-library/p-a29f6a0e.entry.js.map +1 -0
  923. package/dist/ui-library/p-a3fd8c74.entry.js +2 -0
  924. package/dist/ui-library/p-a3fd8c74.entry.js.map +1 -0
  925. package/dist/ui-library/p-a919b557.entry.js +2 -0
  926. package/dist/ui-library/p-a919b557.entry.js.map +1 -0
  927. package/dist/ui-library/p-ace4ec84.entry.js +2 -0
  928. package/dist/ui-library/p-ace4ec84.entry.js.map +1 -0
  929. package/dist/ui-library/{p-91b51800.entry.js → p-adf5a4da.entry.js} +2 -2
  930. package/dist/ui-library/{p-a55c7258.entry.js → p-b5f844f7.entry.js} +2 -2
  931. package/dist/ui-library/p-b5f844f7.entry.js.map +1 -0
  932. package/dist/ui-library/p-b8ea574b.entry.js +2 -0
  933. package/dist/ui-library/p-b8ea574b.entry.js.map +1 -0
  934. package/dist/ui-library/p-bff679fa.entry.js +2 -0
  935. package/dist/ui-library/p-bff679fa.entry.js.map +1 -0
  936. package/dist/ui-library/p-ca63a6fa.js +3 -0
  937. package/dist/ui-library/p-ca63a6fa.js.map +1 -0
  938. package/dist/ui-library/p-d221d86a.entry.js +2 -0
  939. package/dist/ui-library/p-d221d86a.entry.js.map +1 -0
  940. package/dist/ui-library/p-d702b6ec.entry.js +2 -0
  941. package/dist/ui-library/{p-a0f290d0.entry.js.map → p-d702b6ec.entry.js.map} +1 -1
  942. package/dist/ui-library/p-db9d2fde.entry.js +2 -0
  943. package/dist/ui-library/p-db9d2fde.entry.js.map +1 -0
  944. package/dist/ui-library/p-e080d5b6.js +2 -0
  945. package/dist/ui-library/p-e080d5b6.js.map +1 -0
  946. package/dist/ui-library/p-e0dd0307.entry.js +2 -0
  947. package/dist/ui-library/{p-ee950ce2.entry.js.map → p-e0dd0307.entry.js.map} +1 -1
  948. package/dist/ui-library/p-e340a0ad.entry.js +2 -0
  949. package/dist/ui-library/{p-d367f4f9.entry.js.map → p-e340a0ad.entry.js.map} +1 -1
  950. package/dist/ui-library/p-f136a6b2.js +2 -0
  951. package/dist/ui-library/p-f136a6b2.js.map +1 -0
  952. package/dist/ui-library/p-f640731b.entry.js +2 -0
  953. package/dist/ui-library/p-f640731b.entry.js.map +1 -0
  954. package/dist/ui-library/p-fce214eb.entry.js +2 -0
  955. package/dist/ui-library/p-fce214eb.entry.js.map +1 -0
  956. package/dist/ui-library/p-fe87f64b.entry.js +2 -0
  957. package/dist/ui-library/p-fe87f64b.entry.js.map +1 -0
  958. package/dist/ui-library/ui-library.css +1 -10
  959. package/dist/ui-library/ui-library.esm.js +1 -1
  960. package/dist/ui-library/ui-library.esm.js.map +1 -1
  961. package/package.json +18 -19
  962. package/dist/cjs/event-listeners-fdfe838c.js +0 -61
  963. package/dist/cjs/event-listeners-fdfe838c.js.map +0 -1
  964. package/dist/cjs/focus-visible-ae2470dd.js +0 -47
  965. package/dist/cjs/form-2df8c5bb.js +0 -20
  966. package/dist/cjs/form-control-d369af14.js +0 -33
  967. package/dist/cjs/form-control-d369af14.js.map +0 -1
  968. package/dist/cjs/index-900437fc.js.map +0 -1
  969. package/dist/cjs/modal-d5f074c7.js +0 -52
  970. package/dist/cjs/modal-d5f074c7.js.map +0 -1
  971. package/dist/cjs/popover-2df7e154.js.map +0 -1
  972. package/dist/cjs/popup-f1d9910f.js +0 -103
  973. package/dist/cjs/popup-f1d9910f.js.map +0 -1
  974. package/dist/cjs/scroll-03678de1.js +0 -69
  975. package/dist/cjs/scroll-03678de1.js.map +0 -1
  976. package/dist/cjs/six-checkbox.cjs.entry.js +0 -124
  977. package/dist/cjs/six-checkbox.cjs.entry.js.map +0 -1
  978. package/dist/cjs/six-menu-item.cjs.entry.js +0 -63
  979. package/dist/cjs/six-menu-item.cjs.entry.js.map +0 -1
  980. package/dist/cjs/slot-6e6a400f.js +0 -53
  981. package/dist/cjs/slot-6e6a400f.js.map +0 -1
  982. package/dist/cjs/types-47199040.js +0 -17
  983. package/dist/cjs/types-47199040.js.map +0 -1
  984. package/dist/collection/components/six-tab/test/six-tab.spec.js +0 -20
  985. package/dist/collection/components/six-tab/test/six-tab.spec.js.map +0 -1
  986. package/dist/collection/components/six-tab-group/test/six-tab-group.spec.js +0 -45
  987. package/dist/collection/components/six-tab-group/test/six-tab-group.spec.js.map +0 -1
  988. package/dist/components/six-tag2.js +0 -74
  989. package/dist/components/six-tag2.js.map +0 -1
  990. package/dist/esm/event-listeners-f6e5b0ab.js +0 -59
  991. package/dist/esm/event-listeners-f6e5b0ab.js.map +0 -1
  992. package/dist/esm/focus-visible-fc6ac671.js +0 -45
  993. package/dist/esm/form-81252534.js +0 -18
  994. package/dist/esm/form-control-32cb533f.js +0 -31
  995. package/dist/esm/form-control-32cb533f.js.map +0 -1
  996. package/dist/esm/index-8a74f992.js.map +0 -1
  997. package/dist/esm/modal-7d32e141.js +0 -49
  998. package/dist/esm/modal-7d32e141.js.map +0 -1
  999. package/dist/esm/popover-136d1f73.js.map +0 -1
  1000. package/dist/esm/popup-7f89a001.js +0 -98
  1001. package/dist/esm/popup-7f89a001.js.map +0 -1
  1002. package/dist/esm/scroll-3fb087a2.js +0 -64
  1003. package/dist/esm/six-checkbox.entry.js +0 -120
  1004. package/dist/esm/six-checkbox.entry.js.map +0 -1
  1005. package/dist/esm/six-menu-item.entry.js +0 -59
  1006. package/dist/esm/six-menu-item.entry.js.map +0 -1
  1007. package/dist/esm/slot-ad36df3a.js +0 -48
  1008. package/dist/esm/slot-ad36df3a.js.map +0 -1
  1009. package/dist/esm/types-59b455aa.js +0 -17
  1010. package/dist/esm/types-59b455aa.js.map +0 -1
  1011. package/dist/ui-library/p-02981b91.entry.js +0 -2
  1012. package/dist/ui-library/p-02981b91.entry.js.map +0 -1
  1013. package/dist/ui-library/p-0f510624.js.map +0 -1
  1014. package/dist/ui-library/p-1256cc0a.entry.js +0 -2
  1015. package/dist/ui-library/p-1256cc0a.entry.js.map +0 -1
  1016. package/dist/ui-library/p-15559d38.js +0 -2
  1017. package/dist/ui-library/p-15559d38.js.map +0 -1
  1018. package/dist/ui-library/p-19ed7a4c.entry.js +0 -2
  1019. package/dist/ui-library/p-19ed7a4c.entry.js.map +0 -1
  1020. package/dist/ui-library/p-1d5ee1a0.entry.js +0 -2
  1021. package/dist/ui-library/p-1d5ee1a0.entry.js.map +0 -1
  1022. package/dist/ui-library/p-21b3b321.entry.js +0 -2
  1023. package/dist/ui-library/p-21b3b321.entry.js.map +0 -1
  1024. package/dist/ui-library/p-264d4ea8.entry.js +0 -2
  1025. package/dist/ui-library/p-29ac3d7d.entry.js +0 -2
  1026. package/dist/ui-library/p-29ac3d7d.entry.js.map +0 -1
  1027. package/dist/ui-library/p-314b2096.entry.js +0 -2
  1028. package/dist/ui-library/p-314b2096.entry.js.map +0 -1
  1029. package/dist/ui-library/p-330a4988.entry.js +0 -2
  1030. package/dist/ui-library/p-330a4988.entry.js.map +0 -1
  1031. package/dist/ui-library/p-346f9557.entry.js +0 -2
  1032. package/dist/ui-library/p-346f9557.entry.js.map +0 -1
  1033. package/dist/ui-library/p-37557787.entry.js +0 -2
  1034. package/dist/ui-library/p-3cc5addb.entry.js +0 -2
  1035. package/dist/ui-library/p-3d9de119.entry.js +0 -2
  1036. package/dist/ui-library/p-3d9de119.entry.js.map +0 -1
  1037. package/dist/ui-library/p-411ed539.entry.js +0 -2
  1038. package/dist/ui-library/p-411ed539.entry.js.map +0 -1
  1039. package/dist/ui-library/p-4705a51e.entry.js +0 -2
  1040. package/dist/ui-library/p-4705a51e.entry.js.map +0 -1
  1041. package/dist/ui-library/p-4abed9df.entry.js +0 -2
  1042. package/dist/ui-library/p-4abed9df.entry.js.map +0 -1
  1043. package/dist/ui-library/p-59210f0b.js +0 -2
  1044. package/dist/ui-library/p-59210f0b.js.map +0 -1
  1045. package/dist/ui-library/p-5d6b7353.entry.js +0 -2
  1046. package/dist/ui-library/p-5d6b7353.entry.js.map +0 -1
  1047. package/dist/ui-library/p-613283a7.entry.js +0 -2
  1048. package/dist/ui-library/p-613283a7.entry.js.map +0 -1
  1049. package/dist/ui-library/p-6153045b.js +0 -3
  1050. package/dist/ui-library/p-6153045b.js.map +0 -1
  1051. package/dist/ui-library/p-6197fe2f.entry.js +0 -2
  1052. package/dist/ui-library/p-6197fe2f.entry.js.map +0 -1
  1053. package/dist/ui-library/p-72254eef.entry.js.map +0 -1
  1054. package/dist/ui-library/p-724875b0.entry.js +0 -2
  1055. package/dist/ui-library/p-7afafb9d.entry.js +0 -2
  1056. package/dist/ui-library/p-7afafb9d.entry.js.map +0 -1
  1057. package/dist/ui-library/p-7e3ad38a.entry.js +0 -2
  1058. package/dist/ui-library/p-83864cfe.entry.js +0 -2
  1059. package/dist/ui-library/p-83864cfe.entry.js.map +0 -1
  1060. package/dist/ui-library/p-878226a0.entry.js +0 -2
  1061. package/dist/ui-library/p-95fbdd0b.entry.js +0 -2
  1062. package/dist/ui-library/p-95fbdd0b.entry.js.map +0 -1
  1063. package/dist/ui-library/p-99e24daf.entry.js +0 -2
  1064. package/dist/ui-library/p-99e24daf.entry.js.map +0 -1
  1065. package/dist/ui-library/p-9c1be3fb.entry.js +0 -2
  1066. package/dist/ui-library/p-9c1be3fb.entry.js.map +0 -1
  1067. package/dist/ui-library/p-9f0b43f9.entry.js +0 -2
  1068. package/dist/ui-library/p-9f0b43f9.entry.js.map +0 -1
  1069. package/dist/ui-library/p-a0f290d0.entry.js +0 -2
  1070. package/dist/ui-library/p-a55c7258.entry.js.map +0 -1
  1071. package/dist/ui-library/p-a6a9ee96.entry.js +0 -2
  1072. package/dist/ui-library/p-ae601a0f.entry.js +0 -2
  1073. package/dist/ui-library/p-ae601a0f.entry.js.map +0 -1
  1074. package/dist/ui-library/p-b550a258.entry.js +0 -2
  1075. package/dist/ui-library/p-b550a258.entry.js.map +0 -1
  1076. package/dist/ui-library/p-bf87464b.entry.js +0 -2
  1077. package/dist/ui-library/p-bf87464b.entry.js.map +0 -1
  1078. package/dist/ui-library/p-c03ebf7d.entry.js +0 -2
  1079. package/dist/ui-library/p-c03ebf7d.entry.js.map +0 -1
  1080. package/dist/ui-library/p-cd67da3d.entry.js +0 -2
  1081. package/dist/ui-library/p-cdaed936.entry.js +0 -2
  1082. package/dist/ui-library/p-cdaed936.entry.js.map +0 -1
  1083. package/dist/ui-library/p-d367f4f9.entry.js +0 -2
  1084. package/dist/ui-library/p-d42c2025.js +0 -2
  1085. package/dist/ui-library/p-d42c2025.js.map +0 -1
  1086. package/dist/ui-library/p-ed381ad9.entry.js +0 -2
  1087. package/dist/ui-library/p-ed381ad9.entry.js.map +0 -1
  1088. package/dist/ui-library/p-ee8342e1.entry.js +0 -2
  1089. package/dist/ui-library/p-ee8342e1.entry.js.map +0 -1
  1090. package/dist/ui-library/p-ee950ce2.entry.js +0 -2
  1091. package/dist/ui-library/p-ff90ffd1.entry.js +0 -2
  1092. package/dist/ui-library/p-ff90ffd1.entry.js.map +0 -1
  1093. package/readme.md +0 -156
  1094. /package/dist/ui-library/{p-5654e4c7.js.map → p-06ba4450.js.map} +0 -0
  1095. /package/dist/ui-library/{p-9b354f5d.entry.js.map → p-0cb135aa.entry.js.map} +0 -0
  1096. /package/dist/ui-library/{p-b351f889.entry.js.map → p-621c2742.entry.js.map} +0 -0
  1097. /package/dist/ui-library/{p-0fdb185d.js.map → p-7f856f00.js.map} +0 -0
  1098. /package/dist/ui-library/{p-1f18768a.js.map → p-8227aaed.js.map} +0 -0
  1099. /package/dist/ui-library/{p-13b43e04.entry.js.map → p-831517cd.entry.js.map} +0 -0
  1100. /package/dist/ui-library/{p-8c0971e0.js.map → p-842b492e.js.map} +0 -0
  1101. /package/dist/ui-library/{p-dfed33c5.entry.js.map → p-87e197ee.entry.js.map} +0 -0
  1102. /package/dist/ui-library/{p-7d95def3.js.map → p-8bfb4bfc.js.map} +0 -0
  1103. /package/dist/ui-library/{p-9ace84c7.js.map → p-998de05d.js.map} +0 -0
  1104. /package/dist/ui-library/{p-698bb2c8.js.map → p-a1502802.js.map} +0 -0
  1105. /package/dist/ui-library/{p-91b51800.entry.js.map → p-adf5a4da.entry.js.map} +0 -0
@@ -1,2 +0,0 @@
1
- import{r as o,h as r}from"./p-6153045b.js";const s=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{display:block}.six-footer{color:var(--six-color-web-rock-900);padding:var(--six-spacing-x-small) 0;text-align:center;width:100%;background-color:var(--six-footer-background-color);box-shadow:var(--six-shadow-x-large-top)}";const t=class{constructor(r){o(this,r)}render(){return r("footer",{class:"six-footer"},r("slot",null))}};t.style=s;export{t as six_footer};
2
- //# sourceMappingURL=p-1d5ee1a0.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixFooterCss","SixFooter","render","h","class"],"sources":["src/components/six-footer/six-footer.scss?tag=six-footer&encapsulation=shadow","src/components/six-footer/six-footer.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: block;\n}\n\n.six-footer {\n color: var(--six-color-web-rock-900);\n padding: var(--six-spacing-x-small) 0;\n text-align: center;\n width: 100%;\n background-color: var(--six-footer-background-color);\n box-shadow: var(--six-shadow-x-large-top);\n}\n","import { Component, h } from '@stencil/core';\n\n/**\n * @since 1.0\n * @status stable\n *\n * @slot - Used to define the content of the footer.\n */\n\n@Component({\n tag: 'six-footer',\n styleUrl: 'six-footer.scss',\n shadow: true,\n})\nexport class SixFooter {\n render() {\n return (\n <footer class=\"six-footer\">\n <slot />\n </footer>\n );\n }\n}\n"],"mappings":"2CAAA,MAAMA,EAAe,4U,MCcRC,EAAS,M,yBACpB,MAAAC,GACE,OACEC,EAAA,UAAQC,MAAM,cACZD,EAAA,a"}
@@ -1,2 +0,0 @@
1
- import{r as i,c as s,h as t,g as e}from"./p-6153045b.js";import{f as o}from"./p-5654e4c7.js";const r=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{--hide-duration:var(--six-transition-medium);--hide-timing-function:ease;--show-duration:var(--six-transition-medium);--show-timing-function:ease;font-family:var(--six-font-family);display:block}.details{border:solid var(--six-border-width) var(--six-input-border-color);border-radius:var(--six-border-radius-medium);color:var(--six-details-color);overflow-anchor:none;font-size:var(--six-input-font-size-medium)}.details:hover:not(.details--disabled):not(.details--open){border-color:var(--six-input-border-color-hover)}.details.inline{border:none;color:var(--six-sidebar-color)}.details.inline:hover{background-color:var(--six-sidebar-hover-background-color)}.details.inline.details--open{background-color:var(--six-color-web-rock-50)}.details.inline.details--open:hover{border:none;box-shadow:none}.details.inline.details--open>.details__header{color:var(--six-sidebar-color);font-weight:var(--six-font-weight-bold);background-color:var(--six-sidebar-header-background-color)}.details--disabled{background-color:var(--six-input-background-color-disabled);border-color:var(--six-input-border-color-disabled);color:var(--six-input-color-disabled)}.details__header{display:flex;align-items:center;border-radius:inherit;padding:var(--six-spacing-medium);user-select:none;cursor:pointer}.details__header:focus{outline:none}.details--disabled .details__header{cursor:not-allowed;border-width:1px}.details--disabled .details__header:focus{outline:none;box-shadow:none}.details__summary{flex:1 1 auto;display:flex;align-items:center}.details__summary-icon{flex:0 0 auto;display:flex;align-items:center;font-size:1.2em;transition:var(--six-transition-medium) transform ease}.details--open .details__summary-icon--animate{transform:rotate(-180deg)}.details--open:hover{color:var(--six-input-color-focus)}.details__body{height:0;overflow:hidden;transition-property:height;transition-duration:var(--hide-duration);transition-timing-function:var(--hide-timing-function)}.details--open .details__body{transition-duration:var(--show-duration);transition-timing-function:var(--show-timing-function)}.details__content{padding:var(--six-spacing-medium)}";let a=0;const n=class{constructor(t){i(this,t);this.sixShow=s(this,"six-details-show",7);this.sixAfterShow=s(this,"six-details-after-show",7);this.sixHide=s(this,"six-details-hide",7);this.sixAfterHide=s(this,"six-details-after-hide",7);this.componentId=`details-${++a}`;this.isVisible=false;this.handleBodyTransitionEnd=i=>{if(this.body==null)return;const s=i.target;if(i.propertyName==="height"&&s.classList.contains("details__body")){this.body.style.overflow=this.open?"visible":"hidden";this.body.style.height=this.open?"auto":"0";this.open?this.sixAfterShow.emit():this.sixAfterHide.emit();this.body.hidden=!this.open}};this.handleSummaryClick=()=>{var i;if(!this.disabled&&(this.hasContent||this.selectableEmpty)){this.open?this.hide():this.show();(i=this.header)===null||i===void 0?void 0:i.focus()}};this.handleSummaryKeyDown=i=>{if(i.key==="Enter"||i.key===" "){i.preventDefault();this.open?this.hide():this.show()}if(i.key==="ArrowUp"||i.key==="ArrowLeft"){i.preventDefault();this.hide()}if(i.key==="ArrowDown"||i.key==="ArrowRight"){i.preventDefault();this.show()}};this.animateSummaryIcon=true;this.open=false;this.summary="";this.summaryIcon=undefined;this.summaryIconSize="inherit";this.disabled=false;this.inline=false;this.selectableEmpty=false;this.hasContent=true}handleOpenChange(){if(this.body!=null){this.open?this.show():this.hide()}}componentDidLoad(){if(this.details==null||this.body==null)return;o.observe(this.details);this.body.hidden=!this.open;if(this.open){this.show()}}disconnectedCallback(){if(this.details!=null){o.unobserve(this.details)}}async show(){if(this.isVisible||this.body==null)return;const i=this.sixShow.emit();if(i.defaultPrevented){this.open=false;return}this.body.hidden=false;if(this.body.scrollHeight===0){this.body.style.height="auto";this.body.style.overflow="visible"}else{this.body.style.height=`${this.body.scrollHeight}px`;this.body.style.overflow="hidden"}this.isVisible=true;this.open=true}async hide(){if(!this.isVisible||this.body==null)return;const i=this.body;const s=this.sixHide.emit();if(s.defaultPrevented){this.open=true;return}i.style.height=`${i.scrollHeight}px`;i.style.overflow="hidden";requestAnimationFrame((()=>{i.style.height="0"}));this.isVisible=false;this.open=false}render(){const i=this.hasContent&&(this.summaryIcon||"expand_more");return t("div",{ref:i=>this.details=i,part:"base",class:{details:true,"details--open":this.open,"details--disabled":this.disabled,inline:this.inline}},t("header",{ref:i=>this.header=i,part:"header",id:`${this.componentId}-header`,class:"details__header",role:"button","aria-expanded":this.open?"true":"false","aria-controls":`${this.componentId}-content`,"aria-disabled":this.disabled?"true":"false",tabIndex:this.disabled?-1:0,onClick:this.handleSummaryClick,onKeyDown:this.handleSummaryKeyDown},t("div",{part:"summary",class:"details__summary"},t("slot",{name:"summary"},this.summary)),t("span",{part:"summary-icon",class:{"details__summary-icon":true,"details__summary-icon--animate":this.animateSummaryIcon}},t("slot",{name:"summary-icon",onSlotchange:()=>this.animateSummaryIcon=false},i&&t("six-icon",{size:this.summaryIconSize},i)))),t("div",{ref:i=>this.body=i,class:"details__body",onTransitionEnd:this.handleBodyTransitionEnd},t("div",{part:"content",id:`${this.componentId}-content`,class:"details__content",role:"region","aria-labelledby":`${this.componentId}-header`},t("slot",null))))}get host(){return e(this)}static get watchers(){return{open:["handleOpenChange"]}}};n.style=r;export{n as six_details};
2
- //# sourceMappingURL=p-21b3b321.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixDetailsCss","id","SixDetails","this","componentId","isVisible","handleBodyTransitionEnd","event","body","target","propertyName","classList","contains","style","overflow","open","height","sixAfterShow","emit","sixAfterHide","hidden","handleSummaryClick","disabled","hasContent","selectableEmpty","hide","show","_a","header","focus","handleSummaryKeyDown","key","preventDefault","handleOpenChange","componentDidLoad","details","focusVisible","observe","disconnectedCallback","unobserve","sixShow","defaultPrevented","scrollHeight","sixHide","requestAnimationFrame","render","summaryIcon","h","ref","el","part","class","inline","role","tabIndex","onClick","onKeyDown","name","summary","animateSummaryIcon","onSlotchange","size","summaryIconSize","onTransitionEnd"],"sources":["src/components/six-details/six-details.scss?tag=six-details&encapsulation=shadow","src/components/six-details/six-details.tsx"],"sourcesContent":["@import 'src/global/component';\n\n/**\n * @prop --hide-duration: The length of the hide transition.\n * @prop --hide-timing-function: The timing function (easing) to use for the hide transition.\n * @prop --show-duration: The length of the show transition.\n * @prop --show-timing-function: The timing function (easing) to use for the show transition.\n */\n:host {\n --hide-duration: var(--six-transition-medium);\n --hide-timing-function: ease;\n --show-duration: var(--six-transition-medium);\n --show-timing-function: ease;\n\n font-family: var(--six-font-family);\n display: block;\n}\n\n.details {\n border: solid var(--six-border-width) var(--six-input-border-color);\n border-radius: var(--six-border-radius-medium);\n color: var(--six-details-color);\n overflow-anchor: none;\n font-size: var(--six-input-font-size-medium);\n\n &:hover:not(.details--disabled):not(.details--open) {\n border-color: var(--six-input-border-color-hover);\n }\n\n &.inline {\n border: none;\n color: var(--six-sidebar-color);\n\n &:hover {\n background-color: var(--six-sidebar-hover-background-color);\n }\n\n &.details--open {\n background-color: var(--six-color-web-rock-50);\n\n &:hover {\n border: none;\n box-shadow: none;\n }\n\n & > .details__header {\n color: var(--six-sidebar-color);\n font-weight: var(--six-font-weight-bold);\n background-color: var(--six-sidebar-header-background-color);\n }\n }\n }\n}\n\n.details--disabled {\n background-color: var(--six-input-background-color-disabled);\n border-color: var(--six-input-border-color-disabled);\n color: var(--six-input-color-disabled);\n}\n\n.details__header {\n display: flex;\n align-items: center;\n border-radius: inherit;\n padding: var(--six-spacing-medium);\n user-select: none;\n cursor: pointer;\n\n &:focus {\n outline: none;\n }\n}\n\n.focus-visible .details__header:focus {\n}\n\n.details--disabled .details__header {\n cursor: not-allowed;\n border-width: 1px;\n\n &:focus {\n outline: none;\n box-shadow: none;\n }\n}\n\n.details__summary {\n flex: 1 1 auto;\n display: flex;\n align-items: center;\n}\n\n.details__summary-icon {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n font-size: 1.2em;\n transition: var(--six-transition-medium) transform ease;\n}\n\n.details--open .details__summary-icon--animate {\n transform: rotate(-180deg);\n}\n\n.details--open:hover {\n color: var(--six-input-color-focus);\n}\n\n.details__body {\n height: 0;\n overflow: hidden;\n transition-property: height;\n transition-duration: var(--hide-duration);\n transition-timing-function: var(--hide-timing-function);\n}\n\n.details--open .details__body {\n transition-duration: var(--show-duration);\n transition-timing-function: var(--show-timing-function);\n}\n\n.details__content {\n padding: var(--six-spacing-medium);\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { focusVisible } from '../../utils/focus-visible';\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 details' content.\n * @slot summary - The details' summary. Alternatively, you can use the summary prop.\n *\n * @part base - The component's base wrapper.\n * @part header - The summary header.\n * @part summary - The details summary.\n * @part summary-icon - The expand/collapse summary icon.\n * @part content - The details content.\n */\n\n@Component({\n tag: 'six-details',\n styleUrl: 'six-details.scss',\n shadow: true,\n})\nexport class SixDetails {\n @Element() readonly host!: HTMLSixDetailsElement;\n\n @State() animateSummaryIcon = true;\n\n private body?: HTMLElement;\n private details?: HTMLElement;\n private header?: HTMLElement;\n private componentId = `details-${++id}`;\n private isVisible = false;\n\n /** Indicates whether the details is open. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /** The summary to show in the details header. If you need to display HTML, use the `summary` slot instead. */\n @Prop() summary = '';\n\n /** The summary icon to show in the details header. If you need to display HTML, use the `summary-icon` slot instead. */\n @Prop() summaryIcon?: string;\n\n /** The icon's size. */\n @Prop({ reflect: true }) summaryIconSize:\n | 'inherit'\n | 'xSmall'\n | 'small'\n | 'medium'\n | 'large'\n | 'xLarge'\n | 'xxLarge'\n | 'xxxLarge' = 'inherit';\n\n /** Set to true to prevent the user from toggling the details. */\n @Prop() disabled = false;\n\n /** Set to true when you want to use six-details inline e.g. in a sidebar */\n @Prop() inline = false;\n\n /** Set to true when you want details without content to be selectable. This is important if you e.g. have a toggled sidebar where some menus have no children */\n @Prop() selectableEmpty = false;\n\n /** Set to false when you want to hide the summary icon and disable the open/close mechanism. Usually not needed, but used internally by 'six-sidebar-item-group' */\n @Prop() hasContent = true;\n\n @Watch('open')\n handleOpenChange() {\n if (this.body != null) {\n this.open ? this.show() : this.hide();\n }\n }\n\n /** Emitted when the details opens. Calling `event.preventDefault()` will prevent it from being opened. */\n @Event({ eventName: 'six-details-show' }) sixShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the details opens and all transitions are complete. */\n @Event({ eventName: 'six-details-after-show' }) sixAfterShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the details closes. Calling `event.preventDefault()` will prevent it from being closed. */\n @Event({ eventName: 'six-details-hide' }) sixHide!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the details closes and all transitions are complete. */\n @Event({ eventName: 'six-details-after-hide' }) sixAfterHide!: EventEmitter<EmptyPayload>;\n\n componentDidLoad() {\n if (this.details == null || this.body == null) return;\n\n focusVisible.observe(this.details);\n this.body.hidden = !this.open;\n\n // Show on init if open\n if (this.open) {\n this.show();\n }\n }\n\n disconnectedCallback() {\n if (this.details != null) {\n focusVisible.unobserve(this.details);\n }\n }\n\n /** Shows the detail body */\n @Method()\n async show() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (this.isVisible || this.body == null) return;\n\n const sixShow = this.sixShow.emit();\n if (sixShow.defaultPrevented) {\n this.open = false;\n return;\n }\n\n this.body.hidden = false;\n\n if (this.body.scrollHeight === 0) {\n // When the scroll height can't be measured, use auto. This prevents a borked open state when the details is open\n // initially, but not immediately visible (i.e. in a tab panel).\n this.body.style.height = 'auto';\n this.body.style.overflow = 'visible';\n } else {\n this.body.style.height = `${this.body.scrollHeight}px`;\n this.body.style.overflow = 'hidden';\n }\n this.isVisible = true;\n this.open = true;\n }\n\n /** Hides the detail body */\n @Method()\n async hide() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (!this.isVisible || this.body == null) return;\n const body = this.body;\n\n const sixHide = this.sixHide.emit();\n if (sixHide.defaultPrevented) {\n this.open = true;\n return;\n }\n\n // We can't transition out of `height: auto`, so let's set it to the current height first\n body.style.height = `${body.scrollHeight}px`;\n body.style.overflow = 'hidden';\n\n requestAnimationFrame(() => {\n // tslint:disable-next-line: no-unused-expression\n body.clientWidth; // force a reflow\n body.style.height = '0';\n });\n\n this.isVisible = false;\n this.open = false;\n }\n\n private handleBodyTransitionEnd = (event: TransitionEvent) => {\n if (this.body == null) return;\n const target = event.target as HTMLElement;\n\n // Ensure we only emit one event when the target element is no longer visible\n if (event.propertyName === 'height' && target.classList.contains('details__body')) {\n this.body.style.overflow = this.open ? 'visible' : 'hidden';\n this.body.style.height = this.open ? 'auto' : '0';\n this.open ? this.sixAfterShow.emit() : this.sixAfterHide.emit();\n this.body.hidden = !this.open;\n }\n };\n\n private handleSummaryClick = () => {\n if (!this.disabled && (this.hasContent || this.selectableEmpty)) {\n this.open ? this.hide() : this.show();\n this.header?.focus();\n }\n };\n\n private handleSummaryKeyDown = (event: KeyboardEvent) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.open ? this.hide() : this.show();\n }\n\n if (event.key === 'ArrowUp' || event.key === 'ArrowLeft') {\n event.preventDefault();\n this.hide();\n }\n\n if (event.key === 'ArrowDown' || event.key === 'ArrowRight') {\n event.preventDefault();\n this.show();\n }\n };\n\n render() {\n const summaryIcon = this.hasContent && (this.summaryIcon || 'expand_more');\n\n return (\n <div\n ref={(el) => (this.details = el)}\n part=\"base\"\n class={{\n details: true,\n 'details--open': this.open,\n 'details--disabled': this.disabled,\n inline: this.inline,\n }}\n >\n <header\n ref={(el) => (this.header = el)}\n part=\"header\"\n id={`${this.componentId}-header`}\n class=\"details__header\"\n role=\"button\"\n aria-expanded={this.open ? 'true' : 'false'}\n aria-controls={`${this.componentId}-content`}\n aria-disabled={this.disabled ? 'true' : 'false'}\n tabIndex={this.disabled ? -1 : 0}\n onClick={this.handleSummaryClick}\n onKeyDown={this.handleSummaryKeyDown}\n >\n <div part=\"summary\" class=\"details__summary\">\n <slot name=\"summary\">{this.summary}</slot>\n </div>\n\n <span\n part=\"summary-icon\"\n class={{\n 'details__summary-icon': true,\n 'details__summary-icon--animate': this.animateSummaryIcon,\n }}\n >\n <slot name=\"summary-icon\" onSlotchange={() => (this.animateSummaryIcon = false)}>\n {summaryIcon && <six-icon size={this.summaryIconSize}>{summaryIcon}</six-icon>}\n </slot>\n </span>\n </header>\n\n <div ref={(el) => (this.body = el)} class=\"details__body\" onTransitionEnd={this.handleBodyTransitionEnd}>\n <div\n part=\"content\"\n id={`${this.componentId}-content`}\n class=\"details__content\"\n role=\"region\"\n aria-labelledby={`${this.componentId}-header`}\n >\n <slot />\n </div>\n </div>\n </div>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{r as i,c as o,h as r,g as t}from"./p-6153045b.js";import{E as s}from"./p-7d95def3.js";const e=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{display:inline-block}.radio{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}.radio__icon{display:inline-flex;width:var(--six-selection-control-toggle-size);height:var(--six-selection-control-toggle-size)}.radio__icon svg{width:100%;height:100%}.radio__control{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--six-selection-control-toggle-size);height:var(--six-selection-control-toggle-size);border:solid var(--six-border-width) var(--six-input-border-color);border-radius:50%;background-color:var(--six-input-background-color);color:transparent;transition:var(--six-transition-fast) border-color, var(--six-transition-fast) background-color, var(--six-transition-fast) color, var(--six-transition-fast) box-shadow}.radio__control input[type=radio]{position:absolute;opacity:0;padding:0;margin:0;pointer-events:none}.radio:not(.radio--checked):not(.radio--disabled) .radio__control:hover{border-color:var(--six-input-border-color-hover)}.radio--checked .radio__control{color:var(--six-selection-control-color);border-color:var(--six-selection-control-color)}.radio.radio--checked:not(.radio--disabled) .radio__control:hover{color:var(--six-input-border-color-focus);border-color:var(--six-input-border-color-focus)}.radio--disabled{cursor:not-allowed;color:var(--six-input-color-disabled)}.radio--disabled .radio__control{border-color:var(--six-input-border-color-disabled)}.radio--disabled.radio--checked .radio__control{color:var(--six-selection-control-color-disabled)}.radio__label{line-height:var(--six-selection-control-toggle-size);margin-left:0.5em;user-select:none}";let a=0;const l=class{constructor(r){i(this,r);this.sixBlur=o(this,"six-radio-blur",7);this.sixChange=o(this,"six-radio-change",7);this.sixFocus=o(this,"six-radio-focus",7);this.inputId=`radio-${++a}`;this.labelId=`radio-label-${a}`;this.eventListeners=new s;this.handleClick=()=>{if(this.nativeInput!=null){this.checked=this.nativeInput.checked;this.sixChange.emit()}};this.handleBlur=()=>{this.hasFocus=false;this.sixBlur.emit()};this.handleFocus=()=>{this.hasFocus=true;this.sixFocus.emit()};this.handleKeyDown=i=>{if(["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"].includes(i.key)){const o=this.getAllRadios().filter((i=>!i.disabled));const r=["ArrowUp","ArrowLeft"].includes(i.key)?-1:1;let t=o.indexOf(this.host)+r;if(t<0)t=o.length-1;if(t>o.length-1)t=0;this.getAllRadios().forEach((i=>i.checked=false));o[t].setFocus();o[t].checked=true;o[t].dispatchEvent(new CustomEvent("six-radio-change",{bubbles:true,cancelable:true}));i.preventDefault()}};this.handleMouseDown=i=>{var o;i.preventDefault();(o=this.nativeInput)===null||o===void 0?void 0:o.focus()};this.hasFocus=false;this.name="";this.value="on";this.disabled=false;this.checked=false;this.invalid=false}handleCheckedChange(){if(this.checked){this.getSiblingRadios().forEach((i=>i.checked=false))}if(this.nativeInput!=null){this.nativeInput.checked=this.checked}}handleNameChange(i){if(this.nativeInput!=null){this.nativeInput.name=i}}connectedCallback(){this.eventListeners.forward("six-radio-change","change",this.host);this.eventListeners.forward("six-radio-blur","blur",this.host);this.eventListeners.forward("six-radio-focus","focus",this.host)}disconnectedCallback(){this.eventListeners.removeAll()}async setFocus(i){var o;(o=this.nativeInput)===null||o===void 0?void 0:o.focus(i)}async removeFocus(){var i;(i=this.nativeInput)===null||i===void 0?void 0:i.blur()}getAllRadios(){const i=this.host.closest("form")||document.body;if(this.name==="")return[];return[...i.querySelectorAll("six-radio")].filter((i=>i.name===this.name))}getSiblingRadios(){return this.getAllRadios().filter((i=>i!==this.host))}render(){return r("label",{part:"base",class:{radio:true,"radio--checked":this.checked,"radio--disabled":this.disabled,"radio--focused":this.hasFocus},htmlFor:this.inputId,onKeyDown:this.handleKeyDown,onMouseDown:this.handleMouseDown},r("span",{part:"control",class:"radio__control"},r("span",{part:"checked-icon",class:"radio__icon"},r("svg",{viewBox:"0 0 16 16"},r("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},r("g",{fill:"currentColor"},r("circle",{cx:"8",cy:"8",r:"5"}))))),r("input",{ref:i=>this.nativeInput=i,id:this.inputId,type:"radio",name:this.name,value:this.value,checked:this.checked,disabled:this.disabled,role:"radio","aria-checked":this.checked?"true":"false","aria-labelledby":this.labelId,onClick:this.handleClick,onBlur:this.handleBlur,onFocus:this.handleFocus})),r("span",{part:"label",id:this.labelId,class:"radio__label"},r("slot",null)))}get host(){return t(this)}static get watchers(){return{checked:["handleCheckedChange"],name:["handleNameChange"]}}};l.style=e;export{l as six_radio};
2
- //# sourceMappingURL=p-264d4ea8.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as t,c as s,h as a,H as i,g as o}from"./p-6153045b.js";const e=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{display:inline-block}.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);border-radius:4px;color:var(--six-tab-color);padding:var(--six-spacing-medium) var(--six-spacing-large);white-space:nowrap;user-select:none;cursor:pointer;transition:var(--six-transition-fast) box-shadow, var(--six-transition-fast) color}.tab:focus{outline:none}.tab:focus:not(.tab--disabled){color:var(--six-tab-color-active)}.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)}";let r=0;const l=class{constructor(a){t(this,a);this.sixClose=s(this,"six-tab-close",7);this.componentId=`tab-${++r}`;this.panel="";this.active=false;this.closable=false;this.disabled=false}connectedCallback(){this.handleCloseClick=this.handleCloseClick.bind(this)}async setFocus(t){var s;(s=this.tab)===null||s===void 0?void 0:s.focus(t)}async removeFocus(){var t;(t=this.tab)===null||t===void 0?void 0:t.blur()}handleCloseClick(){this.sixClose.emit()}render(){return a(i,{id:this.host.id||this.componentId},a("div",{part:"base",ref:t=>this.tab=t,class:{tab:true,"tab--active":this.active,"tab--closable":this.closable,"tab--disabled":this.disabled},role:"tab","aria-disabled":this.disabled?"true":"false","aria-selected":this.active?"true":"false",tabindex:this.disabled||!this.active?"-1":"0"},a("slot",null),this.closable&&a("six-icon-button",{name:"close",size:"xSmall",exportparts:"base:close-button",class:"tab__close-button",onClick:this.handleCloseClick,tabIndex:-1,"aria-hidden":"true"})))}get host(){return o(this)}};l.style=e;export{l as six_tab};
2
- //# sourceMappingURL=p-29ac3d7d.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixTabCss","id","SixTab","this","componentId","connectedCallback","handleCloseClick","bind","setFocus","options","_a","tab","focus","removeFocus","blur","sixClose","emit","render","h","Host","host","part","ref","el","class","active","closable","disabled","role","tabindex","name","size","exportparts","onClick","tabIndex"],"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: inline-block;\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 border-radius: 4px;\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 transition: var(--six-transition-fast) box-shadow, var(--six-transition-fast) color;\n\n &:focus {\n outline: none;\n }\n\n &:focus:not(.tab--disabled) {\n color: var(--six-tab-color-active);\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","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 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 // 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 </Host>\n );\n }\n}\n"],"mappings":"gEAAA,MAAMA,EAAY,kkCCGlB,IAAIC,EAAK,E,MAmBIC,EAAM,M,iEACTC,KAAAC,YAAc,SAASH,I,WAME,G,YAGC,M,cAGf,M,cAGiB,K,CAKpC,iBAAAI,GACEF,KAAKG,iBAAmBH,KAAKG,iBAAiBC,KAAKJ,K,CAKrD,cAAMK,CAASC,G,OACbC,EAAAP,KAAKQ,OAAG,MAAAD,SAAA,SAAAA,EAAEE,MAAMH,E,CAKlB,iBAAMI,G,OACJH,EAAAP,KAAKQ,OAAG,MAAAD,SAAA,SAAAA,EAAEI,M,CAGJ,gBAAAR,GACNH,KAAKY,SAASC,M,CAGhB,MAAAC,GACE,OAEEC,EAACC,EAAI,CAAClB,GAAIE,KAAKiB,KAAKnB,IAAME,KAAKC,aAC7Bc,EAAA,OACEG,KAAK,OACLC,IAAMC,GAAQpB,KAAKQ,IAAMY,EACzBC,MAAO,CACLb,IAAK,KAGL,cAAeR,KAAKsB,OACpB,gBAAiBtB,KAAKuB,SACtB,gBAAiBvB,KAAKwB,UAExBC,KAAK,MAAK,gBACKzB,KAAKwB,SAAW,OAAS,QAAO,gBAChCxB,KAAKsB,OAAS,OAAS,QACtCI,SAAU1B,KAAKwB,WAAaxB,KAAKsB,OAAS,KAAO,KAEjDP,EAAA,aACCf,KAAKuB,UACJR,EAAA,mBACEY,KAAK,QACLC,KAAK,SACLC,YAAY,oBACZR,MAAM,oBACNS,QAAS9B,KAAKG,iBACd4B,UAAW,EAAC,cACA,U"}
@@ -1,2 +0,0 @@
1
- import{r as t,c as i,h as s,g as n}from"./p-6153045b.js";import{P as e}from"./p-0fdb185d.js";import{E as o}from"./p-7d95def3.js";import{b as r,a as h}from"./p-15559d38.js";import{D as l,a as d}from"./p-698bb2c8.js";function a(t){const i=t.tabIndex;return i>-1}function u(t){if(a(t)){return t}if(t.shadowRoot!=null){const i=[...t.shadowRoot.children].find((t=>a(t)));if(i!=null){return i}}if(t.children!=null){return[...t.children].map((t=>u(t))).at(0)}return undefined}const f=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{display:inline-block}.dropdown{position:relative}.dropdown__trigger{display:block}.dropdown__positioner{position:absolute;z-index:var(--six-z-index-dropdown)}.dropdown__positioner__filtered{width:100%}.dropdown__panel{max-height:50vh;font-family:var(--six-font-sans);font-size:var(--six-font-size-small);font-weight:var(--six-font-weight-normal);color:var(--color);background-color:var(--six-panel-background-color);border-radius:var(--six-border-radius-medium);box-shadow:var(--six-elevation-2dp);opacity:0;overflow:auto;overscroll-behavior:none;pointer-events:none;transform:scale(0.9);transition:var(--six-transition-fast) opacity, var(--six-transition-fast) transform;scrollbar-width:thin}.filter-hidden{display:none}.dropdown__positioner[data-popper-placement^=top] .dropdown__panel{transform-origin:bottom}.dropdown__positioner[data-popper-placement^=bottom] .dropdown__panel{transform-origin:top}.dropdown__positioner[data-popper-placement^=left] .dropdown__panel{transform-origin:right}.dropdown__positioner[data-popper-placement^=right] .dropdown__panel{transform-origin:left}.dropdown__positioner.popover-visible .dropdown__panel{opacity:1;transform:none;pointer-events:all}";const c=t=>i=>(i===null||i===void 0?void 0:i.tagName.toLowerCase())===t.toLowerCase();const p=c("six-menu");const v=c("six-menu-item");let m=0;const w=class{constructor(n){t(this,n);this.sixShow=i(this,"six-dropdown-show",7);this.sixAfterShow=i(this,"six-dropdown-after-show",7);this.sixHide=i(this,"six-dropdown-hide",7);this.sixAfterHide=i(this,"six-dropdown-after-hide",7);this.sixAutoFilter=i(this,"six-dropdown-auto-filter-fired",7);this.sixAsyncFilterFired=i(this,"six-async-filter-fired",7);this.sixScroll=i(this,"six-dropdown-scroll",7);this.componentId=`dropdown-${++m}`;this.isVisible=false;this.hasBeenInitialized=false;this.eventListeners=new o;this.getMenuItems=()=>{if(this.filteredOptions.length>0){return this.filteredOptions.map((t=>s("six-menu-item",{value:t.value},t.label)))}if(this.panel==null)return[];const[t]=r(this.panel);return r(t)||Array.from(t.querySelectorAll("six-menu-item"))};this.handleFilterInputChange=()=>{var t,i;if(this.filterInputElement==null)return;const s=((i=(t=this.filterInputElement.value)===null||t===void 0?void 0:t.toLowerCase())===null||i===void 0?void 0:i.trim())||"";if(this.filteredOptions.length>0){this.handleFilteringForAttributeItems(s)}else{this.handleFilteringForSlotItems(s)}this.sixAutoFilter.emit({filterValue:s})};this.handleDocumentKeyDown=t=>{var i;const s=t;if(s.key==="Escape"){void this.hide();this.focusOnTrigger();return}if(this.filterInputElement===((i=this.host.shadowRoot)===null||i===void 0?void 0:i.activeElement)){if(s.key==="ArrowDown"){const t=this.getMenuItems().find((t=>t.style.display!=="none"));if(t!=null){t.setFocus()}}}if(s.key==="Tab"){if(this.open&&document.activeElement!=null&&v(document.activeElement)){s.preventDefault();void this.hide();this.focusOnTrigger();return}setTimeout((()=>{var t,i;const s=this.container.getRootNode()instanceof ShadowRoot?(i=(t=document.activeElement)===null||t===void 0?void 0:t.shadowRoot)===null||i===void 0?void 0:i.activeElement:document.activeElement;if((s===null||s===void 0?void 0:s.closest(this.container.tagName.toLowerCase()))!==this.container){void this.hide();return}}))}};this.handleDocumentMouseDown=t=>{const i=t.composedPath();if(!i.includes(this.container)){void this.hide();return}};this.handlePanelSelect=t=>{const i=t.target;if(this.closeOnSelect&&p(i)){void this.hide();this.focusOnTrigger()}};this.handleTriggerClick=()=>{this.open?this.hide():this.show()};this.handleTriggerKeyDown=t=>{if(t.key==="Escape"){this.focusOnTrigger();void this.hide();return}if(!this.disableHideOnEnterAndSpace&&[" ","Enter"].includes(t.key)){t.preventDefault();this.open?void this.hide():void this.show();return}const i=this.getMenu();if(["ArrowDown","ArrowUp"].includes(t.key)){t.preventDefault();if(!this.open){void this.show()}if(i==null){return}const s=[...i.querySelectorAll("six-menu-item")];const n=s.at(0);const e=s.at(s.length-1);if(t.key==="ArrowDown"&&n!=null){n.setFocus();return}if(t.key==="ArrowUp"&&e!=null){e.setFocus();return}}const s=["Tab","Shift","Meta","Ctrl","Alt"];if(this.open&&i!=null&&!s.includes(t.key)){void i.typeToSelect(t.key);return}};this.handleTriggerKeyUp=t=>{if(t.key===" "){t.preventDefault()}};this.handleTriggerSlotChange=()=>{this.updateAccessibleTrigger()};this.handleDropdownScroll=()=>{if(this.panel==null)return;this.sixScroll.emit({scrollHeight:this.panel.scrollHeight,scrollTop:this.panel.scrollTop,scrollbarHeight:this.panel.offsetHeight*(this.panel.offsetHeight/this.panel.scrollHeight),scrollRatio:this.panel.scrollTop/(this.panel.scrollHeight-this.panel.clientHeight)})};this.open=false;this.placement="bottom-start";this.closeOnSelect=true;this.distance=0;this.skidding=0;this.hoist=false;this.containingElement=undefined;this.filter=false;this.asyncFilter=false;this.filterPlaceholder="Filter...";this.autofocusFilter=true;this.filterDebounce=l;this.disableHideOnEnterAndSpace=false;this.options=[];this.virtualScroll=false;this.filteredOptions=[]}get hasFilterEnabled(){return this.filter||this.asyncFilter}get container(){return this.containingElement||this.host}handleOpenChange(){this.open?this.show():this.hide();this.updateAccessibleTrigger()}handlePopoverOptionsChange(){if(this.popover==null)return;this.popover.setOptions({strategy:this.hoist?"fixed":"absolute",placement:this.placement,distance:this.distance,skidding:this.skidding})}handleOptionsChange(){if(Array.isArray(this.options)){this.filteredOptions=[...this.options]}}connectedCallback(){if(this.virtualScroll&&this.options===null){console.error("Options must be defined when using virtual scrolling")}if(Array.isArray(this.options)){this.filteredOptions=[...this.options]}if(this.hasBeenInitialized&&this.popover==null){this.initializePopover()}}componentDidLoad(){this.hasBeenInitialized=true;this.initializePopover();if(this.open){void this.show()}if(this.filter){this.setupFiltering(this.handleFilterInputChange)}else if(this.asyncFilter){this.setupFiltering((()=>{var t,i;return this.sixAsyncFilterFired.emit({filterValue:(i=(t=this.filterInputElement)===null||t===void 0?void 0:t.value)!==null&&i!==void 0?i:""})}))}}initializePopover(){if(this.trigger==null||this.positioner==null)return;const t=()=>{if(this.filter&&this.filterInputElement!=null){this.filterInputElement.value="";if(this.filteredOptions.length>0){this.filteredOptions=[...this.options]}else{const t=this.getMenuItems();t.forEach((t=>t.style.display="unset"))}}this.sixAfterHide.emit()};const i=async()=>{var t;if(this.hasFilterEnabled&&this.autofocusFilter){await((t=this.filterInputElement)===null||t===void 0?void 0:t.setFocus())}this.sixAfterShow.emit()};const s=()=>{if(!this.open&&this.panel!=null){this.panel.scrollTop=0}};this.popover=new e(this.trigger,this.positioner,{strategy:this.hoist?"fixed":"absolute",placement:this.placement,distance:this.distance,skidding:this.skidding,transitionElement:this.panel,onAfterHide:t,onAfterShow:i,onTransitionEnd:s})}setupFiltering(t){if(this.filterInputElement!=null){this.eventListeners.add(this.filterInputElement,"six-input-input",d(t,this.filterDebounce))}}handleFilteringForAttributeItems(t){if(t===""&&Array.isArray(this.options)){this.filteredOptions=[...this.options];return}this.filteredOptions=this.options.filter((i=>{var s,n,e,o;return i.label&&((n=(s=String(i.label))===null||s===void 0?void 0:s.toLowerCase())===null||n===void 0?void 0:n.includes(t))||i.value&&((o=(e=String(i.value))===null||e===void 0?void 0:e.toLowerCase())===null||o===void 0?void 0:o.includes(t))}))}handleFilteringForSlotItems(t){const i=this.getMenuItems();i.forEach((async i=>{var s,n,e,o;const r=((n=(s=i===null||i===void 0?void 0:i.value)===null||s===void 0?void 0:s.toLowerCase())===null||n===void 0?void 0:n.includes(t))||((o=(e=await(i===null||i===void 0?void 0:i.getTextLabel()))===null||e===void 0?void 0:e.toLowerCase())===null||o===void 0?void 0:o.includes(t));i.style.display=r?"unset":"none"}))}disconnectedCallback(){var t;this.eventListeners.removeAll();void this.hide();(t=this.popover)===null||t===void 0?void 0:t.destroy();this.popover=undefined}async show(){if(this.isVisible||this.popover==null||this.panel==null){return}const t=this.sixShow.emit();if(t.defaultPrevented){this.open=false;return}this.eventListeners.add(this.panel,"six-menu-item-selected",this.handlePanelSelect);this.eventListeners.add(document,"keydown",this.handleDocumentKeyDown);this.eventListeners.add(document,"mousedown",this.handleDocumentMouseDown);this.isVisible=true;this.open=true;this.popover.show()}async hide(){if(!this.isVisible||this.panel==null||this.popover==null){return}const t=this.sixHide.emit();if(t.defaultPrevented){this.open=true;return}this.eventListeners.remove(this.panel,"six-menu-item-selected",this.handlePanelSelect);this.eventListeners.remove(document,"keydown",this.handleDocumentKeyDown);this.eventListeners.remove(document,"mousedown",this.handleDocumentMouseDown);this.isVisible=false;this.open=false;this.popover.hide()}focusOnTrigger(){if(this.trigger==null)return;const[t]=r(this.trigger);if(t!=null){if(typeof t.setFocus==="function"){t.setFocus()}else if(typeof t.focus==="function"){t.focus()}}}getMenu(){if(this.panel==null)return;return r(this.panel).filter(p).at(0)}async reposition(){if(!this.open||this.popover==null){return}this.popover.reposition()}updateAccessibleTrigger(){if(this.trigger==null)return;const t=r(this.trigger).map(u).at(0);if(t!=null){t.setAttribute("aria-haspopup","true");t.setAttribute("aria-expanded",this.open?"true":"false")}}render(){return s("div",{part:"base",id:this.componentId,class:{dropdown:true,"dropdown--open":this.open}},s("span",{part:"trigger",class:"dropdown__trigger",ref:t=>this.trigger=t,onClick:this.handleTriggerClick,onKeyDown:this.handleTriggerKeyDown,onKeyUp:this.handleTriggerKeyUp},s("slot",{name:"trigger",onSlotchange:this.handleTriggerSlotChange})),s("div",{ref:t=>this.positioner=t,class:{dropdown__positioner:true,dropdown__positioner__filtered:(this.filter||this.asyncFilter)&&!this.hoist}},this.hasFilterEnabled&&s("six-input",{class:{"filter-hidden":!this.open},"aria-hidden":this.open?"false":"true",ref:t=>this.filterInputElement=t,placeholder:this.filterPlaceholder}),s("div",{ref:t=>this.panel=t,part:"panel",class:"dropdown__panel",role:"menu","aria-hidden":this.open?"false":"true","aria-labelledby":this.componentId,onScroll:this.handleDropdownScroll},s("slot",null),this.filteredOptions.length>0&&s("six-menu",{part:"menu",items:this.filteredOptions,virtualScroll:this.virtualScroll}))))}get host(){return n(this)}static get watchers(){return{open:["handleOpenChange"],distance:["handlePopoverOptionsChange"],hoist:["handlePopoverOptionsChange"],placement:["handlePopoverOptionsChange"],skidding:["handlePopoverOptionsChange"],options:["handleOptionsChange"]}}};w.style=f;const g=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{display:block}.menu{padding:0 0;border:none;box-shadow:var(--six-elevation-2dp)}.menu:focus{outline:none}.menu--noshadow{box-shadow:none}.menu__wrapper--scrollable{overflow-y:auto}";const b=t=>{var i,s,n;return(n=(s=(i=t===null||t===void 0?void 0:t.shadowRoot)===null||i===void 0?void 0:i.querySelector(".menu-item"))===null||s===void 0?void 0:s.classList)===null||n===void 0?void 0:n.contains("menu-item--focused")};const x=t=>(t===null||t===void 0?void 0:t.tagName.toLowerCase())==="six-menu-item";const _=({value:t,label:i})=>s("six-menu-item",{value:t},i);const y=5;const A=64;const k=class{constructor(s){t(this,s);this.sixMenuItemSelected=i(this,"six-menu-item-selected",7);this.eventListeners=new o;this.typeToSelectString="";this.handleScrolling=()=>{if(this.menuWrapper==null)return;this.scrollingIndex=Math.floor(this.menuWrapper.scrollTop/this.sixMenuItemHeight)};this.removeBoxShadow=false;this.items=null;this.itemsShown=undefined;this.virtualScroll=false;this.itemSize=10;this.scrollingDebounce=15;this.scrollingIndex=0;this.sixMenuItemHeight=A}connectedCallback(){this.handleClick=this.handleClick.bind(this);this.handleKeyDown=this.handleKeyDown.bind(this)}componentWillLoad(){if(this.items===null){return}}componentDidLoad(){this.setupForVirtualScrollingAfterRendering()}disconnectedCallback(){this.eventListeners.removeAll()}async typeToSelect(t){var i;clearTimeout(this.typeToSelectTimeout);this.typeToSelectTimeout=setTimeout((()=>this.typeToSelectString=""),750);this.typeToSelectString+=t.toLowerCase();const s=this.getItems();for(const t of s){const s=(i=t.shadowRoot)===null||i===void 0?void 0:i.querySelector("slot:not([name])");const n=h(s).toLowerCase().trim();if(n.substring(0,this.typeToSelectString.length)===this.typeToSelectString){t.setFocus();break}}}getItemsShown(){var t;const i=this.virtualScroll?y:0;return(t=this.itemsShown)!==null&&t!==void 0?t:i}setupForVirtualScrollingAfterRendering(){var t,i;if(!this.virtualScroll||this.menuWrapper==null)return;this.eventListeners.add(this.menuWrapper,"scroll",d(this.handleScrolling,this.scrollingDebounce));const s=(i=(t=this.menu)===null||t===void 0?void 0:t.querySelector("six-menu-item"))===null||i===void 0?void 0:i.clientHeight;if(s!=null&&s>0){this.sixMenuItemHeight=s}}getItems(){if(this.menu==null)return[];if(this.items!=null){return this.items.map(_)}const t=this.menu.querySelector("slot");if(t==null)return[];return[...t.assignedElements({flatten:true})].filter((t=>x(t)&&!t.disabled))}getActiveItemIndex(){const t=this.getItems();const i=this.getActiveItem();if(i!=null){const s=t.indexOf(i);if(s>-1){return s}}const s=this.extractItemsFromDOM();return s.findIndex(b)}getActiveItem(){var t;const i=this.getItems().find((t=>t===document.activeElement));if(i!=null){return i}return(t=this.extractItemsFromDOM())===null||t===void 0?void 0:t.find(b)}extractItemsFromDOM(){var t,i;return Array.from((i=(t=this.host.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll("six-menu-item"))!==null&&i!==void 0?i:[])}setActiveItem(t){t===null||t===void 0?void 0:t.setFocus()}handleClick(t){const i=t.target;const s=i.closest("six-menu-item");if(s&&!s.disabled){this.sixMenuItemSelected.emit({name:s.value,item:s})}}handleKeyDown(t){if(t.key==="Enter"){const i=this.getActiveItem();t.preventDefault();if(i!=null){this.sixMenuItemSelected.emit({name:i.value,item:i})}}if(t.key===" "){t.preventDefault()}if(["ArrowDown","ArrowUp","Home","End"].includes(t.key)){const i=this.items===null?this.getItems():this.extractItemsFromDOM();let s=this.getActiveItemIndex();if(i.length>0){t.preventDefault();if(t.key==="ArrowDown"){s++}else if(t.key==="ArrowUp"){s--}else if(t.key==="Home"){s=0}else if(t.key==="End"){s=i.length-1}if(s<0)s=0;if(s>i.length-1)s=i.length-1;this.setActiveItem(i[s]);return}}void this.typeToSelect(t.key)}getMenuWrapperStyle(){var t;const i={};if(this.getItemsShown()>0){i.height=`${((t=this.getItemsShown())!==null&&t!==void 0?t:0)*this.sixMenuItemHeight}px`}return Object.assign({},i)}getMenuContainerStyle(){const t={};if(this.virtualScroll){t.transform=`translateY(${this.sixMenuItemHeight*this.scrollingIndex}px)`}return Object.assign({},t)}getScrollbarGhostStyle(){const t={};if(this.virtualScroll&&this.items!==null){t.height=`${this.items.length*this.sixMenuItemHeight-this.itemSize*this.sixMenuItemHeight}px`}return Object.assign({},t)}renderItems(){if(this.items===undefined||this.items===null){return}if(!this.virtualScroll){return this.items.map(_)}return this.items.slice(this.scrollingIndex,Math.min(this.items.length,this.itemSize+this.scrollingIndex)).map(_)}render(){return s("div",{ref:t=>this.menuWrapper=t,style:this.getMenuWrapperStyle(),part:"wrapper",class:{menu:true,"menu--noshadow":this.removeBoxShadow,"menu__wrapper--scrollable":this.getItemsShown()>0}},s("div",{ref:t=>this.menu=t,part:"base",role:"menu",onClick:this.handleClick,onKeyDown:this.handleKeyDown,tabIndex:0,style:this.getMenuContainerStyle()},s("slot",null),this.renderItems()),this.virtualScroll&&s("div",{style:this.getScrollbarGhostStyle()}))}get host(){return n(this)}};k.style=g;export{w as six_dropdown,k as six_menu};
2
- //# sourceMappingURL=p-314b2096.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["isTabbable","el","tabIndex","getNearestTabbableElement","shadowRoot","tabbableShadowChild","children","find","e","map","at","undefined","sixDropdownCss","isTagName","name","tagName","toLowerCase","isSixMenu","isSixMenuItem","id","SixDropdown","this","componentId","isVisible","hasBeenInitialized","eventListeners","EventListeners","getMenuItems","filteredOptions","length","option","h","value","label","panel","getSlotChildren","Array","from","querySelectorAll","handleFilterInputChange","filterInputElement","lowerCaseFilterTerm","_b","_a","trim","handleFilteringForAttributeItems","handleFilteringForSlotItems","sixAutoFilter","emit","filterValue","handleDocumentKeyDown","event","keyboardEvent","key","hide","focusOnTrigger","host","activeElement","item","style","display","setFocus","open","document","preventDefault","setTimeout","container","getRootNode","ShadowRoot","closest","handleDocumentMouseDown","path","composedPath","includes","handlePanelSelect","target","closeOnSelect","handleTriggerClick","show","handleTriggerKeyDown","disableHideOnEnterAndSpace","menu","getMenu","menuItems","firstMenuItem","lastMenuItem","ignoredKeys","typeToSelect","handleTriggerKeyUp","handleTriggerSlotChange","updateAccessibleTrigger","handleDropdownScroll","sixScroll","scrollHeight","scrollTop","scrollbarHeight","offsetHeight","scrollRatio","clientHeight","DEFAULT_DEBOUNCE_FAST","hasFilterEnabled","filter","asyncFilter","containingElement","handleOpenChange","handlePopoverOptionsChange","popover","setOptions","strategy","hoist","placement","distance","skidding","handleOptionsChange","isArray","options","connectedCallback","virtualScroll","console","error","initializePopover","componentDidLoad","setupFiltering","sixAsyncFilterFired","trigger","positioner","onAfterHide","forEach","sixAfterHide","onAfterShow","async","autofocusFilter","sixAfterShow","onTransitionEnd","Popover","transitionElement","callback","add","debounce","filterDebounce","String","_d","_c","menuItem","elementContainsFilterTerm","getTextLabel","disconnectedCallback","removeAll","destroy","sixShow","defaultPrevented","sixHide","remove","focus","reposition","accessibleTrigger","setAttribute","render","part","class","dropdown","ref","onClick","onKeyDown","onKeyUp","onSlotchange","dropdown__positioner","dropdown__positioner__filtered","placeholder","filterPlaceholder","role","onScroll","items","sixMenuCss","isFocusedMenuItem","querySelector","classList","contains","isSIXMenuItemElement","mapToMenuItem","DEFAULT_NUMBER_OF_ITEMS_SHOWN_FOR_VIRTUAL_SCROLLING","DEFAULT_SIX_MENU_ITEM_HEIGHT","SixMenu","typeToSelectString","handleScrolling","menuWrapper","scrollingIndex","Math","floor","sixMenuItemHeight","handleClick","bind","handleKeyDown","componentWillLoad","setupForVirtualScrollingAfterRendering","clearTimeout","typeToSelectTimeout","getItems","slot","getTextContent","substring","getItemsShown","defaultItemsShown","itemsShown","scrollingDebounce","menuItemHeight","assignedElements","flatten","disabled","getActiveItemIndex","selectedItem","getActiveItem","itemIndex","indexOf","sixMenuItems","extractItemsFromDOM","findIndex","i","setActiveItem","clickedItem","sixMenuItemSelected","activeItem","indexOfActiveItem","getMenuWrapperStyle","styles","height","Object","assign","getMenuContainerStyle","transform","getScrollbarGhostStyle","itemSize","renderItems","slice","min","removeBoxShadow"],"sources":["src/utils/tabbable.ts","src/components/six-dropdown/six-dropdown.scss?tag=six-dropdown&encapsulation=shadow","src/components/six-dropdown/six-dropdown.tsx","src/components/six-menu/six-menu.scss?tag=six-menu&encapsulation=shadow","src/components/six-menu/six-menu.tsx"],"sourcesContent":["export function isTabbable(el: HTMLElement) {\n const tabIndex = el.tabIndex;\n return tabIndex > -1;\n}\n\nexport function getNearestTabbableElement(el: HTMLElement): HTMLElement | undefined {\n // Check the element\n if (isTabbable(el)) {\n return el;\n }\n\n // Check the element's shadow root\n if (el.shadowRoot != null) {\n const tabbableShadowChild = [...el.shadowRoot.children].find((e) => isTabbable(e as HTMLElement)) as HTMLElement;\n if (tabbableShadowChild != null) {\n return tabbableShadowChild;\n }\n }\n\n // Check the element's children\n if (el.children != null) {\n return [...el.children].map((e) => getNearestTabbableElement(e as HTMLElement)).at(0);\n }\n\n return undefined;\n}\n","@import 'src/global/component';\n@import 'src/global/mixins/scrollbar';\n\n:host {\n display: inline-block;\n}\n\n.dropdown {\n position: relative;\n}\n\n.dropdown__trigger {\n display: block;\n}\n\n.dropdown__positioner {\n position: absolute;\n z-index: var(--six-z-index-dropdown);\n\n &__filtered {\n width: 100%;\n }\n}\n\n.dropdown__panel {\n max-height: 50vh;\n font-family: var(--six-font-sans);\n font-size: var(--six-font-size-small);\n font-weight: var(--six-font-weight-normal);\n color: var(--color);\n background-color: var(--six-panel-background-color);\n border-radius: var(--six-border-radius-medium);\n box-shadow: var(--six-elevation-2dp);\n opacity: 0;\n overflow: auto;\n overscroll-behavior: none;\n pointer-events: none;\n transform: scale(0.9);\n transition: var(--six-transition-fast) opacity, var(--six-transition-fast) transform;\n // fix for firefox scrollbar\n scrollbar-width: thin;\n}\n\n.filter-hidden {\n display: none;\n}\n\n.dropdown__positioner {\n &[data-popper-placement^='top'] .dropdown__panel {\n transform-origin: bottom;\n }\n\n &[data-popper-placement^='bottom'] .dropdown__panel {\n transform-origin: top;\n }\n\n &[data-popper-placement^='left'] .dropdown__panel {\n transform-origin: right;\n }\n\n &[data-popper-placement^='right'] .dropdown__panel {\n transform-origin: left;\n }\n\n &.popover-visible .dropdown__panel {\n opacity: 1;\n transform: none;\n pointer-events: all;\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { getNearestTabbableElement } from '../../utils/tabbable';\nimport Popover from '../../utils/popover';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { getSlotChildren } from '../../utils/slot';\nimport { debounce, DEFAULT_DEBOUNCE_FAST } from '../../utils/execution-control';\nimport { EmptyPayload } from '../../utils/types';\nimport { SixMenuItemData } from '../six-menu/six-menu';\n\nexport interface SixDropdownAutoFilterPayload {\n filterValue: string;\n}\n\nexport interface SixDropdownAsyncFilterPayload {\n filterValue: string;\n}\n\nexport interface SixDropdownScrollPayload {\n scrollHeight: number;\n scrollTop: number;\n scrollbarHeight: number;\n scrollRatio: number;\n}\n\nconst isTagName =\n (name: string) =>\n <T extends Element>(el?: T) =>\n el?.tagName.toLowerCase() === name.toLowerCase();\nconst isSixMenu = isTagName('six-menu');\nconst isSixMenuItem = isTagName('six-menu-item');\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 trigger - The dropdown's trigger, usually a `<six-button>` element.\n * @slot - The dropdown's content.\n *\n * @part base - The component's base wrapper.\n * @part trigger - The container that wraps the trigger.\n * @part panel - The panel that gets shown when the dropdown is open.\n */\n\n@Component({\n tag: 'six-dropdown',\n styleUrl: 'six-dropdown.scss',\n shadow: true,\n})\nexport class SixDropdown {\n private componentId = `dropdown-${++id}`;\n private isVisible = false;\n private panel?: HTMLElement;\n private positioner?: HTMLElement;\n private popover?: Popover;\n private trigger?: HTMLElement;\n private hasBeenInitialized = false;\n\n // the input element shown in the dropdown when filter is set to true\n private filterInputElement?: HTMLSixInputElement;\n\n @Element() host!: HTMLSixDropdownElement;\n\n /** Indicates whether the dropdown is open. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /**\n * The preferred placement of the dropdown panel. Note that the actual placement may vary as needed to keep the panel\n * inside the viewport.\n */\n @Prop() placement:\n | 'top'\n | 'top-start'\n | 'top-end'\n | 'bottom'\n | 'bottom-start'\n | 'bottom-end'\n | 'right'\n | 'right-start'\n | 'right-end'\n | 'left'\n | 'left-start'\n | 'left-end' = 'bottom-start';\n\n /** Determines whether the dropdown should hide when a menu item is selected. */\n @Prop() closeOnSelect = true;\n\n /** The distance in pixels from which to offset the panel away from its trigger. */\n @Prop() distance = 0;\n\n /** The distance in pixels from which to offset the panel along its trigger. */\n @Prop() skidding = 0;\n\n /**\n * Enable this option to prevent the panel from being clipped when the component is placed inside a container with\n * `overflow: auto|scroll`.\n */\n @Prop() hoist = false;\n\n /** The dropdown will close when the user interacts outside of this element (e.g. clicking). */\n @Prop() containingElement?: HTMLElement;\n\n /**\n * Set to true to allow auto filtering for entries in the dropdown.\n * With this flag the dropdown will automatically filter itsel.\n * If you need to coordinate the shown elements yourself,\n * e.g. because you need to call an endpoint use asyncFilter instead\n */\n @Prop() filter = false;\n\n /**\n * Set to true to allow async filtering.\n * When you enter something in the search field the component will only emit an event but not filter any elements itself.\n * You can then simply listen to the 'six-async-filter-fired' event to manage the shown menu-items yourself\n */\n @Prop() asyncFilter = false;\n\n /** The filter's placeholder text. */\n @Prop() filterPlaceholder = 'Filter...';\n\n /** By default the search field will be focused when opening a dropdown with filtering enabled. */\n @Prop() autofocusFilter = true;\n\n get hasFilterEnabled() {\n return this.filter || this.asyncFilter;\n }\n\n /** The debounce for the filter callbacks. */\n @Prop() filterDebounce = DEFAULT_DEBOUNCE_FAST;\n\n /** The panel can be opend/closed by pressing the spacebar or the enter key. In some cases you might want to avoid this */\n @Prop() disableHideOnEnterAndSpace = false;\n\n /** Set the options to be shown in the dropdown (alternative to setting the elements via html)*/\n @Prop() options: SixMenuItemData[] = [];\n\n /** Defines whether the menu list will be rendered virtually i.e. only the elements actually shown (and a couple around)\n * are actually rendered in the DOM. If you use virtual scrolling pass the elements via prop instead of via slot. */\n @Prop() virtualScroll = false;\n\n get container() {\n return this.containingElement || this.host;\n }\n\n /** Emitted when the dropdown opens. Calling `event.preventDefault()` will prevent it from being opened. */\n @Event({ eventName: 'six-dropdown-show' }) sixShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the dropdown opens and all transitions are complete. */\n @Event({ eventName: 'six-dropdown-after-show' }) sixAfterShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the dropdown closes. Calling `event.preventDefault()` will prevent it from being closed. */\n @Event({ eventName: 'six-dropdown-hide' }) sixHide!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the dropdown closes and all transitions are complete. */\n @Event({ eventName: 'six-dropdown-after-hide' }) sixAfterHide!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the auto filter is triggered */\n @Event({ eventName: 'six-dropdown-auto-filter-fired' }) sixAutoFilter!: EventEmitter<SixDropdownAutoFilterPayload>;\n\n /** Emitted when the async filter is triggered */\n @Event({ eventName: 'six-async-filter-fired' }) sixAsyncFilterFired!: EventEmitter<SixDropdownAsyncFilterPayload>;\n\n /** Emitted when the user scrolls inside dropdown panel.*/\n @Event({ eventName: 'six-dropdown-scroll' }) sixScroll!: EventEmitter<SixDropdownScrollPayload>;\n\n private eventListeners = new EventListeners();\n\n // internal representation of options, so we don't have to make options mutable\n @State() filteredOptions: SixMenuItemData[] = [];\n\n @Watch('open')\n handleOpenChange() {\n this.open ? this.show() : this.hide();\n this.updateAccessibleTrigger();\n }\n\n @Watch('distance')\n @Watch('hoist')\n @Watch('placement')\n @Watch('skidding')\n handlePopoverOptionsChange() {\n if (this.popover == null) return;\n\n this.popover.setOptions({\n strategy: this.hoist ? 'fixed' : 'absolute',\n placement: this.placement,\n distance: this.distance,\n skidding: this.skidding,\n });\n }\n\n @Watch('options')\n handleOptionsChange() {\n if (Array.isArray(this.options)) {\n this.filteredOptions = [...this.options];\n }\n }\n\n connectedCallback() {\n if (this.virtualScroll && this.options === null) {\n console.error('Options must be defined when using virtual scrolling');\n }\n\n if (Array.isArray(this.options)) {\n this.filteredOptions = [...this.options];\n }\n\n if (this.hasBeenInitialized && this.popover == null) {\n // there was a weird bug when using six-dropdown inside an ag-grid filter. When closing the ag-grid filter\n // disconnectedCallback() is executed. However, since componentDidLoad() will not be rerendered the popover had\n // no longer a connected transitionEnd callback to the dropdown. To fix this, we have this sanity check here,\n // to re-initialize the popover in case the component has already been initialized but the popover is undefined.\n this.initializePopover();\n }\n }\n\n componentDidLoad() {\n this.hasBeenInitialized = true;\n this.initializePopover();\n\n // Show on init if open\n if (this.open) {\n void this.show();\n }\n\n if (this.filter) {\n this.setupFiltering(this.handleFilterInputChange);\n } else if (this.asyncFilter) {\n this.setupFiltering(() => this.sixAsyncFilterFired.emit({ filterValue: this.filterInputElement?.value ?? '' }));\n }\n }\n\n private initializePopover() {\n if (this.trigger == null || this.positioner == null) return;\n const onAfterHide = () => {\n if (this.filter && this.filterInputElement != null) {\n this.filterInputElement.value = '';\n\n if (this.filteredOptions.length > 0) {\n this.filteredOptions = [...this.options];\n } else {\n const menuItems = this.getMenuItems();\n menuItems.forEach((item) => (item.style.display = 'unset'));\n }\n }\n\n this.sixAfterHide.emit();\n };\n\n const onAfterShow = async () => {\n if (this.hasFilterEnabled && this.autofocusFilter) {\n // if dropdown filter is enabled we should autofocus the search field\n await this.filterInputElement?.setFocus();\n }\n\n this.sixAfterShow.emit();\n };\n\n const onTransitionEnd = () => {\n if (!this.open && this.panel != null) {\n this.panel.scrollTop = 0;\n }\n };\n\n this.popover = new Popover(this.trigger, this.positioner, {\n strategy: this.hoist ? 'fixed' : 'absolute',\n placement: this.placement,\n distance: this.distance,\n skidding: this.skidding,\n transitionElement: this.panel,\n onAfterHide,\n onAfterShow,\n onTransitionEnd,\n });\n }\n\n private setupFiltering(callback: () => void) {\n if (this.filterInputElement != null) {\n this.eventListeners.add(this.filterInputElement, 'six-input-input', debounce(callback, this.filterDebounce));\n }\n }\n\n private getMenuItems = (): HTMLSixMenuItemElement[] => {\n if (this.filteredOptions.length > 0) {\n return this.filteredOptions.map((option) => <six-menu-item value={option.value}>{option.label}</six-menu-item>);\n }\n if (this.panel == null) return [];\n\n const [panel] = getSlotChildren<HTMLSixMenuElement>(this.panel);\n\n // the menu-items can be in a slot e.g. in six-select or direct children of the panel\n return getSlotChildren(panel) || Array.from(panel.querySelectorAll('six-menu-item'));\n };\n\n private handleFilterInputChange = () => {\n if (this.filterInputElement == null) return;\n\n const lowerCaseFilterTerm = this.filterInputElement.value?.toLowerCase()?.trim() || '';\n\n if (this.filteredOptions.length > 0) {\n this.handleFilteringForAttributeItems(lowerCaseFilterTerm);\n } else {\n this.handleFilteringForSlotItems(lowerCaseFilterTerm);\n }\n\n this.sixAutoFilter.emit({ filterValue: lowerCaseFilterTerm });\n };\n\n private handleFilteringForAttributeItems(lowerCaseFilterTerm: string) {\n if (lowerCaseFilterTerm === '' && Array.isArray(this.options)) {\n this.filteredOptions = [...this.options];\n return;\n }\n\n this.filteredOptions = this.options.filter(\n (option) =>\n (option.label && String(option.label)?.toLowerCase()?.includes(lowerCaseFilterTerm)) ||\n (option.value && String(option.value)?.toLowerCase()?.includes(lowerCaseFilterTerm))\n );\n }\n\n private handleFilteringForSlotItems(lowerCaseFilterTerm: string) {\n const menuItems = this.getMenuItems();\n menuItems.forEach(async (menuItem) => {\n // hide all elements which don't contain the entered substring\n const elementContainsFilterTerm =\n menuItem?.value?.toLowerCase()?.includes(lowerCaseFilterTerm) ||\n (await menuItem?.getTextLabel())?.toLowerCase()?.includes(lowerCaseFilterTerm);\n\n menuItem.style.display = elementContainsFilterTerm ? 'unset' : 'none';\n });\n }\n\n disconnectedCallback() {\n this.eventListeners.removeAll();\n\n void this.hide();\n this.popover?.destroy();\n this.popover = undefined;\n }\n\n /** Shows the dropdown panel */\n @Method()\n async show() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (this.isVisible || this.popover == null || this.panel == null) {\n return;\n }\n\n const sixShow = this.sixShow.emit();\n if (sixShow.defaultPrevented) {\n this.open = false;\n return;\n }\n\n this.eventListeners.add(this.panel, 'six-menu-item-selected', this.handlePanelSelect);\n this.eventListeners.add(document, 'keydown', this.handleDocumentKeyDown);\n this.eventListeners.add(document, 'mousedown', this.handleDocumentMouseDown);\n\n this.isVisible = true;\n this.open = true;\n this.popover.show();\n }\n\n /** Hides the dropdown panel */\n @Method()\n async hide() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (!this.isVisible || this.panel == null || this.popover == null) {\n return;\n }\n\n const sixHide = this.sixHide.emit();\n if (sixHide.defaultPrevented) {\n this.open = true;\n return;\n }\n\n this.eventListeners.remove(this.panel, 'six-menu-item-selected', this.handlePanelSelect);\n this.eventListeners.remove(document, 'keydown', this.handleDocumentKeyDown);\n this.eventListeners.remove(document, 'mousedown', this.handleDocumentMouseDown);\n\n this.isVisible = false;\n this.open = false;\n this.popover.hide();\n }\n\n private focusOnTrigger() {\n if (this.trigger == null) return;\n const [trigger] = getSlotChildren<HTMLSixButtonElement>(this.trigger);\n if (trigger != null) {\n if (typeof trigger.setFocus === 'function') {\n trigger.setFocus();\n } else if (typeof trigger.focus === 'function') {\n trigger.focus();\n }\n }\n }\n\n private getMenu(): HTMLSixMenuElement | undefined {\n if (this.panel == null) return;\n return getSlotChildren<HTMLSixMenuElement>(this.panel).filter(isSixMenu).at(0);\n }\n\n /**\n * Instructs the dropdown menu to reposition. Useful when the position or size of the trigger changes when the menu\n * is activated.\n */\n @Method()\n async reposition() {\n if (!this.open || this.popover == null) {\n return;\n }\n this.popover.reposition();\n }\n\n private handleDocumentKeyDown = (event: Event) => {\n const keyboardEvent = event as KeyboardEvent;\n // Close when escape is pressed\n if (keyboardEvent.key === 'Escape') {\n void this.hide();\n this.focusOnTrigger();\n return;\n }\n\n if (this.filterInputElement === this.host.shadowRoot?.activeElement) {\n if (keyboardEvent.key === 'ArrowDown') {\n const item = this.getMenuItems().find((item) => item.style.display !== 'none');\n if (item != null) {\n item.setFocus();\n }\n }\n }\n\n // Handle tabbing\n if (keyboardEvent.key === 'Tab') {\n // Tabbing within an open menu should close the dropdown and refocus the trigger\n if (this.open && document.activeElement != null && isSixMenuItem(document.activeElement)) {\n keyboardEvent.preventDefault();\n void this.hide();\n this.focusOnTrigger();\n return;\n }\n\n // Tabbing outside the containing element closes the panel\n //\n // If the dropdown is used within a shadow DOM, we need to obtain the activeElement within that shadowRoot,\n // otherwise `document.activeElement` will only return the name of the parent shadow DOM element.\n setTimeout(() => {\n const activeElement =\n this.container.getRootNode() instanceof ShadowRoot\n ? document.activeElement?.shadowRoot?.activeElement\n : document.activeElement;\n\n if (activeElement?.closest(this.container.tagName.toLowerCase()) !== this.container) {\n void this.hide();\n return;\n }\n });\n }\n };\n\n private handleDocumentMouseDown = (event: Event) => {\n // Close when clicking outside the containing element\n const path = event.composedPath() as EventTarget[];\n if (!path.includes(this.container)) {\n void this.hide();\n return;\n }\n };\n\n private handlePanelSelect = (event: Event) => {\n const target = event.target as HTMLElement;\n\n // Hide the dropdown when a menu item is selected\n if (this.closeOnSelect && isSixMenu(target)) {\n void this.hide();\n this.focusOnTrigger();\n }\n };\n\n private handleTriggerClick = () => {\n this.open ? this.hide() : this.show();\n };\n\n private handleTriggerKeyDown = (event: KeyboardEvent) => {\n // Close when escape or tab is pressed\n if (event.key === 'Escape') {\n this.focusOnTrigger();\n void this.hide();\n return;\n }\n\n // When spacebar/enter is pressed, show the panel but don't focus on the menu. This let's the user press the same\n // key again to hide the menu in case they don't want to make a selection.\n if (!this.disableHideOnEnterAndSpace && [' ', 'Enter'].includes(event.key)) {\n event.preventDefault();\n this.open ? void this.hide() : void this.show();\n return;\n }\n\n const menu = this.getMenu();\n\n // When up/down is pressed, we make the assumption that the user is familiar with the menu and plans to make a\n // selection. Rather than toggle the panel, we focus on the menu (if one exists) and activate the first item for\n // faster navigation.\n if (['ArrowDown', 'ArrowUp'].includes(event.key)) {\n event.preventDefault();\n\n // Show the menu if it's not already open\n if (!this.open) {\n void this.show();\n }\n\n if (menu == null) {\n return;\n }\n const menuItems = [...menu.querySelectorAll('six-menu-item')];\n const firstMenuItem = menuItems.at(0);\n const lastMenuItem = menuItems.at(menuItems.length - 1);\n\n // Focus on a menu item\n if (event.key === 'ArrowDown' && firstMenuItem != null) {\n firstMenuItem.setFocus();\n return;\n }\n\n if (event.key === 'ArrowUp' && lastMenuItem != null) {\n lastMenuItem.setFocus();\n return;\n }\n }\n\n // Other keys bring focus to the menu and initiate type-to-select behavior\n const ignoredKeys = ['Tab', 'Shift', 'Meta', 'Ctrl', 'Alt'];\n if (this.open && menu != null && !ignoredKeys.includes(event.key)) {\n void menu.typeToSelect(event.key);\n return;\n }\n };\n\n private handleTriggerKeyUp = (event: KeyboardEvent) => {\n // Prevent space from triggering a click event in Firefox\n if (event.key === ' ') {\n event.preventDefault();\n }\n };\n\n private handleTriggerSlotChange = () => {\n this.updateAccessibleTrigger();\n };\n\n private handleDropdownScroll = () => {\n if (this.panel == null) return;\n\n this.sixScroll.emit({\n scrollHeight: this.panel.scrollHeight,\n scrollTop: this.panel.scrollTop,\n scrollbarHeight: this.panel.offsetHeight * (this.panel.offsetHeight / this.panel.scrollHeight),\n scrollRatio: this.panel.scrollTop / (this.panel.scrollHeight - this.panel.clientHeight),\n });\n };\n\n //\n // Slotted triggers can be arbitrary content, but we need to link them to the dropdown panel with `aria-haspopup` and\n // `aria-expanded`. These must be applied to the \"accessible trigger\" (the tabbable portion of the trigger element\n // that gets slotted in) so screen readers will understand them. The accessible trigger could be the slotted element,\n // a child of the slotted element, or an element in the slotted element's shadow root.\n //\n // For example, the accessible trigger of an <sl-button> is a <button> located inside its shadow root.\n //\n // To determine this, we assume the first tabbable element in the trigger slot is the \"accessible trigger.\"\n //\n private updateAccessibleTrigger() {\n if (this.trigger == null) return;\n\n const accessibleTrigger = getSlotChildren(this.trigger).map(getNearestTabbableElement).at(0);\n if (accessibleTrigger != null) {\n accessibleTrigger.setAttribute('aria-haspopup', 'true');\n accessibleTrigger.setAttribute('aria-expanded', this.open ? 'true' : 'false');\n }\n }\n\n render() {\n return (\n <div\n part=\"base\"\n id={this.componentId}\n class={{\n dropdown: true,\n 'dropdown--open': this.open,\n }}\n >\n <span\n part=\"trigger\"\n class=\"dropdown__trigger\"\n ref={(el) => (this.trigger = el)}\n onClick={this.handleTriggerClick}\n onKeyDown={this.handleTriggerKeyDown}\n onKeyUp={this.handleTriggerKeyUp}\n >\n <slot name=\"trigger\" onSlotchange={this.handleTriggerSlotChange} />\n </span>\n\n {/* Position the panel with a wrapper since the popover makes use of `translate`. This let's us add transitions\n on the panel without interfering with the position. */}\n <div\n ref={(el) => (this.positioner = el)}\n class={{\n dropdown__positioner: true,\n dropdown__positioner__filtered: (this.filter || this.asyncFilter) && !this.hoist,\n }}\n >\n {this.hasFilterEnabled && (\n <six-input\n class={{\n 'filter-hidden': !this.open,\n }}\n aria-hidden={this.open ? 'false' : 'true'}\n ref={(el) => (this.filterInputElement = el)}\n placeholder={this.filterPlaceholder}\n />\n )}\n <div\n ref={(el) => (this.panel = el)}\n part=\"panel\"\n class=\"dropdown__panel\"\n role=\"menu\"\n aria-hidden={this.open ? 'false' : 'true'}\n aria-labelledby={this.componentId}\n onScroll={this.handleDropdownScroll}\n >\n <slot />\n {this.filteredOptions.length > 0 && (\n <six-menu part=\"menu\" items={this.filteredOptions} virtualScroll={this.virtualScroll}></six-menu>\n )}\n </div>\n </div>\n </div>\n );\n }\n}\n","@import 'src/global/component';\n\n:host {\n display: block;\n}\n\n.menu {\n padding: 0 0;\n border: none;\n box-shadow: var(--six-elevation-2dp);\n\n &:focus {\n outline: none;\n }\n\n &--noshadow {\n box-shadow: none;\n }\n\n &__wrapper {\n &--scrollable {\n overflow-y: auto;\n }\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State } from '@stencil/core';\nimport { getTextContent } from '../../utils/slot';\nimport { StyleDeclaration } from '../../utils/types';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { debounce } from '../../utils/execution-control';\n\nexport interface SixMenuItemData {\n label: string;\n value: string;\n}\n\nexport interface SixMenuItemSelectedPayload {\n name: string;\n item: HTMLSixMenuItemElement;\n}\n\nconst isFocusedMenuItem = (menuItem: HTMLSixMenuItemElement) =>\n menuItem?.shadowRoot?.querySelector('.menu-item')?.classList?.contains('menu-item--focused');\n\nconst isSIXMenuItemElement = (el?: Element): el is HTMLSixMenuItemElement =>\n el?.tagName.toLowerCase() === 'six-menu-item';\n\nconst mapToMenuItem = ({ value, label }: SixMenuItemData) => <six-menu-item value={value}>{label}</six-menu-item>;\n\nconst DEFAULT_NUMBER_OF_ITEMS_SHOWN_FOR_VIRTUAL_SCROLLING = 5;\n\nconst DEFAULT_SIX_MENU_ITEM_HEIGHT = 64;\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 menu's content, including menu items, menu dividers, and menu labels.\n *\n * @part base - The component's base wrapper.\n */\n@Component({\n tag: 'six-menu',\n styleUrl: 'six-menu.scss',\n shadow: true,\n})\nexport class SixMenu {\n private readonly eventListeners = new EventListeners();\n\n private menu?: HTMLElement;\n private menuWrapper?: HTMLElement;\n private typeToSelectString = '';\n private typeToSelectTimeout?: number;\n\n @Element() host!: HTMLSixMenuElement;\n\n /** Emitted when a menu item is selected. */\n @Event({ eventName: 'six-menu-item-selected' }) sixMenuItemSelected!: EventEmitter<SixMenuItemSelectedPayload>;\n\n /** Set to true to remove the box-shadow */\n @Prop() removeBoxShadow = false;\n\n /** Set the options to be shown in the dropdown */\n @Prop() items: SixMenuItemData[] | null = null;\n\n /** Defines how many items should be shown. If the number of items is larger than this property a scrollbar will be shown */\n @Prop() itemsShown?: number;\n\n /** Defines whether the menu list will be rendered virtually i.e. only the elements actually shown (and a couple around)\n * are actually rendered in the DOM. If you use virtual scrolling pass the elements via prop instead of via slot. */\n @Prop() virtualScroll = false;\n\n /**\n * Used for virtual scrolling\n * Define how many items should be rendered in the DOM when using virtual scrolling\n */\n @Prop() itemSize = 10;\n\n /**\n * Used for virtual scrolling\n * Define the debounce for listening on scrolling changes in milliseconds.\n * The lower the number the more sensitive the component reacts to scrolling changes.\n */\n @Prop() scrollingDebounce = 15;\n\n /**\n * Used to calculate which items should be rendered in the DOM\n */\n @State()\n private scrollingIndex = 0;\n\n // set a default item height, this variable will be updated with the real value after the first render.\n // However, it's necessary to have a default value because we can only fetch the proper height after the first render\n @State()\n sixMenuItemHeight = DEFAULT_SIX_MENU_ITEM_HEIGHT;\n\n connectedCallback() {\n this.handleClick = this.handleClick.bind(this);\n this.handleKeyDown = this.handleKeyDown.bind(this);\n }\n\n componentWillLoad() {\n if (this.items === null) {\n return;\n }\n }\n\n private handleScrolling = () => {\n if (this.menuWrapper == null) return;\n // for performance improvements we only update the DOM if the scrollRatio change \"enough\"\n this.scrollingIndex = Math.floor(this.menuWrapper.scrollTop / this.sixMenuItemHeight);\n };\n\n componentDidLoad() {\n this.setupForVirtualScrollingAfterRendering();\n }\n\n disconnectedCallback() {\n this.eventListeners.removeAll();\n }\n\n /**\n * Initiates type-to-select logic, which automatically selects an option based on what the user is currently typing.\n * The key passed will be appended to the internal query and the selection will be updated. After a brief period, the\n * internal query is cleared automatically. This method is intended to be used with the keydown event. Useful for\n * enabling type-to-select when the menu doesn't have focus.\n */\n @Method()\n async typeToSelect(key: string) {\n clearTimeout(this.typeToSelectTimeout);\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n this.typeToSelectTimeout = setTimeout(() => (this.typeToSelectString = ''), 750);\n this.typeToSelectString += key.toLowerCase();\n const items = this.getItems();\n for (const item of items) {\n const slot = item.shadowRoot?.querySelector('slot:not([name])') as HTMLSlotElement;\n const label = getTextContent(slot).toLowerCase().trim();\n if (label.substring(0, this.typeToSelectString.length) === this.typeToSelectString) {\n item.setFocus();\n break;\n }\n }\n }\n\n private getItemsShown(): number {\n const defaultItemsShown = this.virtualScroll ? DEFAULT_NUMBER_OF_ITEMS_SHOWN_FOR_VIRTUAL_SCROLLING : 0;\n return this.itemsShown ?? defaultItemsShown;\n }\n\n private setupForVirtualScrollingAfterRendering() {\n if (!this.virtualScroll || this.menuWrapper == null) return;\n\n this.eventListeners.add(this.menuWrapper, 'scroll', debounce(this.handleScrolling, this.scrollingDebounce));\n\n // set menu height to proper height once the item is rendered.\n const menuItemHeight = this.menu?.querySelector('six-menu-item')?.clientHeight;\n if (menuItemHeight != null && menuItemHeight > 0) {\n this.sixMenuItemHeight = menuItemHeight;\n }\n }\n\n private getItems(): HTMLSixMenuItemElement[] {\n if (this.menu == null) return [];\n\n if (this.items != null) {\n return this.items.map(mapToMenuItem);\n }\n\n const slot = this.menu.querySelector('slot');\n if (slot == null) return [];\n return [...slot.assignedElements({ flatten: true })].filter(\n (el): el is HTMLSixMenuItemElement => isSIXMenuItemElement(el) && !el.disabled\n );\n }\n\n private getActiveItemIndex() {\n const items = this.getItems();\n const selectedItem = this.getActiveItem();\n if (selectedItem != null) {\n const itemIndex = items.indexOf(selectedItem);\n if (itemIndex > -1) {\n return itemIndex;\n }\n }\n const sixMenuItems = this.extractItemsFromDOM();\n return sixMenuItems.findIndex(isFocusedMenuItem);\n }\n\n private getActiveItem(): HTMLSixMenuItemElement | undefined {\n const activeElement = this.getItems().find((i) => i === document.activeElement);\n if (activeElement != null) {\n return activeElement;\n }\n return this.extractItemsFromDOM()?.find(isFocusedMenuItem);\n }\n\n private extractItemsFromDOM() {\n return Array.from(this.host.shadowRoot?.querySelectorAll('six-menu-item') ?? []);\n }\n\n private setActiveItem(item: HTMLSixMenuItemElement) {\n item?.setFocus();\n }\n\n private handleClick(event: MouseEvent) {\n const target = event.target as HTMLElement;\n const clickedItem = target.closest('six-menu-item');\n if (clickedItem && !clickedItem.disabled) {\n this.sixMenuItemSelected.emit({ name: clickedItem.value, item: clickedItem });\n }\n }\n\n private handleKeyDown(event: KeyboardEvent) {\n // Make a selection when pressing enter\n if (event.key === 'Enter') {\n const activeItem = this.getActiveItem();\n event.preventDefault();\n\n if (activeItem != null) {\n this.sixMenuItemSelected.emit({ name: activeItem.value, item: activeItem });\n }\n }\n\n // Prevent scrolling when space is pressed\n if (event.key === ' ') {\n event.preventDefault();\n }\n\n // Move the selection when pressing down or up\n if (['ArrowDown', 'ArrowUp', 'Home', 'End'].includes(event.key)) {\n const items = this.items === null ? this.getItems() : this.extractItemsFromDOM();\n\n let indexOfActiveItem = this.getActiveItemIndex();\n\n if (items.length > 0) {\n event.preventDefault();\n\n if (event.key === 'ArrowDown') {\n indexOfActiveItem++;\n } else if (event.key === 'ArrowUp') {\n indexOfActiveItem--;\n } else if (event.key === 'Home') {\n indexOfActiveItem = 0;\n } else if (event.key === 'End') {\n indexOfActiveItem = items.length - 1;\n }\n\n if (indexOfActiveItem < 0) indexOfActiveItem = 0;\n if (indexOfActiveItem > items.length - 1) indexOfActiveItem = items.length - 1;\n\n this.setActiveItem(items[indexOfActiveItem]);\n\n return;\n }\n }\n\n void this.typeToSelect(event.key);\n }\n\n private getMenuWrapperStyle() {\n const styles: Partial<StyleDeclaration> = {};\n if (this.getItemsShown() > 0) {\n // calculate the proper height to show the correct number of items\n styles.height = `${(this.getItemsShown() ?? 0) * this.sixMenuItemHeight}px`;\n }\n return {\n ...styles,\n };\n }\n\n private getMenuContainerStyle() {\n const styles: Partial<StyleDeclaration> = {};\n\n if (this.virtualScroll) {\n // calculate height of content are if all items would be rendered so the scrollbar has the proper size\n styles.transform = `translateY(${this.sixMenuItemHeight * this.scrollingIndex}px)`;\n }\n\n return {\n ...styles,\n };\n }\n\n private getScrollbarGhostStyle() {\n const styles: Partial<StyleDeclaration> = {};\n\n if (this.virtualScroll && this.items !== null) {\n styles.height = `${this.items.length * this.sixMenuItemHeight - this.itemSize * this.sixMenuItemHeight}px`;\n }\n\n return {\n ...styles,\n };\n }\n\n private renderItems() {\n if (this.items === undefined || this.items === null) {\n return;\n }\n\n if (!this.virtualScroll) {\n return this.items.map(mapToMenuItem);\n }\n\n return this.items\n .slice(this.scrollingIndex, Math.min(this.items.length, this.itemSize + this.scrollingIndex))\n .map(mapToMenuItem);\n }\n\n render() {\n return (\n <div\n ref={(el) => (this.menuWrapper = el)}\n style={this.getMenuWrapperStyle()}\n part=\"wrapper\"\n class={{\n menu: true,\n 'menu--noshadow': this.removeBoxShadow,\n 'menu__wrapper--scrollable': this.getItemsShown() > 0,\n }}\n >\n <div\n ref={(el) => (this.menu = el)}\n part=\"base\"\n role=\"menu\"\n onClick={this.handleClick}\n onKeyDown={this.handleKeyDown}\n tabIndex={0}\n style={this.getMenuContainerStyle()}\n >\n <slot />\n {this.renderItems()}\n </div>\n {this.virtualScroll && <div style={this.getScrollbarGhostStyle()} />}\n </div>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{r as i,c as s,h as t}from"./p-6153045b.js";import{s as e}from"./p-1f18768a.js";const o=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{display:block;height:100%}.sidebar__container{height:100%;overflow:auto}.sidebar__container.sidebar--open{box-shadow:var(--six-elevation-1dp)}.sidebar__container:not(.sidebar--visible){position:absolute;width:1px;height:1px;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;pointer-events:none;visibility:hidden}.sidebar--left{color:var(--six-sidebar-color);background-color:var(--six-sidebar-background-color);transition:var(--six-transition-medium) margin-left;background-size:300vw 70%;background-position:bottom;background-repeat:no-repeat}.sidebar--right{transition:var(--six-transition-medium) margin-right}.sidebar--open.sidebar--left{margin-right:2px}.sidebar--open.sidebar--right{margin-left:2px}";const n=i=>{var s;return((s=i===null||i===void 0?void 0:i.tagName)===null||s===void 0?void 0:s.toLowerCase())==="six-sidebar-item-group"};const r=class{constructor(t){i(this,t);this.sixShow=s(this,"six-sidebar-show",7);this.sixAfterShow=s(this,"six-sidebar-after-show",7);this.sixHide=s(this,"six-sidebar-hide",7);this.sixAfterHide=s(this,"six-sidebar-after-hide",7);this.sixInitialFocus=s(this,"six-sidebar-initial-focus",7);this.willShow=false;this.willHide=false;this.handleTransitionEnd=i=>{const s=i.target;if(i.type==="transitionend"&&s.classList.contains("sidebar__container")){this.resetTransitionVariables()}};this.closeSiblingDetailsOnShow=i=>{const s=i.target;if(this.sidebar!=null){e(s,this.sidebar)}const t=i=>{var t;let e=s;while(i(e)!=null){e=i(e);if(n(e)){const i=(t=e===null||e===void 0?void 0:e.shadowRoot)===null||t===void 0?void 0:t.querySelector("six-details");if(i!=null){i.open=false}}}};t((i=>i===null||i===void 0?void 0:i.previousElementSibling));t((i=>i===null||i===void 0?void 0:i.nextElementSibling))};this.isVisible=false;this.position="left";this.open=false;this.width="16rem";this.toggled=false}handleOpenChange(){this.open?this.show():this.hide()}componentWillLoad(){if(this.open){void this.show();this.resetTransitionVariables()}}componentDidRender(){this.setupTogglableMenuItems()}disconnectedCallback(){var i;(i=this.sidebar)===null||i===void 0?void 0:i.removeEventListener("six-details-show",this.closeSiblingDetailsOnShow)}setupTogglableMenuItems(){if(!this.toggled||this.sidebar==null)return;this.markAllMenuItemsAsSelectableEmpty();this.sidebar.addEventListener("six-details-show",this.closeSiblingDetailsOnShow)}markAllMenuItemsAsSelectableEmpty(){var i;const s=(i=this.sidebar)===null||i===void 0?void 0:i.querySelector("slot");const t=(s===null||s===void 0?void 0:s.assignedElements())||[];const e=[];while(t.length>0){const i=t.pop();if((i===null||i===void 0?void 0:i.shadowRoot)==null){continue}const s=i.shadowRoot.querySelectorAll("six-details");e.push(...s);const o=Array.from(i.children).filter(n);t.push(...o)}e.forEach((i=>i.selectableEmpty=true))}async toggle(){if(this.willShow||this.willHide){return}if(this.open){await this.hide()}else{await this.show()}}async show(){if(this.willShow){return}const i=this.sixShow.emit();if(i.defaultPrevented){this.open=false;return}this.willShow=true;this.isVisible=true;this.open=true}async hide(){if(this.willHide){return}const i=this.sixHide.emit();if(i.defaultPrevented){this.open=true;return}this.willHide=true;this.open=false}async selectItemByIndex(i){if(this.sidebar==null)return;const s=this.sidebar.querySelector("slot");const t=((s===null||s===void 0?void 0:s.assignedElements())||[]).flatMap((i=>{var s;const t=(s=i.shadowRoot)===null||s===void 0?void 0:s.querySelector("six-details");if(t==null){return[]}return[t]}));if(i<0||i>t.length-1){console.error(`Tried to access sidebar menu item by index, but provided index out of range. Provided index: ${i}`);return}await t[i].show()}async selectItemByName(i){var s,t,e;const o=(s=this.sidebar)===null||s===void 0?void 0:s.querySelector("slot");const n=o===null||o===void 0?void 0:o.assignedElements();if(n==null){return}const r=n.findIndex((s=>(s===null||s===void 0?void 0:s.name)===i));const a=(e=(t=n.at(r))===null||t===void 0?void 0:t.shadowRoot)===null||e===void 0?void 0:e.querySelector("six-details");await(a===null||a===void 0?void 0:a.show())}resetTransitionVariables(){this.isVisible=this.open;this.willShow=false;this.willHide=false;this.open?this.sixAfterShow.emit():this.sixAfterHide.emit()}render(){return t("host",{class:"six-sidebar"},t("div",{class:{sidebar__container:true,"sidebar--visible":this.isVisible,"sidebar--open":this.open,"sidebar--left":this.position==="left","sidebar--right":this.position==="right"},style:{width:this.width,[`margin-${this.position}`]:this.open?"0":`calc(1rem - ${this.width})`},ref:i=>this.sidebar=i,"aria-hidden":this.open?"false":"true",onTransitionEnd:this.handleTransitionEnd},t("slot",null)))}static get watchers(){return{open:["handleOpenChange"]}}};r.style=o;export{r as six_sidebar};
2
- //# sourceMappingURL=p-330a4988.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixSidebarCss","isSidebarItemGroup","node","_a","tagName","toLowerCase","SixSidebar","this","willShow","willHide","handleTransitionEnd","event","target","type","classList","contains","resetTransitionVariables","closeSiblingDetailsOnShow","clickedMenuItem","sidebar","scrollIntoView","closeAllSiblingsBySiblingProperty","getSibling","detailsElement","shadowRoot","querySelector","open","previousElementSibling","nextElementSibling","handleOpenChange","show","hide","componentWillLoad","componentDidRender","setupTogglableMenuItems","disconnectedCallback","removeEventListener","toggled","markAllMenuItemsAsSelectableEmpty","addEventListener","slot","nodes","assignedElements","menuItems","length","pop","menuItemsForCurrentNode","querySelectorAll","push","newItemGroups","Array","from","children","filter","forEach","details","selectableEmpty","toggle","sixShow","emit","defaultPrevented","isVisible","sixHide","selectItemByIndex","index","menuItemsOnRootLevel","flatMap","el","console","error","selectItemByName","value","sidebarItemGroups","indexOfSelectedElement","findIndex","name","selectedItem","_c","_b","at","sixAfterShow","sixAfterHide","render","h","class","sidebar__container","position","style","width","ref","onTransitionEnd"],"sources":["src/components/six-sidebar/six-sidebar.scss?tag=six-sidebar&encapsulation=shadow","src/components/six-sidebar/six-sidebar.tsx"],"sourcesContent":["@import 'src/global/component';\n@import 'src/global/mixins/hidden';\n@import 'src/global/mixins/scrollbar';\n\n:host {\n display: block;\n height: 100%;\n}\n\n.sidebar {\n &__container {\n // scroll\n height: 100%;\n overflow: auto;\n\n &.sidebar--open {\n box-shadow: var(--six-elevation-1dp);\n }\n\n &:not(.sidebar--visible) {\n @include hidden;\n }\n }\n\n &--left {\n color: var(--six-sidebar-color);\n background-color: var(--six-sidebar-background-color);\n // collapse\n transition: var(--six-transition-medium) margin-left;\n // six background\n background-size: 300vw 70%;\n background-position: bottom;\n background-repeat: no-repeat;\n }\n\n &--right {\n // collapse\n transition: var(--six-transition-medium) margin-right;\n }\n\n // if the sidebar is embedded within six-root it cuts-off the border styling, for thus we need to guarante a margin\n &--open {\n &.sidebar--left {\n margin-right: 2px;\n }\n\n &.sidebar--right {\n margin-left: 2px;\n }\n }\n}\n","import { Component, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { EmptyPayload } from '../../utils/types';\nimport { scrollIntoView } from '../../utils/scroll';\n\nconst isSidebarItemGroup = (node?: Element | null): boolean =>\n node?.tagName?.toLowerCase() === 'six-sidebar-item-group';\n\n/**\n * @since 1.0\n * @status stable\n *\n * @slot - Used to define the nested side bar [group] items.\n */\n\n@Component({\n tag: 'six-sidebar',\n styleUrl: 'six-sidebar.scss',\n shadow: true,\n})\nexport class SixSidebar {\n private willShow = false;\n private willHide = false;\n\n private sidebar?: HTMLElement;\n\n @State() isVisible = false;\n\n /** Sidebar position */\n @Prop() position: 'left' | 'right' = 'left';\n\n /** Indicates whether the sidebar is open. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /** Sidebar width */\n @Prop() width = '16rem';\n\n /** Define whether sidebar is toggled meaning only one menu can be open at the same time*/\n @Prop() toggled = false;\n\n /** Emitted when the sidebar opens. Calling `event.preventDefault()` will prevent it from being opened. */\n @Event({ eventName: 'six-sidebar-show' }) sixShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the sidebar opens and all transitions are complete. */\n @Event({ eventName: 'six-sidebar-after-show' }) sixAfterShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the sidebar closes. Calling `event.preventDefault()` will prevent it from being closed. */\n @Event({ eventName: 'six-sidebar-hide' }) sixHide!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the sidebar closes and all transitions are complete. */\n @Event({ eventName: 'six-sidebar-after-hide' }) sixAfterHide!: EventEmitter<EmptyPayload>;\n\n /**\n * Emitted when the sidebar opens and the panel gains focus. Calling `event.preventDefault()` will prevent focus and\n * allow you to set it on a different element in the sidebar, such as an input or button.\n */\n @Event({ eventName: 'six-sidebar-initial-focus' }) sixInitialFocus!: EventEmitter<EmptyPayload>;\n\n @Watch('open')\n handleOpenChange() {\n this.open ? this.show() : this.hide();\n }\n\n private handleTransitionEnd = (event: TransitionEvent) => {\n const target = event.target as HTMLElement;\n\n // Ensure we only emit one event when the target element is no longer visible\n if (event.type === 'transitionend' && target.classList.contains('sidebar__container')) {\n this.resetTransitionVariables();\n }\n };\n\n componentWillLoad() {\n // Show on init if open\n if (this.open) {\n void this.show();\n // if the sidebar is open by default we need to manually reset the\n // transition variables since there will be no transition event\n this.resetTransitionVariables();\n }\n }\n\n componentDidRender() {\n this.setupTogglableMenuItems();\n }\n\n disconnectedCallback() {\n this.sidebar?.removeEventListener('six-details-show', this.closeSiblingDetailsOnShow);\n }\n\n private closeSiblingDetailsOnShow = (event: Event) => {\n const clickedMenuItem = event.target as HTMLElement;\n if (this.sidebar != null) {\n scrollIntoView(clickedMenuItem, this.sidebar);\n }\n\n const closeAllSiblingsBySiblingProperty = (\n getSibling: (node: Element | null | undefined) => Element | null | undefined\n ) => {\n let node: Element | null | undefined = clickedMenuItem;\n while (getSibling(node) != null) {\n node = getSibling(node);\n if (isSidebarItemGroup(node)) {\n const detailsElement = node?.shadowRoot?.querySelector('six-details');\n if (detailsElement != null) {\n detailsElement.open = false;\n }\n }\n }\n };\n\n // close all previous siblings\n closeAllSiblingsBySiblingProperty((node) => node?.previousElementSibling);\n // close all further siblings\n closeAllSiblingsBySiblingProperty((node) => node?.nextElementSibling);\n };\n\n private setupTogglableMenuItems() {\n if (!this.toggled || this.sidebar == null) return;\n this.markAllMenuItemsAsSelectableEmpty();\n this.sidebar.addEventListener('six-details-show', this.closeSiblingDetailsOnShow);\n }\n\n private markAllMenuItemsAsSelectableEmpty() {\n // when you have a toggled menu you also want to close other menu items when you click on an item without children\n // nice benefit this item will then also be highlighted\n const slot = this.sidebar?.querySelector('slot');\n const nodes = slot?.assignedElements() || [];\n\n // since we don't just want to make the top level empty menuItems selectable in toggled mode,\n // but also nested items we need to traverse the whole menu item tree\n const menuItems = [];\n while (nodes.length > 0) {\n const node = nodes.pop();\n if (node?.shadowRoot == null) {\n continue;\n }\n\n // collect six-details in the current shadowDOM\n const menuItemsForCurrentNode = node.shadowRoot.querySelectorAll('six-details');\n menuItems.push(...menuItemsForCurrentNode);\n\n // collect all six-sidebar-item-group children of the current node to afterwards check their shadowDOM too\n const newItemGroups = Array.from(node.children).filter(isSidebarItemGroup);\n nodes.push(...newItemGroups);\n }\n\n menuItems.forEach((details) => (details.selectableEmpty = true));\n }\n\n /** Toggles whether the sidebar should be shown or hidden */\n @Method()\n async toggle() {\n if (this.willShow || this.willHide) {\n return;\n }\n\n if (this.open) {\n await this.hide();\n } else {\n await this.show();\n }\n }\n\n /** Shows the sidebar */\n @Method()\n async show() {\n if (this.willShow) {\n return;\n }\n\n const sixShow = this.sixShow.emit();\n if (sixShow.defaultPrevented) {\n this.open = false;\n return;\n }\n\n this.willShow = true;\n this.isVisible = true;\n this.open = true;\n }\n\n /** Hides the sidebar */\n @Method()\n async hide() {\n if (this.willHide) {\n return;\n }\n\n const sixHide = this.sixHide.emit();\n if (sixHide.defaultPrevented) {\n this.open = true;\n return;\n }\n\n this.willHide = true;\n this.open = false;\n }\n\n /** Allows to select a menu item programmatically by index */\n @Method()\n async selectItemByIndex(index: number) {\n if (this.sidebar == null) return;\n\n const slot = this.sidebar.querySelector('slot');\n const menuItemsOnRootLevel: HTMLSixDetailsElement[] = (slot?.assignedElements() || []).flatMap((el) => {\n const detailsElement = el.shadowRoot?.querySelector('six-details');\n if (detailsElement == null) {\n return [];\n }\n return [detailsElement];\n });\n if (index < 0 || index > menuItemsOnRootLevel.length - 1) {\n console.error(\n `Tried to access sidebar menu item by index, but provided index out of range. Provided index: ${index}`\n );\n return;\n }\n await menuItemsOnRootLevel[index].show();\n }\n\n /** Allows to select a menu item programmatically by name */\n @Method()\n async selectItemByName(value: string) {\n const slot = this.sidebar?.querySelector('slot');\n const sidebarItemGroups = slot?.assignedElements() as HTMLSixSidebarItemGroupElement[];\n if (sidebarItemGroups == null) {\n return;\n }\n\n const indexOfSelectedElement = sidebarItemGroups.findIndex((el) => el?.name === value);\n const selectedItem = sidebarItemGroups.at(indexOfSelectedElement)?.shadowRoot?.querySelector('six-details');\n await selectedItem?.show();\n }\n\n private resetTransitionVariables() {\n this.isVisible = this.open;\n this.willShow = false;\n this.willHide = false;\n this.open ? this.sixAfterShow.emit() : this.sixAfterHide.emit();\n }\n\n render() {\n return (\n <host class=\"six-sidebar\">\n <div\n class={{\n sidebar__container: true,\n 'sidebar--visible': this.isVisible,\n 'sidebar--open': this.open,\n 'sidebar--left': this.position === 'left',\n 'sidebar--right': this.position === 'right',\n }}\n style={{\n width: this.width,\n [`margin-${this.position}`]: this.open ? '0' : `calc(1rem - ${this.width})`,\n }}\n ref={(el) => (this.sidebar = el)}\n aria-hidden={this.open ? 'false' : 'true'}\n onTransitionEnd={this.handleTransitionEnd}\n >\n <slot />\n </div>\n </host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{r,h as i}from"./p-6153045b.js";const o=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{display:block}.menu-divider{border-top:solid var(--six-border-width) var(--six-menu-divider-color);margin:0}";const e=class{constructor(i){r(this,i)}render(){return i("div",{part:"base",class:"menu-divider",role:"separator","aria-hidden":"true"})}};e.style=o;export{e as six_menu_divider};
2
- //# sourceMappingURL=p-346f9557.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixMenuDividerCss","SixMenuDivider","render","h","part","class","role"],"sources":["src/components/six-menu-divider/six-menu-divider.scss?tag=six-menu-divider&encapsulation=shadow","src/components/six-menu-divider/six-menu-divider.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: block;\n}\n\n.menu-divider {\n border-top: solid var(--six-border-width) var(--six-menu-divider-color);\n margin: 0;\n}\n","import { Component, h } from '@stencil/core';\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 * @part base - The component's base wrapper.\n */\n\n@Component({\n tag: 'six-menu-divider',\n styleUrl: 'six-menu-divider.scss',\n shadow: true,\n})\nexport class SixMenuDivider {\n render() {\n return <div part=\"base\" class=\"menu-divider\" role=\"separator\" aria-hidden=\"true\" />;\n }\n}\n"],"mappings":"sCAAA,MAAMA,EAAoB,2N,MCgBbC,EAAc,M,yBACzB,MAAAC,GACE,OAAOC,EAAA,OAAKC,KAAK,OAAOC,MAAM,eAAeC,KAAK,YAAW,cAAa,Q"}
@@ -1,2 +0,0 @@
1
- import{r as s,c as i,h as t}from"./p-6153045b.js";import{D as e,a as h}from"./p-698bb2c8.js";import{E as a}from"./p-7d95def3.js";const o=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{display:block}.search-box{z-index:var(--six-z-index-search-field)}.search-box__icon{cursor:pointer}";const r=class{constructor(t){s(this,t);this.searchFieldChange=i(this,"six-search-field-change",7);this.eventListeners=new a;this.handleInputChange=()=>{if(this.inputElement!=null){this.searchFieldChange.emit({value:this.inputElement.value})}};this.placeholder=undefined;this.debounce=e;this.disabled=false;this.value="";this.clearable=false}handleValueChange(){if(this.inputElement!=null){this.inputElement.value=this.value}}componentDidLoad(){if(this.inputElement==null)return;this.eventListeners.add(this.inputElement,"six-input-input",h(this.handleInputChange,this.debounce));this.eventListeners.add(this.inputElement,"keydown",(s=>{const i=s;if(i.key==="Enter"){this.handleInputChange()}}))}disconnectedCallback(){this.eventListeners.removeAll()}render(){return t("div",{class:"search-box"},t("six-input",{ref:s=>this.inputElement=s,placeholder:this.placeholder,value:this.value,disabled:this.disabled,clearable:this.clearable},t("six-icon",{class:"search-box__icon",slot:"prefix",size:"small",onClick:this.handleInputChange},"search")),t("slot",null))}static get watchers(){return{value:["handleValueChange"]}}};r.style=o;export{r as six_search_field};
2
- //# sourceMappingURL=p-37557787.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r,h as o}from"./p-6153045b.js";const i=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{--height:16px;--track-color:var(--six-progress-track-color);--indicator-color:var(--six-progress-indicator-color);--label-color:var(--six-progress-label-color);display:block}.progress-bar{position:relative;background-color:var(--track-color);height:var(--height);border-radius:var(--sl-border-radius-pill);overflow:hidden}.progress-bar__indicator{height:100%;font-family:var(--six-font-sans);font-size:12px;font-weight:var(--six-font-weight-normal);background-color:var(--indicator-color);color:var(--label-color);text-align:center;line-height:var(--height);white-space:nowrap;overflow:hidden;transition:400ms width, 400ms background-color;user-select:none}.progress-bar--indeterminate .progress-bar__indicator{position:absolute;animation:indeterminate 2.5s infinite cubic-bezier(0.37, 0, 0.63, 1)}@keyframes indeterminate{0%{left:-50%;width:50%}75%,100%{left:100%;width:50%}}";const s=class{constructor(o){r(this,o);this.percentage=0;this.indeterminate=false}render(){return o("div",{part:"base",class:{"progress-bar":true,"progress-bar--indeterminate":this.indeterminate},role:"progressbar","aria-valuemin":"0","aria-valuemax":"100","aria-valuenow":this.indeterminate?null:this.percentage},o("div",{part:"indicator",class:"progress-bar__indicator",style:{width:`${this.percentage}%`}},!this.indeterminate&&o("span",{part:"label",class:"progress-bar__label"},o("slot",null))))}};s.style=i;export{s as six_progress_bar};
2
- //# sourceMappingURL=p-3cc5addb.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as t,c as o,h as r,g as i}from"./p-6153045b.js";import{E as s}from"./p-7d95def3.js";import{F as e}from"./p-d42c2025.js";const l=':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}.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:"*"}.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;color:var(--six-color-danger-800);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}';let a=0;const n=class{constructor(r){t(this,r);this.sixBlur=o(this,"six-switch-blur",7);this.sixChange=o(this,"six-switch-change",7);this.sixFocus=o(this,"six-switch-focus",7);this.switchId=`switch-${++a}`;this.labelId=`switch-label-${a}`;this.errorTextId=`input-error-text-${a}`;this.eventListeners=new s;this.handleClick=()=>{if(this.inputElement!=null){this.checked=this.inputElement.checked;this.sixChange.emit(this.checked)}};this.handleBlur=()=>{this.hasFocus=false;this.sixBlur.emit(this.checked)};this.handleFocus=()=>{this.hasFocus=true;this.sixFocus.emit()};this.handleKeyDown=t=>{if(t.key==="ArrowLeft"){t.preventDefault();this.checked=false;this.sixChange.emit(this.checked)}if(t.key==="ArrowRight"){t.preventDefault();this.checked=true;this.sixChange.emit(this.checked)}};this.handleMouseDown=t=>{var o;t.preventDefault();(o=this.inputElement)===null||o===void 0?void 0:o.focus()};this.hasFocus=false;this.name="";this.value="on";this.disabled=false;this.required=false;this.checked=false;this.label="";this.errorText="";this.invalid=false}handleCheckedChange(){if(this.inputElement!=null){this.inputElement.checked=this.checked;this.checked=this.inputElement.checked}}connectedCallback(){this.eventListeners.forward("six-switch-change","change",this.host);this.eventListeners.forward("six-switch-blur","blur",this.host);this.eventListeners.forward("six-switch-focus","focus",this.host)}disconnectedCallback(){this.eventListeners.removeAll()}async setFocus(t){var o;(o=this.inputElement)===null||o===void 0?void 0:o.focus(t)}async removeFocus(){var t;(t=this.inputElement)===null||t===void 0?void 0:t.blur()}render(){return r(e,{inputId:this.switchId,label:this.label,labelId:this.labelId,hasLabelSlot:false,errorTextId:this.errorTextId,errorText:this.errorText,size:"medium",disabled:this.disabled,required:this.required,displayError:this.invalid},r("label",{part:"base",htmlFor:this.switchId,class:{switch:true,"switch--checked":this.checked,"switch--disabled":this.disabled,"switch--focused":this.hasFocus},onMouseDown:this.handleMouseDown},r("span",{part:"control",class:"switch__control"},r("span",{part:"thumb",class:"switch__thumb"}),r("input",{ref:t=>this.inputElement=t,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})),r("span",{part:"label",id:this.labelId,class:"switch__label"},r("slot",null))))}get host(){return i(this)}static get watchers(){return{checked:["handleCheckedChange"]}}};n.style=l;export{n as six_switch};
2
- //# sourceMappingURL=p-3d9de119.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixSwitchCss","id","SixSwitch","this","switchId","labelId","errorTextId","eventListeners","EventListeners","handleClick","inputElement","checked","sixChange","emit","handleBlur","hasFocus","sixBlur","handleFocus","sixFocus","handleKeyDown","event","key","preventDefault","handleMouseDown","_a","focus","handleCheckedChange","connectedCallback","forward","host","disconnectedCallback","removeAll","setFocus","options","removeFocus","blur","render","h","FormControl","inputId","label","hasLabelSlot","errorText","size","disabled","required","displayError","invalid","part","htmlFor","class","switch","onMouseDown","ref","el","type","name","value","role","onClick","onBlur","onFocus","onKeyDown"],"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';\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 *\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\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 = '';\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 @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.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.eventListeners.removeAll();\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 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"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{r as i,c as t,h as s,g as r}from"./p-6153045b.js";const e=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{display:contents;margin:0}.alert{position:relative;display:flex;align-items:stretch;background-color:var(--six-color-white);border:solid 1px var(--six-color-web-rock-200);border-top-width:3px;border-radius:var(--six-border-radius-medium);box-shadow:var(--box-shadow);font-family:var(--six-font-sans);font-size:var(--six-font-size-small);font-weight:var(--six-font-weight-normal);line-height:1.6;color:var(--six-color-web-rock-700);opacity:0;transform:scale(0.9);transition:var(--six-transition-medium) opacity ease, var(--six-transition-medium) transform ease;margin:inherit}.alert:not(.alert--visible){position:absolute;width:1px;height:1px;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;pointer-events:none;visibility:hidden}.alert--open{opacity:1;transform:none}.alert__icon{flex:0 0 auto;display:flex;align-items:center;font-size:var(--six-font-size-large)}.alert__icon ::slotted(*){margin-left:var(--six-spacing-large)}.alert--primary{border-top-color:var(--six-color-web-rock-900)}.alert--primary .alert__icon{color:var(--six-color-web-rock-900)}.alert--success{border-top-color:var(--six-color-success-600)}.alert--success .alert__icon{color:var(--six-color-success-600)}.alert--info{border-top-color:var(--six-color-action-500)}.alert--info .alert__icon{color:var(--six-color-action-500)}.alert--warning{border-top-color:var(--six-color-warning-800)}.alert--warning .alert__icon{color:var(--six-color-warning-800)}.alert--danger{border-top-color:var(--six-color-danger-900)}.alert--danger .alert__icon{color:var(--six-color-danger-900)}.alert__message{flex:1 1 auto;padding:var(--six-spacing-large);overflow:hidden}.alert__close{flex:0 0 auto;display:flex;align-items:center;font-size:var(--six-font-size-large);padding-right:var(--six-spacing-medium)}";const a=Object.assign(document.createElement("div"),{className:"six-toast-stack"});const o=class{constructor(s){i(this,s);this.sixShow=t(this,"six-alert-show",7);this.sixAfterShow=t(this,"six-alert-after-show",7);this.sixHide=t(this,"six-alert-hide",7);this.sixAfterHide=t(this,"six-alert-after-hide",7);this.handleCloseClick=()=>{this.hide()};this.handleMouseMove=()=>{this.restartAutoHide()};this.handleTransitionEnd=i=>{const t=i.target;if(i.propertyName==="opacity"&&t.classList.contains("alert")){this.isVisible=this.open;this.open?this.sixAfterShow.emit():this.sixAfterHide.emit()}};this.isVisible=false;this.open=false;this.closable=false;this.type="primary";this.duration=Infinity}handleOpenChange(){this.open?this.show():this.hide()}handleDurationChange(){this.restartAutoHide()}componentWillLoad(){if(this.open){this.show()}}async show(){if(this.isVisible){return}const i=this.sixShow.emit();if(i.defaultPrevented){this.open=false;return}this.isVisible=true;this.open=true;if(this.duration<Infinity){this.autoHideTimeout=window.setTimeout((()=>this.hide()),this.duration)}}async hide(){if(!this.isVisible){return}const i=this.sixHide.emit();if(i.defaultPrevented){this.open=true;return}clearTimeout(this.autoHideTimeout);this.isVisible=false;this.open=false}async toast(){return new Promise((i=>{if(!a.parentElement){document.body.append(a)}a.append(this.host);requestAnimationFrame((()=>this.show()));this.host.addEventListener("six-alert-after-hide",(()=>{this.host.remove();i();if(a.querySelector("six-alert")===null){a.remove()}}),{once:true})}))}restartAutoHide(){clearTimeout(this.autoHideTimeout);if(this.open&&this.duration<Infinity){this.autoHideTimeout=window.setTimeout((()=>this.hide()),this.duration)}}render(){return s("div",{part:"base",class:{alert:true,"alert--open":this.open,"alert--visible":this.isVisible,"alert--closable":this.closable,"alert--primary":this.type==="primary","alert--success":this.type==="success","alert--info":this.type==="info","alert--warning":this.type==="warning","alert--danger":this.type==="danger"},role:"alert","aria-live":"assertive","aria-atomic":"true","aria-hidden":this.open?"false":"true",onMouseMove:this.handleMouseMove,onTransitionEnd:this.handleTransitionEnd},s("span",{part:"icon",class:"alert__icon"},s("slot",{name:"icon"})),s("span",{part:"message",class:"alert__message"},s("slot",null)),this.closable&&s("span",{class:"alert__close"},s("six-icon-button",{name:"clear",exportparts:"base:close-button",onClick:this.handleCloseClick})))}get host(){return r(this)}static get watchers(){return{open:["handleOpenChange"],duration:["handleDurationChange"]}}};o.style=e;export{o as six_alert};
2
- //# sourceMappingURL=p-411ed539.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixAlertCss","toastStack","Object","assign","document","createElement","className","SixAlert","this","handleCloseClick","hide","handleMouseMove","restartAutoHide","handleTransitionEnd","event","target","propertyName","classList","contains","isVisible","open","sixAfterShow","emit","sixAfterHide","Infinity","handleOpenChange","show","handleDurationChange","componentWillLoad","sixShow","defaultPrevented","duration","autoHideTimeout","window","setTimeout","sixHide","clearTimeout","toast","Promise","resolve","parentElement","body","append","host","requestAnimationFrame","addEventListener","remove","querySelector","once","render","h","part","class","alert","closable","type","role","onMouseMove","onTransitionEnd","name","exportparts","onClick"],"sources":["src/components/six-alert/six-alert.scss?tag=six-alert&encapsulation=shadow","src/components/six-alert/six-alert.tsx"],"sourcesContent":["@import 'src/global/component';\n@import 'src/global/mixins/hidden';\n\n/**\n * @prop --box-shadow: The alert's box shadow.\n */\n:host {\n display: contents;\n\n // For better DX, we'll reset the margin here so the base part can inherit it\n margin: 0;\n}\n\n.alert {\n position: relative;\n display: flex;\n align-items: stretch;\n background-color: var(--six-color-white);\n border: solid 1px var(--six-color-web-rock-200);\n border-top-width: 3px;\n border-radius: var(--six-border-radius-medium);\n box-shadow: var(--box-shadow);\n font-family: var(--six-font-sans);\n font-size: var(--six-font-size-small);\n font-weight: var(--six-font-weight-normal);\n line-height: 1.6;\n color: var(--six-color-web-rock-700);\n opacity: 0;\n transform: scale(0.9);\n transition: var(--six-transition-medium) opacity ease, var(--six-transition-medium) transform ease;\n margin: inherit;\n\n &:not(.alert--visible) {\n @include hidden;\n }\n}\n\n.alert--open {\n opacity: 1;\n transform: none;\n}\n\n.alert__icon {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n font-size: var(--six-font-size-large);\n\n ::slotted(*) {\n margin-left: var(--six-spacing-large);\n }\n}\n\n.alert--primary {\n border-top-color: var(--six-color-web-rock-900);\n\n .alert__icon {\n color: var(--six-color-web-rock-900);\n }\n}\n\n.alert--success {\n border-top-color: var(--six-color-success-600);\n\n .alert__icon {\n color: var(--six-color-success-600);\n }\n}\n\n.alert--info {\n border-top-color: var(--six-color-action-500);\n\n .alert__icon {\n color: var(--six-color-action-500);\n }\n}\n\n.alert--warning {\n border-top-color: var(--six-color-warning-800);\n\n .alert__icon {\n color: var(--six-color-warning-800);\n }\n}\n\n.alert--danger {\n border-top-color: var(--six-color-danger-900);\n\n .alert__icon {\n color: var(--six-color-danger-900);\n }\n}\n\n.alert__message {\n flex: 1 1 auto;\n padding: var(--six-spacing-large);\n overflow: hidden;\n}\n\n.alert__close {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n font-size: var(--six-font-size-large);\n padding-right: var(--six-spacing-medium);\n}\n","import { Component, Element, Event, EventEmitter, Method, Prop, State, Watch, h } from '@stencil/core';\nimport { EmptyPayload } from '../../utils/types';\n\nconst toastStack = Object.assign(document.createElement('div'), { className: 'six-toast-stack' });\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 alert's content.\n * @slot icon - An icon to show in the alert.\n *\n * @part base - The component's base wrapper.\n * @part icon - The container that wraps the alert icon.\n * @part message - The alert message.\n * @part close-button - The close button.\n */\n\n@Component({\n tag: 'six-alert',\n styleUrl: 'six-alert.scss',\n shadow: true,\n})\nexport class SixAlert {\n private autoHideTimeout?: number;\n\n @Element() host!: HTMLSixAlertElement;\n\n @State() isVisible = false;\n\n /** Indicates whether or not the alert is open. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /** Set to true to make the alert closable. */\n @Prop({ reflect: true }) closable = false;\n\n /** The type of alert. */\n @Prop({ reflect: true }) type: 'primary' | 'success' | 'info' | 'warning' | 'danger' = 'primary';\n\n /**\n * The length of time, in milliseconds, the alert will show before closing itself. If the user interacts with the\n * alert before it closes (e.g. moves the mouse over it), the timer will restart.\n */\n @Prop() duration = Infinity;\n\n @Watch('open')\n handleOpenChange() {\n this.open ? this.show() : this.hide();\n }\n\n @Watch('duration')\n handleDurationChange() {\n this.restartAutoHide();\n }\n\n /** Emitted when the alert opens. Calling `event.preventDefault()` will prevent it from being opened. */\n @Event({ eventName: 'six-alert-show' }) sixShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the alert opens and all transitions are complete. */\n @Event({ eventName: 'six-alert-after-show' }) sixAfterShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the alert closes. Calling `event.preventDefault()` will prevent it from being closed. */\n @Event({ eventName: 'six-alert-hide' }) sixHide!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the alert closes and all transitions are complete. */\n @Event({ eventName: 'six-alert-after-hide' }) sixAfterHide!: EventEmitter<EmptyPayload>;\n\n componentWillLoad() {\n // Show on init if open\n if (this.open) {\n this.show();\n }\n }\n\n /** Shows the alert. */\n @Method()\n async show() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (this.isVisible) {\n return;\n }\n\n const sixShow = this.sixShow.emit();\n if (sixShow.defaultPrevented) {\n this.open = false;\n return;\n }\n\n this.isVisible = true;\n this.open = true;\n\n if (this.duration < Infinity) {\n this.autoHideTimeout = window.setTimeout(() => this.hide(), this.duration);\n }\n }\n\n /** Hides the alert */\n @Method()\n async hide() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (!this.isVisible) {\n return;\n }\n\n const sixHide = this.sixHide.emit();\n if (sixHide.defaultPrevented) {\n this.open = true;\n return;\n }\n\n clearTimeout(this.autoHideTimeout);\n this.isVisible = false;\n this.open = false;\n }\n\n /**\n * Displays the alert as a toast notification. This will move the alert out of its position in the DOM and, when\n * dismissed, it will be removed from the DOM completely. By storing a reference to the alert, you can reuse it by\n * calling this method again. The returned promise will resolve after the alert is hidden.\n */\n @Method()\n async toast() {\n return new Promise<void>((resolve) => {\n if (!toastStack.parentElement) {\n document.body.append(toastStack);\n }\n\n toastStack.append(this.host);\n requestAnimationFrame(() => this.show());\n\n this.host.addEventListener(\n 'six-alert-after-hide',\n () => {\n this.host.remove();\n resolve();\n\n // Remove the toast stack from the DOM when there are no more alerts\n if (toastStack.querySelector('six-alert') === null) {\n toastStack.remove();\n }\n },\n { once: true }\n );\n });\n }\n\n private handleCloseClick = () => {\n this.hide();\n };\n\n private handleMouseMove = () => {\n this.restartAutoHide();\n };\n\n private handleTransitionEnd = (event: TransitionEvent) => {\n const target = event.target as HTMLElement;\n\n // Ensure we only emit one event when the target element is no longer visible\n if (event.propertyName === 'opacity' && target.classList.contains('alert')) {\n this.isVisible = this.open;\n this.open ? this.sixAfterShow.emit() : this.sixAfterHide.emit();\n }\n };\n\n private restartAutoHide() {\n clearTimeout(this.autoHideTimeout);\n if (this.open && this.duration < Infinity) {\n this.autoHideTimeout = window.setTimeout(() => this.hide(), this.duration);\n }\n }\n\n render() {\n return (\n <div\n part=\"base\"\n class={{\n alert: true,\n 'alert--open': this.open,\n 'alert--visible': this.isVisible,\n 'alert--closable': this.closable,\n 'alert--primary': this.type === 'primary',\n 'alert--success': this.type === 'success',\n 'alert--info': this.type === 'info',\n 'alert--warning': this.type === 'warning',\n 'alert--danger': this.type === 'danger',\n }}\n role=\"alert\"\n aria-live=\"assertive\"\n aria-atomic=\"true\"\n aria-hidden={this.open ? 'false' : 'true'}\n onMouseMove={this.handleMouseMove}\n onTransitionEnd={this.handleTransitionEnd}\n >\n <span part=\"icon\" class=\"alert__icon\">\n <slot name=\"icon\" />\n </span>\n\n <span part=\"message\" class=\"alert__message\">\n <slot />\n </span>\n\n {this.closable && (\n <span class=\"alert__close\">\n <six-icon-button\n name=\"clear\"\n exportparts=\"base:close-button\"\n onClick={this.handleCloseClick}\n ></six-icon-button>\n </span>\n )}\n </div>\n );\n }\n}\n"],"mappings":"yDAAA,MAAMA,EAAc,w1DCGpB,MAAMC,EAAaC,OAAOC,OAAOC,SAASC,cAAc,OAAQ,CAAEC,UAAW,oB,MAsBhEC,EAAQ,M,+MA2HXC,KAAAC,iBAAmB,KACzBD,KAAKE,MAAM,EAGLF,KAAAG,gBAAkB,KACxBH,KAAKI,iBAAiB,EAGhBJ,KAAAK,oBAAuBC,IAC7B,MAAMC,EAASD,EAAMC,OAGrB,GAAID,EAAME,eAAiB,WAAaD,EAAOE,UAAUC,SAAS,SAAU,CAC1EV,KAAKW,UAAYX,KAAKY,KACtBZ,KAAKY,KAAOZ,KAAKa,aAAaC,OAASd,KAAKe,aAAaD,M,kBApIxC,M,UAG0B,M,cAGX,M,UAGmD,U,cAMpEE,Q,CAGnB,gBAAAC,GACEjB,KAAKY,KAAOZ,KAAKkB,OAASlB,KAAKE,M,CAIjC,oBAAAiB,GACEnB,KAAKI,iB,CAeP,iBAAAgB,GAEE,GAAIpB,KAAKY,KAAM,CACbZ,KAAKkB,M,EAMT,UAAMA,GAEJ,GAAIlB,KAAKW,UAAW,CAClB,M,CAGF,MAAMU,EAAUrB,KAAKqB,QAAQP,OAC7B,GAAIO,EAAQC,iBAAkB,CAC5BtB,KAAKY,KAAO,MACZ,M,CAGFZ,KAAKW,UAAY,KACjBX,KAAKY,KAAO,KAEZ,GAAIZ,KAAKuB,SAAWP,SAAU,CAC5BhB,KAAKwB,gBAAkBC,OAAOC,YAAW,IAAM1B,KAAKE,QAAQF,KAAKuB,S,EAMrE,UAAMrB,GAEJ,IAAKF,KAAKW,UAAW,CACnB,M,CAGF,MAAMgB,EAAU3B,KAAK2B,QAAQb,OAC7B,GAAIa,EAAQL,iBAAkB,CAC5BtB,KAAKY,KAAO,KACZ,M,CAGFgB,aAAa5B,KAAKwB,iBAClBxB,KAAKW,UAAY,MACjBX,KAAKY,KAAO,K,CASd,WAAMiB,GACJ,OAAO,IAAIC,SAAeC,IACxB,IAAKtC,EAAWuC,cAAe,CAC7BpC,SAASqC,KAAKC,OAAOzC,E,CAGvBA,EAAWyC,OAAOlC,KAAKmC,MACvBC,uBAAsB,IAAMpC,KAAKkB,SAEjClB,KAAKmC,KAAKE,iBACR,wBACA,KACErC,KAAKmC,KAAKG,SACVP,IAGA,GAAItC,EAAW8C,cAAc,eAAiB,KAAM,CAClD9C,EAAW6C,Q,IAGf,CAAEE,KAAM,MACT,G,CAsBG,eAAApC,GACNwB,aAAa5B,KAAKwB,iBAClB,GAAIxB,KAAKY,MAAQZ,KAAKuB,SAAWP,SAAU,CACzChB,KAAKwB,gBAAkBC,OAAOC,YAAW,IAAM1B,KAAKE,QAAQF,KAAKuB,S,EAIrE,MAAAkB,GACE,OACEC,EAAA,OACEC,KAAK,OACLC,MAAO,CACLC,MAAO,KACP,cAAe7C,KAAKY,KACpB,iBAAkBZ,KAAKW,UACvB,kBAAmBX,KAAK8C,SACxB,iBAAkB9C,KAAK+C,OAAS,UAChC,iBAAkB/C,KAAK+C,OAAS,UAChC,cAAe/C,KAAK+C,OAAS,OAC7B,iBAAkB/C,KAAK+C,OAAS,UAChC,gBAAiB/C,KAAK+C,OAAS,UAEjCC,KAAK,QAAO,YACF,YAAW,cACT,OAAM,cACLhD,KAAKY,KAAO,QAAU,OACnCqC,YAAajD,KAAKG,gBAClB+C,gBAAiBlD,KAAKK,qBAEtBqC,EAAA,QAAMC,KAAK,OAAOC,MAAM,eACtBF,EAAA,QAAMS,KAAK,UAGbT,EAAA,QAAMC,KAAK,UAAUC,MAAM,kBACzBF,EAAA,cAGD1C,KAAK8C,UACJJ,EAAA,QAAME,MAAM,gBACVF,EAAA,mBACES,KAAK,QACLC,YAAY,oBACZC,QAASrD,KAAKC,oB"}
@@ -1,2 +0,0 @@
1
- import{r as t,c as o,h as r,g as i}from"./p-6153045b.js";import{s,g as a}from"./p-1f18768a.js";import{f as e}from"./p-5654e4c7.js";const l=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{--tabs-border-color:var(--six-tab-border-color);display:block}.tab-group{display:flex;border:solid 1px transparent;border-radius:0}.tab-group .tab-group__tabs{display:flex;position:relative}.tab-group .tab-group__active-tab-indicator{position:absolute;transition:var(--six-transition-fast) transform ease, var(--six-transition-fast) width ease}.tab-group:not(.focus-visible) ::slotted(six-tab){--focus-ring:none}.tab-group--has-scroll-controls .tab-group__nav-container{position:relative;padding:0 var(--six-spacing-x-large)}.tab-group__scroll-button{display:flex;align-items:center;justify-content:center;position:absolute;top:0;bottom:0;width:var(--six-spacing-x-large)}.tab-group__scroll-button--left{left:0}.tab-group__scroll-button--right{right:0}.tab-group--top{flex-direction:column}.tab-group--top .tab-group__nav-container{order:1}.tab-group--top .tab-group__nav{display:flex;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.tab-group--top .tab-group__nav::-webkit-scrollbar{width:0;height:0}.tab-group--top .tab-group__tabs{flex:1 1 auto;position:relative;flex-direction:row;border-bottom:solid var(--six-tab-border-width) var(--tabs-border-color)}.tab-group--top .tab-group__active-tab-indicator{bottom:-2px;border-bottom:solid var(--six-tab-border-width-active) var(--six-tab-border-color-active)}.tab-group--top .tab-group__body{order:2}.tab-group--bottom{flex-direction:column}.tab-group--bottom .tab-group__nav-container{order:2}.tab-group--bottom .tab-group__nav{display:flex;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.tab-group--bottom .tab-group__nav::-webkit-scrollbar{width:0;height:0}.tab-group--bottom .tab-group__tabs{flex:1 1 auto;position:relative;flex-direction:row;border-top:solid var(--six-tab-border-width) var(--tabs-border-color)}.tab-group--bottom .tab-group__active-tab-indicator{top:-2px;border-top:solid var(--six-tab-border-width-active) var(--six-tab-border-color-active)}.tab-group--bottom .tab-group__body{order:1}.tab-group--left{flex-direction:row}.tab-group--left .tab-group__nav-container{order:1}.tab-group--left .tab-group__tabs{flex:0 0 auto;flex-direction:column;border-right:solid var(--six-tab-border-width) var(--tabs-border-color)}.tab-group--left .tab-group__active-tab-indicator{right:-2px;border-right:solid var(--six-tab-border-width-active) var(--six-tab-border-color-active)}.tab-group--left .tab-group__body{flex:1 1 auto;order:2}.tab-group--right{flex-direction:row}.tab-group--right .tab-group__nav-container{order:2}.tab-group--right .tab-group__tabs{flex:0 0 auto;flex-direction:column;border-left:solid var(--six-tab-border-width) var(--tabs-border-color)}.tab-group--right .tab-group__active-tab-indicator{left:-2px;border-left:solid var(--six-tab-border-width-active) var(--six-tab-border-color-active)}.tab-group--right .tab-group__body{flex:1 1 auto;order:1}";const n=class{constructor(r){t(this,r);this.sixTabShow=o(this,"six-tab-show",7);this.sixTabHide=o(this,"six-tab-hide",7);this.handleClick=t=>{const o=t.target;const r=o.closest("six-tab");const i=r===null||r===void 0?void 0:r.closest("six-tab-group");if(i!==this.host){return false}if(r!=null){this.setActiveTab(r)}};this.handleKeyDown=t=>{if(this.nav==null)return;const o=t.target;const r=o.closest("six-tab");const i=r===null||r===void 0?void 0:r.closest("six-tab-group");if(i!==this.host){return false}if(["Enter"," "].includes(t.key)){if(r!=null){this.setActiveTab(r);t.preventDefault()}}if(["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End"].includes(t.key)){const o=document.activeElement;if(o&&o.tagName.toLowerCase()==="six-tab"){const r=this.getAllTabs();let i=r.indexOf(o);if(t.key==="Home"){i=0}else if(t.key==="End"){i=r.length-1}else if(t.key==="ArrowLeft"){i=Math.max(0,i-1)}else if(t.key==="ArrowRight"){i=Math.min(r.length-1,i+1)}r[i].setFocus({preventScroll:true});if(["top","bottom"].includes(this.placement)){s(r[i],this.nav,"horizontal")}t.preventDefault()}}};this.handleScrollLeft=()=>{if(this.nav==null)return;this.nav.scroll({left:this.nav.scrollLeft-this.nav.clientWidth,behavior:"smooth"})};this.handleScrollRight=()=>{if(this.nav==null)return;this.nav.scroll({left:this.nav.scrollLeft+this.nav.clientWidth,behavior:"smooth"})};this.syncActiveTabIndicator=()=>{if(this.activeTabIndicator==null||this.nav==null)return;const t=this.getActiveTab();if(t!=null){this.activeTabIndicator.style.display="block"}else{this.activeTabIndicator.style.display="none";return}const o=t.clientWidth;const r=t.clientHeight;const i=a(t,this.nav);const s=i.top+this.nav.scrollTop;const e=i.left+this.nav.scrollLeft;switch(this.placement){case"top":case"bottom":this.activeTabIndicator.style.width=`${o}px`;this.activeTabIndicator.style.height="";this.activeTabIndicator.style.transform=`translateX(${e}px)`;break;case"left":case"right":this.activeTabIndicator.style.width="";this.activeTabIndicator.style.height=`${r}px`;this.activeTabIndicator.style.transform=`translateY(${s}px)`;break}};this.hasScrollControls=false;this.placement="top";this.noScrollControls=false}handlePlacementChange(){this.syncActiveTabIndicator()}handleNoScrollControlsChange(){this.updateScrollControls()}componentDidLoad(){if(this.tabGroup==null||this.nav==null)return;const t=new IntersectionObserver(((t,o)=>{if(t[0].intersectionRatio>0){this.setAriaLabels();this.setActiveTab(this.getActiveTab()||this.getAllTabs()[0],false);o.unobserve(t[0].target)}}));t.observe(this.host);e.observe(this.tabGroup);this.resizeObserver=new ResizeObserver((()=>this.updateScrollControls()));this.resizeObserver.observe(this.nav);requestAnimationFrame((()=>this.updateScrollControls()));this.mutationObserver=new MutationObserver((t=>{if(t.some((t=>{var o;return!["aria-labelledby","aria-controls"].includes((o=t.attributeName)!==null&&o!==void 0?o:"")}))){setTimeout((()=>this.setAriaLabels()))}}));this.mutationObserver.observe(this.host,{attributes:true,childList:true,subtree:true})}disconnectedCallback(){if(this.mutationObserver==null||this.tabGroup==null||this.nav==null||this.resizeObserver==null){return}this.mutationObserver.disconnect();e.unobserve(this.tabGroup);this.resizeObserver.unobserve(this.nav)}async show(t){const o=this.getAllTabs();const r=o.find((o=>o.panel===t));if(r!=null){this.setActiveTab(r)}}getAllTabs(t=false){var o;const r=(o=this.tabs)===null||o===void 0?void 0:o.querySelector("slot");if(r==null)return[];return[...r.assignedElements()].filter((o=>t?o.tagName.toLowerCase()==="six-tab":o.tagName.toLowerCase()==="six-tab"&&!o.disabled))}getAllPanels(){var t;const o=(t=this.body)===null||t===void 0?void 0:t.querySelector("slot");if(o==null)return[];return[...o.assignedElements()].filter((t=>t.tagName.toLowerCase()==="six-tab-panel"))}getActiveTab(){return this.getAllTabs().find((t=>t.active))}updateScrollControls(){if(this.nav==null)return;this.hasScrollControls=this.noScrollControls?false:["top","bottom"].includes(this.placement)&&this.nav.scrollWidth>this.nav.clientWidth}setActiveTab(t,o=true){if(this.nav==null)return;if(t!=null&&t!==this.activeTab&&!t.disabled){const r=this.activeTab;this.activeTab=t;this.getAllTabs().map((t=>t.active=t===this.activeTab));this.getAllPanels().map((t=>{var o;return t.active=t.name===((o=this.activeTab)===null||o===void 0?void 0:o.panel)}));this.syncActiveTabIndicator();if(["top","bottom"].includes(this.placement)){s(this.activeTab,this.nav,"horizontal")}if(o){if(r!=null){this.sixTabHide.emit({name:r.panel})}this.sixTabShow.emit({name:this.activeTab.panel})}}}setAriaLabels(){const t=this.getAllTabs();const o=this.getAllPanels();t.map((t=>{var r,i;const s=o.find((o=>o.name===t.panel));if(s!=null){t.setAttribute("aria-controls",(r=s.getAttribute("id"))!==null&&r!==void 0?r:"");s.setAttribute("aria-labelledby",(i=t.getAttribute("id"))!==null&&i!==void 0?i:"")}}))}render(){return r("div",{part:"base",ref:t=>this.tabGroup=t,class:{"tab-group":true,"tab-group--top":this.placement==="top","tab-group--bottom":this.placement==="bottom","tab-group--left":this.placement==="left","tab-group--right":this.placement==="right","tab-group--has-scroll-controls":this.hasScrollControls},onClick:this.handleClick,onKeyDown:this.handleKeyDown},r("div",{class:"tab-group__nav-container"},this.hasScrollControls&&r("six-icon-button",{class:"tab-group__scroll-button tab-group__scroll-button--left",exportparts:"base:scroll-button",name:"chevron_left",onClick:this.handleScrollLeft}),r("div",{ref:t=>this.nav=t,key:"nav",part:"nav",class:"tab-group__nav"},r("div",{ref:t=>this.tabs=t,part:"tabs",class:"tab-group__tabs",role:"tablist"},r("div",{ref:t=>this.activeTabIndicator=t,part:"active-tab-indicator",class:"tab-group__active-tab-indicator"}),r("slot",{name:"nav",onSlotchange:this.syncActiveTabIndicator}))),this.hasScrollControls&&r("six-icon-button",{class:"tab-group__scroll-button tab-group__scroll-button--right",exportparts:"base:scroll-button",name:"chevron_right",onClick:this.handleScrollRight})),r("div",{ref:t=>this.body=t,part:"body",class:"tab-group__body"},r("slot",{onSlotchange:this.syncActiveTabIndicator})))}get host(){return i(this)}static get watchers(){return{placement:["handlePlacementChange"],noScrollControls:["handleNoScrollControlsChange"]}}};n.style=l;export{n as six_tab_group};
2
- //# sourceMappingURL=p-4705a51e.entry.js.map