@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
@@ -2,11 +2,7 @@ import { h } from "@stencil/core";
2
2
  import { getNearestTabbableElement } from "../../utils/tabbable";
3
3
  import Popover from "../../utils/popover";
4
4
  import { EventListeners } from "../../utils/event-listeners";
5
- import { getSlotChildren } from "../../utils/slot";
6
5
  import { debounce, DEFAULT_DEBOUNCE_FAST } from "../../utils/execution-control";
7
- const isTagName = (name) => (el) => (el === null || el === void 0 ? void 0 : el.tagName.toLowerCase()) === name.toLowerCase();
8
- const isSixMenu = isTagName('six-menu');
9
- const isSixMenuItem = isTagName('six-menu-item');
10
6
  let id = 0;
11
7
  /**
12
8
  * @since 1.0
@@ -15,6 +11,7 @@ let id = 0;
15
11
  * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.
16
12
  *
17
13
  * @slot trigger - The dropdown's trigger, usually a `<six-button>` element.
14
+ * @slot dropdown-footer - The dropdown's footer area.
18
15
  * @slot - The dropdown's content.
19
16
  *
20
17
  * @part base - The component's base wrapper.
@@ -22,922 +19,1015 @@ let id = 0;
22
19
  * @part panel - The panel that gets shown when the dropdown is open.
23
20
  */
