@six-group/ui-library 0.0.0-insider.8359b17 → 0.0.0-insider.8db54cb

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 (388) hide show
  1. package/dist/cjs/{form-control-73ff961d.js → form-control-de259450.js} +2 -2
  2. package/dist/cjs/{form-control-73ff961d.js.map → form-control-de259450.js.map} +1 -1
  3. package/dist/cjs/{index-b288f7d9.js → index-1f707a55.js} +455 -9
  4. package/dist/cjs/index-1f707a55.js.map +1 -0
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/six-alert.cjs.entry.js +1 -1
  7. package/dist/cjs/six-avatar.cjs.entry.js +2 -2
  8. package/dist/cjs/six-badge.cjs.entry.js +3 -3
  9. package/dist/cjs/six-button.cjs.entry.js +5 -4
  10. package/dist/cjs/six-button.cjs.entry.js.map +1 -1
  11. package/dist/cjs/six-card.cjs.entry.js +2 -2
  12. package/dist/cjs/six-checkbox_2.cjs.entry.js +6 -6
  13. package/dist/cjs/six-datepicker.cjs.entry.js +13 -11
  14. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -1
  15. package/dist/cjs/six-details.cjs.entry.js +4 -4
  16. package/dist/cjs/six-dialog.cjs.entry.js +3 -3
  17. package/dist/cjs/six-drawer.cjs.entry.js +3 -3
  18. package/dist/cjs/six-dropdown_2.cjs.entry.js +7 -4
  19. package/dist/cjs/six-dropdown_2.cjs.entry.js.map +1 -1
  20. package/dist/cjs/six-error-page.cjs.entry.js +2 -2
  21. package/dist/cjs/six-error.cjs.entry.js +3 -3
  22. package/dist/cjs/six-error.cjs.entry.js.map +1 -1
  23. package/dist/cjs/six-file-list-item.cjs.entry.js +1 -1
  24. package/dist/cjs/six-file-list.cjs.entry.js +2 -2
  25. package/dist/cjs/six-file-upload.cjs.entry.js +27 -6
  26. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -1
  27. package/dist/cjs/six-footer.cjs.entry.js +2 -2
  28. package/dist/cjs/six-group-label.cjs.entry.js +3 -3
  29. package/dist/cjs/six-header.cjs.entry.js +22 -15
  30. package/dist/cjs/six-header.cjs.entry.js.map +1 -1
  31. package/dist/cjs/six-icon-button.cjs.entry.js +4 -4
  32. package/dist/cjs/six-icon.cjs.entry.js +3 -3
  33. package/dist/cjs/six-input.cjs.entry.js +5 -5
  34. package/dist/cjs/six-item-picker.cjs.entry.js +1 -1
  35. package/dist/cjs/six-language-switcher.cjs.entry.js +2 -2
  36. package/dist/cjs/six-layout-grid.cjs.entry.js +2 -2
  37. package/dist/cjs/six-main-container.cjs.entry.js +2 -2
  38. package/dist/cjs/six-menu-divider.cjs.entry.js +2 -2
  39. package/dist/cjs/six-menu-label.cjs.entry.js +2 -2
  40. package/dist/cjs/six-picto.cjs.entry.js +2 -2
  41. package/dist/cjs/six-progress-bar.cjs.entry.js +3 -3
  42. package/dist/cjs/six-progress-ring.cjs.entry.js +2 -2
  43. package/dist/cjs/six-radio.cjs.entry.js +3 -3
  44. package/dist/cjs/six-range.cjs.entry.js +4 -4
  45. package/dist/cjs/six-root.cjs.entry.js +2 -2
  46. package/dist/cjs/six-search-field.cjs.entry.js +2 -2
  47. package/dist/cjs/six-select.cjs.entry.js +68 -43
  48. package/dist/cjs/six-select.cjs.entry.js.map +1 -1
  49. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +1 -1
  50. package/dist/cjs/six-sidebar-item.cjs.entry.js +3 -3
  51. package/dist/cjs/six-sidebar.cjs.entry.js +3 -3
  52. package/dist/cjs/six-spinner.cjs.entry.js +1 -1
  53. package/dist/cjs/six-stage-indicator.cjs.entry.js +1 -1
  54. package/dist/cjs/six-switch.cjs.entry.js +4 -4
  55. package/dist/cjs/six-tab-group.cjs.entry.js +3 -3
  56. package/dist/cjs/six-tab-panel.cjs.entry.js +2 -2
  57. package/dist/cjs/six-tab.cjs.entry.js +3 -3
  58. package/dist/cjs/six-tab.cjs.entry.js.map +1 -1
  59. package/dist/cjs/six-tag.cjs.entry.js +3 -3
  60. package/dist/cjs/six-textarea.cjs.entry.js +4 -4
  61. package/dist/cjs/six-tile.cjs.entry.js +4 -4
  62. package/dist/cjs/six-timepicker.cjs.entry.js +1 -1
  63. package/dist/cjs/six-tooltip.cjs.entry.js +3 -3
  64. package/dist/cjs/ui-library.cjs.js +2 -2
  65. package/dist/collection/assets/TRADEMARKS.md +3 -3
  66. package/dist/collection/components/six-avatar/six-avatar.js +1 -1
  67. package/dist/collection/components/six-badge/six-badge.js +2 -2
  68. package/dist/collection/components/six-button/six-button.css +17 -0
  69. package/dist/collection/components/six-button/six-button.js +5 -4
  70. package/dist/collection/components/six-button/six-button.js.map +1 -1
  71. package/dist/collection/components/six-card/six-card.js +1 -1
  72. package/dist/collection/components/six-checkbox/six-checkbox.js +2 -2
  73. package/dist/collection/components/six-datepicker/six-datepicker.js +12 -10
  74. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -1
  75. package/dist/collection/components/six-details/six-details.js +3 -3
  76. package/dist/collection/components/six-dialog/six-dialog.js +2 -2
  77. package/dist/collection/components/six-drawer/six-drawer.js +2 -2
  78. package/dist/collection/components/six-error/six-error.css +1 -0
  79. package/dist/collection/components/six-error/six-error.js +1 -1
  80. package/dist/collection/components/six-error-page/six-error-page.js +1 -1
  81. package/dist/collection/components/six-file-list/six-file-list.js +1 -1
  82. package/dist/collection/components/six-file-upload/six-file-upload.css +3 -0
  83. package/dist/collection/components/six-file-upload/six-file-upload.js +64 -5
  84. package/dist/collection/components/six-file-upload/six-file-upload.js.map +1 -1
  85. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js +114 -6
  86. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js.map +1 -1
  87. package/dist/collection/components/six-footer/six-footer.js +1 -1
  88. package/dist/collection/components/six-group-label/six-group-label.js +1 -1
  89. package/dist/collection/components/six-header/six-header.css +9 -0
  90. package/dist/collection/components/six-header/six-header.js +38 -13
  91. package/dist/collection/components/six-header/six-header.js.map +1 -1
  92. package/dist/collection/components/six-icon/six-icon.js +2 -2
  93. package/dist/collection/components/six-icon-button/six-icon-button.js +3 -3
  94. package/dist/collection/components/six-input/six-input.js +3 -3
  95. package/dist/collection/components/six-language-switcher/six-language-switcher.js +1 -1
  96. package/dist/collection/components/six-layout-grid/six-layout-grid.js +1 -1
  97. package/dist/collection/components/six-main-container/six-main-container.js +1 -1
  98. package/dist/collection/components/six-menu/six-menu.js +6 -3
  99. package/dist/collection/components/six-menu/six-menu.js.map +1 -1
  100. package/dist/collection/components/six-menu/test/six-menu.spec.js +1 -1
  101. package/dist/collection/components/six-menu/test/six-menu.spec.js.map +1 -1
  102. package/dist/collection/components/six-menu-divider/six-menu-divider.js +1 -1
  103. package/dist/collection/components/six-menu-item/six-menu-item.js +2 -2
  104. package/dist/collection/components/six-menu-label/six-menu-label.js +1 -1
  105. package/dist/collection/components/six-picto/six-picto.js +1 -1
  106. package/dist/collection/components/six-progress-bar/six-progress-bar.js +2 -2
  107. package/dist/collection/components/six-progress-ring/six-progress-ring.js +1 -1
  108. package/dist/collection/components/six-radio/six-radio.js +2 -2
  109. package/dist/collection/components/six-range/six-range.js +2 -2
  110. package/dist/collection/components/six-root/six-root.js +1 -1
  111. package/dist/collection/components/six-search-field/six-search-field.js +1 -1
  112. package/dist/collection/components/six-select/six-select.js +33 -41
  113. package/dist/collection/components/six-select/six-select.js.map +1 -1
  114. package/dist/collection/components/six-select/test/util.spec.js +23 -1
  115. package/dist/collection/components/six-select/test/util.spec.js.map +1 -1
  116. package/dist/collection/components/six-select/util.js +24 -0
  117. package/dist/collection/components/six-select/util.js.map +1 -1
  118. package/dist/collection/components/six-sidebar/six-sidebar.js +2 -2
  119. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +2 -2
  120. package/dist/collection/components/six-switch/six-switch.js +2 -2
  121. package/dist/collection/components/six-tab/six-tab.js +2 -2
  122. package/dist/collection/components/six-tab/six-tab.js.map +1 -1
  123. package/dist/collection/components/six-tab-group/six-tab-group.js +2 -2
  124. package/dist/collection/components/six-tab-panel/six-tab-panel.js +1 -1
  125. package/dist/collection/components/six-tag/six-tag.js +2 -2
  126. package/dist/collection/components/six-textarea/six-textarea.js +2 -2
  127. package/dist/collection/components/six-tile/six-tile.js +3 -3
  128. package/dist/collection/components/six-tooltip/six-tooltip.js +2 -2
  129. package/dist/components/six-avatar.js +1 -1
  130. package/dist/components/six-badge.js +2 -2
  131. package/dist/components/six-button2.js +4 -3
  132. package/dist/components/six-button2.js.map +1 -1
  133. package/dist/components/six-card.js +1 -1
  134. package/dist/components/six-checkbox2.js +2 -2
  135. package/dist/components/six-datepicker.js +12 -10
  136. package/dist/components/six-datepicker.js.map +1 -1
  137. package/dist/components/six-details2.js +3 -3
  138. package/dist/components/six-dialog.js +2 -2
  139. package/dist/components/six-drawer.js +2 -2
  140. package/dist/components/six-error-page.js +1 -1
  141. package/dist/components/six-error2.js +2 -2
  142. package/dist/components/six-error2.js.map +1 -1
  143. package/dist/components/six-file-list.js +1 -1
  144. package/dist/components/six-file-upload.js +38 -8
  145. package/dist/components/six-file-upload.js.map +1 -1
  146. package/dist/components/six-footer.js +1 -1
  147. package/dist/components/six-group-label.js +1 -1
  148. package/dist/components/six-header.js +22 -14
  149. package/dist/components/six-header.js.map +1 -1
  150. package/dist/components/six-icon-button2.js +3 -3
  151. package/dist/components/six-icon2.js +2 -2
  152. package/dist/components/six-input2.js +3 -3
  153. package/dist/components/six-language-switcher.js +1 -1
  154. package/dist/components/six-layout-grid.js +1 -1
  155. package/dist/components/six-main-container.js +1 -1
  156. package/dist/components/six-menu-divider.js +1 -1
  157. package/dist/components/six-menu-item2.js +2 -2
  158. package/dist/components/six-menu-label.js +1 -1
  159. package/dist/components/six-menu2.js +6 -3
  160. package/dist/components/six-menu2.js.map +1 -1
  161. package/dist/components/six-picto2.js +1 -1
  162. package/dist/components/six-progress-bar.js +2 -2
  163. package/dist/components/six-progress-ring.js +1 -1
  164. package/dist/components/six-radio.js +2 -2
  165. package/dist/components/six-range.js +2 -2
  166. package/dist/components/six-root.js +1 -1
  167. package/dist/components/six-search-field.js +1 -1
  168. package/dist/components/six-select.js +66 -41
  169. package/dist/components/six-select.js.map +1 -1
  170. package/dist/components/six-sidebar-item.js +2 -2
  171. package/dist/components/six-sidebar.js +2 -2
  172. package/dist/components/six-switch.js +2 -2
  173. package/dist/components/six-tab-group.js +2 -2
  174. package/dist/components/six-tab-panel.js +1 -1
  175. package/dist/components/six-tab.js +2 -2
  176. package/dist/components/six-tab.js.map +1 -1
  177. package/dist/components/six-tag.js +2 -2
  178. package/dist/components/six-textarea.js +2 -2
  179. package/dist/components/six-tile.js +3 -3
  180. package/dist/components/six-tooltip2.js +2 -2
  181. package/dist/components.json +108 -10
  182. package/dist/esm/{form-control-40c37714.js → form-control-30c5bd8b.js} +2 -2
  183. package/dist/esm/{form-control-40c37714.js.map → form-control-30c5bd8b.js.map} +1 -1
  184. package/dist/esm/{index-52a755dc.js → index-5390c1d6.js} +455 -9
  185. package/dist/esm/index-5390c1d6.js.map +1 -0
  186. package/dist/esm/loader.js +3 -3
  187. package/dist/esm/six-alert.entry.js +1 -1
  188. package/dist/esm/six-avatar.entry.js +2 -2
  189. package/dist/esm/six-badge.entry.js +3 -3
  190. package/dist/esm/six-button.entry.js +5 -4
  191. package/dist/esm/six-button.entry.js.map +1 -1
  192. package/dist/esm/six-card.entry.js +2 -2
  193. package/dist/esm/six-checkbox_2.entry.js +6 -6
  194. package/dist/esm/six-datepicker.entry.js +13 -11
  195. package/dist/esm/six-datepicker.entry.js.map +1 -1
  196. package/dist/esm/six-details.entry.js +4 -4
  197. package/dist/esm/six-dialog.entry.js +3 -3
  198. package/dist/esm/six-drawer.entry.js +3 -3
  199. package/dist/esm/six-dropdown_2.entry.js +7 -4
  200. package/dist/esm/six-dropdown_2.entry.js.map +1 -1
  201. package/dist/esm/six-error-page.entry.js +2 -2
  202. package/dist/esm/six-error.entry.js +3 -3
  203. package/dist/esm/six-error.entry.js.map +1 -1
  204. package/dist/esm/six-file-list-item.entry.js +1 -1
  205. package/dist/esm/six-file-list.entry.js +2 -2
  206. package/dist/esm/six-file-upload.entry.js +27 -6
  207. package/dist/esm/six-file-upload.entry.js.map +1 -1
  208. package/dist/esm/six-footer.entry.js +2 -2
  209. package/dist/esm/six-group-label.entry.js +3 -3
  210. package/dist/esm/six-header.entry.js +22 -15
  211. package/dist/esm/six-header.entry.js.map +1 -1
  212. package/dist/esm/six-icon-button.entry.js +4 -4
  213. package/dist/esm/six-icon.entry.js +3 -3
  214. package/dist/esm/six-input.entry.js +5 -5
  215. package/dist/esm/six-item-picker.entry.js +1 -1
  216. package/dist/esm/six-language-switcher.entry.js +2 -2
  217. package/dist/esm/six-layout-grid.entry.js +2 -2
  218. package/dist/esm/six-main-container.entry.js +2 -2
  219. package/dist/esm/six-menu-divider.entry.js +2 -2
  220. package/dist/esm/six-menu-label.entry.js +2 -2
  221. package/dist/esm/six-picto.entry.js +2 -2
  222. package/dist/esm/six-progress-bar.entry.js +3 -3
  223. package/dist/esm/six-progress-ring.entry.js +2 -2
  224. package/dist/esm/six-radio.entry.js +3 -3
  225. package/dist/esm/six-range.entry.js +4 -4
  226. package/dist/esm/six-root.entry.js +2 -2
  227. package/dist/esm/six-search-field.entry.js +2 -2
  228. package/dist/esm/six-select.entry.js +68 -43
  229. package/dist/esm/six-select.entry.js.map +1 -1
  230. package/dist/esm/six-sidebar-item-group.entry.js +1 -1
  231. package/dist/esm/six-sidebar-item.entry.js +3 -3
  232. package/dist/esm/six-sidebar.entry.js +3 -3
  233. package/dist/esm/six-spinner.entry.js +1 -1
  234. package/dist/esm/six-stage-indicator.entry.js +1 -1
  235. package/dist/esm/six-switch.entry.js +4 -4
  236. package/dist/esm/six-tab-group.entry.js +3 -3
  237. package/dist/esm/six-tab-panel.entry.js +2 -2
  238. package/dist/esm/six-tab.entry.js +3 -3
  239. package/dist/esm/six-tab.entry.js.map +1 -1
  240. package/dist/esm/six-tag.entry.js +3 -3
  241. package/dist/esm/six-textarea.entry.js +4 -4
  242. package/dist/esm/six-tile.entry.js +4 -4
  243. package/dist/esm/six-timepicker.entry.js +1 -1
  244. package/dist/esm/six-tooltip.entry.js +3 -3
  245. package/dist/esm/ui-library.js +3 -3
  246. package/dist/types/components/six-button/six-button.d.ts +1 -1
  247. package/dist/types/components/six-file-upload/six-file-upload.d.ts +8 -0
  248. package/dist/types/components/six-header/six-header.d.ts +3 -1
  249. package/dist/types/components/six-menu/six-menu.d.ts +1 -1
  250. package/dist/types/components/six-select/six-select.d.ts +0 -2
  251. package/dist/types/components/six-select/util.d.ts +2 -0
  252. package/dist/types/components.d.ts +40 -2
  253. package/dist/ui-library/assets/TRADEMARKS.md +3 -3
  254. package/dist/ui-library/p-030fa1fa.entry.js +2 -0
  255. package/dist/ui-library/p-037afc74.entry.js +2 -0
  256. package/dist/ui-library/p-037afc74.entry.js.map +1 -0
  257. package/dist/ui-library/{p-29b75db4.entry.js → p-03d1b956.entry.js} +2 -2
  258. package/dist/ui-library/{p-45960b56.entry.js → p-047d02ad.entry.js} +2 -2
  259. package/dist/ui-library/p-05eb1bab.js +3 -0
  260. package/dist/ui-library/p-05eb1bab.js.map +1 -0
  261. package/dist/ui-library/{p-50dbe99f.entry.js → p-060069d4.entry.js} +2 -2
  262. package/dist/ui-library/{p-3827f9e0.entry.js → p-06ba653e.entry.js} +2 -2
  263. package/dist/ui-library/{p-3e9324c8.entry.js → p-07c8de65.entry.js} +2 -2
  264. package/dist/ui-library/{p-ab8f9503.entry.js → p-14e5fccc.entry.js} +2 -2
  265. package/dist/ui-library/p-189602e4.entry.js +2 -0
  266. package/dist/ui-library/{p-a2a6aaea.entry.js → p-19560508.entry.js} +2 -2
  267. package/dist/ui-library/{p-e798314b.entry.js → p-1cd7e5c3.entry.js} +2 -2
  268. package/dist/ui-library/p-1cd7e5c3.entry.js.map +1 -0
  269. package/dist/ui-library/{p-8938e9bd.entry.js → p-2386627e.entry.js} +2 -2
  270. package/dist/ui-library/{p-756f4acf.entry.js → p-32e421a3.entry.js} +2 -2
  271. package/dist/ui-library/p-32e421a3.entry.js.map +1 -0
  272. package/dist/ui-library/p-3603dd96.entry.js +2 -0
  273. package/dist/ui-library/{p-52c04973.entry.js → p-39ff5f61.entry.js} +2 -2
  274. package/dist/ui-library/{p-5f810571.entry.js → p-3b5a76ea.entry.js} +2 -2
  275. package/dist/ui-library/{p-724d0458.entry.js → p-419ed003.entry.js} +2 -2
  276. package/dist/ui-library/{p-21002de1.entry.js → p-45003bae.entry.js} +2 -2
  277. package/dist/ui-library/{p-93ab2efc.entry.js → p-4963f03c.entry.js} +2 -2
  278. package/dist/ui-library/{p-03900e17.entry.js → p-4d89932f.entry.js} +2 -2
  279. package/dist/ui-library/{p-aa99a393.js → p-605bdd81.js} +2 -2
  280. package/dist/ui-library/p-63acceb6.entry.js +2 -0
  281. package/dist/ui-library/{p-80476b0f.entry.js.map → p-63acceb6.entry.js.map} +1 -1
  282. package/dist/ui-library/{p-c948cf70.entry.js → p-6888b9ee.entry.js} +2 -2
  283. package/dist/ui-library/{p-8644f970.entry.js → p-6f9153be.entry.js} +2 -2
  284. package/dist/ui-library/p-785810fa.entry.js +2 -0
  285. package/dist/ui-library/p-785810fa.entry.js.map +1 -0
  286. package/dist/ui-library/p-7c18b8ca.entry.js +2 -0
  287. package/dist/ui-library/{p-1d4cb6e9.entry.js → p-82bd8781.entry.js} +2 -2
  288. package/dist/ui-library/p-89db9a8b.entry.js +2 -0
  289. package/dist/ui-library/{p-7a9dcb16.entry.js → p-8f1d3461.entry.js} +2 -2
  290. package/dist/ui-library/p-8fb96142.entry.js +2 -0
  291. package/dist/ui-library/p-8fb96142.entry.js.map +1 -0
  292. package/dist/ui-library/p-96d441e9.entry.js +2 -0
  293. package/dist/ui-library/p-96d441e9.entry.js.map +1 -0
  294. package/dist/ui-library/{p-8f307b55.entry.js → p-9bc1639b.entry.js} +2 -2
  295. package/dist/ui-library/p-9cb83369.entry.js +2 -0
  296. package/dist/ui-library/{p-d717a2f2.entry.js → p-a398e3eb.entry.js} +2 -2
  297. package/dist/ui-library/{p-19a1d34c.entry.js → p-a7e2f511.entry.js} +2 -2
  298. package/dist/ui-library/{p-7fc0bf6b.entry.js → p-a8863197.entry.js} +2 -2
  299. package/dist/ui-library/{p-9426a37b.entry.js → p-a9e009af.entry.js} +2 -2
  300. package/dist/ui-library/p-ab921403.entry.js +2 -0
  301. package/dist/ui-library/p-ab921403.entry.js.map +1 -0
  302. package/dist/ui-library/{p-01853739.entry.js → p-ac00076d.entry.js} +2 -2
  303. package/dist/ui-library/{p-803915da.entry.js → p-b4bc4915.entry.js} +2 -2
  304. package/dist/ui-library/{p-7562d5f5.entry.js → p-b5acf54d.entry.js} +2 -2
  305. package/dist/ui-library/{p-acc487ec.entry.js → p-b60c20aa.entry.js} +2 -2
  306. package/dist/ui-library/{p-7c2255b5.entry.js → p-c1d68730.entry.js} +2 -2
  307. package/dist/ui-library/{p-d55db23a.entry.js → p-c35a7cef.entry.js} +2 -2
  308. package/dist/ui-library/{p-e43e5e45.entry.js → p-c62893e5.entry.js} +2 -2
  309. package/dist/ui-library/{p-f8572492.entry.js → p-c6464bfe.entry.js} +2 -2
  310. package/dist/ui-library/{p-f8572492.entry.js.map → p-c6464bfe.entry.js.map} +1 -1
  311. package/dist/ui-library/{p-49e5d8bb.entry.js → p-cf109cbf.entry.js} +2 -2
  312. package/dist/ui-library/{p-6c96b62e.entry.js → p-d07b549f.entry.js} +2 -2
  313. package/dist/ui-library/{p-7a722a13.entry.js → p-d42f1ea9.entry.js} +2 -2
  314. package/dist/ui-library/p-fe37dadf.entry.js +2 -0
  315. package/dist/ui-library/{p-38a9a590.entry.js → p-fe89a7c4.entry.js} +2 -2
  316. package/dist/ui-library/ui-library.esm.js +1 -1
  317. package/dist/ui-library/ui-library.esm.js.map +1 -1
  318. package/package.json +2 -2
  319. package/dist/cjs/index-b288f7d9.js.map +0 -1
  320. package/dist/collection/components/six-header/assets/six-logo.svg +0 -1
  321. package/dist/collection/components/six-header/test/six-header.spec.js +0 -177
  322. package/dist/collection/components/six-header/test/six-header.spec.js.map +0 -1
  323. package/dist/esm/index-52a755dc.js.map +0 -1
  324. package/dist/ui-library/assets/six-logo.svg +0 -1
  325. package/dist/ui-library/p-0a094514.entry.js +0 -2
  326. package/dist/ui-library/p-19ca3bd1.entry.js +0 -2
  327. package/dist/ui-library/p-19ca3bd1.entry.js.map +0 -1
  328. package/dist/ui-library/p-1f1224ae.entry.js +0 -2
  329. package/dist/ui-library/p-338205f4.entry.js +0 -2
  330. package/dist/ui-library/p-338205f4.entry.js.map +0 -1
  331. package/dist/ui-library/p-3eed2287.entry.js +0 -2
  332. package/dist/ui-library/p-4af73ea9.entry.js +0 -2
  333. package/dist/ui-library/p-4af73ea9.entry.js.map +0 -1
  334. package/dist/ui-library/p-756f4acf.entry.js.map +0 -1
  335. package/dist/ui-library/p-80476b0f.entry.js +0 -2
  336. package/dist/ui-library/p-8dff4dcb.entry.js +0 -2
  337. package/dist/ui-library/p-8dff4dcb.entry.js.map +0 -1
  338. package/dist/ui-library/p-a2b8aca7.entry.js +0 -2
  339. package/dist/ui-library/p-ba7424b3.entry.js +0 -2
  340. package/dist/ui-library/p-d7739200.entry.js +0 -2
  341. package/dist/ui-library/p-e3766acb.entry.js +0 -2
  342. package/dist/ui-library/p-e798314b.entry.js.map +0 -1
  343. package/dist/ui-library/p-f1bb5648.entry.js +0 -2
  344. package/dist/ui-library/p-f1bb5648.entry.js.map +0 -1
  345. package/dist/ui-library/p-f93d8a4e.js +0 -3
  346. package/dist/ui-library/p-f93d8a4e.js.map +0 -1
  347. /package/dist/ui-library/{p-3eed2287.entry.js.map → p-030fa1fa.entry.js.map} +0 -0
  348. /package/dist/ui-library/{p-29b75db4.entry.js.map → p-03d1b956.entry.js.map} +0 -0
  349. /package/dist/ui-library/{p-45960b56.entry.js.map → p-047d02ad.entry.js.map} +0 -0
  350. /package/dist/ui-library/{p-50dbe99f.entry.js.map → p-060069d4.entry.js.map} +0 -0
  351. /package/dist/ui-library/{p-3827f9e0.entry.js.map → p-06ba653e.entry.js.map} +0 -0
  352. /package/dist/ui-library/{p-3e9324c8.entry.js.map → p-07c8de65.entry.js.map} +0 -0
  353. /package/dist/ui-library/{p-ab8f9503.entry.js.map → p-14e5fccc.entry.js.map} +0 -0
  354. /package/dist/ui-library/{p-d7739200.entry.js.map → p-189602e4.entry.js.map} +0 -0
  355. /package/dist/ui-library/{p-a2a6aaea.entry.js.map → p-19560508.entry.js.map} +0 -0
  356. /package/dist/ui-library/{p-8938e9bd.entry.js.map → p-2386627e.entry.js.map} +0 -0
  357. /package/dist/ui-library/{p-a2b8aca7.entry.js.map → p-3603dd96.entry.js.map} +0 -0
  358. /package/dist/ui-library/{p-52c04973.entry.js.map → p-39ff5f61.entry.js.map} +0 -0
  359. /package/dist/ui-library/{p-5f810571.entry.js.map → p-3b5a76ea.entry.js.map} +0 -0
  360. /package/dist/ui-library/{p-724d0458.entry.js.map → p-419ed003.entry.js.map} +0 -0
  361. /package/dist/ui-library/{p-21002de1.entry.js.map → p-45003bae.entry.js.map} +0 -0
  362. /package/dist/ui-library/{p-93ab2efc.entry.js.map → p-4963f03c.entry.js.map} +0 -0
  363. /package/dist/ui-library/{p-03900e17.entry.js.map → p-4d89932f.entry.js.map} +0 -0
  364. /package/dist/ui-library/{p-aa99a393.js.map → p-605bdd81.js.map} +0 -0
  365. /package/dist/ui-library/{p-c948cf70.entry.js.map → p-6888b9ee.entry.js.map} +0 -0
  366. /package/dist/ui-library/{p-8644f970.entry.js.map → p-6f9153be.entry.js.map} +0 -0
  367. /package/dist/ui-library/{p-e3766acb.entry.js.map → p-7c18b8ca.entry.js.map} +0 -0
  368. /package/dist/ui-library/{p-1d4cb6e9.entry.js.map → p-82bd8781.entry.js.map} +0 -0
  369. /package/dist/ui-library/{p-ba7424b3.entry.js.map → p-89db9a8b.entry.js.map} +0 -0
  370. /package/dist/ui-library/{p-7a9dcb16.entry.js.map → p-8f1d3461.entry.js.map} +0 -0
  371. /package/dist/ui-library/{p-8f307b55.entry.js.map → p-9bc1639b.entry.js.map} +0 -0
  372. /package/dist/ui-library/{p-0a094514.entry.js.map → p-9cb83369.entry.js.map} +0 -0
  373. /package/dist/ui-library/{p-d717a2f2.entry.js.map → p-a398e3eb.entry.js.map} +0 -0
  374. /package/dist/ui-library/{p-19a1d34c.entry.js.map → p-a7e2f511.entry.js.map} +0 -0
  375. /package/dist/ui-library/{p-7fc0bf6b.entry.js.map → p-a8863197.entry.js.map} +0 -0
  376. /package/dist/ui-library/{p-9426a37b.entry.js.map → p-a9e009af.entry.js.map} +0 -0
  377. /package/dist/ui-library/{p-01853739.entry.js.map → p-ac00076d.entry.js.map} +0 -0
  378. /package/dist/ui-library/{p-803915da.entry.js.map → p-b4bc4915.entry.js.map} +0 -0
  379. /package/dist/ui-library/{p-7562d5f5.entry.js.map → p-b5acf54d.entry.js.map} +0 -0
  380. /package/dist/ui-library/{p-acc487ec.entry.js.map → p-b60c20aa.entry.js.map} +0 -0
  381. /package/dist/ui-library/{p-7c2255b5.entry.js.map → p-c1d68730.entry.js.map} +0 -0
  382. /package/dist/ui-library/{p-d55db23a.entry.js.map → p-c35a7cef.entry.js.map} +0 -0
  383. /package/dist/ui-library/{p-e43e5e45.entry.js.map → p-c62893e5.entry.js.map} +0 -0
  384. /package/dist/ui-library/{p-49e5d8bb.entry.js.map → p-cf109cbf.entry.js.map} +0 -0
  385. /package/dist/ui-library/{p-6c96b62e.entry.js.map → p-d07b549f.entry.js.map} +0 -0
  386. /package/dist/ui-library/{p-7a722a13.entry.js.map → p-d42f1ea9.entry.js.map} +0 -0
  387. /package/dist/ui-library/{p-1f1224ae.entry.js.map → p-fe37dadf.entry.js.map} +0 -0
  388. /package/dist/ui-library/{p-38a9a590.entry.js.map → p-fe89a7c4.entry.js.map} +0 -0
@@ -178,7 +178,7 @@ const SixInput = /*@__PURE__*/ proxyCustomElement(class SixInput extends HTMLEle
178
178
  return ((_a = this.value) !== null && _a !== void 0 ? _a : '').toString();
179
179
  }
180
180
  render() {
181
- return (h(FormControl, { key: '5710dd4df8e2833ebcea698d46945d07083a4580', inputId: this.inputId, label: this.label, labelId: this.labelId, hasLabelSlot: this.hasLabelSlot, helpTextId: this.helpTextId, helpText: this.helpText, hasHelpTextSlot: this.hasHelpTextSlot, errorTextId: this.errorTextId, errorText: this.errorText, errorTextCount: this.errorTextCount, hasErrorTextSlot: this.hasErrorSlot, size: this.size, disabled: this.disabled, required: this.required, displayError: this.invalid }, h("div", { key: 'b5812726191ae11b8ccac0ac17403299c49348fe', part: "base", class: {
181
+ return (h(FormControl, { key: 'c814025e7db66cd628c466316a5bd3fe4c3e77bf', inputId: this.inputId, label: this.label, labelId: this.labelId, hasLabelSlot: this.hasLabelSlot, helpTextId: this.helpTextId, helpText: this.helpText, hasHelpTextSlot: this.hasHelpTextSlot, errorTextId: this.errorTextId, errorText: this.errorText, errorTextCount: this.errorTextCount, hasErrorTextSlot: this.hasErrorSlot, size: this.size, disabled: this.disabled, required: this.required, displayError: this.invalid }, h("div", { key: 'bad7f2e31ec8465f3292927e9d9fb37aa919cb33', part: "base", class: {
182
182
  input: true,
183
183
  // Sizes
184
184
  'input--small': this.size === 'small',
@@ -192,10 +192,10 @@ const SixInput = /*@__PURE__*/ proxyCustomElement(class SixInput extends HTMLEle
192
192
  'input--focused': this.hasFocus,
193
193
  'input--empty': this.getValue().length === 0,
194
194
  'input--invalid': this.invalid,
195
- } }, h("span", { key: '6068c91f240cbe044f3b4c43c9b2b2c8e4150bf5', part: "prefix", class: "input__prefix" }, h("slot", { key: '36166b5cdb2696d52985c60b7771ebcc943dd750', name: "prefix" })), h("input", { key: '37e14f53d5fc24e14eb93a6522d537722f8c739b', part: "input", ref: (el) => (this.nativeInput = el), id: this.inputId, size: 1, class: {
195
+ } }, h("span", { key: 'fa0b1320b4d44794f36047ca65efa9c03d180234', part: "prefix", class: "input__prefix" }, h("slot", { key: '8312c426648c862ef669cb424a219cb85f2b193c', name: "prefix" })), h("input", { key: '87ce5517721681533fc7bcf18d20cb3d1ee7fb6f', part: "input", ref: (el) => (this.nativeInput = el), id: this.inputId, size: 1, class: {
196
196
  input__control: true,
197
197
  input__control__prefix: hasSlot(this.host, 'prefix'),
198
- }, type: this.type === 'password' && this.isPasswordVisible ? 'text' : this.type, name: this.name, placeholder: this.placeholder, disabled: this.disabled, readonly: this.readonly, minLength: this.minlength, maxLength: this.maxlength, min: this.min, max: this.max, step: this.step, value: this.getValue(), autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, spellcheck: this.spellcheck, pattern: this.pattern, required: this.required, inputMode: this.inputmode, "aria-labelledby": this.labelId, "aria-describedby": this.helpTextId, "aria-invalid": this.invalid ? 'true' : 'false', onChange: this.handleChange, onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyDown: this.handleKeyDown, "data-testid": "input-control" }), this.clearable && (h("button", { part: "clear-button", class: "input__clear", type: "button", onClick: this.handleClearClick, tabindex: "-1", "data-testid": "input-clear-button" }, h("slot", { name: "clear-icon" }, h("six-icon", { size: ICON_SIZES[this.size] }, "clear")))), this.togglePassword && (h("button", { part: "password-toggle-button", class: "input__password-toggle", type: "button", onClick: this.handlePasswordToggle, tabindex: "-1" }, this.isPasswordVisible ? (h("slot", { name: "show-password-icon" }, h("six-icon", { size: ICON_SIZES[this.size] }, "visibility_off"))) : (h("slot", { name: "hide-password-icon" }, h("six-icon", { size: ICON_SIZES[this.size] }, "visibility"))))), h("span", { key: 'f1b2b407390c5f1a00ae30b5853aafc7e2f3738a', part: "suffix", class: "input__suffix" }, h("slot", { key: 'f7844f40590b6cb4f39e49796272fa8de6754767', name: "suffix" })))));
198
+ }, type: this.type === 'password' && this.isPasswordVisible ? 'text' : this.type, name: this.name, placeholder: this.placeholder, disabled: this.disabled, readonly: this.readonly, minLength: this.minlength, maxLength: this.maxlength, min: this.min, max: this.max, step: this.step, value: this.getValue(), autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, spellcheck: this.spellcheck, pattern: this.pattern, required: this.required, inputMode: this.inputmode, "aria-labelledby": this.labelId, "aria-describedby": this.helpTextId, "aria-invalid": this.invalid ? 'true' : 'false', onChange: this.handleChange, onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyDown: this.handleKeyDown, "data-testid": "input-control" }), this.clearable && (h("button", { part: "clear-button", class: "input__clear", type: "button", onClick: this.handleClearClick, tabindex: "-1", "data-testid": "input-clear-button" }, h("slot", { name: "clear-icon" }, h("six-icon", { size: ICON_SIZES[this.size] }, "clear")))), this.togglePassword && (h("button", { part: "password-toggle-button", class: "input__password-toggle", type: "button", onClick: this.handlePasswordToggle, tabindex: "-1" }, this.isPasswordVisible ? (h("slot", { name: "show-password-icon" }, h("six-icon", { size: ICON_SIZES[this.size] }, "visibility_off"))) : (h("slot", { name: "hide-password-icon" }, h("six-icon", { size: ICON_SIZES[this.size] }, "visibility"))))), h("span", { key: '5768204290a458c6025f93d7eed7b4762fa8ab94', part: "suffix", class: "input__suffix" }, h("slot", { key: '9f1917c71eeb148d31adf808299ef43c5307678f', name: "suffix" })))));
199
199
  }
200
200
  get host() { return this; }
201
201
  static get watchers() { return {
@@ -45,7 +45,7 @@ const SixLanguageSwitcher$1 = /*@__PURE__*/ proxyCustomElement(class SixLanguage
45
45
  }
46
46
  }
47
47
  render() {
48
- return (h("div", { key: 'fa72eaaf2cb5c0f327a0924e12779863f348b59c', part: "container", class: "language-switcher__container" }, this.languages.map((lang, index) => {
48
+ return (h("div", { key: '64f80894523a4b03643949135f18b553cd0517b6', part: "container", class: "language-switcher__container" }, this.languages.map((lang, index) => {
49
49
  const language = typeof lang === 'string' ? lang : lang.key;
50
50
  return (h("div", { onClick: this.handleLanguageSwitching(language, typeof lang === 'string' ? lang : lang.value), onKeyDown: (e) => {
51
51
  if (e.key === 'Enter' || e.key === ' ') {
@@ -20,7 +20,7 @@ const SixLayoutGrid$1 = /*@__PURE__*/ proxyCustomElement(class SixLayoutGrid ext
20
20
  this.handleColumnsChange();
21
21
  }
22
22
  render() {
23
- return (h(Host, { key: '9ba9e7ea26b16c5a28677cbc19d7afe38e5a70be' }, h("slot", { key: '62ee116798886fdca9816688f2775421a9ba497c' })));
23
+ return (h(Host, { key: '84c4fee011655f296908661ae1b10452a5682594' }, h("slot", { key: '389a12ed87de92e7c835df2a77c0f6316406284e' })));
24
24
  }
25
25
  get host() { return this; }
26
26
  static get watchers() { return {
@@ -11,7 +11,7 @@ const SixMainContainer$1 = /*@__PURE__*/ proxyCustomElement(class SixMainContain
11
11
  this.padded = true;
12
12
  }
13
13
  render() {
14
- return (h(Host, { key: '712a383a9bcc05a7046f1707951bb917796152d9' }, h("div", { key: '3694372cdbbbce9a01a179df7f2aab5d4b1555cf', part: "left-margin", class: "left-margin" }), h("div", { key: 'd1f5e603395c3cda9c90a9083be928ebff69d41c', part: "content", class: { content: true, 'content--padded': this.padded } }, h("slot", { key: '8fd9dfaf4a636df3c273998202c2cbf6c05dbd13' })), h("div", { key: '809c6e83655dbdcbeda840d1f512f66748363719', part: "right-margin", class: "right-margin" })));
14
+ return (h(Host, { key: '4bf03e808f3abace9917558e8a2bc284b5109fba' }, h("div", { key: '3eb055ccdcb16738f697d4d7417bdd0cedf05a5f', part: "left-margin", class: "left-margin" }), h("div", { key: '66c3c641294c52966bbb35156956e457af76a3af', part: "content", class: { content: true, 'content--padded': this.padded } }, h("slot", { key: '9dcca3e96ab1023109b9e3db5d16ec8a2d117119' })), h("div", { key: '739f4ed3956e096103d59a475f3e0611a0ea4e73', part: "right-margin", class: "right-margin" })));
15
15
  }
16
16
  get host() { return this; }
17
17
  static get style() { return SixMainContainerStyle0; }
@@ -10,7 +10,7 @@ const SixMenuDivider$1 = /*@__PURE__*/ proxyCustomElement(class SixMenuDivider e
10
10
  this.__attachShadow();
11
11
  }
12
12
  render() {
13
- return h("div", { key: 'ae890203093a071811e37e77637b68c2b858c202', part: "base", class: "menu-divider", role: "separator", "aria-hidden": "true" });
13
+ return h("div", { key: '41a61bd4110bfb44f10211c350afcebe5c5971df', part: "base", class: "menu-divider", role: "separator", "aria-hidden": "true" });
14
14
  }
15
15
  static get style() { return SixMenuDividerStyle0; }
16
16
  }, [1, "six-menu-divider"]);
@@ -57,13 +57,13 @@ const SixMenuItem = /*@__PURE__*/ proxyCustomElement(class SixMenuItem extends H
57
57
  this.hasFocus = false;
58
58
  }
59
59
  render() {
60
- return (h("div", { key: 'a91c841a6fac9e807f623cd337d9902a6ee98aaa', ref: (el) => (this.menuItem = el), part: "base", class: {
60
+ return (h("div", { key: 'd8c10ca0fc9bd795b87790337f2cc0c792999685', ref: (el) => (this.menuItem = el), part: "base", class: {
61
61
  'menu-item': true,
62
62
  'menu-item--checked': this.checked,
63
63
  'menu-item--disabled': this.disabled,
64
64
  'menu-item--focused': this.hasFocus,
65
65
  'menu-item--active': this.active,
66
- }, role: "menuitem", "aria-disabled": this.disabled ? 'true' : 'false', "aria-checked": this.checked ? 'true' : 'false', tabIndex: !this.disabled ? 0 : undefined, onFocus: this.handleFocus, onBlur: this.handleBlur, onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave }, this.checkType === 'checkbox' && (h("span", { class: "menu-item__checkbox" }, h("six-checkbox", { "onSix-checkbox-change": this.handleCheckboxChange, disabled: this.disabled, checked: this.checked }))), h("span", { key: '5d4fa9c6c86e1506703cdbe0d295e753ba251302', part: "prefix", class: "menu-item__prefix" }, h("slot", { key: '619b262517cddb822a90e7251ce720c8bee09bb9', name: "prefix" })), h("span", { key: '94c554dec6b00e361f84ab42f27c06c94908f9e7', part: "label", class: "menu-item__label" }, h("slot", { key: '5e0dded9fd06cd4b1bf3cad28025f97da055326b', ref: (el) => (this.defaultSlot = el) })), h("span", { key: 'bd328a4e14592019cc68fc12ef66c9e2561f561f', part: "suffix", class: "menu-item__suffix" }, h("slot", { key: '7a46bc384827392a4bc55e424d926de1f8d36766', name: "suffix" })), this.checkType === 'check' && (h("span", { part: "checked-icon", class: "menu-item__check" }, h("six-icon", { size: "small", "aria-hidden": "true" }, "check")))));
66
+ }, role: "menuitem", "aria-disabled": this.disabled ? 'true' : 'false', "aria-checked": this.checked ? 'true' : 'false', tabIndex: !this.disabled ? 0 : undefined, onFocus: this.handleFocus, onBlur: this.handleBlur, onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave }, this.checkType === 'checkbox' && (h("span", { class: "menu-item__checkbox" }, h("six-checkbox", { "onSix-checkbox-change": this.handleCheckboxChange, disabled: this.disabled, checked: this.checked }))), h("span", { key: '470f2fee47a4120c0dead3b7996220af9e5274d1', part: "prefix", class: "menu-item__prefix" }, h("slot", { key: 'fdddb68cb266d02f6a6a2b46ffcdecb1d8eb32db', name: "prefix" })), h("span", { key: '6d9fe694ce0e07f2aac3604b905f9194f4764057', part: "label", class: "menu-item__label" }, h("slot", { key: 'ef2903a04191f78955802da5edefd32583305068', ref: (el) => (this.defaultSlot = el) })), h("span", { key: 'd4f6ee6c2789c33deaf08eb585ec7ca283b59170', part: "suffix", class: "menu-item__suffix" }, h("slot", { key: '39a1d59be3d1f9deda4c55b1575a72c647600783', name: "suffix" })), this.checkType === 'check' && (h("span", { part: "checked-icon", class: "menu-item__check" }, h("six-icon", { size: "small", "aria-hidden": "true" }, "check")))));
67
67
  }
68
68
  get host() { return this; }
69
69
  static get style() { return SixMenuItemStyle0; }
@@ -10,7 +10,7 @@ const SixMenuLabel$1 = /*@__PURE__*/ proxyCustomElement(class SixMenuLabel exten
10
10
  this.__attachShadow();
11
11
  }
12
12
  render() {
13
- return (h("div", { key: 'c6c5d6cccd54d6fbdbdf2a561165fbb22547976e', part: "base", class: "menu-label" }, h("slot", { key: '33bf6b17abe001e11677c5fbae1573dcd84280f1' })));
13
+ return (h("div", { key: '5183d165a877bd2ca0c25d4ff61d55200b66132d', part: "base", class: "menu-label" }, h("slot", { key: '5adecf55a82a78de5eee401aeec442f7e60e0874' })));
14
14
  }
15
15
  static get style() { return SixMenuLabelStyle0; }
16
16
  }, [1, "six-menu-label"]);
@@ -14,6 +14,7 @@ const isFocusedMenuItem = (menuItem) => { var _a, _b, _c; return (_c = (_b = (_a
14
14
  const isSIXMenuItemElement = (el) => (el === null || el === void 0 ? void 0 : el.tagName.toLowerCase()) === 'six-menu-item';
15
15
  const mapToMenuItem = ({ value, label }) => (h("six-menu-item", { key: value, value: value }, label));
16
16
  const DEFAULT_NUMBER_OF_ITEMS_SHOWN_FOR_VIRTUAL_SCROLLING = 5;
17
+ const DEFAULT_SIX_MENU_ITEM_HEIGHT_FOR_VIRTUAL_SCROLLING = 48;
17
18
  const DEFAULT_SIX_MENU_ITEM_HEIGHT = 64;
18
19
  const SixMenu = /*@__PURE__*/ proxyCustomElement(class SixMenu extends HTMLElement {
19
20
  constructor() {
@@ -37,7 +38,9 @@ const SixMenu = /*@__PURE__*/ proxyCustomElement(class SixMenu extends HTMLEleme
37
38
  this.scrollingDebounce = 15;
38
39
  this.disableKeyboardHandling = false;
39
40
  this.scrollingIndex = 0;
40
- this.sixMenuItemHeight = DEFAULT_SIX_MENU_ITEM_HEIGHT;
41
+ this.sixMenuItemHeight = this.virtualScroll
42
+ ? DEFAULT_SIX_MENU_ITEM_HEIGHT_FOR_VIRTUAL_SCROLLING
43
+ : DEFAULT_SIX_MENU_ITEM_HEIGHT;
41
44
  }
42
45
  connectedCallback() {
43
46
  this.handleClick = this.handleClick.bind(this);
@@ -218,10 +221,10 @@ const SixMenu = /*@__PURE__*/ proxyCustomElement(class SixMenu extends HTMLEleme
218
221
  .map(({ value, label }) => (h("six-menu-item", { checkType: "check", key: value, value: value }, label)));
219
222
  }
220
223
  render() {
221
- return (h("div", { key: 'a8806ec6aee657eb677931fc1ba1405caec3e96e', ref: (el) => (this.menuWrapper = el), style: this.getMenuWrapperStyle(), part: "wrapper", class: {
224
+ return (h("div", { key: 'a58563fa250a4823ddaac76fbd2fcf52b45d489e', ref: (el) => (this.menuWrapper = el), style: this.getMenuWrapperStyle(), part: "wrapper", class: {
222
225
  menu: true,
223
226
  '.no-shadow': this.removeBoxShadow,
224
- } }, h("div", { key: '34b85eb38385f88e87f49a6689cf6ad082723a87', ref: (el) => (this.menu = el), part: "base", role: "menu", onClick: this.handleClick, onKeyDown: this.handleKeyDown, tabIndex: 0, style: this.getMenuContainerStyle() }, h("slot", { key: 'a62dcc8bd5d97a8d479f4a4270aedcb77b729aea' }), this.renderItems()), this.virtualScroll && h("div", { style: this.getScrollbarGhostStyle() })));
227
+ } }, h("div", { key: 'a23a144fd5f0912c56b518ed43d16b871b85698e', ref: (el) => (this.menu = el), part: "base", role: "menu", onClick: this.handleClick, onKeyDown: this.handleKeyDown, tabIndex: 0, style: this.getMenuContainerStyle() }, h("slot", { key: 'b76e00f3b452c0202f18e966a52a43fc7844131e' }), this.renderItems()), this.virtualScroll && h("div", { style: this.getScrollbarGhostStyle() })));
225
228
  }
226
229
  get host() { return this; }
227
230
  static get style() { return SixMenuStyle0; }
@@ -1 +1 @@
1
- {"file":"six-menu2.js","mappings":"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","names":[],"sources":["src/components/six-menu/six-menu.scss?tag=six-menu&encapsulation=shadow","src/components/six-menu/six-menu.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: block;\n}\n\n.menu {\n padding: var(--six-spacing-xx-small) 0;\n border: none;\n box-shadow: var(--six-shadow-small);\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n.menu:focus {\n outline: none;\n}\n\n.no-shadow {\n box-shadow: none;\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State } from '@stencil/core';\nimport { getTextContent } from '../../utils/slot';\nimport { StyleDeclaration } from '../../utils/types';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { debounce } from '../../utils/execution-control';\n\nexport interface SixMenuItemData {\n label: string;\n value: string;\n}\n\nexport interface SixMenuItemSelectedPayload {\n name: string;\n item: HTMLSixMenuItemElement;\n}\n\nconst isFocusedMenuItem = (menuItem: HTMLSixMenuItemElement) =>\n menuItem?.shadowRoot?.querySelector('.menu-item')?.classList?.contains('menu-item--focused');\n\nconst isSIXMenuItemElement = (el?: Element): el is HTMLSixMenuItemElement =>\n el?.tagName.toLowerCase() === 'six-menu-item';\n\nconst mapToMenuItem = ({ value, label }: SixMenuItemData) => (\n <six-menu-item key={value} value={value}>\n {label}\n </six-menu-item>\n);\n\nconst DEFAULT_NUMBER_OF_ITEMS_SHOWN_FOR_VIRTUAL_SCROLLING = 5;\n\nconst DEFAULT_SIX_MENU_ITEM_HEIGHT = 64;\n\n/**\n * @since 1.0\n * @status stable\n *\n * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.\n *\n * @slot - The menu's content, including menu items, menu dividers, and menu labels.\n *\n * @part base - The component's base wrapper.\n */\n@Component({\n tag: 'six-menu',\n styleUrl: 'six-menu.scss',\n shadow: true,\n})\nexport class SixMenu {\n private readonly eventListeners = new EventListeners();\n\n private menu?: HTMLElement;\n private menuWrapper?: HTMLElement;\n private typeToSelectString = '';\n private typeToSelectTimeout?: number;\n\n @Element() host!: HTMLSixMenuElement;\n\n /** Emitted when a menu item is selected. */\n @Event({ eventName: 'six-menu-item-selected' }) sixMenuItemSelected!: EventEmitter<SixMenuItemSelectedPayload>;\n\n /** Set to true to remove the box-shadow */\n @Prop() removeBoxShadow = false;\n\n /** Set the options to be shown in the dropdown */\n @Prop() items: SixMenuItemData[] | null = null;\n\n /** Defines how many items should be shown. If the number of items is larger than this property a scrollbar will be shown */\n @Prop() itemsShown?: number;\n\n /** Defines whether the menu list will be rendered virtually i.e. only the elements actually shown (and a couple around)\n * are actually rendered in the DOM. If you use virtual scrolling pass the elements via prop instead of via slot. */\n @Prop() virtualScroll = false;\n\n /**\n * Used for virtual scrolling\n * Define how many items should be rendered in the DOM when using virtual scrolling\n */\n @Prop() itemSize = 10;\n\n /**\n * Used for virtual scrolling\n * Define the debounce for listening on scrolling changes in milliseconds.\n * The lower the number the more sensitive the component reacts to scrolling changes.\n */\n @Prop() scrollingDebounce = 15;\n\n /**\n * Internal: Disables handling of key presses.\n */\n @Prop() disableKeyboardHandling = false;\n\n /**\n * Used to calculate which items should be rendered in the DOM\n */\n @State()\n private scrollingIndex = 0;\n\n // set a default item height, this variable will be updated with the real value after the first render.\n // However, it's necessary to have a default value because we can only fetch the proper height after the first render\n @State()\n sixMenuItemHeight = DEFAULT_SIX_MENU_ITEM_HEIGHT;\n\n connectedCallback() {\n this.handleClick = this.handleClick.bind(this);\n this.handleKeyDown = this.handleKeyDown.bind(this);\n }\n\n componentWillLoad() {\n if (this.items === null) {\n return;\n }\n }\n\n private handleScrolling = () => {\n if (this.menuWrapper == null) return;\n // for performance improvements we only update the DOM if the scrollRatio change \"enough\"\n this.scrollingIndex = Math.floor(this.menuWrapper.scrollTop / this.sixMenuItemHeight);\n };\n\n componentDidLoad() {\n this.setupForVirtualScrollingAfterRendering();\n }\n\n disconnectedCallback() {\n this.eventListeners.removeAll();\n }\n\n /**\n * Initiates type-to-select logic, which automatically selects an option based on what the user is currently typing.\n * The key passed will be appended to the internal query and the selection will be updated. After a brief period, the\n * internal query is cleared automatically. This method is intended to be used with the keydown event. Useful for\n * enabling type-to-select when the menu doesn't have focus.\n */\n @Method()\n async typeToSelect(key: string) {\n clearTimeout(this.typeToSelectTimeout);\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n this.typeToSelectTimeout = setTimeout(() => (this.typeToSelectString = ''), 750);\n this.typeToSelectString += key.toLowerCase();\n const items = this.getItems();\n for (const item of items) {\n const slot = item.shadowRoot?.querySelector('slot:not([name])') as HTMLSlotElement;\n const label = getTextContent(slot).toLowerCase().trim();\n if (label.substring(0, this.typeToSelectString.length) === this.typeToSelectString) {\n item.setFocus();\n break;\n }\n }\n }\n\n private getItemsShown(): number {\n const defaultItemsShown = this.virtualScroll ? DEFAULT_NUMBER_OF_ITEMS_SHOWN_FOR_VIRTUAL_SCROLLING : 0;\n return this.itemsShown ?? defaultItemsShown;\n }\n\n private setupForVirtualScrollingAfterRendering() {\n if (!this.virtualScroll || this.menuWrapper == null) return;\n\n this.eventListeners.add(this.menuWrapper, 'scroll', debounce(this.handleScrolling, this.scrollingDebounce));\n\n // set menu height to proper height once the item is rendered.\n const menuItemHeight = this.menu?.querySelector('six-menu-item')?.clientHeight;\n if (menuItemHeight != null && menuItemHeight > 0) {\n this.sixMenuItemHeight = menuItemHeight;\n }\n }\n\n private getItems(): HTMLSixMenuItemElement[] {\n if (this.menu == null) return [];\n\n if (this.items != null) {\n return this.items.map(mapToMenuItem);\n }\n\n const slot = this.menu.querySelector('slot');\n if (slot == null) return [];\n return [...slot.assignedElements({ flatten: true })].filter(\n (el): el is HTMLSixMenuItemElement => isSIXMenuItemElement(el) && !el.disabled\n );\n }\n\n private getActiveItemIndex() {\n const items = this.getItems();\n const selectedItem = this.getActiveItem();\n if (selectedItem != null) {\n const itemIndex = items.indexOf(selectedItem);\n if (itemIndex > -1) {\n return itemIndex;\n }\n }\n const sixMenuItems = this.extractItemsFromDOM();\n return sixMenuItems.findIndex(isFocusedMenuItem);\n }\n\n private getActiveItem(): HTMLSixMenuItemElement | undefined {\n const activeElement = this.getItems().find((i) => i === document.activeElement);\n if (activeElement != null) {\n return activeElement;\n }\n return this.extractItemsFromDOM()?.find(isFocusedMenuItem);\n }\n\n private extractItemsFromDOM() {\n return Array.from(this.host.shadowRoot?.querySelectorAll('six-menu-item') ?? []);\n }\n\n private setActiveItem(item: HTMLSixMenuItemElement) {\n item?.setFocus();\n }\n\n private handleClick(event: MouseEvent) {\n const target = event.target as HTMLElement;\n const clickedItem = target.closest('six-menu-item');\n if (clickedItem && !clickedItem.disabled) {\n this.sixMenuItemSelected.emit({ name: clickedItem.value, item: clickedItem });\n }\n }\n\n private handleKeyDown(event: KeyboardEvent) {\n if (this.disableKeyboardHandling) {\n return;\n }\n\n // Make a selection when pressing enter\n if (event.key === 'Enter') {\n const activeItem = this.getActiveItem();\n event.preventDefault();\n\n if (activeItem != null) {\n this.sixMenuItemSelected.emit({ name: activeItem.value, item: activeItem });\n }\n }\n\n // Prevent scrolling when space is pressed\n if (event.key === ' ') {\n event.preventDefault();\n }\n\n // Move the selection when pressing down or up\n if (['ArrowDown', 'ArrowUp', 'Home', 'End'].includes(event.key)) {\n const items = this.items === null ? this.getItems() : this.extractItemsFromDOM();\n\n let indexOfActiveItem = this.getActiveItemIndex();\n\n if (items.length > 0) {\n event.preventDefault();\n\n if (event.key === 'ArrowDown') {\n indexOfActiveItem++;\n } else if (event.key === 'ArrowUp') {\n indexOfActiveItem--;\n } else if (event.key === 'Home') {\n indexOfActiveItem = 0;\n } else if (event.key === 'End') {\n indexOfActiveItem = items.length - 1;\n }\n\n if (indexOfActiveItem < 0) indexOfActiveItem = 0;\n if (indexOfActiveItem > items.length - 1) indexOfActiveItem = items.length - 1;\n\n this.setActiveItem(items[indexOfActiveItem]);\n\n return;\n }\n }\n\n void this.typeToSelect(event.key);\n }\n\n private getMenuWrapperStyle() {\n const styles: Partial<StyleDeclaration> = {};\n if (this.getItemsShown() > 0) {\n // calculate the proper height to show the correct number of items\n styles.height = `${(this.getItemsShown() ?? 0) * this.sixMenuItemHeight}px`;\n }\n return {\n ...styles,\n };\n }\n\n private getMenuContainerStyle() {\n const styles: Partial<StyleDeclaration> = {};\n\n if (this.virtualScroll) {\n // calculate height of content are if all items would be rendered so the scrollbar has the proper size\n styles.transform = `translateY(${this.sixMenuItemHeight * this.scrollingIndex}px)`;\n }\n\n return {\n ...styles,\n };\n }\n\n private getScrollbarGhostStyle() {\n const styles: Partial<StyleDeclaration> = {};\n\n if (this.virtualScroll && this.items !== null) {\n styles.height = `${this.items.length * this.sixMenuItemHeight - this.itemSize * this.sixMenuItemHeight}px`;\n }\n\n return {\n ...styles,\n };\n }\n\n private renderItems() {\n if (this.items === undefined || this.items === null) {\n return;\n }\n\n if (!this.virtualScroll) {\n return this.items.map(mapToMenuItem);\n }\n\n return this.items\n .slice(this.scrollingIndex, Math.min(this.items.length, this.itemSize + this.scrollingIndex))\n .map(({ value, label }: SixMenuItemData) => (\n <six-menu-item checkType=\"check\" key={value} value={value}>\n {label}\n </six-menu-item>\n ));\n }\n\n render() {\n return (\n <div\n ref={(el) => (this.menuWrapper = el)}\n style={this.getMenuWrapperStyle()}\n part=\"wrapper\"\n class={{\n menu: true,\n '.no-shadow': this.removeBoxShadow,\n }}\n >\n <div\n ref={(el) => (this.menu = el)}\n part=\"base\"\n role=\"menu\"\n onClick={this.handleClick}\n onKeyDown={this.handleKeyDown}\n tabIndex={0}\n style={this.getMenuContainerStyle()}\n >\n <slot />\n {this.renderItems()}\n </div>\n {this.virtualScroll && <div style={this.getScrollbarGhostStyle()} />}\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"six-menu2.js","mappings":"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","names":[],"sources":["src/components/six-menu/six-menu.scss?tag=six-menu&encapsulation=shadow","src/components/six-menu/six-menu.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: block;\n}\n\n.menu {\n padding: var(--six-spacing-xx-small) 0;\n border: none;\n box-shadow: var(--six-shadow-small);\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n.menu:focus {\n outline: none;\n}\n\n.no-shadow {\n box-shadow: none;\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State } from '@stencil/core';\nimport { getTextContent } from '../../utils/slot';\nimport { StyleDeclaration } from '../../utils/types';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { debounce } from '../../utils/execution-control';\n\nexport interface SixMenuItemData {\n label: string;\n value: string;\n}\n\nexport interface SixMenuItemSelectedPayload {\n name: string;\n item: HTMLSixMenuItemElement;\n}\n\nconst isFocusedMenuItem = (menuItem: HTMLSixMenuItemElement) =>\n menuItem?.shadowRoot?.querySelector('.menu-item')?.classList?.contains('menu-item--focused');\n\nconst isSIXMenuItemElement = (el?: Element): el is HTMLSixMenuItemElement =>\n el?.tagName.toLowerCase() === 'six-menu-item';\n\nconst mapToMenuItem = ({ value, label }: SixMenuItemData) => (\n <six-menu-item key={value} value={value}>\n {label}\n </six-menu-item>\n);\n\nconst DEFAULT_NUMBER_OF_ITEMS_SHOWN_FOR_VIRTUAL_SCROLLING = 5;\nconst DEFAULT_SIX_MENU_ITEM_HEIGHT_FOR_VIRTUAL_SCROLLING = 48;\nconst DEFAULT_SIX_MENU_ITEM_HEIGHT = 64;\n\n/**\n * @since 1.0\n * @status stable\n *\n * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.\n *\n * @slot - The menu's content, including menu items, menu dividers, and menu labels.\n *\n * @part base - The component's base wrapper.\n */\n@Component({\n tag: 'six-menu',\n styleUrl: 'six-menu.scss',\n shadow: true,\n})\nexport class SixMenu {\n private readonly eventListeners = new EventListeners();\n\n private menu?: HTMLElement;\n private menuWrapper?: HTMLElement;\n private typeToSelectString = '';\n private typeToSelectTimeout?: number;\n\n @Element() host!: HTMLSixMenuElement;\n\n /** Emitted when a menu item is selected. */\n @Event({ eventName: 'six-menu-item-selected' }) sixMenuItemSelected!: EventEmitter<SixMenuItemSelectedPayload>;\n\n /** Set to true to remove the box-shadow */\n @Prop() removeBoxShadow = false;\n\n /** Set the options to be shown in the dropdown */\n @Prop() items: SixMenuItemData[] | null = null;\n\n /** Defines how many items should be shown. If the number of items is larger than this property a scrollbar will be shown */\n @Prop() itemsShown?: number;\n\n /** Defines whether the menu list will be rendered virtually i.e. only the elements actually shown (and a couple around)\n * are actually rendered in the DOM. If you use virtual scrolling pass the elements via prop instead of via slot. */\n @Prop() virtualScroll = false;\n\n /**\n * Used for virtual scrolling\n * Define how many items should be rendered in the DOM when using virtual scrolling\n */\n @Prop() itemSize = 10;\n\n /**\n * Used for virtual scrolling\n * Define the debounce for listening on scrolling changes in milliseconds.\n * The lower the number the more sensitive the component reacts to scrolling changes.\n */\n @Prop() scrollingDebounce = 15;\n\n /**\n * Internal: Disables handling of key presses.\n */\n @Prop() disableKeyboardHandling = false;\n\n /**\n * Used to calculate which items should be rendered in the DOM\n */\n @State()\n private scrollingIndex = 0;\n\n // set a default item height, this variable will be updated with the real value after the first render.\n // However, it's necessary to have a default value because we can only fetch the proper height after the first render\n @State()\n private sixMenuItemHeight = this.virtualScroll\n ? DEFAULT_SIX_MENU_ITEM_HEIGHT_FOR_VIRTUAL_SCROLLING\n : DEFAULT_SIX_MENU_ITEM_HEIGHT;\n\n connectedCallback() {\n this.handleClick = this.handleClick.bind(this);\n this.handleKeyDown = this.handleKeyDown.bind(this);\n }\n\n componentWillLoad() {\n if (this.items === null) {\n return;\n }\n }\n\n private handleScrolling = () => {\n if (this.menuWrapper == null) return;\n // for performance improvements we only update the DOM if the scrollRatio change \"enough\"\n this.scrollingIndex = Math.floor(this.menuWrapper.scrollTop / this.sixMenuItemHeight);\n };\n\n componentDidLoad() {\n this.setupForVirtualScrollingAfterRendering();\n }\n\n disconnectedCallback() {\n this.eventListeners.removeAll();\n }\n\n /**\n * Initiates type-to-select logic, which automatically selects an option based on what the user is currently typing.\n * The key passed will be appended to the internal query and the selection will be updated. After a brief period, the\n * internal query is cleared automatically. This method is intended to be used with the keydown event. Useful for\n * enabling type-to-select when the menu doesn't have focus.\n */\n @Method()\n async typeToSelect(key: string) {\n clearTimeout(this.typeToSelectTimeout);\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n this.typeToSelectTimeout = setTimeout(() => (this.typeToSelectString = ''), 750);\n this.typeToSelectString += key.toLowerCase();\n const items = this.getItems();\n for (const item of items) {\n const slot = item.shadowRoot?.querySelector('slot:not([name])') as HTMLSlotElement;\n const label = getTextContent(slot).toLowerCase().trim();\n if (label.substring(0, this.typeToSelectString.length) === this.typeToSelectString) {\n item.setFocus();\n break;\n }\n }\n }\n\n private getItemsShown(): number {\n const defaultItemsShown = this.virtualScroll ? DEFAULT_NUMBER_OF_ITEMS_SHOWN_FOR_VIRTUAL_SCROLLING : 0;\n return this.itemsShown ?? defaultItemsShown;\n }\n\n private setupForVirtualScrollingAfterRendering() {\n if (!this.virtualScroll || this.menuWrapper == null) return;\n\n this.eventListeners.add(this.menuWrapper, 'scroll', debounce(this.handleScrolling, this.scrollingDebounce));\n\n // set menu height to proper height once the item is rendered.\n const menuItemHeight = this.menu?.querySelector('six-menu-item')?.clientHeight;\n if (menuItemHeight != null && menuItemHeight > 0) {\n this.sixMenuItemHeight = menuItemHeight;\n }\n }\n\n private getItems(): HTMLSixMenuItemElement[] {\n if (this.menu == null) return [];\n\n if (this.items != null) {\n return this.items.map(mapToMenuItem);\n }\n\n const slot = this.menu.querySelector('slot');\n if (slot == null) return [];\n return [...slot.assignedElements({ flatten: true })].filter(\n (el): el is HTMLSixMenuItemElement => isSIXMenuItemElement(el) && !el.disabled\n );\n }\n\n private getActiveItemIndex() {\n const items = this.getItems();\n const selectedItem = this.getActiveItem();\n if (selectedItem != null) {\n const itemIndex = items.indexOf(selectedItem);\n if (itemIndex > -1) {\n return itemIndex;\n }\n }\n const sixMenuItems = this.extractItemsFromDOM();\n return sixMenuItems.findIndex(isFocusedMenuItem);\n }\n\n private getActiveItem(): HTMLSixMenuItemElement | undefined {\n const activeElement = this.getItems().find((i) => i === document.activeElement);\n if (activeElement != null) {\n return activeElement;\n }\n return this.extractItemsFromDOM()?.find(isFocusedMenuItem);\n }\n\n private extractItemsFromDOM() {\n return Array.from(this.host.shadowRoot?.querySelectorAll('six-menu-item') ?? []);\n }\n\n private setActiveItem(item: HTMLSixMenuItemElement) {\n item?.setFocus();\n }\n\n private handleClick(event: MouseEvent) {\n const target = event.target as HTMLElement;\n const clickedItem = target.closest('six-menu-item');\n if (clickedItem && !clickedItem.disabled) {\n this.sixMenuItemSelected.emit({ name: clickedItem.value, item: clickedItem });\n }\n }\n\n private handleKeyDown(event: KeyboardEvent) {\n if (this.disableKeyboardHandling) {\n return;\n }\n\n // Make a selection when pressing enter\n if (event.key === 'Enter') {\n const activeItem = this.getActiveItem();\n event.preventDefault();\n\n if (activeItem != null) {\n this.sixMenuItemSelected.emit({ name: activeItem.value, item: activeItem });\n }\n }\n\n // Prevent scrolling when space is pressed\n if (event.key === ' ') {\n event.preventDefault();\n }\n\n // Move the selection when pressing down or up\n if (['ArrowDown', 'ArrowUp', 'Home', 'End'].includes(event.key)) {\n const items = this.items === null ? this.getItems() : this.extractItemsFromDOM();\n\n let indexOfActiveItem = this.getActiveItemIndex();\n\n if (items.length > 0) {\n event.preventDefault();\n\n if (event.key === 'ArrowDown') {\n indexOfActiveItem++;\n } else if (event.key === 'ArrowUp') {\n indexOfActiveItem--;\n } else if (event.key === 'Home') {\n indexOfActiveItem = 0;\n } else if (event.key === 'End') {\n indexOfActiveItem = items.length - 1;\n }\n\n if (indexOfActiveItem < 0) indexOfActiveItem = 0;\n if (indexOfActiveItem > items.length - 1) indexOfActiveItem = items.length - 1;\n\n this.setActiveItem(items[indexOfActiveItem]);\n\n return;\n }\n }\n\n void this.typeToSelect(event.key);\n }\n\n private getMenuWrapperStyle() {\n const styles: Partial<StyleDeclaration> = {};\n if (this.getItemsShown() > 0) {\n // calculate the proper height to show the correct number of items\n styles.height = `${(this.getItemsShown() ?? 0) * this.sixMenuItemHeight}px`;\n }\n return {\n ...styles,\n };\n }\n\n private getMenuContainerStyle() {\n const styles: Partial<StyleDeclaration> = {};\n\n if (this.virtualScroll) {\n // calculate height of content are if all items would be rendered so the scrollbar has the proper size\n styles.transform = `translateY(${this.sixMenuItemHeight * this.scrollingIndex}px)`;\n }\n\n return {\n ...styles,\n };\n }\n\n private getScrollbarGhostStyle() {\n const styles: Partial<StyleDeclaration> = {};\n\n if (this.virtualScroll && this.items !== null) {\n styles.height = `${this.items.length * this.sixMenuItemHeight - this.itemSize * this.sixMenuItemHeight}px`;\n }\n\n return {\n ...styles,\n };\n }\n\n private renderItems() {\n if (this.items === undefined || this.items === null) {\n return;\n }\n\n if (!this.virtualScroll) {\n return this.items.map(mapToMenuItem);\n }\n\n return this.items\n .slice(this.scrollingIndex, Math.min(this.items.length, this.itemSize + this.scrollingIndex))\n .map(({ value, label }: SixMenuItemData) => (\n <six-menu-item checkType=\"check\" key={value} value={value}>\n {label}\n </six-menu-item>\n ));\n }\n\n render() {\n return (\n <div\n ref={(el) => (this.menuWrapper = el)}\n style={this.getMenuWrapperStyle()}\n part=\"wrapper\"\n class={{\n menu: true,\n '.no-shadow': this.removeBoxShadow,\n }}\n >\n <div\n ref={(el) => (this.menu = el)}\n part=\"base\"\n role=\"menu\"\n onClick={this.handleClick}\n onKeyDown={this.handleKeyDown}\n tabIndex={0}\n style={this.getMenuContainerStyle()}\n >\n <slot />\n {this.renderItems()}\n </div>\n {this.virtualScroll && <div style={this.getScrollbarGhostStyle()} />}\n </div>\n );\n }\n}\n"],"version":3}
@@ -13,7 +13,7 @@ const SixPicto = /*@__PURE__*/ proxyCustomElement(class SixPicto extends HTMLEle
13
13
  render() {
14
14
  var _a;
15
15
  const iconName = (_a = this.host.innerHTML) === null || _a === void 0 ? void 0 : _a.trim();
16
- return (h(Host, { key: '2aa8212ff4ea5c7ed283f8d96ebf9699ab528007' }, h("div", { key: '451ab5a15cb33b9e5569cded07dacfc03833a830', part: "icon", class: {
16
+ return (h(Host, { key: 'adec8f35b8501390c0831495ea9f915f6616aa04' }, h("div", { key: '92bcee923694c027ed93554d4d93924b58803b82', part: "icon", class: {
17
17
  [`is-size-${this.size}`]: typeof this.size != null || this.size.trim() !== '',
18
18
  [`${iconName}`]: true,
19
19
  } })));
@@ -12,10 +12,10 @@ const SixProgressBar$1 = /*@__PURE__*/ proxyCustomElement(class SixProgressBar e
12
12
  this.indeterminate = false;
13
13
  }
14
14
  render() {
15
- return (h("div", { key: '4833889d1cb6d61a5b8263bf3349ec55b0d3138b', part: "base", class: {
15
+ return (h("div", { key: '5361da7a78cfcaa6375e078da88209dcd725d832', part: "base", class: {
16
16
  'progress-bar': true,
17
17
  'progress-bar--indeterminate': this.indeterminate,
18
- }, role: "progressbar", "aria-valuemin": "0", "aria-valuemax": "100", "aria-valuenow": this.indeterminate ? null : this.percentage }, h("div", { key: '0e0bfb16e106f8bdf669e84df7ee1cf846a735e2', part: "indicator", class: "progress-bar__indicator", style: {
18
+ }, role: "progressbar", "aria-valuemin": "0", "aria-valuemax": "100", "aria-valuenow": this.indeterminate ? null : this.percentage }, h("div", { key: 'a3dea20c3afea5be2c6c02adf9e6f98cdb038cbb', part: "indicator", class: "progress-bar__indicator", style: {
19
19
  width: `${this.percentage}%`,
20
20
  } }, !this.indeterminate && (h("span", { part: "label", class: "progress-bar__label" }, h("slot", null))))));
21
21
  }
@@ -29,7 +29,7 @@ const SixProgressRing$1 = /*@__PURE__*/ proxyCustomElement(class SixProgressRing
29
29
  this.indicator.style.strokeDashoffset = `${offset}`;
30
30
  }
31
31
  render() {
32
- return (h("div", { key: 'fcfdeaf3f113028f9368d6c26323ed3680daf1dc', part: "base", class: "progress-ring" }, h("svg", { key: '55048e767285e998ed5bf34ada821abc7d3eae58', class: "progress-ring__image", width: this.size, height: this.size }, h("circle", { key: '63f9d87a8d310c1ea3dd40801eeb3232c0b4bb3d', class: "progress-ring__track", "stroke-width": this.strokeWidth, "stroke-linecap": "round", fill: "transparent", r: this.size / 2 - this.strokeWidth * 2, cx: this.size / 2, cy: this.size / 2 }), h("circle", { key: '34a46dadccdb2498bff8196a232570a761d6a468', ref: (el) => (this.indicator = el), class: "progress-ring__indicator", "stroke-width": this.strokeWidth, "stroke-linecap": "round", fill: "transparent", r: this.size / 2 - this.strokeWidth * 2, cx: this.size / 2, cy: this.size / 2 })), h("span", { key: '55077cbe1488ae88aa86e06c97ae4948f7d5726a', part: "label", class: "progress-ring__label" }, h("slot", { key: '3e43561a4838f5f34f7196d713c2d6ddd4688965' }))));
32
+ return (h("div", { key: 'e502ccf39d3b246d03122b446949ee8380e1a2fa', part: "base", class: "progress-ring" }, h("svg", { key: 'd37581863e5a67e9f8a9cd058954581ee7e86a4a', class: "progress-ring__image", width: this.size, height: this.size }, h("circle", { key: '022eeb124e217d93479cf7ead2cabb9169b9afd4', class: "progress-ring__track", "stroke-width": this.strokeWidth, "stroke-linecap": "round", fill: "transparent", r: this.size / 2 - this.strokeWidth * 2, cx: this.size / 2, cy: this.size / 2 }), h("circle", { key: 'bc0fbfc9f1c872243ae2169d6412db47fb554e19', ref: (el) => (this.indicator = el), class: "progress-ring__indicator", "stroke-width": this.strokeWidth, "stroke-linecap": "round", fill: "transparent", r: this.size / 2 - this.strokeWidth * 2, cx: this.size / 2, cy: this.size / 2 })), h("span", { key: '9320211edc9c0b9b24124ffc7ffdac9d6d2f86a7', part: "label", class: "progress-ring__label" }, h("slot", { key: 'e7c3ce7e12a7691e461b73e6cbd2912dde27ac75' }))));
33
33
  }
34
34
  static get watchers() { return {
35
35
  "percentage": ["handlePercentageChange"]
@@ -100,12 +100,12 @@ const SixRadio$1 = /*@__PURE__*/ proxyCustomElement(class SixRadio extends HTMLE
100
100
  return this.getAllRadios().filter((radio) => radio !== this.host);
101
101
  }
102
102
  render() {
103
- return (h("label", { key: '13c5201fe152b2bc57a679422219af5ae19a46a9', part: "base", class: {
103
+ return (h("label", { key: '11d5d7c460cf62b2fc73435137998c3b424ab58f', part: "base", class: {
104
104
  radio: true,
105
105
  'radio--checked': this.checked,
106
106
  'radio--disabled': this.disabled,
107
107
  'radio--focused': this.hasFocus,
108
- }, htmlFor: this.inputId, onKeyDown: this.handleKeyDown, onMouseDown: this.handleMouseDown }, h("span", { key: 'd32606e4ac318f0de1afb0234d2dfc7dd00546ec', part: "control", class: "radio__control" }, h("span", { key: 'd12e68de71d9e49dc4b68813dc036ffa4e06fc96', part: "checked-icon", class: "radio__icon" }, h("svg", { key: 'b942c5b3f4c817484ce4a615913a4a9c01675562', viewBox: "0 0 16 16" }, h("g", { key: '316ed8598111b40d906c0b44ab7e4bfd2bf5cd1c', stroke: "none", "stroke-width": "1", fill: "none", "fill-rule": "evenodd" }, h("g", { key: '58a1547753ea79b7de3b4b90eeedfeb40ad7b6d6', fill: "currentColor" }, h("circle", { key: 'd225f3a06fdbb23a84eae34a6ba1b9184f55e627', cx: "8", cy: "8", r: "5" }))))), h("input", { key: '8e3adc0aaba86098d423c5a7f484a20fe0b2a0cd', ref: (el) => (this.nativeInput = el), id: this.inputId, type: "radio", name: this.name, value: this.value, checked: this.checked, disabled: this.disabled, role: "radio", "aria-checked": this.checked ? 'true' : 'false', "aria-labelledby": this.labelId, onClick: this.handleClick, onBlur: this.handleBlur, onFocus: this.handleFocus })), h("span", { key: 'b72458bbd8e5ca7a8109a5e85b1b5699a843d097', part: "label", id: this.labelId, class: "radio__label" }, h("slot", { key: '87652971c02c9aa7187a0f266283d9a475946f78' }))));
108
+ }, htmlFor: this.inputId, onKeyDown: this.handleKeyDown, onMouseDown: this.handleMouseDown }, h("span", { key: 'e6ca5e0308ed109262b995b9831f32f5c5829cbc', part: "control", class: "radio__control" }, h("span", { key: 'c201309a8ef4def676aa48cf9dd66b94da28db10', part: "checked-icon", class: "radio__icon" }, h("svg", { key: '0e003d8db64fb73c54e95fffb9005d434d2b114e', viewBox: "0 0 16 16" }, h("g", { key: '374a33afe42003445cb91630754007f7057ff755', stroke: "none", "stroke-width": "1", fill: "none", "fill-rule": "evenodd" }, h("g", { key: '2b85fcbdf694e18c9234819a0a20ffd793be0102', fill: "currentColor" }, h("circle", { key: '45842bd37b3dcea164b972c9ff6e461fc866536d', cx: "8", cy: "8", r: "5" }))))), h("input", { key: '924cbd7890627bbf79201b68a989f894e26d9579', ref: (el) => (this.nativeInput = el), id: this.inputId, type: "radio", name: this.name, value: this.value, checked: this.checked, disabled: this.disabled, role: "radio", "aria-checked": this.checked ? 'true' : 'false', "aria-labelledby": this.labelId, onClick: this.handleClick, onBlur: this.handleBlur, onFocus: this.handleFocus })), h("span", { key: 'f00e3fbac022d2be55117448df3e8ff908dd4cd5', part: "label", id: this.labelId, class: "radio__label" }, h("slot", { key: '0fa728701561580e0d06f0568a001d1d234ed867' }))));
109
109
  }
110
110
  get host() { return this; }
111
111
  static get watchers() { return {
@@ -185,7 +185,7 @@ const SixRange$1 = /*@__PURE__*/ proxyCustomElement(class SixRange extends HTMLE
185
185
  }
186
186
  }
187
187
  render() {
188
- return (h(FormControl, { key: '4bd9c413aa318930b38a57e8f76906b5c25c0961', inputId: this.inputId, label: this.label, labelId: this.labelId, hasLabelSlot: this.hasLabelSlot, helpTextId: this.helpTextId, helpText: this.helpText, hasHelpTextSlot: this.hasHelpTextSlot, size: "medium", errorTextId: this.errorTextId, errorText: this.errorText, hasErrorTextSlot: this.hasErrorTextSlot, errorTextCount: this.errorTextCount, disabled: this.disabled, required: this.required, displayError: this.invalid }, h("div", { key: '2a5cd3d1b1bcc77813aacc5eb2971a5ef0e27e0f', part: "base", class: {
188
+ return (h(FormControl, { key: 'cf23b46a8ca2596e962810d3528163ab9add32c3', inputId: this.inputId, label: this.label, labelId: this.labelId, hasLabelSlot: this.hasLabelSlot, helpTextId: this.helpTextId, helpText: this.helpText, hasHelpTextSlot: this.hasHelpTextSlot, size: "medium", errorTextId: this.errorTextId, errorText: this.errorText, hasErrorTextSlot: this.hasErrorTextSlot, errorTextCount: this.errorTextCount, disabled: this.disabled, required: this.required, displayError: this.invalid }, h("div", { key: '370f20143ac3c9325b7cc99ceb3c3a6720a50b1c', part: "base", class: {
189
189
  range: true,
190
190
  // States
191
191
  'range--disabled': this.disabled,
@@ -193,7 +193,7 @@ const SixRange$1 = /*@__PURE__*/ proxyCustomElement(class SixRange extends HTMLE
193
193
  'range--tooltip-visible': this.hasTooltip,
194
194
  'range--tooltip-top': this.tooltip === 'top',
195
195
  'range--tooltip-bottom': this.tooltip === 'bottom',
196
- }, onTouchStart: this.handleTouchStart }, h("input", { key: '448a9d9d41e466a09c4e00d9229b2971e99190b5', part: "input", ref: (el) => (this.nativeInput = el), type: "range", class: "range__control", name: this.name, disabled: this.disabled, min: this.min, max: this.max, step: this.step, value: this.value, onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur }), this.tooltip !== 'none' && (h("output", { part: "tooltip", ref: (el) => (this.output = el), class: "range__tooltip" }, this.tooltipFormatter(this.value))))));
196
+ }, onTouchStart: this.handleTouchStart }, h("input", { key: '74380f56888930992b753f905cd6e9256c24d106', part: "input", ref: (el) => (this.nativeInput = el), type: "range", class: "range__control", name: this.name, disabled: this.disabled, min: this.min, max: this.max, step: this.step, value: this.value, onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur }), this.tooltip !== 'none' && (h("output", { part: "tooltip", ref: (el) => (this.output = el), class: "range__tooltip" }, this.tooltipFormatter(this.value))))));
197
197
  }
198
198
  get host() { return this; }
199
199
  static get watchers() { return {
@@ -15,7 +15,7 @@ const SixRoot$1 = /*@__PURE__*/ proxyCustomElement(class SixRoot extends HTMLEle
15
15
  this.version = '';
16
16
  }
17
17
  render() {
18
- return (h("host", { key: 'd004ad641b82d656ccbb7b788a04d8befab64b47', class: "six-root" }, h("header", { key: 'cce9488ed3c0778120fb1c0ce040a74b8c3b18d6', part: "header" }, this.stage && h("six-stage-indicator", { stage: this.stage }, this.version), h("slot", { key: 'b5810a66f91e003d83ee9196e0c955b52773794a', name: "header" })), h("nav", { key: '8d7aa97373ddb660d7a6e5ab1b860736726b9ee7', class: "six-root__left-sidebar", part: "left-sidebar" }, h("slot", { key: 'ab612b588dedf3e3098cd6f423078ef2fdc83bed', name: "left-sidebar" })), h("main", { key: '2c6e91c192a5346302d6d0be19a4e43d190cf5d4', part: "main" }, h("div", { key: 'bb52732ddf5462b1d536444f0f584fa48ba5ee55', class: { 'six-root__container': true, 'six-root__container--padded': this.padded }, part: "container" }, h("slot", { key: '23db6d1c2426497e40e91ef7d7898f37e1977465', name: "main" })), h("div", { key: 'f083d6d754ff7a502efe8f20663a423075f85e9f', class: "six-root__footer" }, h("slot", { key: 'd902e6b083181958e12f8f808b2dc98e2bb99dfd', name: "footer" }))), h("nav", { key: '05b158597d15d8536e8eb8ccc66f0ff971ebdc92', class: "six-root__right-sidebar", part: "right-sidebar" }, h("slot", { key: '3a9168dbd5039344e948c22c822ca7f65648cb1f', name: "right-sidebar" }))));
18
+ return (h("host", { key: 'f4b3cb516ce1b70a834903c00a56ca7edf5364dc', class: "six-root" }, h("header", { key: '88ec66c2af58e55621563f600cb8c1589467218c', part: "header" }, this.stage && h("six-stage-indicator", { stage: this.stage }, this.version), h("slot", { key: '072a0e92b9203149a9823fdf83aa45b39494559f', name: "header" })), h("nav", { key: '58d18ca9b9ebf9db5981b3c82cce657f73ef5f13', class: "six-root__left-sidebar", part: "left-sidebar" }, h("slot", { key: '62643ef967da9d303380b4d4d26ec5e026a86ac3', name: "left-sidebar" })), h("main", { key: '0b059f2814c4485dd03a3a166529d78999baa699', part: "main" }, h("div", { key: '74ce003ff9d45945b9bdc43b170c99300856544b', class: { 'six-root__container': true, 'six-root__container--padded': this.padded }, part: "container" }, h("slot", { key: '5ea05c471c96fd47cf27749accd1c551f16d69d2', name: "main" })), h("div", { key: '5dd7796754df4238f61f1ee8cc3cee9589f1f40f', class: "six-root__footer" }, h("slot", { key: '5c4036b9fb4d36f69b617a2e6ee7fce62c80fa08', name: "footer" }))), h("nav", { key: '36c76008c9dc36b7fef9f8a6a79e6508d1764ede', class: "six-root__right-sidebar", part: "right-sidebar" }, h("slot", { key: '66cdae8a60d251063e4c8a710a36d0be07dedf0e', name: "right-sidebar" }))));
19
19
  }
20
20
  get host() { return this; }
21
21
  static get style() { return SixRootStyle0; }
@@ -47,7 +47,7 @@ const SixSearchField$1 = /*@__PURE__*/ proxyCustomElement(class SixSearchField e
47
47
  this.eventListeners.removeAll();
48
48
  }
49
49
  render() {
50
- return (h("div", { key: '3083fe949be687f4540c7ee0115d9befc4faa90d', class: "search-box" }, h("six-input", { key: 'addaf6279a2473b3c44d2284c11a4e822c0883fe', ref: (el) => (this.inputElement = el), placeholder: this.placeholder, value: this.value, disabled: this.disabled, clearable: this.clearable }, h("six-icon", { key: 'd6953c6b87cbf8f6ed1fb1625aa510857ccfb421', class: "search-box__icon", slot: "prefix", size: "small", onClick: this.handleInputChange }, "search")), h("slot", { key: 'd7f0a5e0974d5e0cbe8b0e120999804be0299aef' })));
50
+ return (h("div", { key: 'f1a0e877abffb212e7876237a294256446ce9414', class: "search-box" }, h("six-input", { key: '371999a3d7a5063f1b29494763444bdb20317146', ref: (el) => (this.inputElement = el), placeholder: this.placeholder, value: this.value, disabled: this.disabled, clearable: this.clearable }, h("six-icon", { key: '8c9c517d8f6bbf45beae6c5af88a5b17967401b5', class: "search-box__icon", slot: "prefix", size: "small", onClick: this.handleInputChange }, "search")), h("slot", { key: 'f45bb3a2c075675f2216a17e2c28329196685f2e' })));
51
51
  }
52
52
  static get watchers() { return {
53
53
  "value": ["handleValueChange"]
@@ -126,6 +126,40 @@ const translation = {
126
126
  },
127
127
  };
128
128
 
129
+ function convertToValidValue(value, multiple) {
130
+ if (multiple) {
131
+ if (Array.isArray(value)) {
132
+ return value.filter((element) => typeof element === 'string');
133
+ }
134
+ else if (typeof value === 'string' && value.length > 0) {
135
+ return [value];
136
+ }
137
+ else {
138
+ return [];
139
+ }
140
+ }
141
+ else {
142
+ if (typeof value === 'string') {
143
+ return value;
144
+ }
145
+ else {
146
+ return '';
147
+ }
148
+ }
149
+ }
150
+ function convertToValidArrayValue(value) {
151
+ return convertToValidValue(value, true);
152
+ }
153
+ function valueEquals(a, b) {
154
+ if (Array.isArray(a) && Array.isArray(b)) {
155
+ return a.length === b.length && a.every((element, index) => element === b[index]);
156
+ }
157
+ else if (typeof a === 'string' && typeof b === 'string') {
158
+ return a === b;
159
+ }
160
+ return false;
161
+ }
162
+
129
163
  const sixSelectCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}.form-control .form-control__label{display:none}.form-control .form-control__help-text{display:none}.form-control .form-control__error-text{display:none;text-align:left}.form-control--has-label .form-control__label{display:inline-block;color:var(--six-input-label-color);font-weight:var(--six-font-weight-bold);margin-bottom:var(--six-spacing-x-small)}.form-control--has-label .form-control__label__required::after{color:var(--six-color-danger-800);content:\"*\";transform:scale(1.1);margin-left:var(--six-spacing-xxx-small);position:absolute}.form-control--has-label.form-control--small .form-control__label{font-size:var(--six-input-label-font-size-small)}.form-control--has-label.form-control--medium .form-control__label{font-size:var(--six-input-label-font-size-medium)}.form-control--has-label.form-control--large .form-control_label{font-size:var(--six-input-label-font-size-large)}.form-control--has-help-text .form-control__help-text{display:block;color:var(--six-input-help-text-color);margin-top:var(--six-spacing-x-small)}.form-control--has-help-text .form-control__help-text ::slotted(*){margin-top:var(--six-spacing-xxx-small)}.form-control--has-help-text.form-control--small .form-control__help-text{font-size:var(--six-input-help-text-font-size-small)}.form-control--has-help-text.form-control--medium .form-control__help-text{font-size:var(--six-input-help-text-font-size-medium)}.form-control--has-help-text.form-control--large .form-control__help-text{font-size:var(--six-input-help-text-font-size-large)}.form-control--has-error-text .form-control__error-text{display:block;margin-top:var(--six-spacing-xxx-small)}.form-control--has-error-text .form-control__error-text ::slotted(*){margin-top:var(--six-spacing-xxx-small)}.form-control--has-error-text.form-control--small .form-control__error-text{font-size:var(--six-input-help-text-font-size-small)}.form-control--has-error-text.form-control--medium .form-control__error-text{font-size:var(--six-input-help-text-font-size-medium)}.form-control--has-error-text.form-control--large .form-control__error-text{font-size:var(--six-input-help-text-font-size-large)}.form-control--disabled .form-control__help-text{color:var(--six-input-help-text-color-disabled)}.form-control--disabled .form-control__label{color:var(--six-input-label-color-disabled)}.form-control--invalid:not(.form-control--disabled) .form-control__label{color:var(--six-input-label-color)}:host,.select{display:block}.select__box{display:inline-flex;align-items:center;justify-content:start;position:relative;width:100%;font-family:var(--six-font-family);font-weight:var(--six-input-font-weight);font-size:var(--six-input-font-size-medium);letter-spacing:var(--six-input-letter-spacing);background-color:var(--six-input-background-color);border:solid var(--six-border-width) var(--six-input-border-color);vertical-align:middle;transition:var(--six-transition-fast) color, var(--six-transition-fast) border, var(--six-transition-fast) box-shadow;cursor:pointer}.select__box--line{border:none;border-bottom:solid var(--six-border-width) var(--six-input-border-color)}.select__box--autocomplete{border:none;overflow:initial}.select:not(.select--disabled) .select__box:hover{background-color:var(--six-input-background-color-hover);color:var(--six-input-color-hover);border-bottom-color:var(--six-input-border-color-hover)}.select:not(.select--disabled) .select__box:hover:not(.select__box--line){border-color:var(--six-input-border-color-hover)}.select:not(.select--disabled) .select__box:focus{background-color:var(--six-input-background-color-focus);outline:none;color:var(--six-input-color-focus);border-bottom-color:var(--six-input-border-color-focus);box-shadow:0 1px 0 0 var(--six-input-border-color-focus)}.select:not(.select--disabled) .select__box:focus:not(.select__box--line){border-color:var(--six-input-border-color-focus);box-shadow:var(--six-input-focus-shadow)}.select--disabled .select__box{background-color:var(--six-input-background-color-disabled);color:var(--six-input-color-disabled);cursor:not-allowed;outline:none}.select--disabled .select__box:not(.select__box--line){border-color:var(--six-input-border-color-disabled)}.select--disabled .select__clear{pointer-events:none}.select--invalid:not(.select--disabled):not(.select--focused) .select__box{border-bottom-color:var(--six-input-border-color-danger)}.select--invalid:not(.select--disabled):not(.select--focused) .select__box:not(.input--line){border-color:var(--six-input-border-color-danger)}.display__values{display:flex;flex:1 1 auto;align-items:center;user-select:none;overflow:hidden;scrollbar-width:none;-ms-overflow-style:none}.display__values::-webkit-scrollbar{width:0;height:0}.display__values-values{flex:0 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.display__values-and-counter{display:flex;overflow:hidden}.select__clear{flex-shrink:0;flex-grow:0;display:inline}.select__icon{flex-shrink:0;flex-grow:0;display:inline;transition:var(--six-transition-medium) transform ease}.select--open .select__icon{transform:rotate(-180deg)}.placeholder{color:var(--six-input-placeholder-color)}.select--disabled .placeholder{color:var(--six-input-placeholder-color-disabled)}.select__hidden-select{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.select__input{position:absolute;top:0;left:0;width:100%;height:100%}.select--small .select__box{border-radius:var(--six-input-border-radius-small);font-size:var(--six-input-font-size-small);min-height:var(--six-height-small)}.select--small .select__box--line{border:none;border-bottom:solid var(--six-border-width) var(--six-input-border-color)}.select--small .display__values{margin:0 0 0 var(--six-input-spacing-small)}.select--small .select__clear{margin-right:var(--six-spacing-xxx-small)}.select--small .select__icon{margin-right:var(--six-spacing-x-small)}.select--medium .select__box{border-radius:var(--six-input-border-radius-medium);font-size:var(--six-input-font-size-medium);min-height:var(--six-height-medium)}.select--medium .select__box--line{border:none;border-bottom:solid var(--six-border-width) var(--six-input-border-color)}.select--medium .display__values{margin:0 0 0 var(--six-input-spacing-medium)}.select--medium .select__clear{margin-right:var(--six-spacing-xxx-small)}.select--medium .select__icon{margin-right:var(--six-spacing-x-small)}.select--large .select__box{border-radius:var(--six-input-border-radius-large);font-size:var(--six-input-font-size-large);min-height:var(--six-height-large)}.select--large .select__box--line{border:none;border-bottom:solid var(--six-border-width) var(--six-input-border-color)}.select--large .display__values{margin:0 0 0 var(--six-input-spacing-large)}.select--large .select__clear{margin-right:var(--six-spacing-xxx-small)}.select--large .select__icon{margin-right:var(--six-spacing-x-small)}.select--pill.select--small .select__box{border-radius:var(--six-height-small)}.select--pill.select--medium .select__box{border-radius:var(--six-height-medium)}.select--pill.select--large .select__box{border-radius:var(--six-height-large)}.select__menu{width:100%}.select__menu--hidden{display:none}six-icon-button::part(base){padding-top:0;padding-bottom:0}.selection-container--border{border-bottom:solid var(--six-border-width) var(--six-menu-divider-color);padding-top:var(--six-spacing-xx-small);padding-bottom:var(--six-spacing-xx-small)}.display-value--hidden{display:none}.overflow-count{color:var(--six-color-web-rock-600);padding-left:var(--six-spacing-x-small)}.overflow-count-hidden{display:none}.separator--hidden{display:none}.select-all{border-top:1px solid var(--six-color-web-rock-300);display:flex;justify-content:end}";
130
164
  const SixSelectStyle0 = sixSelectCss;
131
165
 
@@ -248,12 +282,12 @@ const SixSelect$1 = /*@__PURE__*/ proxyCustomElement(class SixSelect extends HTM
248
282
  return;
249
283
  }
250
284
  this.activeItemIndex = -1;
251
- // reset display style of main items
252
- const mainItems = this.getItems();
253
- mainItems.forEach((item) => (item.style.display = 'unset'));
254
- // show selected menu items in the selection container and hide them in the main container
255
- const checkedItems = getCheckedItems(this.getValueAsArray(), mainItems);
256
285
  if (!this.virtualScroll && this.multiple) {
286
+ // reset display style of main items
287
+ const mainItems = this.getItems();
288
+ mainItems.forEach((item) => (item.style.display = 'unset'));
289
+ // show selected menu items in the selection container and hide them in the main container
290
+ const checkedItems = getCheckedItems(convertToValidArrayValue(this.value), mainItems);
257
291
  checkedItems.forEach((i) => (i.style.display = 'none'));
258
292
  this.selectionContainerItems = checkedItems.map((item) => {
259
293
  return (h("six-menu-item", { key: item.value, checked: true, value: item.value, checkType: this.multiple ? 'checkbox' : 'check', onClick: (event) => {
@@ -273,6 +307,9 @@ const SixSelect$1 = /*@__PURE__*/ proxyCustomElement(class SixSelect extends HTM
273
307
  };
274
308
  this.handleMenuHide = () => {
275
309
  this.isOpen = false;
310
+ if (this.multiple) {
311
+ this.handleBlur();
312
+ }
276
313
  };
277
314
  this.handleSlotChange = () => {
278
315
  this.hasHelpTextSlot = hasSlot(this.host, 'help-text');
@@ -325,34 +362,37 @@ const SixSelect$1 = /*@__PURE__*/ proxyCustomElement(class SixSelect extends HTM
325
362
  this.handleSlotChange();
326
363
  }
327
364
  handleMultipleChange() {
328
- // Cast to array | string based on `this.multiple`
329
- const value = this.getValueAsArray();
330
- this.value = this.multiple ? value : value[0] || '';
365
+ this.value = convertToValidValue(this.value, this.multiple);
331
366
  this.syncItemsFromValue();
332
367
  }
333
368
  async handleValueChange() {
334
- if (this.multiple && !Array.isArray(this.value)) {
335
- this.value = [];
336
- }
337
- if (!this.multiple && typeof this.value !== 'string') {
338
- this.value = '';
369
+ const newValue = convertToValidValue(this.value, this.multiple);
370
+ if (!valueEquals(this.value, newValue)) {
371
+ this.value = newValue;
339
372
  }
340
373
  await this.syncItemsFromValue();
341
374
  }
342
375
  connectedCallback() {
376
+ var _a;
343
377
  if (this.virtualScroll && this.options === null) {
344
378
  console.error('Options must be defined when using virtual scrolling');
345
379
  }
346
- this.init();
380
+ (_a = this.host.shadowRoot) === null || _a === void 0 ? void 0 : _a.addEventListener('slotchange', this.handleSlotChange);
381
+ this.eventListeners.forward('six-select-change', 'change', this.host);
382
+ this.eventListeners.forward('six-select-blur', 'blur', this.host);
383
+ this.eventListeners.forward('six-select-focus', 'focus', this.host);
384
+ if (this.displayValuesContainer) {
385
+ this.resizeObserver.observe(this.displayValuesContainer);
386
+ }
347
387
  }
348
388
  componentWillLoad() {
389
+ this.value = convertToValidValue(this.value, this.multiple);
349
390
  this.handleSlotChange();
350
- if (this.multiple && this.value != null) {
351
- this.value = this.getValueAsArray();
352
- }
353
391
  }
354
392
  componentDidLoad() {
355
- this.init();
393
+ if (this.displayValuesContainer) {
394
+ this.resizeObserver.observe(this.displayValuesContainer);
395
+ }
356
396
  // We need to do an initial sync after the component has rendered, so this will suppress the re-render warning
357
397
  requestAnimationFrame(() => this.syncItemsFromValue());
358
398
  if (this.autocomplete && this.autocompleteInput != null) {
@@ -377,16 +417,6 @@ const SixSelect$1 = /*@__PURE__*/ proxyCustomElement(class SixSelect extends HTM
377
417
  this.hasFocus = true;
378
418
  (_a = this.box) === null || _a === void 0 ? void 0 : _a.focus(options);
379
419
  }
380
- init() {
381
- var _a;
382
- (_a = this.host.shadowRoot) === null || _a === void 0 ? void 0 : _a.addEventListener('slotchange', this.handleSlotChange);
383
- this.eventListeners.forward('six-select-change', 'change', this.host);
384
- this.eventListeners.forward('six-select-blur', 'blur', this.host);
385
- this.eventListeners.forward('six-select-focus', 'focus', this.host);
386
- if (this.displayValuesContainer) {
387
- this.resizeObserver.observe(this.displayValuesContainer);
388
- }
389
- }
390
420
  getItemLabel(item) {
391
421
  var _a, _b;
392
422
  const slot = (_a = item.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('slot:not([name])');
@@ -413,11 +443,6 @@ const SixSelect$1 = /*@__PURE__*/ proxyCustomElement(class SixSelect extends HTM
413
443
  var _a;
414
444
  return [...(((_a = this.host.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('six-menu-item')) || [])];
415
445
  }
416
- getValueAsArray() {
417
- const values = Array.isArray(this.value) ? this.value : this.value === '' ? [] : [this.value];
418
- // enforce that the values are converted to 'string' before the value is compared
419
- return values.map(String);
420
- }
421
446
  async clearValues() {
422
447
  this.value = this.multiple ? [] : '';
423
448
  this.selectionContainerItems = [];
@@ -437,7 +462,7 @@ const SixSelect$1 = /*@__PURE__*/ proxyCustomElement(class SixSelect extends HTM
437
462
  async syncItemsFromValue() {
438
463
  const selectionContainerItems = this.getSelectionContainerItems();
439
464
  const mainItems = this.getItems();
440
- const value = this.getValueAsArray();
465
+ const value = convertToValidValue(this.value, this.multiple);
441
466
  selectionContainerItems.forEach((item) => {
442
467
  item.checkType = this.multiple ? 'checkbox' : 'check';
443
468
  item.checked = value.includes(item.value);
@@ -446,7 +471,7 @@ const SixSelect$1 = /*@__PURE__*/ proxyCustomElement(class SixSelect extends HTM
446
471
  item.checkType = this.multiple ? 'checkbox' : 'check';
447
472
  item.checked = value.includes(item.value);
448
473
  });
449
- const checkedItems = getCheckedItems(this.getValueAsArray(), mainItems);
474
+ const checkedItems = getCheckedItems(convertToValidArrayValue(this.value), mainItems);
450
475
  this.displayedValues = checkedItems.map((i) => this.getItemLabel(i));
451
476
  if (this.autocomplete && this.autocompleteInput != null) {
452
477
  this.autocompleteInput.value = Array.isArray(this.value) ? this.value.join(',') : this.value;
@@ -515,7 +540,7 @@ const SixSelect$1 = /*@__PURE__*/ proxyCustomElement(class SixSelect extends HTM
515
540
  showClear = true;
516
541
  showExpand = false;
517
542
  }
518
- return (h(FormControl, { key: 'cf4bbc5c8bdb3bd395b3223065ef7175f12fc750', inputId: this.inputId, label: this.label, labelId: this.labelId, hasLabelSlot: this.hasLabelSlot, helpTextId: this.helpTextId, helpText: this.helpText, hasHelpTextSlot: this.hasHelpTextSlot, errorTextId: this.errorTextId, errorText: this.errorText, errorTextCount: this.errorTextCount, hasErrorTextSlot: this.hasErrorTextSlot, size: this.size, onLabelClick: this.handleLabelClick, disabled: this.disabled, required: this.required, displayError: this.invalid }, h("six-dropdown", { key: '5de198b2fc9ab517f9e6682394d881328f4da383', part: "base", ref: (el) => (this.dropdown = el), hoist: this.hoist, matchTriggerWidth: true, closeOnSelect: !this.multiple, containingElement: this.host, disableHideOnEnterAndSpace: this.autocomplete, class: {
543
+ return (h(FormControl, { key: '995bb87e0b65e09cc2aea9b9309e03388e9a3013', inputId: this.inputId, label: this.label, labelId: this.labelId, hasLabelSlot: this.hasLabelSlot, helpTextId: this.helpTextId, helpText: this.helpText, hasHelpTextSlot: this.hasHelpTextSlot, errorTextId: this.errorTextId, errorText: this.errorText, errorTextCount: this.errorTextCount, hasErrorTextSlot: this.hasErrorTextSlot, size: this.size, onLabelClick: this.handleLabelClick, disabled: this.disabled, required: this.required, displayError: this.invalid }, h("six-dropdown", { key: '14d641ae28f41c426b51b89d7a4dea1c842c6341', part: "base", ref: (el) => (this.dropdown = el), hoist: this.hoist, matchTriggerWidth: true, closeOnSelect: !this.multiple, containingElement: this.host, disableHideOnEnterAndSpace: this.autocomplete, class: {
519
544
  select: true,
520
545
  'select--open': this.isOpen,
521
546
  'select--empty': ((_a = this.value) === null || _a === void 0 ? void 0 : _a.length) === 0,
@@ -530,20 +555,20 @@ const SixSelect$1 = /*@__PURE__*/ proxyCustomElement(class SixSelect extends HTM
530
555
  'select--large': this.size === 'large',
531
556
  'select--pill': this.pill,
532
557
  'select--invalid': this.invalid,
533
- }, onKeyDown: this.handleKeyDown, "onSix-dropdown-show": this.handleMenuShow, "onSix-dropdown-hide": this.handleMenuHide, filterPlaceholder: this.filterPlaceholder, filterDebounce: this.filterDebounce, filter: this.filter, asyncFilter: this.asyncFilter, virtualScroll: this.virtualScroll }, h("div", { key: '731e50e52df65db450e852209b091698d024d533', slot: "trigger", ref: (el) => (this.box = el), id: this.inputId, class: {
558
+ }, onKeyDown: this.handleKeyDown, "onSix-dropdown-show": this.handleMenuShow, "onSix-dropdown-hide": this.handleMenuHide, filterPlaceholder: this.filterPlaceholder, filterDebounce: this.filterDebounce, filter: this.filter, asyncFilter: this.asyncFilter, virtualScroll: this.virtualScroll }, h("div", { key: 'ea452a8196bc7ffc8fbc3ec98298b13a2bdaa0b2', slot: "trigger", ref: (el) => (this.box = el), id: this.inputId, class: {
534
559
  select__box: true,
535
560
  'select__box--line': this.line,
536
561
  'select__box--autocomplete': this.autocomplete,
537
- }, role: "combobox", "aria-labelledby": this.labelId, "aria-describedby": this.helpTextId, "aria-haspopup": "true", "aria-expanded": this.isOpen ? 'true' : 'false', tabIndex: this.disabled ? -1 : 0, onBlur: this.handleBlur, onFocus: this.handleFocus }, h("div", { key: '4623418e42ad9d69891c582b7e88e2686b27eaa1', class: "display__values", ref: (el) => (this.displayValuesContainer = el) }, this.displayedValues.length > 0 ? (h("span", { class: "display__values-and-counter" }, h("span", { class: "display__values-values" }, this.displayedValues.map((value) => (h("span", { key: value, class: "display-value" }, value, h("span", { class: { separator: true } }, ", "))))), h("span", { ref: (el) => (this.overflowCount = el), class: "overflow-count" }, "+10"))) : (h("span", { class: "placeholder" }, this.placeholder))), showClear && (h("six-icon-button", { exportparts: "base:clear-button", class: "select__clear", name: "clear", size: "small", onClick: this.handleClearClick, tabindex: "-1" })), showExpand && (h("span", { part: "icon", class: "select__icon" }, h("six-icon", { size: "medium" }, "expand_more"))), h("six-input", { key: '1c53a3b59a3f09c6707709c36afdcd62e90de43a', ref: (el) => (this.autocompleteInput = el), class: {
562
+ }, role: "combobox", "aria-labelledby": this.labelId, "aria-describedby": this.helpTextId, "aria-haspopup": "true", "aria-expanded": this.isOpen ? 'true' : 'false', tabIndex: this.disabled ? -1 : 0, onBlur: this.handleBlur, onFocus: this.handleFocus }, h("div", { key: '7b6e70973681445a4de6e2c0e1a31aa3b512cd68', class: "display__values", ref: (el) => (this.displayValuesContainer = el) }, this.displayedValues.length > 0 ? (h("span", { class: "display__values-and-counter" }, h("span", { class: "display__values-values" }, this.displayedValues.map((value) => (h("span", { key: value, class: "display-value" }, value, h("span", { class: { separator: true } }, ", "))))), h("span", { ref: (el) => (this.overflowCount = el), class: "overflow-count" }, "+10"))) : (h("span", { class: "placeholder" }, this.placeholder))), showClear && (h("six-icon-button", { exportparts: "base:clear-button", class: "select__clear", name: "clear", size: "small", onClick: this.handleClearClick, tabindex: "-1" })), showExpand && (h("span", { part: "icon", class: "select__icon" }, h("six-icon", { size: "medium" }, "expand_more"))), h("six-input", { key: '34a321d5de3e51132f2dfb364979c1c55995b8c2', ref: (el) => (this.autocompleteInput = el), class: {
538
563
  select__input: true,
539
564
  'select__hidden-select': !this.autocomplete,
540
- }, "aria-hidden": "true", required: this.required, onFocus: this.handleFocus, clearable: this.clearable, placeholder: this.placeholder, pill: this.pill, disabled: this.disabled, size: this.size, tabIndex: -1 })), h("div", { key: '65f3a8a73dd645a1098afc2b92104336b16fb80f', class: {
565
+ }, "aria-hidden": "true", required: this.required, onFocus: this.handleFocus, clearable: this.clearable, placeholder: this.placeholder, pill: this.pill, disabled: this.disabled, size: this.size, tabIndex: -1 })), h("div", { key: 'b6a75066f44bcfa23646f09f12858741eb329935', class: {
541
566
  'selection-container': true,
542
567
  'selection-container--border': this.selectionContainerItems.length > 0 && items.length !== this.selectionContainerItems.length,
543
- } }, this.selectionContainerItems), h("six-menu", { key: '80ac8179cb1fd6bbccd9525254511dde6908af5f', ref: (el) => (this.menu = el), part: "menu", class: {
568
+ } }, this.selectionContainerItems), h("six-menu", { key: '273440b4570424484c8eb4bc41475b2fdd769bb9', ref: (el) => (this.menu = el), part: "menu", class: {
544
569
  select__menu: true,
545
570
  'select__menu--hidden': !hasMenuItems,
546
- }, "onSix-menu-item-selected": this.handleMenuSelect, items: this.options, virtualScroll: this.virtualScroll, "remove-box-shadow": true, "disable-keyboard-handling": true }, h("slot", { key: '72f6447ad3dc14df92cf42b4a7b0984e970759c7', onSlotchange: this.handleSlotChange })), this.multiple && this.selectAllButton && (h("div", { class: "select-all", slot: "dropdown-footer" }, h("six-button", { type: "link", onClick: () => this.selectAll() }, this.selectAllText == null ? selectAllDefaultText(hasDeselectedOptions) : this.selectAllText))))));
571
+ }, "onSix-menu-item-selected": this.handleMenuSelect, items: this.options, virtualScroll: this.virtualScroll, "remove-box-shadow": true, "disable-keyboard-handling": true }, h("slot", { key: '6d3b8c080879dfc652816ff96f39d0821a676708', onSlotchange: this.handleSlotChange })), this.multiple && this.selectAllButton && (h("div", { class: "select-all", slot: "dropdown-footer" }, h("six-button", { type: "link", onClick: () => this.selectAll() }, this.selectAllText == null ? selectAllDefaultText(hasDeselectedOptions) : this.selectAllText))))));
547
572
  }
548
573
  hasSelection() {
549
574
  return this.multiple ? this.value.length > 0 : this.value !== '';