24
21
  export class SixDropdown {
25
- constructor() {
26
- this.componentId = `dropdown-${++id}`;
27
- this.isVisible = false;
28
- this.hasBeenInitialized = false;
29
- this.eventListeners = new EventListeners();
30
- this.getMenuItems = () => {
31
- if (this.filteredOptions.length > 0) {
32
- return this.filteredOptions.map((option) => h("six-menu-item", { value: option.value }, option.label));
33
- }
34
- if (this.panel == null)
35
- return [];
36
- const [panel] = getSlotChildren(this.panel);
37
- // the menu-items can be in a slot e.g. in six-select or direct children of the panel
38
- return getSlotChildren(panel) || Array.from(panel.querySelectorAll('six-menu-item'));
39
- };
40
- this.handleFilterInputChange = () => {
41
- var _a, _b;
42
- if (this.filterInputElement == null)
43
- return;
44
- const lowerCaseFilterTerm = ((_b = (_a = this.filterInputElement.value) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === null || _b === void 0 ? void 0 : _b.trim()) || '';
45
- if (this.filteredOptions.length > 0) {
46
- this.handleFilteringForAttributeItems(lowerCaseFilterTerm);
47
- }
48
- else {
49
- this.handleFilteringForSlotItems(lowerCaseFilterTerm);
50
- }
51
- this.sixAutoFilter.emit({ filterValue: lowerCaseFilterTerm });
52
- };
53
- this.handleDocumentKeyDown = (event) => {
54
- var _a;
55
- const keyboardEvent = event;
56
- // Close when escape is pressed
57
- if (keyboardEvent.key === 'Escape') {
58
- void this.hide();
59
- this.focusOnTrigger();
60
- return;
61
- }
62
- if (this.filterInputElement === ((_a = this.host.shadowRoot) === null || _a === void 0 ? void 0 : _a.activeElement)) {
63
- if (keyboardEvent.key === 'ArrowDown') {
64
- const item = this.getMenuItems().find((item) => item.style.display !== 'none');
65
- if (item != null) {
66
- item.setFocus();
67
- }
68
- }
69
- }
70
- // Handle tabbing
71
- if (keyboardEvent.key === 'Tab') {
72
- // Tabbing within an open menu should close the dropdown and refocus the trigger
73
- if (this.open && document.activeElement != null && isSixMenuItem(document.activeElement)) {
74
- keyboardEvent.preventDefault();
75
- void this.hide();
76
- this.focusOnTrigger();
77
- return;
78
- }
79
- // Tabbing outside the containing element closes the panel
80
- //
81
- // If the dropdown is used within a shadow DOM, we need to obtain the activeElement within that shadowRoot,
82
- // otherwise `document.activeElement` will only return the name of the parent shadow DOM element.
83
- setTimeout(() => {
84
- var _a, _b;
85
- const activeElement = this.container.getRootNode() instanceof ShadowRoot
86
- ? (_b = (_a = document.activeElement) === null || _a === void 0 ? void 0 : _a.shadowRoot) === null || _b === void 0 ? void 0 : _b.activeElement
87
- : document.activeElement;
88
- if ((activeElement === null || activeElement === void 0 ? void 0 : activeElement.closest(this.container.tagName.toLowerCase())) !== this.container) {
89
- void this.hide();
90
- return;
91
- }
92
- });
93
- }
94
- };
95
- this.handleDocumentMouseDown = (event) => {
96
- // Close when clicking outside the containing element
97
- const path = event.composedPath();
98
- if (!path.includes(this.container)) {
99
- void this.hide();
100
- return;
101
- }
102
- };
103
- this.handlePanelSelect = (event) => {
104
- const target = event.target;
105
- // Hide the dropdown when a menu item is selected
106
- if (this.closeOnSelect && isSixMenu(target)) {
107
- void this.hide();
108
- this.focusOnTrigger();
109
- }
110
- };
111
- this.handleTriggerClick = () => {
112
- this.open ? this.hide() : this.show();
113
- };
114
- this.handleTriggerKeyDown = (event) => {
115
- // Close when escape or tab is pressed
116
- if (event.key === 'Escape') {
117
- this.focusOnTrigger();
118
- void this.hide();
119
- return;
120
- }
121
- // When spacebar/enter is pressed, show the panel but don't focus on the menu. This let's the user press the same
122
- // key again to hide the menu in case they don't want to make a selection.
123
- if (!this.disableHideOnEnterAndSpace && [' ', 'Enter'].includes(event.key)) {
124
- event.preventDefault();
125
- this.open ? void this.hide() : void this.show();
126
- return;
127
- }
128
- const menu = this.getMenu();
129
- // When up/down is pressed, we make the assumption that the user is familiar with the menu and plans to make a
130
- // selection. Rather than toggle the panel, we focus on the menu (if one exists) and activate the first item for
131
- // faster navigation.
132
- if (['ArrowDown', 'ArrowUp'].includes(event.key)) {
133
- event.preventDefault();
134
- // Show the menu if it's not already open
135
- if (!this.open) {
136
- void this.show();
137
- }
138
- if (menu == null) {
139
- return;
140
- }
141
- const menuItems = [...menu.querySelectorAll('six-menu-item')];
142
- const firstMenuItem = menuItems.at(0);
143
- const lastMenuItem = menuItems.at(menuItems.length - 1);
144
- // Focus on a menu item
145
- if (event.key === 'ArrowDown' && firstMenuItem != null) {
146
- firstMenuItem.setFocus();
147
- return;
148
- }
149
- if (event.key === 'ArrowUp' && lastMenuItem != null) {
150
- lastMenuItem.setFocus();
151
- return;
152
- }
153
- }
154
- // Other keys bring focus to the menu and initiate type-to-select behavior
155
- const ignoredKeys = ['Tab', 'Shift', 'Meta', 'Ctrl', 'Alt'];
156
- if (this.open && menu != null && !ignoredKeys.includes(event.key)) {
157
- void menu.typeToSelect(event.key);
158
- return;
159
- }
160
- };
161
- this.handleTriggerKeyUp = (event) => {
162
- // Prevent space from triggering a click event in Firefox
163
- if (event.key === ' ') {
164
- event.preventDefault();
165
- }
166
- };
167
- this.handleTriggerSlotChange = () => {
168
- this.updateAccessibleTrigger();
169
- };
170
- this.handleDropdownScroll = () => {
171
- if (this.panel == null)
172
- return;
173
- this.sixScroll.emit({
174
- scrollHeight: this.panel.scrollHeight,
175
- scrollTop: this.panel.scrollTop,
176
- scrollbarHeight: this.panel.offsetHeight * (this.panel.offsetHeight / this.panel.scrollHeight),
177
- scrollRatio: this.panel.scrollTop / (this.panel.scrollHeight - this.panel.clientHeight),
178
- });
179
- };
180
- this.open = false;
181
- this.placement = 'bottom-start';
182
- this.closeOnSelect = true;
183
- this.distance = 0;
184
- this.skidding = 0;
185
- this.hoist = false;
186
- this.containingElement = undefined;
187
- this.filter = false;
188
- this.asyncFilter = false;
189
- this.filterPlaceholder = 'Filter...';
190
- this.autofocusFilter = true;
191
- this.filterDebounce = DEFAULT_DEBOUNCE_FAST;
192
- this.disableHideOnEnterAndSpace = false;
193
- this.options = [];
194
- this.virtualScroll = false;
195
- this.filteredOptions = [];
196
- }
197
- get hasFilterEnabled() {
198
- return this.filter || this.asyncFilter;
199
- }
200
- get container() {
201
- return this.containingElement || this.host;
202
- }
203
- handleOpenChange() {
204
- this.open ? this.show() : this.hide();
205
- this.updateAccessibleTrigger();
206
- }
207
- handlePopoverOptionsChange() {
208
- if (this.popover == null)
209
- return;
210
- this.popover.setOptions({
211
- strategy: this.hoist ? 'fixed' : 'absolute',
212
- placement: this.placement,
213
- distance: this.distance,
214
- skidding: this.skidding,
215
- });
216
- }
217
- handleOptionsChange() {
218
- if (Array.isArray(this.options)) {
219
- this.filteredOptions = [...this.options];
22
+ constructor() {
23
+ this.componentId = `dropdown-${++id}`;
24
+ this.isVisible = false;
25
+ this.resizeObserver = new ResizeObserver(debounce(() => this.updatePanelPosition(), 100));
26
+ this.eventListeners = new EventListeners();
27
+ this.getMenuItems = () => {
28
+ var _a, _b, _c;
29
+ if (this.options.length > 0) {
30
+ return {
31
+ sixMenuItems: this.renderedOptions.map((option) => (h("six-menu-item", { value: option.value }, option.label))),
32
+ selectionContainerItems: [],
33
+ };
34
+ }
35
+ if (this.panel == null)
36
+ return { sixMenuItems: [], selectionContainerItems: [] };
37
+ // Relies on the implementation of six-select. Its dropdown slot contains two elements,
38
+ // one for the selected menu items, and one for the other items.
39
+ const selectionContainer = (_a = this.panelSlot) === null || _a === void 0 ? void 0 : _a.assignedElements({ flatten: true }).filter(isSelectionContainer).at(0);
40
+ const sixMenuElement = (_b = this.panelSlot) === null || _b === void 0 ? void 0 : _b.assignedElements({ flatten: true }).filter(isSixMenu).at(0);
41
+ const selectionContainerItems = (selectionContainer === null || selectionContainer === void 0 ? void 0 : selectionContainer.querySelectorAll('six-menu-item')) || [];
42
+ const sixMenuItems = (((_c = sixMenuElement === null || sixMenuElement === void 0 ? void 0 : sixMenuElement.querySelector('slot')) === null || _c === void 0 ? void 0 : _c.assignedElements().filter(isSixMenuItem)) ||
43
+ []);
44
+ if (selectionContainerItems.length > 0 || sixMenuItems.length > 0) {
45
+ return { sixMenuItems, selectionContainerItems: [...selectionContainerItems] };
46
+ }
47
+ else {
48
+ return {
49
+ sixMenuItems: sixMenuElement ? Array.from(sixMenuElement.querySelectorAll('six-menu-item')) : [],
50
+ selectionContainerItems: [],
51
+ };
52
+ }
53
+ };
54
+ this.handleDocumentKeyDown = (event) => {
55
+ var _a;
56
+ const keyboardEvent = event;
57
+ // Close when escape is pressed
58
+ if (keyboardEvent.key === 'Escape') {
59
+ void this.hide();
60
+ this.focusOnTrigger();
61
+ return;
62
+ }
63
+ if (this.filterInputElement === ((_a = this.host.shadowRoot) === null || _a === void 0 ? void 0 : _a.activeElement)) {
64
+ if (keyboardEvent.key === 'ArrowDown') {
65
+ const { sixMenuItems, selectionContainerItems } = this.getMenuItems();
66
+ const item = [...selectionContainerItems, ...sixMenuItems].find((item) => item.style.display !== 'none');
67
+ if (item != null) {
68
+ item.setFocus();
69
+ }
70
+ }
71
+ }
72
+ // Handle tabbing
73
+ if (keyboardEvent.key === 'Tab') {
74
+ // Tabbing within an open menu should close the dropdown and refocus the trigger
75
+ if (this.open && document.activeElement != null && isSixMenuItem(document.activeElement)) {
76
+ keyboardEvent.preventDefault();
77
+ void this.hide();
78
+ this.focusOnTrigger();
79
+ return;
80
+ }
81
+ // Tabbing outside the containing element closes the panel
82
+ //
83
+ // If the dropdown is used within a shadow DOM, we need to obtain the activeElement within that shadowRoot,
84
+ // otherwise `document.activeElement` will only return the name of the parent shadow DOM element.
85
+ setTimeout(() => {
86
+ var _a, _b;
87
+ const activeElement = this.container.getRootNode() instanceof ShadowRoot
88
+ ? (_b = (_a = document.activeElement) === null || _a === void 0 ? void 0 : _a.shadowRoot) === null || _b === void 0 ? void 0 : _b.activeElement
89
+ : document.activeElement;
90
+ if ((activeElement === null || activeElement === void 0 ? void 0 : activeElement.closest(this.container.tagName.toLowerCase())) !== this.container) {
91
+ void this.hide();
92
+ return;
93
+ }
94
+ });
95
+ }
96
+ };
97
+ this.handleDocumentMouseDown = (event) => {
98
+ // Close when clicking outside the containing element
99
+ const path = event.composedPath();
100
+ if (!path.includes(this.container)) {
101
+ void this.hide();
102
+ return;
103
+ }
104
+ };
105
+ this.handlePanelSelect = (event) => {
106
+ const target = event.target;
107
+ // Hide the dropdown when a menu item is selected
108
+ if (this.closeOnSelect && isSixMenu(target)) {
109
+ void this.hide();
110
+ this.focusOnTrigger();
111
+ }
112
+ };
113
+ this.handleTriggerClick = () => {
114
+ this.open ? this.hide() : this.show();
115
+ };
116
+ this.handleTriggerKeyDown = (event) => {
117
+ // Close when escape or tab is pressed
118
+ if (event.key === 'Escape') {
119
+ this.focusOnTrigger();
120
+ void this.hide();
121
+ return;
122
+ }
123
+ // When spacebar/enter is pressed, show the panel but don't focus on the menu. This let's the user press the same
124
+ // key again to hide the menu in case they don't want to make a selection.
125
+ if (!this.disableHideOnEnterAndSpace && [' ', 'Enter'].includes(event.key)) {
126
+ event.preventDefault();
127
+ this.open ? void this.hide() : void this.show();
128
+ return;
129
+ }
130
+ const menu = this.getMenu();
131
+ // When up/down is pressed, we make the assumption that the user is familiar with the menu and plans to make a
132
+ // selection. Rather than toggle the panel, we focus on the menu (if one exists) and activate the first item for
133
+ // faster navigation.
134
+ if (['ArrowDown', 'ArrowUp'].includes(event.key)) {
135
+ event.preventDefault();
136
+ // Show the menu if it's not already open
137
+ if (!this.open) {
138
+ void this.show();
139
+ }
140
+ if (menu == null) {
141
+ return;
142
+ }
143
+ const menuItems = [...menu.querySelectorAll('six-menu-item')];
144
+ const firstMenuItem = menuItems.at(0);
145
+ const lastMenuItem = menuItems.at(menuItems.length - 1);
146
+ // Focus on a menu item
147
+ if (event.key === 'ArrowDown' && firstMenuItem != null) {
148
+ firstMenuItem.setFocus();
149
+ return;
150
+ }
151
+ if (event.key === 'ArrowUp' && lastMenuItem != null) {
152
+ lastMenuItem.setFocus();
153
+ return;
154
+ }
155
+ }
156
+ // Other keys bring focus to the menu and initiate type-to-select behavior
157
+ const ignoredKeys = ['Tab', 'Shift', 'Meta', 'Ctrl', 'Alt'];
158
+ if (this.open && menu != null && !ignoredKeys.includes(event.key)) {
159
+ void menu.typeToSelect(event.key);
160
+ return;
161
+ }
162
+ };
163
+ this.handleTriggerKeyUp = (event) => {
164
+ // Prevent space from triggering a click event in Firefox
165
+ if (event.key === ' ') {
166
+ event.preventDefault();
167
+ }
168
+ };
169
+ this.handleTriggerSlotChange = () => {
170
+ this.updateAccessibleTrigger();
171
+ };
172
+ this.handleDropdownScroll = () => {
173
+ if (this.scrollPanel == null)
174
+ return;
175
+ this.sixScroll.emit({
176
+ scrollHeight: this.scrollPanel.scrollHeight,
177
+ scrollTop: this.scrollPanel.scrollTop,
178
+ scrollbarHeight: this.scrollPanel.offsetHeight * (this.scrollPanel.offsetHeight / this.scrollPanel.scrollHeight),
179
+ scrollRatio: this.scrollPanel.scrollTop / (this.scrollPanel.scrollHeight - this.scrollPanel.clientHeight),
180
+ });
181
+ };
182
+ this.open = false;
183
+ this.placement = 'bottom-start';
184
+ this.closeOnSelect = true;
185
+ this.distance = 4;
186
+ this.skidding = 0;
187
+ this.hoist = false;
188
+ this.containingElement = undefined;
189
+ this.filter = false;
190
+ this.asyncFilter = false;
191
+ this.filterPlaceholder = 'Filter...';
192
+ this.autofocusFilter = true;
193
+ this.filterDebounce = 0;
194
+ this.disableHideOnEnterAndSpace = false;
195
+ this.options = [];
196
+ this.virtualScroll = false;
197
+ this.matchTriggerWidth = false;
198
+ this.renderedOptions = [];
220
199
  }
221
- }
222
- connectedCallback() {
223
- if (this.virtualScroll && this.options === null) {
224
- console.error('Options must be defined when using virtual scrolling');
200
+ get filterEnabled() {
201
+ return this.filter || this.asyncFilter;
225
202
  }
226
- if (Array.isArray(this.options)) {
227
- this.filteredOptions = [...this.options];
203
+ get container() {
204
+ return this.containingElement || this.host;
228
205
  }
229
- if (this.hasBeenInitialized && this.popover == null) {
230
- // there was a weird bug when using six-dropdown inside an ag-grid filter. When closing the ag-grid filter
231
- // disconnectedCallback() is executed. However, since componentDidLoad() will not be rerendered the popover had
232
- // no longer a connected transitionEnd callback to the dropdown. To fix this, we have this sanity check here,
233
- // to re-initialize the popover in case the component has already been initialized but the popover is undefined.
234
- this.initializePopover();
206
+ handleOpenChange() {
207
+ this.open ? this.show() : this.hide();
208
+ this.updateAccessibleTrigger();
235
209
  }
236
- }
237
- componentDidLoad() {
238
- this.hasBeenInitialized = true;
239
- this.initializePopover();
240
- // Show on init if open
241
- if (this.open) {
242
- void this.show();
210
+ handlePopoverOptionsChange() {
211
+ if (this.popover == null)
212
+ return;
213
+ this.popover.setOptions({
214
+ strategy: this.hoist ? 'fixed' : 'absolute',
215
+ placement: this.placement,
216
+ distance: this.distance,
217
+ skidding: this.skidding,
218
+ });
243
219
  }
244
- if (this.filter) {
245
- this.setupFiltering(this.handleFilterInputChange);
220
+ handleOptionsChange() {
221
+ this.validateOptions();
246
222
  }
247
- else if (this.asyncFilter) {
248
- this.setupFiltering(() => { var _a, _b; return this.sixAsyncFilterFired.emit({ filterValue: (_b = (_a = this.filterInputElement) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : '' }); });
223
+ validateOptions() {
224
+ if (!Array.isArray(this.options)) {
225
+ this.options = [];
226
+ }
227
+ if (this.virtualScroll && this.options.length === 0) {
228
+ console.error('Options must be defined when using virtual scrolling');
229
+ }
230
+ this.renderedOptions = [...this.options];
249
231
  }
250
- }
251
- initializePopover() {
252
- if (this.trigger == null || this.positioner == null)
253
- return;
254
- const onAfterHide = () => {
255
- if (this.filter && this.filterInputElement != null) {
256
- this.filterInputElement.value = '';
257
- if (this.filteredOptions.length > 0) {
258
- this.filteredOptions = [...this.options];
232
+ componentWillLoad() {
233
+ this.validateOptions();
234
+ if (this.asyncFilter) {
235
+ this.filterDebounce = DEFAULT_DEBOUNCE_FAST;
259
236
  }
260
- else {
261
- const menuItems = this.getMenuItems();
262
- menuItems.forEach((item) => (item.style.display = 'unset'));
237
+ }
238
+ componentDidLoad() {
239
+ this.init();
240
+ if (this.open) {
241
+ void this.show();
263
242
  }
264
- }
265
- this.sixAfterHide.emit();
266
- };
267
- const onAfterShow = async () => {
268
- var _a;
269
- if (this.hasFilterEnabled && this.autofocusFilter) {
270
- // if dropdown filter is enabled we should autofocus the search field
271
- await ((_a = this.filterInputElement) === null || _a === void 0 ? void 0 : _a.setFocus());
272
- }
273
- this.sixAfterShow.emit();
274
- };
275
- const onTransitionEnd = () => {
276
- if (!this.open && this.panel != null) {
277
- this.panel.scrollTop = 0;
278
- }
279
- };
280
- this.popover = new Popover(this.trigger, this.positioner, {
281
- strategy: this.hoist ? 'fixed' : 'absolute',
282
- placement: this.placement,
283
- distance: this.distance,
284
- skidding: this.skidding,
285
- transitionElement: this.panel,
286
- onAfterHide,
287
- onAfterShow,
288
- onTransitionEnd,
289
- });
290
- }
291
- setupFiltering(callback) {
292
- if (this.filterInputElement != null) {
293
- this.eventListeners.add(this.filterInputElement, 'six-input-input', debounce(callback, this.filterDebounce));
294
243
  }
295
- }
296
- handleFilteringForAttributeItems(lowerCaseFilterTerm) {
297
- if (lowerCaseFilterTerm === '' && Array.isArray(this.options)) {
298
- this.filteredOptions = [...this.options];
299
- return;
244
+ connectedCallback() {
245
+ this.init();
300
246
  }
301
- this.filteredOptions = this.options.filter((option) => {
302
- var _a, _b, _c, _d;
303
- return (option.label && ((_b = (_a = String(option.label)) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === null || _b === void 0 ? void 0 : _b.includes(lowerCaseFilterTerm))) ||
304
- (option.value && ((_d = (_c = String(option.value)) === null || _c === void 0 ? void 0 : _c.toLowerCase()) === null || _d === void 0 ? void 0 : _d.includes(lowerCaseFilterTerm)));
305
- });
306
- }
307
- handleFilteringForSlotItems(lowerCaseFilterTerm) {
308
- const menuItems = this.getMenuItems();
309
- menuItems.forEach(async (menuItem) => {
310
- var _a, _b, _c, _d;
311
- // hide all elements which don't contain the entered substring
312
- const elementContainsFilterTerm = ((_b = (_a = menuItem === null || menuItem === void 0 ? void 0 : menuItem.value) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === null || _b === void 0 ? void 0 : _b.includes(lowerCaseFilterTerm)) ||
313
- ((_d = (_c = (await (menuItem === null || menuItem === void 0 ? void 0 : menuItem.getTextLabel()))) === null || _c === void 0 ? void 0 : _c.toLowerCase()) === null || _d === void 0 ? void 0 : _d.includes(lowerCaseFilterTerm));
314
- menuItem.style.display = elementContainsFilterTerm ? 'unset' : 'none';
315
- });
316
- }
317
- disconnectedCallback() {
318
- var _a;
319
- this.eventListeners.removeAll();
320
- void this.hide();
321
- (_a = this.popover) === null || _a === void 0 ? void 0 : _a.destroy();
322
- this.popover = undefined;
323
- }
324
- /** Shows the dropdown panel */
325
- async show() {
326
- // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher
327
- if (this.isVisible || this.popover == null || this.panel == null) {
328
- return;
247
+ init() {
248
+ this.initPopover();
249
+ // listen to filter
250
+ const filterInputElement = this.filterInputElement;
251
+ if (filterInputElement != null) {
252
+ this.eventListeners.add(filterInputElement, 'six-input-input', debounce(() => {
253
+ var _a;
254
+ const filterValue = (_a = filterInputElement.value) !== null && _a !== void 0 ? _a : '';
255
+ if (this.filter) {
256
+ this.applyFilter(filterValue);
257
+ }
258
+ this.emitFilterEvents(filterValue);
259
+ }, this.filterDebounce));
260
+ }
329
261
  }
330
- const sixShow = this.sixShow.emit();
331
- if (sixShow.defaultPrevented) {
332
- this.open = false;
333
- return;
262
+ applyFilter(filterTerm) {
263
+ var _a;
264
+ const lowerCaseFilterTerm = ((_a = filterTerm.toLowerCase()) === null || _a === void 0 ? void 0 : _a.trim()) || '';
265
+ if (this.options.length > 0) {
266
+ this.renderedOptions = this.options.filter((option) => {
267
+ var _a, _b, _c, _d;
268
+ return (option.label && ((_b = (_a = String(option.label)) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === null || _b === void 0 ? void 0 : _b.includes(lowerCaseFilterTerm))) ||
269
+ (option.value && ((_d = (_c = String(option.value)) === null || _c === void 0 ? void 0 : _c.toLowerCase()) === null || _d === void 0 ? void 0 : _d.includes(lowerCaseFilterTerm)));
270
+ });
271
+ }
272
+ else {
273
+ const { selectionContainerItems, sixMenuItems } = this.getMenuItems();
274
+ const selectionContainerValues = selectionContainerItems.map((s) => s.value);
275
+ // Filter items in selection container
276
+ selectionContainerItems.forEach(async (menuItem) => {
277
+ menuItem.style.display = (await containsFilterTerm(menuItem, lowerCaseFilterTerm)) ? 'unset' : 'none';
278
+ });
279
+ // Filter other items. Always hide items which contained in the selection container.
280
+ sixMenuItems.forEach(async (menuItem) => {
281
+ menuItem.style.display =
282
+ (await containsFilterTerm(menuItem, lowerCaseFilterTerm)) &&
283
+ !selectionContainerValues.includes(menuItem.value)
284
+ ? 'unset'
285
+ : 'none';
286
+ });
287
+ }
334
288
  }
335
- this.eventListeners.add(this.panel, 'six-menu-item-selected', this.handlePanelSelect);
336
- this.eventListeners.add(document, 'keydown', this.handleDocumentKeyDown);
337
- this.eventListeners.add(document, 'mousedown', this.handleDocumentMouseDown);
338
- this.isVisible = true;
339
- this.open = true;
340
- this.popover.show();
341
- }
342
- /** Hides the dropdown panel */
343
- async hide() {
344
- // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher
345
- if (!this.isVisible || this.panel == null || this.popover == null) {
346
- return;
289
+ resetFilter() {
290
+ if (this.filterInputElement != null) {
291
+ this.filterInputElement.value = '';
292
+ this.emitFilterEvents('');
293
+ }
294
+ if (this.options.length > 0) {
295
+ this.renderedOptions = [...this.options];
296
+ }
297
+ else {
298
+ const { selectionContainerItems, sixMenuItems } = this.getMenuItems();
299
+ [...selectionContainerItems, ...sixMenuItems].forEach((item) => (item.style.display = 'unset'));
300
+ }
347
301
  }
348
- const sixHide = this.sixHide.emit();
349
- if (sixHide.defaultPrevented) {
350
- this.open = true;
351
- return;
302
+ emitFilterEvents(filterValue) {
303
+ if (this.filter) {
304
+ this.sixAutoFilter.emit({ filterValue });
305
+ }
306
+ else if (this.asyncFilter) {
307
+ this.sixAsyncFilterFired.emit({ filterValue });
308
+ }
352
309
  }
353
- this.eventListeners.remove(this.panel, 'six-menu-item-selected', this.handlePanelSelect);
354
- this.eventListeners.remove(document, 'keydown', this.handleDocumentKeyDown);
355
- this.eventListeners.remove(document, 'mousedown', this.handleDocumentMouseDown);
356
- this.isVisible = false;
357
- this.open = false;
358
- this.popover.hide();
359
- }
360
- focusOnTrigger() {
361
- if (this.trigger == null)
362
- return;
363
- const [trigger] = getSlotChildren(this.trigger);
364
- if (trigger != null) {
365
- if (typeof trigger.setFocus === 'function') {
366
- trigger.setFocus();
367
- }
368
- else if (typeof trigger.focus === 'function') {
369
- trigger.focus();
370
- }
310
+ initPopover() {
311
+ if (this.trigger == null || this.positioner == null)
312
+ return;
313
+ this.popover = new Popover(this.trigger, this.positioner, {
314
+ strategy: this.hoist ? 'fixed' : 'absolute',
315
+ placement: this.placement,
316
+ distance: this.distance,
317
+ skidding: this.skidding,
318
+ transitionElement: this.panel,
319
+ onAfterHide: () => {
320
+ if (this.filterEnabled) {
321
+ this.resetFilter();
322
+ }
323
+ this.sixAfterHide.emit();
324
+ },
325
+ onAfterShow: async () => {
326
+ this.sixAfterShow.emit();
327
+ },
328
+ onTransitionEnd: () => {
329
+ if (!this.open && this.scrollPanel != null) {
330
+ this.scrollPanel.scrollTop = 0;
331
+ }
332
+ },
333
+ });
371
334
  }
372
- }
373
- getMenu() {
374
- if (this.panel == null)
375
- return;
376
- return getSlotChildren(this.panel).filter(isSixMenu).at(0);
377
- }
378
- /**
379
- * Instructs the dropdown menu to reposition. Useful when the position or size of the trigger changes when the menu
380
- * is activated.
381
- */
382
- async reposition() {
383
- if (!this.open || this.popover == null) {
384
- return;
335
+ disconnectedCallback() {
336
+ var _a;
337
+ this.resizeObserver.disconnect();
338
+ this.eventListeners.removeAll();
339
+ void this.hide();
340
+ (_a = this.popover) === null || _a === void 0 ? void 0 : _a.destroy();
341
+ this.popover = undefined;
385
342
  }
386
- this.popover.reposition();
387
- }
388
- //
389
- // Slotted triggers can be arbitrary content, but we need to link them to the dropdown panel with `aria-haspopup` and
390
- // `aria-expanded`. These must be applied to the "accessible trigger" (the tabbable portion of the trigger element
391
- // that gets slotted in) so screen readers will understand them. The accessible trigger could be the slotted element,
392
- // a child of the slotted element, or an element in the slotted element's shadow root.
393
- //
394
- // For example, the accessible trigger of an <sl-button> is a <button> located inside its shadow root.
395
- //
396
- // To determine this, we assume the first tabbable element in the trigger slot is the "accessible trigger."
397
- //
398
- updateAccessibleTrigger() {
399
- if (this.trigger == null)
400
- return;
401
- const accessibleTrigger = getSlotChildren(this.trigger).map(getNearestTabbableElement).at(0);
402
- if (accessibleTrigger != null) {
403
- accessibleTrigger.setAttribute('aria-haspopup', 'true');
404
- accessibleTrigger.setAttribute('aria-expanded', this.open ? 'true' : 'false');
343
+ /** Shows the dropdown panel */
344
+ async show() {
345
+ // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher
346
+ if (this.isVisible || this.popover == null || this.panel == null) {
347
+ return;
348
+ }
349
+ const sixShow = this.sixShow.emit();
350
+ if (sixShow.defaultPrevented) {
351
+ this.open = false;
352
+ return;
353
+ }
354
+ this.eventListeners.add(this.panel, 'six-menu-item-selected', this.handlePanelSelect);
355
+ this.eventListeners.add(document, 'keydown', this.handleDocumentKeyDown);
356
+ this.eventListeners.add(document, 'mousedown', this.handleDocumentMouseDown);
357
+ this.isVisible = true;
358
+ this.open = true;
359
+ if (this.trigger != null) {
360
+ this.resizeObserver.observe(this.trigger);
361
+ }
362
+ this.updatePanelPosition();
363
+ this.popover.show();
364
+ if (this.filterEnabled && this.autofocusFilter) {
365
+ requestAnimationFrame(() => {
366
+ var _a;
367
+ (_a = this.filterInputElement) === null || _a === void 0 ? void 0 : _a.setFocus();
368
+ });
369
+ }
405
370
  }
406
- }
407
- render() {
408
- return (h("div", { part: "base", id: this.componentId, class: {
409
- dropdown: true,
410
- 'dropdown--open': this.open,
411
- } }, h("span", { part: "trigger", class: "dropdown__trigger", ref: (el) => (this.trigger = el), onClick: this.handleTriggerClick, onKeyDown: this.handleTriggerKeyDown, onKeyUp: this.handleTriggerKeyUp }, h("slot", { name: "trigger", onSlotchange: this.handleTriggerSlotChange })), h("div", { ref: (el) => (this.positioner = el), class: {
412
- dropdown__positioner: true,
413
- dropdown__positioner__filtered: (this.filter || this.asyncFilter) && !this.hoist,
414
- } }, this.hasFilterEnabled && (h("six-input", { class: {
415
- 'filter-hidden': !this.open,
416
- }, "aria-hidden": this.open ? 'false' : 'true', ref: (el) => (this.filterInputElement = el), placeholder: this.filterPlaceholder })), h("div", { ref: (el) => (this.panel = el), part: "panel", class: "dropdown__panel", role: "menu", "aria-hidden": this.open ? 'false' : 'true', "aria-labelledby": this.componentId, onScroll: this.handleDropdownScroll }, h("slot", null), this.filteredOptions.length > 0 && (h("six-menu", { part: "menu", items: this.filteredOptions, virtualScroll: this.virtualScroll }))))));
417
- }
418
- static get is() { return "six-dropdown"; }
419
- static get encapsulation() { return "shadow"; }
420
- static get originalStyleUrls() {
421
- return {
422
- "$": ["six-dropdown.scss"]
423
- };
424
- }
425
- static get styleUrls() {
426
- return {
427
- "$": ["six-dropdown.css"]
428
- };
429
- }
430
- static get properties() {
431
- return {
432
- "open": {
433
- "type": "boolean",
434
- "mutable": true,
435
- "complexType": {
436
- "original": "boolean",
437
- "resolved": "boolean",
438
- "references": {}
439
- },
440
- "required": false,
441
- "optional": false,
442
- "docs": {
443
- "tags": [],
444
- "text": "Indicates whether the dropdown is open. You can use this in lieu of the show/hide methods."
445
- },
446
- "attribute": "open",
447
- "reflect": true,
448
- "defaultValue": "false"
449
- },
450
- "placement": {
451
- "type": "string",
452
- "mutable": false,
453
- "complexType": {
454
- "original": "| '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'",
455
- "resolved": "\"bottom\" | \"bottom-end\" | \"bottom-start\" | \"left\" | \"left-end\" | \"left-start\" | \"right\" | \"right-end\" | \"right-start\" | \"top\" | \"top-end\" | \"top-start\"",
456
- "references": {}
457
- },
458
- "required": false,
459
- "optional": false,
460
- "docs": {
461
- "tags": [],
462
- "text": "The preferred placement of the dropdown panel. Note that the actual placement may vary as needed to keep the panel\ninside the viewport."
463
- },
464
- "attribute": "placement",
465
- "reflect": false,
466
- "defaultValue": "'bottom-start'"
467
- },
468
- "closeOnSelect": {
469
- "type": "boolean",
470
- "mutable": false,
471
- "complexType": {
472
- "original": "boolean",
473
- "resolved": "boolean",
474
- "references": {}
475
- },
476
- "required": false,
477
- "optional": false,
478
- "docs": {
479
- "tags": [],
480
- "text": "Determines whether the dropdown should hide when a menu item is selected."
481
- },
482
- "attribute": "close-on-select",
483
- "reflect": false,
484
- "defaultValue": "true"
485
- },
486
- "distance": {
487
- "type": "number",
488
- "mutable": false,
489
- "complexType": {
490
- "original": "number",
491
- "resolved": "number",
492
- "references": {}
493
- },
494
- "required": false,
495
- "optional": false,
496
- "docs": {
497
- "tags": [],
498
- "text": "The distance in pixels from which to offset the panel away from its trigger."
499
- },
500
- "attribute": "distance",
501
- "reflect": false,
502
- "defaultValue": "0"
503
- },
504
- "skidding": {
505
- "type": "number",
506
- "mutable": false,
507
- "complexType": {
508
- "original": "number",
509
- "resolved": "number",
510
- "references": {}
511
- },
512
- "required": false,
513
- "optional": false,
514
- "docs": {
515
- "tags": [],
516
- "text": "The distance in pixels from which to offset the panel along its trigger."
517
- },
518
- "attribute": "skidding",
519
- "reflect": false,
520
- "defaultValue": "0"
521
- },
522
- "hoist": {
523
- "type": "boolean",
524
- "mutable": false,
525
- "complexType": {
526
- "original": "boolean",
527
- "resolved": "boolean",
528
- "references": {}
529
- },
530
- "required": false,
531
- "optional": false,
532
- "docs": {
533
- "tags": [],
534
- "text": "Enable this option to prevent the panel from being clipped when the component is placed inside a container with\n`overflow: auto|scroll`."
535
- },
536
- "attribute": "hoist",
537
- "reflect": false,
538
- "defaultValue": "false"
539
- },
540
- "containingElement": {
541
- "type": "unknown",
542
- "mutable": false,
543
- "complexType": {
544
- "original": "HTMLElement",
545
- "resolved": "HTMLElement | undefined",
546
- "references": {
547
- "HTMLElement": {
548
- "location": "global",
549
- "id": "global::HTMLElement"
550
- }
551
- }
552
- },
553
- "required": false,
554
- "optional": true,
555
- "docs": {
556
- "tags": [],
557
- "text": "The dropdown will close when the user interacts outside of this element (e.g. clicking)."
371
+ /**
372
+ * Set min width of dropdown panel to the width of the trigger element
373
+ */
374
+ updatePanelPosition() {
375
+ if (!this.open) {
376
+ return;
558
377
  }
559
- },
560
- "filter": {
561
- "type": "boolean",
562
- "mutable": false,
563
- "complexType": {
564
- "original": "boolean",
565
- "resolved": "boolean",
566
- "references": {}
567
- },
568
- "required": false,
569
- "optional": false,
570
- "docs": {
571
- "tags": [],
572
- "text": "Set to true to allow auto filtering for entries in the dropdown.\nWith this flag the dropdown will automatically filter itsel.\nIf you need to coordinate the shown elements yourself,\ne.g. because you need to call an endpoint use asyncFilter instead"
573
- },
574
- "attribute": "filter",
575
- "reflect": false,
576
- "defaultValue": "false"
577
- },
578
- "asyncFilter": {
579
- "type": "boolean",
580
- "mutable": false,
581
- "complexType": {
582
- "original": "boolean",
583
- "resolved": "boolean",
584
- "references": {}
585
- },
586
- "required": false,
587
- "optional": false,
588
- "docs": {
589
- "tags": [],
590
- "text": "Set to true to allow async filtering.\nWhen you enter something in the search field the component will only emit an event but not filter any elements itself.\nYou can then simply listen to the 'six-async-filter-fired' event to manage the shown menu-items yourself"
591
- },
592
- "attribute": "async-filter",
593
- "reflect": false,
594
- "defaultValue": "false"
595
- },
596
- "filterPlaceholder": {
597
- "type": "string",
598
- "mutable": false,
599
- "complexType": {
600
- "original": "string",
601
- "resolved": "string",
602
- "references": {}
603
- },
604
- "required": false,
605
- "optional": false,
606
- "docs": {
607
- "tags": [],
608
- "text": "The filter's placeholder text."
609
- },
610
- "attribute": "filter-placeholder",
611
- "reflect": false,
612
- "defaultValue": "'Filter...'"
613
- },
614
- "autofocusFilter": {
615
- "type": "boolean",
616
- "mutable": false,
617
- "complexType": {
618
- "original": "boolean",
619
- "resolved": "boolean",
620
- "references": {}
621
- },
622
- "required": false,
623
- "optional": false,
624
- "docs": {
625
- "tags": [],
626
- "text": "By default the search field will be focused when opening a dropdown with filtering enabled."
627
- },
628
- "attribute": "autofocus-filter",
629
- "reflect": false,
630
- "defaultValue": "true"
631
- },
632
- "filterDebounce": {
633
- "type": "number",
634
- "mutable": false,
635
- "complexType": {
636
- "original": "number",
637
- "resolved": "number",
638
- "references": {}
639
- },
640
- "required": false,
641
- "optional": false,
642
- "docs": {
643
- "tags": [],
644
- "text": "The debounce for the filter callbacks."
645
- },
646
- "attribute": "filter-debounce",
647
- "reflect": false,
648
- "defaultValue": "DEFAULT_DEBOUNCE_FAST"
649
- },
650
- "disableHideOnEnterAndSpace": {
651
- "type": "boolean",
652
- "mutable": false,
653
- "complexType": {
654
- "original": "boolean",
655
- "resolved": "boolean",
656
- "references": {}
657
- },
658
- "required": false,
659
- "optional": false,
660
- "docs": {
661
- "tags": [],
662
- "text": "The panel can be opend/closed by pressing the spacebar or the enter key. In some cases you might want to avoid this"
663
- },
664
- "attribute": "disable-hide-on-enter-and-space",
665
- "reflect": false,
666
- "defaultValue": "false"
667
- },
668
- "options": {
669
- "type": "unknown",
670
- "mutable": false,
671
- "complexType": {
672
- "original": "SixMenuItemData[]",
673
- "resolved": "SixMenuItemData[]",
674
- "references": {
675
- "SixMenuItemData": {
676
- "location": "import",
677
- "path": "../six-menu/six-menu",
678
- "id": "src/components/six-menu/six-menu.tsx::SixMenuItemData"
679
- }
680
- }
681
- },
682
- "required": false,
683
- "optional": false,
684
- "docs": {
685
- "tags": [],
686
- "text": "Set the options to be shown in the dropdown (alternative to setting the elements via html)"
687
- },
688
- "defaultValue": "[]"
689
- },
690
- "virtualScroll": {
691
- "type": "boolean",
692
- "mutable": false,
693
- "complexType": {
694
- "original": "boolean",
695
- "resolved": "boolean",
696
- "references": {}
697
- },
698
- "required": false,
699
- "optional": false,
700
- "docs": {
701
- "tags": [],
702
- "text": "Defines whether the menu list will be rendered virtually i.e. only the elements actually shown (and a couple around)\nare actually rendered in the DOM. If you use virtual scrolling pass the elements via prop instead of via slot."
703
- },
704
- "attribute": "virtual-scroll",
705
- "reflect": false,
706
- "defaultValue": "false"
707
- }
708
- };
709
- }
710
- static get states() {
711
- return {
712
- "filteredOptions": {}
713
- };
714
- }
715
- static get events() {
716
- return [{
717
- "method": "sixShow",
718
- "name": "six-dropdown-show",
719
- "bubbles": true,
720
- "cancelable": true,
721
- "composed": true,
722
- "docs": {
723
- "tags": [],
724
- "text": "Emitted when the dropdown opens. Calling `event.preventDefault()` will prevent it from being opened."
725
- },
726
- "complexType": {
727
- "original": "EmptyPayload",
728
- "resolved": "undefined",
729
- "references": {
730
- "EmptyPayload": {
731
- "location": "import",
732
- "path": "../../utils/types",
733
- "id": "src/utils/types.ts::EmptyPayload"
734
- }
735
- }
378
+ if (this.matchTriggerWidth && this.trigger != null && this.panel != null) {
379
+ const width = this.trigger.getBoundingClientRect().width;
380
+ this.panel.style.minWidth = `${width}px`;
736
381
  }
737
- }, {
738
- "method": "sixAfterShow",
739
- "name": "six-dropdown-after-show",
740
- "bubbles": true,
741
- "cancelable": true,
742
- "composed": true,
743
- "docs": {
744
- "tags": [],
745
- "text": "Emitted after the dropdown opens and all transitions are complete."
746
- },
747
- "complexType": {
748
- "original": "EmptyPayload",
749
- "resolved": "undefined",
750
- "references": {
751
- "EmptyPayload": {
752
- "location": "import",
753
- "path": "../../utils/types",
754
- "id": "src/utils/types.ts::EmptyPayload"
755
- }
756
- }
382
+ if (this.popover != null) {
383
+ this.popover.reposition();
757
384
  }
758
- }, {
759
- "method": "sixHide",
760
- "name": "six-dropdown-hide",
761
- "bubbles": true,
762
- "cancelable": true,
763
- "composed": true,
764
- "docs": {
765
- "tags": [],
766
- "text": "Emitted when the dropdown closes. Calling `event.preventDefault()` will prevent it from being closed."
767
- },
768
- "complexType": {
769
- "original": "EmptyPayload",
770
- "resolved": "undefined",
771
- "references": {
772
- "EmptyPayload": {
773
- "location": "import",
774
- "path": "../../utils/types",
775
- "id": "src/utils/types.ts::EmptyPayload"
776
- }
777
- }
385
+ }
386
+ /** Hides the dropdown panel */
387
+ async hide() {
388
+ this.resizeObserver.disconnect();
389
+ // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher
390
+ if (!this.isVisible || this.panel == null || this.popover == null) {
391
+ return;
778
392
  }
779
- }, {
780
- "method": "sixAfterHide",
781
- "name": "six-dropdown-after-hide",
782
- "bubbles": true,
783
- "cancelable": true,
784
- "composed": true,
785
- "docs": {
786
- "tags": [],
787
- "text": "Emitted after the dropdown closes and all transitions are complete."
788
- },
789
- "complexType": {
790
- "original": "EmptyPayload",
791
- "resolved": "undefined",
792
- "references": {
793
- "EmptyPayload": {
794
- "location": "import",
795
- "path": "../../utils/types",
796
- "id": "src/utils/types.ts::EmptyPayload"
797
- }
798
- }
393
+ const sixHide = this.sixHide.emit();
394
+ if (sixHide.defaultPrevented) {
395
+ this.open = true;
396
+ return;
799
397
  }
800
- }, {
801
- "method": "sixAutoFilter",
802
- "name": "six-dropdown-auto-filter-fired",
803
- "bubbles": true,
804
- "cancelable": true,
805
- "composed": true,
806
- "docs": {
807
- "tags": [],
808
- "text": "Emitted when the auto filter is triggered"
809
- },
810
- "complexType": {
811
- "original": "SixDropdownAutoFilterPayload",
812
- "resolved": "SixDropdownAutoFilterPayload",
813
- "references": {
814
- "SixDropdownAutoFilterPayload": {
815
- "location": "local",
816
- "path": "/home/runner/work/six-webcomponents/six-webcomponents/libraries/ui-library/src/components/six-dropdown/six-dropdown.tsx",
817
- "id": "src/components/six-dropdown/six-dropdown.tsx::SixDropdownAutoFilterPayload"
398
+ this.eventListeners.remove(this.panel, 'six-menu-item-selected', this.handlePanelSelect);
399
+ this.eventListeners.remove(document, 'keydown', this.handleDocumentKeyDown);
400
+ this.eventListeners.remove(document, 'mousedown', this.handleDocumentMouseDown);
401
+ this.isVisible = false;
402
+ this.open = false;
403
+ this.popover.hide();
404
+ }
405
+ focusOnTrigger() {
406
+ var _a;
407
+ if (this.trigger == null)
408
+ return;
409
+ const trigger = (_a = this.triggerSlot) === null || _a === void 0 ? void 0 : _a.assignedElements({ flatten: true }).at(0);
410
+ if (trigger != null) {
411
+ if (typeof trigger.setFocus === 'function') {
412
+ trigger.setFocus();
818
413
  }
819
- }
820
- }
821
- }, {
822
- "method": "sixAsyncFilterFired",
823
- "name": "six-async-filter-fired",
824
- "bubbles": true,
825
- "cancelable": true,
826
- "composed": true,
827
- "docs": {
828
- "tags": [],
829
- "text": "Emitted when the async filter is triggered"
830
- },
831
- "complexType": {
832
- "original": "SixDropdownAsyncFilterPayload",
833
- "resolved": "SixDropdownAsyncFilterPayload",
834
- "references": {
835
- "SixDropdownAsyncFilterPayload": {
836
- "location": "local",
837
- "path": "/home/runner/work/six-webcomponents/six-webcomponents/libraries/ui-library/src/components/six-dropdown/six-dropdown.tsx",
838
- "id": "src/components/six-dropdown/six-dropdown.tsx::SixDropdownAsyncFilterPayload"
414
+ else if (typeof trigger.focus === 'function') {
415
+ trigger.focus();
839
416
  }
840
- }
841
417
  }
842
- }, {
843
- "method": "sixScroll",
844
- "name": "six-dropdown-scroll",
845
- "bubbles": true,
846
- "cancelable": true,
847
- "composed": true,
848
- "docs": {
849
- "tags": [],
850
- "text": "Emitted when the user scrolls inside dropdown panel."
851
- },
852
- "complexType": {
853
- "original": "SixDropdownScrollPayload",
854
- "resolved": "SixDropdownScrollPayload",
855
- "references": {
856
- "SixDropdownScrollPayload": {
857
- "location": "local",
858
- "path": "/home/runner/work/six-webcomponents/six-webcomponents/libraries/ui-library/src/components/six-dropdown/six-dropdown.tsx",
859
- "id": "src/components/six-dropdown/six-dropdown.tsx::SixDropdownScrollPayload"
860
- }
861
- }
418
+ }
419
+ getMenu() {
420
+ var _a;
421
+ return (_a = this.panelSlot) === null || _a === void 0 ? void 0 : _a.assignedElements({ flatten: true }).filter(isSixMenu).at(0);
422
+ }
423
+ /**
424
+ * Instructs the dropdown menu to reposition. Useful when the position or size of the trigger changes when the menu
425
+ * is activated.
426
+ *
427
+ * @deprecated: use the property `matchTriggerWidth` instead.
428
+ */
429
+ async reposition() {
430
+ if (this.open && this.popover != null) {
431
+ this.popover.reposition();
862
432
  }
863
- }];
864
- }
865
- static get methods() {
866
- return {
867
- "show": {
868
- "complexType": {
869
- "signature": "() => Promise<void>",
870
- "parameters": [],
871
- "references": {
872
- "Promise": {
873
- "location": "global",
874
- "id": "global::Promise"
875
- }
876
- },
877
- "return": "Promise<void>"
878
- },
879
- "docs": {
880
- "text": "Shows the dropdown panel",
881
- "tags": []
433
+ }
434
+ //
435
+ // Slotted triggers can be arbitrary content, but we need to link them to the dropdown panel with `aria-haspopup` and
436
+ // `aria-expanded`. These must be applied to the "accessible trigger" (the tabbable portion of the trigger element
437
+ // that gets slotted in) so screen readers will understand them. The accessible trigger could be the slotted element,
438
+ // a child of the slotted element, or an element in the slotted element's shadow root.
439
+ //
440
+ // For example, the accessible trigger of an <sl-button> is a <button> located inside its shadow root.
441
+ //
442
+ // To determine this, we assume the first tabbable element in the trigger slot is the "accessible trigger."
443
+ //
444
+ updateAccessibleTrigger() {
445
+ var _a;
446
+ if (this.trigger == null)
447
+ return;
448
+ const assignedElements = (((_a = this.triggerSlot) === null || _a === void 0 ? void 0 : _a.assignedElements({ flatten: true })) || []);
449
+ const accessibleTrigger = assignedElements.map(getNearestTabbableElement).at(0);
450
+ if (accessibleTrigger != null) {
451
+ accessibleTrigger.setAttribute('aria-haspopup', 'true');
452
+ accessibleTrigger.setAttribute('aria-expanded', this.open ? 'true' : 'false');
882
453
  }
883
- },
884
- "hide": {
885
- "complexType": {
886
- "signature": "() => Promise<void>",
887
- "parameters": [],
888
- "references": {
889
- "Promise": {
890
- "location": "global",
891
- "id": "global::Promise"
454
+ }
455
+ render() {
456
+ return (h("div", { part: "base", id: this.componentId, class: {
457
+ dropdown: true,
458
+ 'dropdown--open': this.open,
459
+ } }, h("span", { part: "trigger", class: "dropdown__trigger", ref: (el) => (this.trigger = el), onClick: this.handleTriggerClick, onKeyDown: this.handleTriggerKeyDown, onKeyUp: this.handleTriggerKeyUp }, h("slot", { name: "trigger", ref: (el) => (this.triggerSlot = el), onSlotchange: this.handleTriggerSlotChange })), h("div", { ref: (el) => (this.positioner = el), class: {
460
+ dropdown__positioner: true,
461
+ dropdown__positioner__filtered: (this.filter || this.asyncFilter) && !this.hoist,
462
+ } }, h("div", { ref: (el) => (this.panel = el), part: "panel", class: "dropdown__panel", role: "menu", "aria-hidden": this.open ? 'false' : 'true', "aria-labelledby": this.componentId }, this.filterEnabled && (h("six-input", { class: {
463
+ filter: true,
464
+ 'filter-hidden': !this.open,
465
+ }, "dropdown-search": true, "aria-hidden": this.open ? 'false' : 'true', ref: (el) => (this.filterInputElement = el), placeholder: this.filterPlaceholder }, h("six-icon", { class: "filter__icon", slot: "suffix", size: "small" }, "search"))), h("div", { class: {
466
+ dropdown__panel__scroll: true,
467
+ 'dropdown__panel__scroll--virtual': this.virtualScroll,
468
+ }, onScroll: this.handleDropdownScroll, ref: (el) => (this.scrollPanel = el) }, h("slot", { ref: (el) => (this.panelSlot = el) }), this.options.length > 0 && (h("six-menu", { part: "menu", items: this.renderedOptions, virtualScroll: this.virtualScroll }))), h("slot", { name: "dropdown-footer" })))));
469
+ }
470
+ static get is() { return "six-dropdown"; }
471
+ static get encapsulation() { return "shadow"; }
472
+ static get originalStyleUrls() {
473
+ return {
474
+ "$": ["six-dropdown.scss"]
475
+ };
476
+ }
477
+ static get styleUrls() {
478
+ return {
479
+ "$": ["six-dropdown.css"]
480
+ };
481
+ }
482
+ static get properties() {
483
+ return {
484
+ "open": {
485
+ "type": "boolean",
486
+ "mutable": true,
487
+ "complexType": {
488
+ "original": "boolean",
489
+ "resolved": "boolean",
490
+ "references": {}
491
+ },
492
+ "required": false,
493
+ "optional": false,
494
+ "docs": {
495
+ "tags": [],
496
+ "text": "Indicates whether the dropdown is open. You can use this in lieu of the show/hide methods."
497
+ },
498
+ "attribute": "open",
499
+ "reflect": true,
500
+ "defaultValue": "false"
501
+ },
502
+ "placement": {
503
+ "type": "string",
504
+ "mutable": false,
505
+ "complexType": {
506
+ "original": "| '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'",
507
+ "resolved": "\"bottom\" | \"bottom-end\" | \"bottom-start\" | \"left\" | \"left-end\" | \"left-start\" | \"right\" | \"right-end\" | \"right-start\" | \"top\" | \"top-end\" | \"top-start\"",
508
+ "references": {}
509
+ },
510
+ "required": false,
511
+ "optional": false,
512
+ "docs": {
513
+ "tags": [],
514
+ "text": "The preferred placement of the dropdown panel. Note that the actual placement may vary as needed to keep the panel\ninside the viewport."
515
+ },
516
+ "attribute": "placement",
517
+ "reflect": false,
518
+ "defaultValue": "'bottom-start'"
519
+ },
520
+ "closeOnSelect": {
521
+ "type": "boolean",
522
+ "mutable": false,
523
+ "complexType": {
524
+ "original": "boolean",
525
+ "resolved": "boolean",
526
+ "references": {}
527
+ },
528
+ "required": false,
529
+ "optional": false,
530
+ "docs": {
531
+ "tags": [],
532
+ "text": "Determines whether the dropdown should hide when a menu item is selected."
533
+ },
534
+ "attribute": "close-on-select",
535
+ "reflect": false,
536
+ "defaultValue": "true"
537
+ },
538
+ "distance": {
539
+ "type": "number",
540
+ "mutable": false,
541
+ "complexType": {
542
+ "original": "number",
543
+ "resolved": "number",
544
+ "references": {}
545
+ },
546
+ "required": false,
547
+ "optional": false,
548
+ "docs": {
549
+ "tags": [],
550
+ "text": "The distance in pixels from which to offset the panel away from its trigger."
551
+ },
552
+ "attribute": "distance",
553
+ "reflect": false,
554
+ "defaultValue": "4"
555
+ },
556
+ "skidding": {
557
+ "type": "number",
558
+ "mutable": false,
559
+ "complexType": {
560
+ "original": "number",
561
+ "resolved": "number",
562
+ "references": {}
563
+ },
564
+ "required": false,
565
+ "optional": false,
566
+ "docs": {
567
+ "tags": [],
568
+ "text": "The distance in pixels from which to offset the panel along its trigger."
569
+ },
570
+ "attribute": "skidding",
571
+ "reflect": false,
572
+ "defaultValue": "0"
573
+ },
574
+ "hoist": {
575
+ "type": "boolean",
576
+ "mutable": false,
577
+ "complexType": {
578
+ "original": "boolean",
579
+ "resolved": "boolean",
580
+ "references": {}
581
+ },
582
+ "required": false,
583
+ "optional": false,
584
+ "docs": {
585
+ "tags": [],
586
+ "text": "Enable this option to prevent the panel from being clipped when the component is placed inside a container with\n`overflow: auto|scroll`."
587
+ },
588
+ "attribute": "hoist",
589
+ "reflect": false,
590
+ "defaultValue": "false"
591
+ },
592
+ "containingElement": {
593
+ "type": "unknown",
594
+ "mutable": false,
595
+ "complexType": {
596
+ "original": "HTMLElement",
597
+ "resolved": "HTMLElement | undefined",
598
+ "references": {
599
+ "HTMLElement": {
600
+ "location": "global",
601
+ "id": "global::HTMLElement"
602
+ }
603
+ }
604
+ },
605
+ "required": false,
606
+ "optional": true,
607
+ "docs": {
608
+ "tags": [],
609
+ "text": "The dropdown will close when the user interacts outside of this element (e.g. clicking)."
610
+ }
611
+ },
612
+ "filter": {
613
+ "type": "boolean",
614
+ "mutable": false,
615
+ "complexType": {
616
+ "original": "boolean",
617
+ "resolved": "boolean",
618
+ "references": {}
619
+ },
620
+ "required": false,
621
+ "optional": false,
622
+ "docs": {
623
+ "tags": [],
624
+ "text": "Set to true to allow auto filtering for entries in the dropdown.\nWith this flag the dropdown will automatically filter itsel.\nIf you need to coordinate the shown elements yourself,\ne.g. because you need to call an endpoint use asyncFilter instead"
625
+ },
626
+ "attribute": "filter",
627
+ "reflect": false,
628
+ "defaultValue": "false"
629
+ },
630
+ "asyncFilter": {
631
+ "type": "boolean",
632
+ "mutable": false,
633
+ "complexType": {
634
+ "original": "boolean",
635
+ "resolved": "boolean",
636
+ "references": {}
637
+ },
638
+ "required": false,
639
+ "optional": false,
640
+ "docs": {
641
+ "tags": [],
642
+ "text": "Set to true to allow async filtering.\nWhen you enter something in the search field the component will only emit an event but not filter any elements itself.\nYou can then simply listen to the 'six-async-filter-fired' event to manage the shown menu-items yourself"
643
+ },
644
+ "attribute": "async-filter",
645
+ "reflect": false,
646
+ "defaultValue": "false"
647
+ },
648
+ "filterPlaceholder": {
649
+ "type": "string",
650
+ "mutable": false,
651
+ "complexType": {
652
+ "original": "string",
653
+ "resolved": "string",
654
+ "references": {}
655
+ },
656
+ "required": false,
657
+ "optional": false,
658
+ "docs": {
659
+ "tags": [],
660
+ "text": "The filter's placeholder text."
661
+ },
662
+ "attribute": "filter-placeholder",
663
+ "reflect": false,
664
+ "defaultValue": "'Filter...'"
665
+ },
666
+ "autofocusFilter": {
667
+ "type": "boolean",
668
+ "mutable": false,
669
+ "complexType": {
670
+ "original": "boolean",
671
+ "resolved": "boolean",
672
+ "references": {}
673
+ },
674
+ "required": false,
675
+ "optional": false,
676
+ "docs": {
677
+ "tags": [],
678
+ "text": "By default the search field will be focused when opening a dropdown with filtering enabled."
679
+ },
680
+ "attribute": "autofocus-filter",
681
+ "reflect": false,
682
+ "defaultValue": "true"
683
+ },
684
+ "filterDebounce": {
685
+ "type": "number",
686
+ "mutable": true,
687
+ "complexType": {
688
+ "original": "number",
689
+ "resolved": "number",
690
+ "references": {}
691
+ },
692
+ "required": false,
693
+ "optional": false,
694
+ "docs": {
695
+ "tags": [],
696
+ "text": "The debounce for the filter callbacks."
697
+ },
698
+ "attribute": "filter-debounce",
699
+ "reflect": false,
700
+ "defaultValue": "0"
701
+ },
702
+ "disableHideOnEnterAndSpace": {
703
+ "type": "boolean",
704
+ "mutable": false,
705
+ "complexType": {
706
+ "original": "boolean",
707
+ "resolved": "boolean",
708
+ "references": {}
709
+ },
710
+ "required": false,
711
+ "optional": false,
712
+ "docs": {
713
+ "tags": [],
714
+ "text": "The panel can be opend/closed by pressing the spacebar or the enter key. In some cases you might want to avoid this"
715
+ },
716
+ "attribute": "disable-hide-on-enter-and-space",
717
+ "reflect": false,
718
+ "defaultValue": "false"
719
+ },
720
+ "options": {
721
+ "type": "unknown",
722
+ "mutable": true,
723
+ "complexType": {
724
+ "original": "SixMenuItemData[]",
725
+ "resolved": "SixMenuItemData[]",
726
+ "references": {
727
+ "SixMenuItemData": {
728
+ "location": "import",
729
+ "path": "../six-menu/six-menu",
730
+ "id": "src/components/six-menu/six-menu.tsx::SixMenuItemData"
731
+ }
732
+ }
733
+ },
734
+ "required": false,
735
+ "optional": false,
736
+ "docs": {
737
+ "tags": [],
738
+ "text": "Set the options to be shown in the dropdown (alternative to setting the elements via html)"
739
+ },
740
+ "defaultValue": "[]"
741
+ },
742
+ "virtualScroll": {
743
+ "type": "boolean",
744
+ "mutable": false,
745
+ "complexType": {
746
+ "original": "boolean",
747
+ "resolved": "boolean",
748
+ "references": {}
749
+ },
750
+ "required": false,
751
+ "optional": false,
752
+ "docs": {
753
+ "tags": [],
754
+ "text": "Defines whether the menu list will be rendered virtually i.e. only the elements actually shown (and a couple around)\nare actually rendered in the DOM. If you use virtual scrolling pass the elements via prop instead of via slot."
755
+ },
756
+ "attribute": "virtual-scroll",
757
+ "reflect": false,
758
+ "defaultValue": "false"
759
+ },
760
+ "matchTriggerWidth": {
761
+ "type": "boolean",
762
+ "mutable": false,
763
+ "complexType": {
764
+ "original": "boolean",
765
+ "resolved": "boolean",
766
+ "references": {}
767
+ },
768
+ "required": false,
769
+ "optional": false,
770
+ "docs": {
771
+ "tags": [],
772
+ "text": "Determines if the dropdown panel's width should match the width of the trigger element.\n\nIf set to `true`, the panel will resize its width to align with the trigger's width.\nIf `false` or omitted, the panel will maintain its default width."
773
+ },
774
+ "attribute": "match-trigger-width",
775
+ "reflect": false,
776
+ "defaultValue": "false"
892
777
  }
893
- },
894
- "return": "Promise<void>"
895
- },
896
- "docs": {
897
- "text": "Hides the dropdown panel",
898
- "tags": []
899
- }
900
- },
901
- "reposition": {
902
- "complexType": {
903
- "signature": "() => Promise<void>",
904
- "parameters": [],
905
- "references": {
906
- "Promise": {
907
- "location": "global",
908
- "id": "global::Promise"
778
+ };
779
+ }
780
+ static get states() {
781
+ return {
782
+ "renderedOptions": {}
783
+ };
784
+ }
785
+ static get events() {
786
+ return [{
787
+ "method": "sixShow",
788
+ "name": "six-dropdown-show",
789
+ "bubbles": true,
790
+ "cancelable": true,
791
+ "composed": true,
792
+ "docs": {
793
+ "tags": [],
794
+ "text": "Emitted when the dropdown opens. Calling `event.preventDefault()` will prevent it from being opened."
795
+ },
796
+ "complexType": {
797
+ "original": "EmptyPayload",
798
+ "resolved": "undefined",
799
+ "references": {
800
+ "EmptyPayload": {
801
+ "location": "import",
802
+ "path": "../../utils/types",
803
+ "id": "src/utils/types.ts::EmptyPayload"
804
+ }
805
+ }
806
+ }
807
+ }, {
808
+ "method": "sixAfterShow",
809
+ "name": "six-dropdown-after-show",
810
+ "bubbles": true,
811
+ "cancelable": true,
812
+ "composed": true,
813
+ "docs": {
814
+ "tags": [],
815
+ "text": "Emitted after the dropdown opens and all transitions are complete."
816
+ },
817
+ "complexType": {
818
+ "original": "EmptyPayload",
819
+ "resolved": "undefined",
820
+ "references": {
821
+ "EmptyPayload": {
822
+ "location": "import",
823
+ "path": "../../utils/types",
824
+ "id": "src/utils/types.ts::EmptyPayload"
825
+ }
826
+ }
827
+ }
828
+ }, {
829
+ "method": "sixHide",
830
+ "name": "six-dropdown-hide",
831
+ "bubbles": true,
832
+ "cancelable": true,
833
+ "composed": true,
834
+ "docs": {
835
+ "tags": [],
836
+ "text": "Emitted when the dropdown closes. Calling `event.preventDefault()` will prevent it from being closed."
837
+ },
838
+ "complexType": {
839
+ "original": "EmptyPayload",
840
+ "resolved": "undefined",
841
+ "references": {
842
+ "EmptyPayload": {
843
+ "location": "import",
844
+ "path": "../../utils/types",
845
+ "id": "src/utils/types.ts::EmptyPayload"
846
+ }
847
+ }
848
+ }
849
+ }, {
850
+ "method": "sixAfterHide",
851
+ "name": "six-dropdown-after-hide",
852
+ "bubbles": true,
853
+ "cancelable": true,
854
+ "composed": true,
855
+ "docs": {
856
+ "tags": [],
857
+ "text": "Emitted after the dropdown closes and all transitions are complete."
858
+ },
859
+ "complexType": {
860
+ "original": "EmptyPayload",
861
+ "resolved": "undefined",
862
+ "references": {
863
+ "EmptyPayload": {
864
+ "location": "import",
865
+ "path": "../../utils/types",
866
+ "id": "src/utils/types.ts::EmptyPayload"
867
+ }
868
+ }
869
+ }
870
+ }, {
871
+ "method": "sixAutoFilter",
872
+ "name": "six-dropdown-auto-filter-fired",
873
+ "bubbles": true,
874
+ "cancelable": true,
875
+ "composed": true,
876
+ "docs": {
877
+ "tags": [],
878
+ "text": "Emitted when the auto filter is triggered"
879
+ },
880
+ "complexType": {
881
+ "original": "SixDropdownAutoFilterPayload",
882
+ "resolved": "SixDropdownAutoFilterPayload",
883
+ "references": {
884
+ "SixDropdownAutoFilterPayload": {
885
+ "location": "local",
886
+ "path": "/home/runner/work/six-webcomponents/six-webcomponents/libraries/ui-library/src/components/six-dropdown/six-dropdown.tsx",
887
+ "id": "src/components/six-dropdown/six-dropdown.tsx::SixDropdownAutoFilterPayload"
888
+ }
889
+ }
890
+ }
891
+ }, {
892
+ "method": "sixAsyncFilterFired",
893
+ "name": "six-async-filter-fired",
894
+ "bubbles": true,
895
+ "cancelable": true,
896
+ "composed": true,
897
+ "docs": {
898
+ "tags": [],
899
+ "text": "Emitted when the async filter is triggered"
900
+ },
901
+ "complexType": {
902
+ "original": "SixDropdownAsyncFilterPayload",
903
+ "resolved": "SixDropdownAsyncFilterPayload",
904
+ "references": {
905
+ "SixDropdownAsyncFilterPayload": {
906
+ "location": "local",
907
+ "path": "/home/runner/work/six-webcomponents/six-webcomponents/libraries/ui-library/src/components/six-dropdown/six-dropdown.tsx",
908
+ "id": "src/components/six-dropdown/six-dropdown.tsx::SixDropdownAsyncFilterPayload"
909
+ }
910
+ }
911
+ }
912
+ }, {
913
+ "method": "sixScroll",
914
+ "name": "six-dropdown-scroll",
915
+ "bubbles": true,
916
+ "cancelable": true,
917
+ "composed": true,
918
+ "docs": {
919
+ "tags": [],
920
+ "text": "Emitted when the user scrolls inside dropdown panel."
921
+ },
922
+ "complexType": {
923
+ "original": "SixDropdownScrollPayload",
924
+ "resolved": "SixDropdownScrollPayload",
925
+ "references": {
926
+ "SixDropdownScrollPayload": {
927
+ "location": "local",
928
+ "path": "/home/runner/work/six-webcomponents/six-webcomponents/libraries/ui-library/src/components/six-dropdown/six-dropdown.tsx",
929
+ "id": "src/components/six-dropdown/six-dropdown.tsx::SixDropdownScrollPayload"
930
+ }
931
+ }
932
+ }
933
+ }];
934
+ }
935
+ static get methods() {
936
+ return {
937
+ "show": {
938
+ "complexType": {
939
+ "signature": "() => Promise<void>",
940
+ "parameters": [],
941
+ "references": {
942
+ "Promise": {
943
+ "location": "global",
944
+ "id": "global::Promise"
945
+ }
946
+ },
947
+ "return": "Promise<void>"
948
+ },
949
+ "docs": {
950
+ "text": "Shows the dropdown panel",
951
+ "tags": []
952
+ }
953
+ },
954
+ "hide": {
955
+ "complexType": {
956
+ "signature": "() => Promise<void>",
957
+ "parameters": [],
958
+ "references": {
959
+ "Promise": {
960
+ "location": "global",
961
+ "id": "global::Promise"
962
+ }
963
+ },
964
+ "return": "Promise<void>"
965
+ },
966
+ "docs": {
967
+ "text": "Hides the dropdown panel",
968
+ "tags": []
969
+ }
970
+ },
971
+ "reposition": {
972
+ "complexType": {
973
+ "signature": "() => Promise<void>",
974
+ "parameters": [],
975
+ "references": {
976
+ "Promise": {
977
+ "location": "global",
978
+ "id": "global::Promise"
979
+ }
980
+ },
981
+ "return": "Promise<void>"
982
+ },
983
+ "docs": {
984
+ "text": "Instructs the dropdown menu to reposition. Useful when the position or size of the trigger changes when the menu\nis activated.",
985
+ "tags": [{
986
+ "name": "deprecated",
987
+ "text": ": use the property `matchTriggerWidth` instead."
988
+ }]
989
+ }
909
990
  }
910
- },
911
- "return": "Promise<void>"
912
- },
913
- "docs": {
914
- "text": "Instructs the dropdown menu to reposition. Useful when the position or size of the trigger changes when the menu\nis activated.",
915
- "tags": []
916
- }
917
- }
918
- };
919
- }
920
- static get elementRef() { return "host"; }
921
- static get watchers() {
922
- return [{
923
- "propName": "open",
924
- "methodName": "handleOpenChange"
925
- }, {
926
- "propName": "distance",
927
- "methodName": "handlePopoverOptionsChange"
928
- }, {
929
- "propName": "hoist",
930
- "methodName": "handlePopoverOptionsChange"
931
- }, {
932
- "propName": "placement",
933
- "methodName": "handlePopoverOptionsChange"
934
- }, {
935
- "propName": "skidding",
936
- "methodName": "handlePopoverOptionsChange"
937
- }, {
938
- "propName": "options",
939
- "methodName": "handleOptionsChange"
940
- }];
941
- }
991
+ };
992
+ }
993
+ static get elementRef() { return "host"; }
994
+ static get watchers() {
995
+ return [{
996
+ "propName": "open",
997
+ "methodName": "handleOpenChange"
998
+ }, {
999
+ "propName": "distance",
1000
+ "methodName": "handlePopoverOptionsChange"
1001
+ }, {
1002
+ "propName": "hoist",
1003
+ "methodName": "handlePopoverOptionsChange"
1004
+ }, {
1005
+ "propName": "placement",
1006
+ "methodName": "handlePopoverOptionsChange"
1007
+ }, {
1008
+ "propName": "skidding",
1009
+ "methodName": "handlePopoverOptionsChange"
1010
+ }, {
1011
+ "propName": "options",
1012
+ "methodName": "handleOptionsChange"
1013
+ }, {
1014
+ "propName": "virtualScroll",
1015
+ "methodName": "handleOptionsChange"
1016
+ }];
1017
+ }
1018
+ }
1019
+ function isSixMenu(el) {
1020
+ return (el === null || el === void 0 ? void 0 : el.tagName.toLowerCase()) === 'six-menu';
1021
+ }
1022
+ function isSixMenuItem(el) {
1023
+ return (el === null || el === void 0 ? void 0 : el.tagName.toLowerCase()) === 'six-menu-item';
1024
+ }
1025
+ function isSelectionContainer(el) {
1026
+ var _a;
1027
+ return ((_a = el === null || el === void 0 ? void 0 : el.getAttribute('class')) === null || _a === void 0 ? void 0 : _a.includes('selection-container')) || false;
1028
+ }
1029
+ async function containsFilterTerm(menuItem, lowerCaseFilterTerm) {
1030
+ return (menuItem.value.toLowerCase().includes(lowerCaseFilterTerm) ||
1031
+ (await menuItem.getTextLabel()).toLowerCase().includes(lowerCaseFilterTerm));
942
1032
  }
943
1033
  //# sourceMappingURL=six-dropdown.js.map