@solid-design-system/components 4.0.0-next.5 → 4.0.0-next.7

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 (261) hide show
  1. package/cdn/chunks/chunk.5FM4F3Y4.js +1 -0
  2. package/cdn/chunks/chunk.BUUMCPDC.js +11 -0
  3. package/cdn/chunks/chunk.WHEYQDOD.js +11 -0
  4. package/cdn/components/combobox/combobox.d.ts +1 -0
  5. package/cdn/components/combobox/combobox.js +1 -1
  6. package/cdn/components/flipcard/flipcard.d.ts +1 -0
  7. package/cdn/components/flipcard/flipcard.js +1 -1
  8. package/cdn/components/select/select.d.ts +1 -0
  9. package/cdn/components/select/select.js +1 -1
  10. package/cdn/custom-elements.json +37 -1
  11. package/cdn/solid-components.bundle.js +14 -14
  12. package/cdn/solid-components.iife.js +14 -14
  13. package/cdn/solid-components.js +1 -1
  14. package/cdn/vscode.html-custom-data.json +11 -1
  15. package/cdn/web-types.json +21 -2
  16. package/cdn-versioned/_components/menu/menu.js +1 -1
  17. package/cdn-versioned/_components/menu/menu.styles.js +1 -1
  18. package/cdn-versioned/_components/menu-item/menu-item.js +2 -2
  19. package/cdn-versioned/chunks/chunk.24SF73MY.js +1 -1
  20. package/cdn-versioned/chunks/chunk.2IZXJHH7.js +1 -1
  21. package/cdn-versioned/chunks/chunk.36Z2VDHI.js +1 -1
  22. package/cdn-versioned/chunks/chunk.3ATYVOO4.js +1 -1
  23. package/cdn-versioned/chunks/chunk.4HIKTDIM.js +3 -3
  24. package/cdn-versioned/chunks/chunk.4W3WLVGR.js +1 -1
  25. package/cdn-versioned/chunks/chunk.5FM4F3Y4.js +1 -0
  26. package/cdn-versioned/chunks/chunk.5ZDWEJDB.js +1 -1
  27. package/cdn-versioned/chunks/chunk.65NSSTJE.js +1 -1
  28. package/cdn-versioned/chunks/chunk.6JBTCFHE.js +2 -2
  29. package/cdn-versioned/chunks/chunk.7M7VCE7R.js +1 -1
  30. package/cdn-versioned/chunks/chunk.7RJ3O2FV.js +1 -1
  31. package/cdn-versioned/chunks/chunk.APMDRZQD.js +1 -1
  32. package/cdn-versioned/chunks/chunk.BUUMCPDC.js +11 -0
  33. package/cdn-versioned/chunks/chunk.C2PA7CKF.js +1 -1
  34. package/cdn-versioned/chunks/chunk.CEVVDV52.js +1 -1
  35. package/cdn-versioned/chunks/chunk.DMLGBWCL.js +1 -1
  36. package/cdn-versioned/chunks/chunk.DVHKKAVM.js +1 -1
  37. package/cdn-versioned/chunks/chunk.EWWGLHC5.js +1 -1
  38. package/cdn-versioned/chunks/chunk.F7J6HN76.js +1 -1
  39. package/cdn-versioned/chunks/chunk.FD54463O.js +1 -1
  40. package/cdn-versioned/chunks/chunk.FFNTXFC3.js +1 -1
  41. package/cdn-versioned/chunks/chunk.FX3ED655.js +1 -1
  42. package/cdn-versioned/chunks/chunk.GOVNZSCO.js +1 -1
  43. package/cdn-versioned/chunks/chunk.GQSLHWQC.js +1 -1
  44. package/cdn-versioned/chunks/chunk.ISEQUO4U.js +1 -1
  45. package/cdn-versioned/chunks/chunk.ITRQVXFY.js +1 -1
  46. package/cdn-versioned/chunks/chunk.IZKUI5WK.js +1 -1
  47. package/cdn-versioned/chunks/chunk.KMLMMBY4.js +1 -1
  48. package/cdn-versioned/chunks/chunk.LLXTYJXF.js +1 -1
  49. package/cdn-versioned/chunks/chunk.LZEFLOSA.js +1 -1
  50. package/cdn-versioned/chunks/chunk.MPP7HYX7.js +1 -1
  51. package/cdn-versioned/chunks/chunk.MX22EZXK.js +1 -1
  52. package/cdn-versioned/chunks/chunk.ND7BT52X.js +1 -1
  53. package/cdn-versioned/chunks/chunk.NUB5WHGD.js +1 -1
  54. package/cdn-versioned/chunks/chunk.O4UXOQEI.js +1 -1
  55. package/cdn-versioned/chunks/chunk.OVV7TNT2.js +1 -1
  56. package/cdn-versioned/chunks/chunk.PBPFKJKV.js +1 -1
  57. package/cdn-versioned/chunks/chunk.QFNCQQ6S.js +1 -1
  58. package/cdn-versioned/chunks/chunk.QNZWJACC.js +2 -2
  59. package/cdn-versioned/chunks/chunk.R354E6ZD.js +1 -1
  60. package/cdn-versioned/chunks/chunk.TA7CZCP3.js +1 -1
  61. package/cdn-versioned/chunks/chunk.U443X4TI.js +1 -1
  62. package/cdn-versioned/chunks/chunk.UBFU6D5B.js +1 -1
  63. package/cdn-versioned/chunks/chunk.URB2K7JQ.js +1 -1
  64. package/cdn-versioned/chunks/chunk.VNKUGTKM.js +1 -1
  65. package/cdn-versioned/chunks/chunk.W7A3TU2Z.js +1 -1
  66. package/cdn-versioned/chunks/chunk.WENTMXB2.js +1 -1
  67. package/cdn-versioned/chunks/chunk.WHEYQDOD.js +11 -0
  68. package/cdn-versioned/chunks/chunk.WQAPHFVM.js +1 -1
  69. package/cdn-versioned/chunks/chunk.YF5WEC4R.js +2 -2
  70. package/cdn-versioned/chunks/chunk.ZFA2VPUT.js +1 -1
  71. package/cdn-versioned/chunks/chunk.ZRIABVVM.js +1 -1
  72. package/cdn-versioned/components/accordion/accordion.d.ts +1 -1
  73. package/cdn-versioned/components/accordion-group/accordion-group.d.ts +1 -1
  74. package/cdn-versioned/components/animation/animation.d.ts +1 -1
  75. package/cdn-versioned/components/audio/audio.d.ts +1 -1
  76. package/cdn-versioned/components/badge/badge.d.ts +1 -1
  77. package/cdn-versioned/components/brandshape/brandshape.d.ts +1 -1
  78. package/cdn-versioned/components/button/button.d.ts +1 -1
  79. package/cdn-versioned/components/button-group/button-group.d.ts +1 -1
  80. package/cdn-versioned/components/carousel/carousel.d.ts +1 -1
  81. package/cdn-versioned/components/carousel-item/carousel-item.d.ts +1 -1
  82. package/cdn-versioned/components/checkbox/checkbox.d.ts +1 -1
  83. package/cdn-versioned/components/checkbox-group/checkbox-group.d.ts +1 -1
  84. package/cdn-versioned/components/combobox/combobox.d.ts +5 -4
  85. package/cdn-versioned/components/combobox/combobox.js +1 -1
  86. package/cdn-versioned/components/dialog/dialog.d.ts +1 -1
  87. package/cdn-versioned/components/divider/divider.d.ts +1 -1
  88. package/cdn-versioned/components/drawer/drawer.d.ts +1 -1
  89. package/cdn-versioned/components/dropdown/dropdown.d.ts +1 -1
  90. package/cdn-versioned/components/expandable/expandable.d.ts +1 -1
  91. package/cdn-versioned/components/flipcard/flipcard.d.ts +2 -1
  92. package/cdn-versioned/components/flipcard/flipcard.js +1 -1
  93. package/cdn-versioned/components/header/header.d.ts +1 -1
  94. package/cdn-versioned/components/icon/icon.d.ts +1 -1
  95. package/cdn-versioned/components/include/include.d.ts +1 -1
  96. package/cdn-versioned/components/input/input.d.ts +1 -1
  97. package/cdn-versioned/components/link/link.d.ts +1 -1
  98. package/cdn-versioned/components/map-marker/map-marker.d.ts +1 -1
  99. package/cdn-versioned/components/navigation-item/navigation-item.d.ts +1 -1
  100. package/cdn-versioned/components/notification/notification.d.ts +1 -1
  101. package/cdn-versioned/components/optgroup/optgroup.d.ts +2 -2
  102. package/cdn-versioned/components/option/option.d.ts +1 -1
  103. package/cdn-versioned/components/popup/popup.d.ts +1 -1
  104. package/cdn-versioned/components/quickfact/quickfact.d.ts +1 -1
  105. package/cdn-versioned/components/radio/radio.d.ts +1 -1
  106. package/cdn-versioned/components/radio-button/radio-button.d.ts +1 -1
  107. package/cdn-versioned/components/radio-group/radio-group.d.ts +2 -2
  108. package/cdn-versioned/components/scrollable/scrollable.d.ts +1 -1
  109. package/cdn-versioned/components/select/select.d.ts +5 -4
  110. package/cdn-versioned/components/select/select.js +1 -1
  111. package/cdn-versioned/components/spinner/spinner.d.ts +1 -1
  112. package/cdn-versioned/components/step/step.d.ts +1 -1
  113. package/cdn-versioned/components/step-group/step-group.d.ts +1 -1
  114. package/cdn-versioned/components/switch/switch.d.ts +1 -1
  115. package/cdn-versioned/components/tab/tab.d.ts +1 -1
  116. package/cdn-versioned/components/tab-group/tab-group.d.ts +1 -1
  117. package/cdn-versioned/components/tab-panel/tab-panel.d.ts +1 -1
  118. package/cdn-versioned/components/tag/tag.d.ts +1 -1
  119. package/cdn-versioned/components/textarea/textarea.d.ts +1 -1
  120. package/cdn-versioned/components/tooltip/tooltip.d.ts +1 -1
  121. package/cdn-versioned/components/video/video.d.ts +1 -1
  122. package/cdn-versioned/custom-elements.json +238 -202
  123. package/cdn-versioned/internal/form.js +3 -3
  124. package/cdn-versioned/solid-components.bundle.js +18 -18
  125. package/cdn-versioned/solid-components.css +2 -2
  126. package/cdn-versioned/solid-components.iife.js +18 -18
  127. package/cdn-versioned/solid-components.js +1 -1
  128. package/cdn-versioned/vscode.html-custom-data.json +90 -80
  129. package/cdn-versioned/web-types.json +156 -137
  130. package/dist/chunks/{chunk.I3PY3VYP.js → chunk.B44AE4VW.js} +14 -4
  131. package/dist/chunks/{chunk.WWS3CQ2Z.js → chunk.KTJRTRDJ.js} +16 -5
  132. package/dist/chunks/{chunk.EFEBQQHC.js → chunk.PPBZXQVJ.js} +28 -17
  133. package/dist/components/combobox/combobox.d.ts +1 -0
  134. package/dist/components/combobox/combobox.js +1 -1
  135. package/dist/components/flipcard/flipcard.d.ts +1 -0
  136. package/dist/components/flipcard/flipcard.js +1 -1
  137. package/dist/components/select/select.d.ts +1 -0
  138. package/dist/components/select/select.js +1 -1
  139. package/dist/custom-elements.json +37 -1
  140. package/dist/solid-components.js +3 -3
  141. package/dist/vscode.html-custom-data.json +11 -1
  142. package/dist/web-types.json +21 -2
  143. package/dist-versioned/_components/menu/menu.js +1 -1
  144. package/dist-versioned/_components/menu/menu.styles.js +1 -1
  145. package/dist-versioned/_components/menu-item/menu-item.js +2 -2
  146. package/dist-versioned/chunks/chunk.2IBVAXOX.js +1 -1
  147. package/dist-versioned/chunks/chunk.3IT4HBTI.js +1 -1
  148. package/dist-versioned/chunks/chunk.3LGDUVS4.js +2 -2
  149. package/dist-versioned/chunks/chunk.4JZQQD4L.js +3 -3
  150. package/dist-versioned/chunks/chunk.4QKRGAOL.js +4 -4
  151. package/dist-versioned/chunks/chunk.4RGGPCD5.js +2 -2
  152. package/dist-versioned/chunks/chunk.65BWRJEA.js +5 -5
  153. package/dist-versioned/chunks/chunk.6CUAQSFA.js +2 -2
  154. package/dist-versioned/chunks/chunk.6DKXZWRN.js +4 -4
  155. package/dist-versioned/chunks/chunk.727ERQ4F.js +2 -2
  156. package/dist-versioned/chunks/chunk.743FPQRN.js +2 -2
  157. package/dist-versioned/chunks/chunk.76ZNNLGN.js +1 -1
  158. package/dist-versioned/chunks/chunk.7OHSCBBX.js +1 -1
  159. package/dist-versioned/chunks/{chunk.I3PY3VYP.js → chunk.B44AE4VW.js} +40 -30
  160. package/dist-versioned/chunks/chunk.BG3M5FUP.js +13 -13
  161. package/dist-versioned/chunks/chunk.BVC5FY4L.js +13 -13
  162. package/dist-versioned/chunks/chunk.BXB5WF23.js +5 -5
  163. package/dist-versioned/chunks/chunk.D6JZ4IKM.js +1 -1
  164. package/dist-versioned/chunks/chunk.DQPVSTUQ.js +3 -3
  165. package/dist-versioned/chunks/chunk.EKFRFDTB.js +5 -5
  166. package/dist-versioned/chunks/chunk.H655M7FD.js +1 -1
  167. package/dist-versioned/chunks/chunk.HPR3PWAE.js +3 -3
  168. package/dist-versioned/chunks/chunk.IN3GJ5QL.js +3 -3
  169. package/dist-versioned/chunks/chunk.J2XBUIBC.js +2 -2
  170. package/dist-versioned/chunks/chunk.J7MMF6WJ.js +2 -2
  171. package/dist-versioned/chunks/{chunk.WWS3CQ2Z.js → chunk.KTJRTRDJ.js} +20 -9
  172. package/dist-versioned/chunks/chunk.KVKRZJS7.js +3 -3
  173. package/dist-versioned/chunks/chunk.MTSAWJLV.js +2 -2
  174. package/dist-versioned/chunks/chunk.NM6QP6RJ.js +2 -2
  175. package/dist-versioned/chunks/chunk.PDRECIYA.js +1 -1
  176. package/dist-versioned/chunks/chunk.PGZ5AWZ2.js +9 -9
  177. package/dist-versioned/chunks/chunk.PIR4YJUS.js +2 -2
  178. package/dist-versioned/chunks/{chunk.EFEBQQHC.js → chunk.PPBZXQVJ.js} +52 -41
  179. package/dist-versioned/chunks/chunk.QAZYUCBK.js +6 -6
  180. package/dist-versioned/chunks/chunk.QCICV36Z.js +6 -6
  181. package/dist-versioned/chunks/chunk.QP3SM2LZ.js +3 -3
  182. package/dist-versioned/chunks/chunk.R4BETATX.js +1 -1
  183. package/dist-versioned/chunks/chunk.RNSJAVQE.js +1 -1
  184. package/dist-versioned/chunks/chunk.RZRTIYXA.js +1 -1
  185. package/dist-versioned/chunks/chunk.SPBPHTSS.js +2 -2
  186. package/dist-versioned/chunks/chunk.SSH6ATRK.js +2 -2
  187. package/dist-versioned/chunks/chunk.TWXYFPBS.js +2 -2
  188. package/dist-versioned/chunks/chunk.U5NFPAOX.js +2 -2
  189. package/dist-versioned/chunks/chunk.U6RY25TF.js +2 -2
  190. package/dist-versioned/chunks/chunk.UC5E3AEF.js +1 -1
  191. package/dist-versioned/chunks/chunk.UDZYWRPT.js +1 -1
  192. package/dist-versioned/chunks/chunk.UIQBHPD3.js +2 -2
  193. package/dist-versioned/chunks/chunk.V7TQ6VJU.js +1 -1
  194. package/dist-versioned/chunks/chunk.VHGHICFG.js +2 -2
  195. package/dist-versioned/chunks/chunk.XVFJS7VS.js +5 -5
  196. package/dist-versioned/chunks/chunk.Z2UY62T2.js +1 -1
  197. package/dist-versioned/chunks/chunk.ZGPGFEVP.js +5 -5
  198. package/dist-versioned/chunks/chunk.ZWJI7SLE.js +11 -11
  199. package/dist-versioned/components/accordion/accordion.d.ts +1 -1
  200. package/dist-versioned/components/accordion-group/accordion-group.d.ts +1 -1
  201. package/dist-versioned/components/animation/animation.d.ts +1 -1
  202. package/dist-versioned/components/audio/audio.d.ts +1 -1
  203. package/dist-versioned/components/badge/badge.d.ts +1 -1
  204. package/dist-versioned/components/brandshape/brandshape.d.ts +1 -1
  205. package/dist-versioned/components/button/button.d.ts +1 -1
  206. package/dist-versioned/components/button-group/button-group.d.ts +1 -1
  207. package/dist-versioned/components/carousel/carousel.d.ts +1 -1
  208. package/dist-versioned/components/carousel-item/carousel-item.d.ts +1 -1
  209. package/dist-versioned/components/checkbox/checkbox.d.ts +1 -1
  210. package/dist-versioned/components/checkbox-group/checkbox-group.d.ts +1 -1
  211. package/dist-versioned/components/combobox/combobox.d.ts +5 -4
  212. package/dist-versioned/components/combobox/combobox.js +1 -1
  213. package/dist-versioned/components/dialog/dialog.d.ts +1 -1
  214. package/dist-versioned/components/divider/divider.d.ts +1 -1
  215. package/dist-versioned/components/drawer/drawer.d.ts +1 -1
  216. package/dist-versioned/components/dropdown/dropdown.d.ts +1 -1
  217. package/dist-versioned/components/expandable/expandable.d.ts +1 -1
  218. package/dist-versioned/components/flipcard/flipcard.d.ts +2 -1
  219. package/dist-versioned/components/flipcard/flipcard.js +1 -1
  220. package/dist-versioned/components/header/header.d.ts +1 -1
  221. package/dist-versioned/components/icon/icon.d.ts +1 -1
  222. package/dist-versioned/components/include/include.d.ts +1 -1
  223. package/dist-versioned/components/input/input.d.ts +1 -1
  224. package/dist-versioned/components/link/link.d.ts +1 -1
  225. package/dist-versioned/components/map-marker/map-marker.d.ts +1 -1
  226. package/dist-versioned/components/navigation-item/navigation-item.d.ts +1 -1
  227. package/dist-versioned/components/notification/notification.d.ts +1 -1
  228. package/dist-versioned/components/optgroup/optgroup.d.ts +2 -2
  229. package/dist-versioned/components/option/option.d.ts +1 -1
  230. package/dist-versioned/components/popup/popup.d.ts +1 -1
  231. package/dist-versioned/components/quickfact/quickfact.d.ts +1 -1
  232. package/dist-versioned/components/radio/radio.d.ts +1 -1
  233. package/dist-versioned/components/radio-button/radio-button.d.ts +1 -1
  234. package/dist-versioned/components/radio-group/radio-group.d.ts +2 -2
  235. package/dist-versioned/components/scrollable/scrollable.d.ts +1 -1
  236. package/dist-versioned/components/select/select.d.ts +5 -4
  237. package/dist-versioned/components/select/select.js +1 -1
  238. package/dist-versioned/components/spinner/spinner.d.ts +1 -1
  239. package/dist-versioned/components/step/step.d.ts +1 -1
  240. package/dist-versioned/components/step-group/step-group.d.ts +1 -1
  241. package/dist-versioned/components/switch/switch.d.ts +1 -1
  242. package/dist-versioned/components/tab/tab.d.ts +1 -1
  243. package/dist-versioned/components/tab-group/tab-group.d.ts +1 -1
  244. package/dist-versioned/components/tab-panel/tab-panel.d.ts +1 -1
  245. package/dist-versioned/components/tag/tag.d.ts +1 -1
  246. package/dist-versioned/components/textarea/textarea.d.ts +1 -1
  247. package/dist-versioned/components/tooltip/tooltip.d.ts +1 -1
  248. package/dist-versioned/components/video/video.d.ts +1 -1
  249. package/dist-versioned/custom-elements.json +238 -202
  250. package/dist-versioned/internal/form.js +3 -3
  251. package/dist-versioned/solid-components.css +2 -2
  252. package/dist-versioned/solid-components.js +3 -3
  253. package/dist-versioned/vscode.html-custom-data.json +90 -80
  254. package/dist-versioned/web-types.json +156 -137
  255. package/package.json +2 -2
  256. package/cdn/chunks/chunk.DEX5VJGX.js +0 -11
  257. package/cdn/chunks/chunk.ROBLMI7Q.js +0 -11
  258. package/cdn/chunks/chunk.SNUMAAEG.js +0 -1
  259. package/cdn-versioned/chunks/chunk.DEX5VJGX.js +0 -11
  260. package/cdn-versioned/chunks/chunk.ROBLMI7Q.js +0 -11
  261. package/cdn-versioned/chunks/chunk.SNUMAAEG.js +0 -1
@@ -71,6 +71,7 @@ var SdSelect = class extends SolidElement {
71
71
  this.placement = "bottom";
72
72
  this.label = "";
73
73
  this.placeholder = this.localize.term("selectDefaultPlaceholder");
74
+ this.maxOptionsTagLabel = this.localize.term("tagsSelected");
74
75
  this.disabled = false;
75
76
  this.helpText = "";
76
77
  this.currentPlacement = this.placement;
@@ -231,6 +232,7 @@ var SdSelect = class extends SolidElement {
231
232
  handleTagKeyDown(event, option) {
232
233
  var _a, _b, _c;
233
234
  if (event.key === "Backspace" && this.multiple) {
235
+ event.preventDefault();
234
236
  event.stopPropagation();
235
237
  const tagParent = (_a = event.currentTarget) == null ? void 0 : _a.parentElement;
236
238
  const previousTag = (_b = tagParent == null ? void 0 : tagParent.previousElementSibling) == null ? void 0 : _b.querySelector("sd-tag");
@@ -249,6 +251,7 @@ var SdSelect = class extends SolidElement {
249
251
  }
250
252
  handleTagMaxOptionsKeyDown(event) {
251
253
  if (event.key === "Backspace" && this.multiple) {
254
+ event.preventDefault();
252
255
  event.stopPropagation();
253
256
  this.handleTagRemove(new CustomEvent("sd-remove"), this.selectedOptions[this.selectedOptions.length - 1]);
254
257
  this.updateComplete.then(() => {
@@ -442,7 +445,7 @@ var SdSelect = class extends SolidElement {
442
445
  base:tag__base,
443
446
  content:tag__content,
444
447
  removable-indicator:tag__removable-indicator,
445
- " size="${this.size === "sm" ? "sm" : "lg"}" removable @keydown="${(event) => this.handleTagMaxOptionsKeyDown(event)}" @sd-remove="${(event) => this.handleTagRemove(event)}">${this.selectedOptions.length} ${this.localize.term("tagsSelected")}</sd-tag>`
448
+ " size="${this.size === "sm" ? "sm" : "lg"}" removable @keydown="${(event) => this.handleTagMaxOptionsKeyDown(event)}" @sd-remove="${(event) => this.handleTagRemove(event)}">${this.selectedOptions.length} ${this.maxOptionsTagLabel}</sd-tag>`
446
449
  ];
447
450
  }
448
451
  }
@@ -572,7 +575,7 @@ var SdSelect = class extends SolidElement {
572
575
  };
573
576
  const hasLabel = this.label ? true : !!slots["label"];
574
577
  const hasHelpText = this.helpText ? true : !!slots["helpText"];
575
- const hasClearIcon = this.clearable && !this.disabled && this.value.length > 0;
578
+ const hasClearIcon = this.clearable && !this.disabled;
576
579
  const selectState = this.disabled ? "disabled" : this.hasFocus && this.showInvalidStyle ? "activeInvalid" : this.hasFocus && this.styleOnValid && this.showValidStyle ? "activeValid" : this.hasFocus || this.open ? "active" : this.showInvalidStyle ? "invalid" : this.styleOnValid && this.showValidStyle ? "valid" : "default";
577
580
  const cursorStyles = this.disabled ? "cursor-not-allowed" : "cursor-pointer";
578
581
  const iconMarginLeft = { sm: "ml-1", md: "ml-2", lg: "ml-2" }[this.size];
@@ -617,7 +620,11 @@ var SdSelect = class extends SolidElement {
617
620
  "appearance-none outline-none flex-grow bg-transparent w-full placeholder-neutral-700",
618
621
  cursorStyles,
619
622
  this.multiple && this.useTags && this.value.length > 0 ? "hidden" : ""
620
- )}" type="text" placeholder="${this.placeholder}" .disabled="${this.disabled}" .value="${this.displayLabel}" autocomplete="off" spellcheck="false" autocapitalize="off" readonly="readonly" aria-controls="listbox" aria-expanded="${this.open ? "true" : "false"}" aria-haspopup="listbox" aria-labelledby="label" aria-disabled="${this.disabled ? "true" : "false"}" aria-invalid="${this.showInvalidStyle}" aria-describedby="help-text invalid-message" role="combobox" tabindex="0" @focus="${this.handleFocus}" @blur="${this.handleBlur}"> ${this.multiple && this.useTags ? html`<div part="tags" class="flex-grow flex flex-wrap items-center gap-1">${this.tags}</div>` : ""}<div aria-live="polite" id="control-value" class="absolute top-0 left-0 opacity-0 -z-10">${this.selectedOptions.map((option) => option == null ? void 0 : option.getTextLabel()).join(", ")}</div><input class="${cx("value-input absolute top-0 left-0 w-full h-full opacity-0 -z-10", cursorStyles)}" type="text" ?disabled="${this.disabled}" ?required="${this.required}" .value="${Array.isArray(this.value) ? this.value.join(", ") : this.value}" tabindex="-1" aria-controls="control-value" aria-hidden="true" @focus="${() => this.focus()}" @invalid="${this.handleInvalid}"> ${hasClearIcon ? html`<button part="clear-button" class="${cx("select__clear flex justify-center", iconMarginLeft)}" type="button" aria-label="${this.localize.term("clearEntry")}" @mousedown="${this.handleClearMouseDown}" @click="${this.handleClearClick}" tabindex="-1"><slot name="clear-icon"><sd-icon class="${cx("text-icon-fill-neutral-800", iconSize)}" library="system" name="closing-round"></sd-icon></slot></button>` : ""} ${this.showInvalidStyle ? html`<sd-icon part="invalid-icon" class="${cx(iconMarginLeft, iconSize, "text-error")}" library="system" name="risk"></sd-icon>` : ""} ${this.styleOnValid && this.showValidStyle ? html`<sd-icon part="valid-icon" class="${cx("flex-shrink-0 text-success", iconMarginLeft, iconSize)}" library="system" name="status-check"></sd-icon>` : ""}<slot name="expand-icon" part="expand-icon" class="${cx(
623
+ )}" type="text" placeholder="${this.placeholder}" .disabled="${this.disabled}" .value="${this.displayLabel}" autocomplete="off" spellcheck="false" autocapitalize="off" readonly="readonly" aria-controls="listbox" aria-expanded="${this.open ? "true" : "false"}" aria-haspopup="listbox" aria-labelledby="label" aria-disabled="${this.disabled ? "true" : "false"}" aria-invalid="${this.showInvalidStyle}" aria-describedby="help-text invalid-message" role="combobox" tabindex="0" @focus="${this.handleFocus}" @blur="${this.handleBlur}"> ${this.multiple && this.useTags ? html`<div part="tags" class="flex-grow flex flex-wrap items-center gap-1">${this.tags}</div>` : ""}<div aria-live="polite" id="control-value" class="absolute top-0 left-0 opacity-0 -z-10">${this.selectedOptions.map((option) => option == null ? void 0 : option.getTextLabel()).join(", ")}</div><input class="${cx("value-input absolute top-0 left-0 w-full h-full opacity-0 -z-10", cursorStyles)}" type="text" ?disabled="${this.disabled}" ?required="${this.required}" .value="${Array.isArray(this.value) ? this.value.join(", ") : this.value}" tabindex="-1" aria-controls="control-value" aria-hidden="true" @focus="${() => this.focus()}" @invalid="${this.handleInvalid}"> ${hasClearIcon ? html`<button part="clear-button" class="${cx(
624
+ "select__clear flex justify-center",
625
+ iconMarginLeft,
626
+ this.value.length > 0 ? "visible" : "invisible"
627
+ )}" type="button" aria-label="${this.localize.term("clearEntry")}" @mousedown="${this.handleClearMouseDown}" @click="${this.handleClearClick}" tabindex="-1"><slot name="clear-icon"><sd-icon class="${cx("text-icon-fill-neutral-800", iconSize)}" library="system" name="closing-round"></sd-icon></slot></button>` : ""} ${this.showInvalidStyle ? html`<sd-icon part="invalid-icon" class="${cx(iconMarginLeft, iconSize, "text-error")}" library="system" name="risk"></sd-icon>` : ""} ${this.styleOnValid && this.showValidStyle ? html`<sd-icon part="valid-icon" class="${cx("flex-shrink-0 text-success", iconMarginLeft, iconSize)}" library="system" name="status-check"></sd-icon>` : ""}<slot name="expand-icon" part="expand-icon" class="${cx(
621
628
  "inline-flex ml-2 transition-all",
622
629
  this.open ? "rotate-180" : "rotate-0",
623
630
  this.disabled ? "text-neutral-500" : "text-primary",
@@ -639,7 +646,7 @@ SdSelect.dependencies = {
639
646
  */
640
647
  SdSelect.styles = [
641
648
  ...SolidElement.styles,
642
- css`:host{display:block;position:relative;width:100%}:host([required]) #label:after{content:" *"}[part=listbox]{max-height:var(--auto-size-available-height,auto)}sd-popup::part(popup){z-index:var(--sd-z-index-dropdown,900)}sd-tag::part(base){border-radius:var(--sd-border-radius-default,.25rem);padding-left:var(--sd-spacing-1,.25rem);padding-right:var(--sd-spacing-1,.25rem)}sd-tag[size=lg]::part(base){padding-left:var(--sd-spacing-2,.5rem);padding-right:var(--sd-spacing-2,.5rem)}sd-tag[disabled=false]::part(base):hover{--tw-bg-opacity:1;background-color:rgb(var(--sd-color-primary-100,236 240 249)/var(--tw-bg-opacity,1))}`
649
+ css`:host{display:block;position:relative;width:100%}:host([required]) #label:after{content:" *"}[part=listbox]{max-height:var(--auto-size-available-height,auto)}sd-popup::part(popup){z-index:var(--sd-z-index-dropdown,900)}sd-tag::part(base){border-radius:var(--sd-border-radius-default,.25rem);padding-left:var(--sd-spacing-1,.25rem);padding-right:var(--sd-spacing-1,.25rem)}sd-tag::part(content){display:inline-block;max-width:var(--tag-max-width,15ch);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}sd-tag[size=lg]::part(base){padding-left:var(--sd-spacing-2,.5rem);padding-right:var(--sd-spacing-2,.5rem)}sd-tag[disabled=false]::part(base):hover{--tw-bg-opacity:1;background-color:rgb(var(--sd-color-primary-100,236 240 249)/var(--tw-bg-opacity,1))}`
643
650
  ];
644
651
  __decorateClass([
645
652
  queryAssignedElements({ selector: "sd-option" })
@@ -704,6 +711,9 @@ __decorateClass([
704
711
  __decorateClass([
705
712
  property()
706
713
  ], SdSelect.prototype, "placeholder", 2);
714
+ __decorateClass([
715
+ property({ attribute: "max-options-tag-label" })
716
+ ], SdSelect.prototype, "maxOptionsTagLabel", 2);
707
717
  __decorateClass([
708
718
  property({ type: Boolean, reflect: true })
709
719
  ], SdSelect.prototype, "disabled", 2);
@@ -8,7 +8,8 @@ import {
8
8
 
9
9
  // src/components/flipcard/flipcard.ts
10
10
  import { css, html } from "lit";
11
- import { property, query } from "lit/decorators.js";
11
+ import { ifDefined } from "lit/directives/if-defined.js";
12
+ import { property, query, state } from "lit/decorators.js";
12
13
  import cx from "classix";
13
14
  var SdFlipcard = class extends SolidElement {
14
15
  constructor() {
@@ -17,21 +18,28 @@ var SdFlipcard = class extends SolidElement {
17
18
  this.placement = "top";
18
19
  this.frontVariant = "primary";
19
20
  this.backVariant = "primary";
21
+ this.activeSide = "front";
20
22
  }
21
23
  connectedCallback() {
22
24
  super.connectedCallback();
23
25
  }
24
26
  flipFront() {
27
+ this.activeSide = "back";
25
28
  this.front.classList.add("clicked--front");
26
29
  this.back.classList.add("clicked--back");
27
30
  this.emit("sd-flip-front");
28
- this.back.focus();
31
+ setTimeout(() => {
32
+ this.back.focus();
33
+ });
29
34
  }
30
35
  flipBack() {
36
+ this.activeSide = "front";
31
37
  this.front.classList.remove("clicked--front");
32
38
  this.back.classList.remove("clicked--back");
33
39
  this.emit("sd-flip-back");
34
- this.front.focus();
40
+ setTimeout(() => {
41
+ this.front.focus();
42
+ });
35
43
  }
36
44
  handleFrontKeydown(event) {
37
45
  if (event.code === "Enter" && this.front === event.target) {
@@ -44,7 +52,7 @@ var SdFlipcard = class extends SolidElement {
44
52
  }
45
53
  }
46
54
  render() {
47
- return html`<div part="base" class="${cx("flip-card relative h-full w-full")}"><div part="front" tabindex="0" class="${cx(
55
+ return html`<div part="base" class="${cx("flip-card relative h-full w-full")}"><div part="front" tabindex="0" aria-hidden="${this.activeSide === "back"}" inert="${ifDefined(this.activeSide === "back" || void 0)}" class="${cx(
48
56
  "flip-card__side flip-card__side--front overflow-hidden transition-transform duration-1000 ease-in-out",
49
57
  "flex focus-visible:focus-outline",
50
58
  "absolute top-0 left-0 w-full h-full justify-end text-left",
@@ -87,7 +95,7 @@ var SdFlipcard = class extends SolidElement {
87
95
  "primary-100": false,
88
96
  "gradient-light": true,
89
97
  "gradient-dark": true
90
- }[this.frontVariant]}" class="${cx("absolute right-0 p-2 flex-shrink-0", this.placement === "top" ? "bottom-0" : "top-0")}" @click="${this.flipFront}" @keydown="${this.handleFrontKeydown}"><sd-icon library="system" name="reload" label="Flip to Back"></sd-icon></sd-button></div><div part="back" tabindex="0" class="${cx(
98
+ }[this.frontVariant]}" class="${cx("absolute right-0 p-2 flex-shrink-0", this.placement === "top" ? "bottom-0" : "top-0")}" @click="${this.flipFront}" @keydown="${this.handleFrontKeydown}"><sd-icon library="system" name="reload" label="Flip to Back"></sd-icon></sd-button></div><div part="back" tabindex="0" aria-hidden="${this.activeSide === "front"}" inert="${ifDefined(this.activeSide === "front" || void 0)}" class="${cx(
91
99
  "flip-card__side flip-card__side--back overflow-hidden transition-transform duration-1000 ease-in-out",
92
100
  "flex focus-visible:focus-outline",
93
101
  "absolute top-0 left-0 w-full h-full justify-end text-left",
@@ -158,6 +166,9 @@ __decorateClass([
158
166
  __decorateClass([
159
167
  property({ type: String, reflect: true, attribute: "back-variant" })
160
168
  ], SdFlipcard.prototype, "backVariant", 2);
169
+ __decorateClass([
170
+ state()
171
+ ], SdFlipcard.prototype, "activeSide", 2);
161
172
  SdFlipcard = __decorateClass([
162
173
  customElement("sd-flipcard")
163
174
  ], SdFlipcard);
@@ -80,6 +80,7 @@ var SdCombobox = class extends SolidElement {
80
80
  this.defaultValue = "";
81
81
  this.size = "lg";
82
82
  this.placeholder = this.localize.term("comboboxDefaultPlaceholder");
83
+ this.maxOptionsTagLabel = this.localize.term("tagsSelected");
83
84
  this.disabled = false;
84
85
  this.clearable = false;
85
86
  this.open = false;
@@ -162,13 +163,13 @@ var SdCombobox = class extends SolidElement {
162
163
  this.setOrderedSelectedOptions(currentOption);
163
164
  this.setSelectedOptions(currentOption);
164
165
  }
165
- this.updateComplete.then(() => this.displayInput.focus({ preventScroll: true }));
166
- if (this.value !== oldValue) {
167
- this.updateComplete.then(() => {
166
+ this.updateComplete.then(() => {
167
+ this.displayInput.focus({ preventScroll: true });
168
+ if (this.value !== oldValue) {
168
169
  this.emit("sd-input");
169
170
  this.emit("sd-change");
170
- });
171
- }
171
+ }
172
+ });
172
173
  }
173
174
  this.displayInput.focus({ preventScroll: true });
174
175
  if (!this.multiple) {
@@ -212,7 +213,6 @@ var SdCombobox = class extends SolidElement {
212
213
  this.selectedTextLabel = (option == null ? void 0 : option.getTextLabel()) || "";
213
214
  }
214
215
  this.formControlController.updateValidity();
215
- this.applySizeToOptions();
216
216
  }
217
217
  /** Gets the validity state object */
218
218
  get validity() {
@@ -255,7 +255,7 @@ var SdCombobox = class extends SolidElement {
255
255
  base:tag__base,
256
256
  content:tag__content,
257
257
  removable-indicator:tag__removable-indicator,
258
- " size="${this.size === "sm" ? "sm" : "lg"}" removable @keydown="${(event) => this.handleTagMaxOptionsKeyDown(event)}" @sd-remove="${(event) => this.handleTagRemove(event)}">${this.selectedOptions.length} ${this.localize.term("tagsSelected")}</sd-tag>`
258
+ " size="${this.size === "sm" ? "sm" : "lg"}" removable @keydown="${(event) => this.handleTagMaxOptionsKeyDown(event)}" @sd-remove="${(event) => this.handleTagRemove(event)}">${this.selectedOptions.length} ${this.maxOptionsTagLabel}</sd-tag>`
259
259
  ];
260
260
  }
261
261
  }
@@ -283,6 +283,7 @@ var SdCombobox = class extends SolidElement {
283
283
  }
284
284
  handleTagKeyDown(event, option) {
285
285
  if (event.key === "Backspace" && this.multiple) {
286
+ event.preventDefault();
286
287
  event.stopPropagation();
287
288
  this.handleTagRemove(new CustomEvent("sd-remove"), option);
288
289
  this.updateComplete.then(() => this.displayInput.focus({ preventScroll: true }));
@@ -290,6 +291,7 @@ var SdCombobox = class extends SolidElement {
290
291
  }
291
292
  handleTagMaxOptionsKeyDown(event) {
292
293
  if (event.key === "Backspace" && this.multiple) {
294
+ event.preventDefault();
293
295
  event.stopPropagation();
294
296
  this.handleTagRemove(new CustomEvent("sd-remove"), this.selectedOptions[this.selectedOptions.length - 1]);
295
297
  this.updateComplete.then(() => this.displayInput.focus({ preventScroll: true }));
@@ -376,13 +378,13 @@ var SdCombobox = class extends SolidElement {
376
378
  this.setOrderedSelectedOptions(option);
377
379
  this.setSelectedOptions(option);
378
380
  }
379
- this.updateComplete.then(() => this.displayInput.focus({ preventScroll: true }));
380
- if (this.value !== oldValue) {
381
- this.updateComplete.then(() => {
381
+ this.updateComplete.then(() => {
382
+ this.displayInput.focus({ preventScroll: true });
383
+ if (this.value !== oldValue) {
382
384
  this.emit("sd-input");
383
385
  this.emit("sd-change");
384
- });
385
- }
386
+ }
387
+ });
386
388
  if (!this.multiple) {
387
389
  this.hide();
388
390
  this.displayInput.focus({ preventScroll: true });
@@ -538,6 +540,8 @@ var SdCombobox = class extends SolidElement {
538
540
  const clonedOption = option.cloneNode(true);
539
541
  clonedOption.current = clonedOption.value === ((_a = this.lastOption) == null ? void 0 : _a.value);
540
542
  clonedOption.selected = option.selected;
543
+ clonedOption.checkbox = option.checkbox;
544
+ clonedOption.size = option.size;
541
545
  const hasOptgroup = ((_b = option.parentElement) == null ? void 0 : _b.tagName.toLowerCase()) === "sd-optgroup";
542
546
  if (!hasOptgroup) {
543
547
  return clonedOption;
@@ -712,6 +716,9 @@ var SdCombobox = class extends SolidElement {
712
716
  }
713
717
  const slottedOptions = this.getSlottedOptions();
714
718
  const slottedOptgroups = this.getSlottedOptGroups();
719
+ this.applySizeToOptions();
720
+ const selectedOption = this.findOptionByValue(slottedOptions, this.value);
721
+ this.selectedTextLabel = (selectedOption == null ? void 0 : selectedOption.getTextLabel()) || "";
715
722
  slottedOptions.forEach((option, index) => {
716
723
  if (this.multiple) {
717
724
  option.checkbox = true;
@@ -727,9 +734,6 @@ var SdCombobox = class extends SolidElement {
727
734
  } else {
728
735
  this.createComboboxOptionsFromQuery("");
729
736
  }
730
- if (this.hasFocus && this.value.length > 0 && !this.open) {
731
- await this.show();
732
- }
733
737
  }
734
738
  render() {
735
739
  const slots = {
@@ -740,7 +744,7 @@ var SdCombobox = class extends SolidElement {
740
744
  const hasHelpTextSlot = this.hasSlotController.test("help-text");
741
745
  const hasLabel = this.label ? true : !!hasLabelSlot;
742
746
  const hasHelpText = this.helpText ? true : !!hasHelpTextSlot;
743
- const hasClearIcon = this.clearable && !this.disabled && this.value.length > 0;
747
+ const hasClearIcon = this.clearable && !this.disabled;
744
748
  const selectState = this.disabled ? "disabled" : this.hasFocus && this.showInvalidStyle ? "activeInvalid" : this.hasFocus && this.styleOnValid && this.showValidStyle ? "activeValid" : this.hasFocus || this.open ? "active" : this.showInvalidStyle ? "invalid" : this.styleOnValid && this.showValidStyle ? "valid" : "default";
745
749
  const cursorStyles = this.disabled ? "cursor-not-allowed" : "cursor-pointer";
746
750
  const iconColor = this.disabled ? "text-neutral-500" : "text-primary";
@@ -787,7 +791,11 @@ var SdCombobox = class extends SolidElement {
787
791
  "appearance-none outline-none bg-transparent flex-auto min-w-0",
788
792
  cursorStyles,
789
793
  this.selectedTextLabel && !this.multiple ? "placeholder-black" : "placeholder-neutral-700"
790
- )}" type="text" placeholder="${this.selectedTextLabel && !this.multiple ? this.selectedTextLabel : this.placeholder}" .disabled="${this.disabled}" .value="${this.displayInputValue}" autocomplete="off" spellcheck="false" autocapitalize="off" aria-controls="listbox" aria-expanded="${this.open}" aria-haspopup="listbox" aria-labelledby="label" aria-disabled="${this.disabled}" aria-describedby="help-text invalid-message" aria-invalid="${this.showInvalidStyle}" role="combobox" tabindex="0" @focus="${this.handleFocus}" @blur="${this.handleBlur}" aria-autocomplete="list" aria-owns="listbox" @input="${this.handleInput}" @change="${this.handleChange}"><div aria-live="polite" id="control-value" class="absolute top-0 left-0 opacity-0 -z-10">${this.selectedOptions.map((option) => option == null ? void 0 : option.getTextLabel()).join(", ")}</div><input class="${cx("value-input absolute top-0 left-0 w-full h-full opacity-0 -z-10", cursorStyles)}" type="text" ?disabled="${this.disabled}" ?required="${this.required}" .value="${Array.isArray(this.value) ? this.value.join(", ") : this.value}" tabindex="-1" aria-controls="control-value" aria-hidden="true" @focus="${() => this.focus()}" @invalid="${this.handleInvalid}"> ${hasClearIcon ? html`<button part="clear-button" class="${cx("flex justify-center", iconMarginLeft)}" type="button" aria-label="${this.localize.term("clearEntry")}" @mousedown="${this.preventLoosingFocus}" @click="${this.handleClearClick}" tabindex="-1"><slot name="clear-icon"><sd-icon class="${cx("text-icon-fill-neutral-800", iconSize)}" name="closing-round" library="system"></sd-icon></slot></button>` : ""} ${this.showInvalidStyle ? html`<sd-icon part="invalid-icon" class="${cx(iconMarginLeft, iconSize, "text-error")}" library="system" name="risk"></sd-icon>` : ""} ${this.styleOnValid && this.showValidStyle ? html`<sd-icon part="valid-icon" class="${cx("flex-shrink-0 text-success", iconMarginLeft, iconSize)}" library="system" name="status-check"></sd-icon>` : ""}<slot name="right" part="right" class="${cx(
794
+ )}" type="text" placeholder="${this.selectedTextLabel && !this.multiple ? this.selectedTextLabel : this.placeholder}" .disabled="${this.disabled}" .value="${this.displayInputValue}" autocomplete="off" spellcheck="false" autocapitalize="off" aria-controls="listbox" aria-expanded="${this.open}" aria-haspopup="listbox" aria-labelledby="label" aria-disabled="${this.disabled}" aria-describedby="help-text invalid-message" aria-invalid="${this.showInvalidStyle}" role="combobox" tabindex="0" @focus="${this.handleFocus}" @blur="${this.handleBlur}" aria-autocomplete="list" aria-owns="listbox" @input="${this.handleInput}" @change="${this.handleChange}"><div aria-live="polite" id="control-value" class="absolute top-0 left-0 opacity-0 -z-10">${this.selectedOptions.map((option) => option == null ? void 0 : option.getTextLabel()).join(", ")}</div><input class="${cx("value-input absolute top-0 left-0 w-full h-full opacity-0 -z-10", cursorStyles)}" type="text" ?disabled="${this.disabled}" ?required="${this.required}" .value="${Array.isArray(this.value) ? this.value.join(", ") : this.value}" tabindex="-1" aria-controls="control-value" aria-hidden="true" @focus="${() => this.focus()}" @invalid="${this.handleInvalid}"> ${hasClearIcon ? html`<button part="clear-button" class="${cx(
795
+ "flex justify-center",
796
+ iconMarginLeft,
797
+ this.value.length > 0 ? "visible" : "invisible"
798
+ )}" type="button" aria-label="${this.localize.term("clearEntry")}" @mousedown="${this.preventLoosingFocus}" @click="${this.handleClearClick}" tabindex="-1"><slot name="clear-icon"><sd-icon class="${cx("text-icon-fill-neutral-800", iconSize)}" name="closing-round" library="system"></sd-icon></slot></button>` : ""} ${this.showInvalidStyle ? html`<sd-icon part="invalid-icon" class="${cx(iconMarginLeft, iconSize, "text-error")}" library="system" name="risk"></sd-icon>` : ""} ${this.styleOnValid && this.showValidStyle ? html`<sd-icon part="valid-icon" class="${cx("flex-shrink-0 text-success", iconMarginLeft, iconSize)}" library="system" name="status-check"></sd-icon>` : ""}<slot name="right" part="right" class="${cx(
791
799
  "inline-flex ml-2 leading-[0]",
792
800
  this.disabled ? "text-neutral-500" : "text-primary",
793
801
  iconSize
@@ -884,6 +892,9 @@ __decorateClass([
884
892
  __decorateClass([
885
893
  property()
886
894
  ], SdCombobox.prototype, "placeholder", 2);
895
+ __decorateClass([
896
+ property({ attribute: "max-options-tag-label" })
897
+ ], SdCombobox.prototype, "maxOptionsTagLabel", 2);
887
898
  __decorateClass([
888
899
  property({ reflect: true, type: Boolean })
889
900
  ], SdCombobox.prototype, "disabled", 2);
@@ -40,6 +40,7 @@ export default class SdCombobox extends SolidElement implements SolidFormControl
40
40
  defaultValue: string;
41
41
  size: 'lg' | 'md' | 'sm';
42
42
  placeholder: string;
43
+ maxOptionsTagLabel: string;
43
44
  disabled: boolean;
44
45
  clearable: boolean;
45
46
  open: boolean;
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SdCombobox
3
- } from "../../chunks/chunk.EFEBQQHC.js";
3
+ } from "../../chunks/chunk.PPBZXQVJ.js";
4
4
  import "../../chunks/chunk.NM6QP6RJ.js";
5
5
  import "../../chunks/chunk.V7TQ6VJU.js";
6
6
  import "../../chunks/chunk.GI7VDIWX.js";
@@ -8,6 +8,7 @@ export default class SdFlipcard extends SolidElement {
8
8
  placement: 'top' | 'bottom';
9
9
  frontVariant: 'primary' | 'primary-100' | 'gradient-light' | 'gradient-dark';
10
10
  backVariant: 'primary' | 'primary-100' | 'gradient-light' | 'gradient-dark';
11
+ activeSide: 'front' | 'back';
11
12
  connectedCallback(): void;
12
13
  private flipFront;
13
14
  private flipBack;
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SdFlipcard
3
- } from "../../chunks/chunk.WWS3CQ2Z.js";
3
+ } from "../../chunks/chunk.KTJRTRDJ.js";
4
4
  import "../../chunks/chunk.4QKRGAOL.js";
5
5
  import "../../chunks/chunk.D6JZ4IKM.js";
6
6
  import "../../chunks/chunk.KVKRZJS7.js";
@@ -38,6 +38,7 @@ export default class SdSelect extends SolidElement implements SolidFormControl {
38
38
  placement: 'top' | 'bottom';
39
39
  label: string;
40
40
  placeholder: string;
41
+ maxOptionsTagLabel: string;
41
42
  disabled: boolean;
42
43
  helpText: string;
43
44
  currentPlacement: "top" | "bottom";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SdSelect
3
- } from "../../chunks/chunk.I3PY3VYP.js";
3
+ } from "../../chunks/chunk.B44AE4VW.js";
4
4
  import "../../chunks/chunk.NM6QP6RJ.js";
5
5
  import "../../chunks/chunk.V7TQ6VJU.js";
6
6
  import "../../chunks/chunk.GI7VDIWX.js";
@@ -3933,6 +3933,12 @@
3933
3933
  "description": "Placeholder text to show as a hint when the combobox is empty.",
3934
3934
  "attribute": "placeholder"
3935
3935
  },
3936
+ {
3937
+ "kind": "field",
3938
+ "name": "maxOptionsTagLabel",
3939
+ "description": "Label text shown on tag if max-options-visible is reached.",
3940
+ "attribute": "max-options-tag-label"
3941
+ },
3936
3942
  {
3937
3943
  "kind": "field",
3938
3944
  "name": "disabled",
@@ -4304,6 +4310,11 @@
4304
4310
  "description": "Placeholder text to show as a hint when the combobox is empty.",
4305
4311
  "fieldName": "placeholder"
4306
4312
  },
4313
+ {
4314
+ "name": "max-options-tag-label",
4315
+ "description": "Label text shown on tag if max-options-visible is reached.",
4316
+ "fieldName": "maxOptionsTagLabel"
4317
+ },
4307
4318
  {
4308
4319
  "name": "disabled",
4309
4320
  "type": {
@@ -6350,6 +6361,14 @@
6350
6361
  "attribute": "back-variant",
6351
6362
  "reflects": true
6352
6363
  },
6364
+ {
6365
+ "kind": "field",
6366
+ "name": "activeSide",
6367
+ "type": {
6368
+ "text": "'front' | 'back'"
6369
+ },
6370
+ "default": "'front'"
6371
+ },
6353
6372
  {
6354
6373
  "kind": "field",
6355
6374
  "name": "dir",
@@ -12148,6 +12167,12 @@
12148
12167
  "kind": "class",
12149
12168
  "description": "",
12150
12169
  "name": "SdSelect",
12170
+ "cssProperties": [
12171
+ {
12172
+ "description": "Set the maximum width of the tags and to show an ellipsis. Defaults to \"15ch\"",
12173
+ "name": "--tag-max-width"
12174
+ }
12175
+ ],
12151
12176
  "cssParts": [
12152
12177
  {
12153
12178
  "description": "The form control that wraps the label, input, and help text.",
@@ -12320,6 +12345,12 @@
12320
12345
  "description": "Placeholder text to show as a hint when the select is empty.",
12321
12346
  "attribute": "placeholder"
12322
12347
  },
12348
+ {
12349
+ "kind": "field",
12350
+ "name": "maxOptionsTagLabel",
12351
+ "description": "Label text shown on tag if max-options-visible is reached.",
12352
+ "attribute": "max-options-tag-label"
12353
+ },
12323
12354
  {
12324
12355
  "kind": "field",
12325
12356
  "name": "disabled",
@@ -12655,6 +12686,11 @@
12655
12686
  "description": "Placeholder text to show as a hint when the select is empty.",
12656
12687
  "fieldName": "placeholder"
12657
12688
  },
12689
+ {
12690
+ "name": "max-options-tag-label",
12691
+ "description": "Label text shown on tag if max-options-visible is reached.",
12692
+ "fieldName": "maxOptionsTagLabel"
12693
+ },
12658
12694
  {
12659
12695
  "name": "disabled",
12660
12696
  "type": {
@@ -16660,7 +16696,7 @@
16660
16696
  "package": {
16661
16697
  "name": "@solid-design-system/components",
16662
16698
  "description": "Solid Design System: Components",
16663
- "version": "4.0.0-next.5",
16699
+ "version": "4.0.0-next.7",
16664
16700
  "author": "Union Investment",
16665
16701
  "homepage": "https://solid-design-system.fe.union-investment.de/docs/",
16666
16702
  "license": "MIT"
@@ -19,7 +19,7 @@ import {
19
19
  } from "./chunks/chunk.SPBPHTSS.js";
20
20
  import {
21
21
  SdSelect
22
- } from "./chunks/chunk.I3PY3VYP.js";
22
+ } from "./chunks/chunk.B44AE4VW.js";
23
23
  import {
24
24
  SdStep
25
25
  } from "./chunks/chunk.3LGDUVS4.js";
@@ -85,7 +85,7 @@ import {
85
85
  } from "./chunks/chunk.J2XBUIBC.js";
86
86
  import {
87
87
  SdFlipcard
88
- } from "./chunks/chunk.WWS3CQ2Z.js";
88
+ } from "./chunks/chunk.KTJRTRDJ.js";
89
89
  import {
90
90
  SdHeader
91
91
  } from "./chunks/chunk.Z2UY62T2.js";
@@ -97,7 +97,7 @@ import {
97
97
  } from "./chunks/chunk.65BWRJEA.js";
98
98
  import {
99
99
  SdCombobox
100
- } from "./chunks/chunk.EFEBQQHC.js";
100
+ } from "./chunks/chunk.PPBZXQVJ.js";
101
101
  import {
102
102
  SdTag
103
103
  } from "./chunks/chunk.NM6QP6RJ.js";
@@ -626,6 +626,11 @@
626
626
  "description": "Placeholder text to show as a hint when the combobox is empty.",
627
627
  "values": []
628
628
  },
629
+ {
630
+ "name": "max-options-tag-label",
631
+ "description": "Label text shown on tag if max-options-visible is reached.",
632
+ "values": []
633
+ },
629
634
  {
630
635
  "name": "disabled",
631
636
  "description": "Disables the combobox control.",
@@ -2070,7 +2075,7 @@
2070
2075
  },
2071
2076
  {
2072
2077
  "name": "sd-select",
2073
- "description": "Selects allow you to choose items from a menu of predefined options.\n---\n\n\n### **Events:**\n - **sd-change** - Emitted when the control's value changes.\n- **sd-clear** - Emitted when the control's value is cleared.\n- **sd-input** - Emitted when the control receives input.\n- **sd-focus** - Emitted when the control gains focus.\n- **sd-blur** - Emitted when the control loses focus.\n- **sd-show** - Emitted when the select's menu opens.\n- **sd-after-show** - Emitted after the select's menu opens and all animations are complete.\n- **sd-hide** - Emitted when the select's menu closes.\n- **sd-after-hide** - Emitted after the select's menu closes and all animations are complete.\n- **sd-invalid** - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n\n### **Methods:**\n - **show()** - Shows the listbox.\n- **hide()** - Hides the listbox.\n- **checkValidity()** - Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid.\n- **getForm(): _HTMLFormElement | null_** - Gets the associated form, if one exists.\n- **reportValidity()** - Checks for validity and shows the browser's validation message if the control is invalid.\n- **setCustomValidity(message: _string_)** - Sets a custom validation message. Pass an empty string to restore validity.\n- **focus(options: _FocusOptions_)** - Sets focus on the control.\n- **blur()** - Removes focus from the control.\n- **emit(name: _string_, options: _CustomEventInit_)** - Emits a custom event with more convenient defaults.\n\n### **Slots:**\n - _default_ - The listbox options. Must be `<sd-option>` elements. You can use `<sd-divider>` to group items visually.\n- **label** - The input's label. Alternatively, you can use the `label` attribute.\n- **help-text** - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.\n- **clear-icon** - An icon to use in lieu of the default clear icon.\n- **expand-icon** - The icon to show when the control is expanded and collapsed. Rotates on open and close.\n- **tooltip** - An optional tooltip that helps describe the input. Use this slot with the `sd-tooltip` component.\n\n### **CSS Parts:**\n - **form-control** - The form control that wraps the label, input, and help text.\n- **form-control-label** - The label's wrapper.\n- **form-control-input** - The select's wrapper.\n- **form-control-help-text** - The help text's wrapper.\n- **combobox** - The container the wraps the combobox, clear icon, and expand button.\n- **display-input** - The element that displays the selected option's label, an `<input>` element.\n- **listbox** - The listbox container where options are slotted.\n- **tags** - The container that houses option tags when `multiselect` is used.\n- **tag** - The individual tags that represent each multiselect option.\n- **tag__base** - The tag's base part.\n- **tag__content** - The tag's content part.\n- **tag__removable-indicator** - The tag's remove button.\n- **clear-button** - The clear button.\n- **expand-icon** - The container that wraps the expand icon.",
2078
+ "description": "Selects allow you to choose items from a menu of predefined options.\n---\n\n\n### **Events:**\n - **sd-change** - Emitted when the control's value changes.\n- **sd-clear** - Emitted when the control's value is cleared.\n- **sd-input** - Emitted when the control receives input.\n- **sd-focus** - Emitted when the control gains focus.\n- **sd-blur** - Emitted when the control loses focus.\n- **sd-show** - Emitted when the select's menu opens.\n- **sd-after-show** - Emitted after the select's menu opens and all animations are complete.\n- **sd-hide** - Emitted when the select's menu closes.\n- **sd-after-hide** - Emitted after the select's menu closes and all animations are complete.\n- **sd-invalid** - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n\n### **Methods:**\n - **show()** - Shows the listbox.\n- **hide()** - Hides the listbox.\n- **checkValidity()** - Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid.\n- **getForm(): _HTMLFormElement | null_** - Gets the associated form, if one exists.\n- **reportValidity()** - Checks for validity and shows the browser's validation message if the control is invalid.\n- **setCustomValidity(message: _string_)** - Sets a custom validation message. Pass an empty string to restore validity.\n- **focus(options: _FocusOptions_)** - Sets focus on the control.\n- **blur()** - Removes focus from the control.\n- **emit(name: _string_, options: _CustomEventInit_)** - Emits a custom event with more convenient defaults.\n\n### **Slots:**\n - _default_ - The listbox options. Must be `<sd-option>` elements. You can use `<sd-divider>` to group items visually.\n- **label** - The input's label. Alternatively, you can use the `label` attribute.\n- **help-text** - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.\n- **clear-icon** - An icon to use in lieu of the default clear icon.\n- **expand-icon** - The icon to show when the control is expanded and collapsed. Rotates on open and close.\n- **tooltip** - An optional tooltip that helps describe the input. Use this slot with the `sd-tooltip` component.\n\n### **CSS Properties:**\n - **--tag-max-width** - Set the maximum width of the tags and to show an ellipsis. Defaults to \"15ch\" _(default: undefined)_\n\n### **CSS Parts:**\n - **form-control** - The form control that wraps the label, input, and help text.\n- **form-control-label** - The label's wrapper.\n- **form-control-input** - The select's wrapper.\n- **form-control-help-text** - The help text's wrapper.\n- **combobox** - The container the wraps the combobox, clear icon, and expand button.\n- **display-input** - The element that displays the selected option's label, an `<input>` element.\n- **listbox** - The listbox container where options are slotted.\n- **tags** - The container that houses option tags when `multiselect` is used.\n- **tag** - The individual tags that represent each multiselect option.\n- **tag__base** - The tag's base part.\n- **tag__content** - The tag's content part.\n- **tag__removable-indicator** - The tag's remove button.\n- **clear-button** - The clear button.\n- **expand-icon** - The container that wraps the expand icon.",
2074
2079
  "attributes": [
2075
2080
  {
2076
2081
  "name": "open",
@@ -2097,6 +2102,11 @@
2097
2102
  "description": "Placeholder text to show as a hint when the select is empty.",
2098
2103
  "values": []
2099
2104
  },
2105
+ {
2106
+ "name": "max-options-tag-label",
2107
+ "description": "Label text shown on tag if max-options-visible is reached.",
2108
+ "values": []
2109
+ },
2100
2110
  {
2101
2111
  "name": "disabled",
2102
2112
  "description": "Disables the select control.",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json",
3
3
  "name": "@solid-design-system/components",
4
- "version": "4.0.0-next.5",
4
+ "version": "4.0.0-next.7",
5
5
  "description-markup": "markdown",
6
6
  "contributions": {
7
7
  "html": {
@@ -1368,6 +1368,11 @@
1368
1368
  "description": "Placeholder text to show as a hint when the combobox is empty.",
1369
1369
  "value": { "type": "string" }
1370
1370
  },
1371
+ {
1372
+ "name": "max-options-tag-label",
1373
+ "description": "Label text shown on tag if max-options-visible is reached.",
1374
+ "value": { "type": "string" }
1375
+ },
1371
1376
  {
1372
1377
  "name": "disabled",
1373
1378
  "description": "Disables the combobox control.",
@@ -1581,6 +1586,10 @@
1581
1586
  "name": "placeholder",
1582
1587
  "description": "Placeholder text to show as a hint when the combobox is empty."
1583
1588
  },
1589
+ {
1590
+ "name": "maxOptionsTagLabel",
1591
+ "description": "Label text shown on tag if max-options-visible is reached."
1592
+ },
1584
1593
  {
1585
1594
  "name": "disabled",
1586
1595
  "description": "Disables the combobox control.",
@@ -2427,6 +2436,7 @@
2427
2436
  "description": "Determines the variant of the back face of the flipcard.",
2428
2437
  "type": "'primary' | 'primary-100' | 'gradient-light' | 'gradient-dark'"
2429
2438
  },
2439
+ { "name": "activeSide", "type": "'front' | 'back'" },
2430
2440
  {
2431
2441
  "name": "dir",
2432
2442
  "description": "The element's directionality.",
@@ -4741,7 +4751,7 @@
4741
4751
  },
4742
4752
  {
4743
4753
  "name": "sd-select",
4744
- "description": "Selects allow you to choose items from a menu of predefined options.\n---\n\n\n### **Events:**\n - **sd-change** - Emitted when the control's value changes.\n- **sd-clear** - Emitted when the control's value is cleared.\n- **sd-input** - Emitted when the control receives input.\n- **sd-focus** - Emitted when the control gains focus.\n- **sd-blur** - Emitted when the control loses focus.\n- **sd-show** - Emitted when the select's menu opens.\n- **sd-after-show** - Emitted after the select's menu opens and all animations are complete.\n- **sd-hide** - Emitted when the select's menu closes.\n- **sd-after-hide** - Emitted after the select's menu closes and all animations are complete.\n- **sd-invalid** - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n\n### **Methods:**\n - **show()** - Shows the listbox.\n- **hide()** - Hides the listbox.\n- **checkValidity()** - Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid.\n- **getForm(): _HTMLFormElement | null_** - Gets the associated form, if one exists.\n- **reportValidity()** - Checks for validity and shows the browser's validation message if the control is invalid.\n- **setCustomValidity(message: _string_)** - Sets a custom validation message. Pass an empty string to restore validity.\n- **focus(options: _FocusOptions_)** - Sets focus on the control.\n- **blur()** - Removes focus from the control.\n- **emit(name: _string_, options: _CustomEventInit_)** - Emits a custom event with more convenient defaults.\n\n### **Slots:**\n - _default_ - The listbox options. Must be `<sd-option>` elements. You can use `<sd-divider>` to group items visually.\n- **label** - The input's label. Alternatively, you can use the `label` attribute.\n- **help-text** - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.\n- **clear-icon** - An icon to use in lieu of the default clear icon.\n- **expand-icon** - The icon to show when the control is expanded and collapsed. Rotates on open and close.\n- **tooltip** - An optional tooltip that helps describe the input. Use this slot with the `sd-tooltip` component.\n\n### **CSS Parts:**\n - **form-control** - The form control that wraps the label, input, and help text.\n- **form-control-label** - The label's wrapper.\n- **form-control-input** - The select's wrapper.\n- **form-control-help-text** - The help text's wrapper.\n- **combobox** - The container the wraps the combobox, clear icon, and expand button.\n- **display-input** - The element that displays the selected option's label, an `<input>` element.\n- **listbox** - The listbox container where options are slotted.\n- **tags** - The container that houses option tags when `multiselect` is used.\n- **tag** - The individual tags that represent each multiselect option.\n- **tag__base** - The tag's base part.\n- **tag__content** - The tag's content part.\n- **tag__removable-indicator** - The tag's remove button.\n- **clear-button** - The clear button.\n- **expand-icon** - The container that wraps the expand icon.",
4754
+ "description": "Selects allow you to choose items from a menu of predefined options.\n---\n\n\n### **Events:**\n - **sd-change** - Emitted when the control's value changes.\n- **sd-clear** - Emitted when the control's value is cleared.\n- **sd-input** - Emitted when the control receives input.\n- **sd-focus** - Emitted when the control gains focus.\n- **sd-blur** - Emitted when the control loses focus.\n- **sd-show** - Emitted when the select's menu opens.\n- **sd-after-show** - Emitted after the select's menu opens and all animations are complete.\n- **sd-hide** - Emitted when the select's menu closes.\n- **sd-after-hide** - Emitted after the select's menu closes and all animations are complete.\n- **sd-invalid** - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n\n### **Methods:**\n - **show()** - Shows the listbox.\n- **hide()** - Hides the listbox.\n- **checkValidity()** - Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid.\n- **getForm(): _HTMLFormElement | null_** - Gets the associated form, if one exists.\n- **reportValidity()** - Checks for validity and shows the browser's validation message if the control is invalid.\n- **setCustomValidity(message: _string_)** - Sets a custom validation message. Pass an empty string to restore validity.\n- **focus(options: _FocusOptions_)** - Sets focus on the control.\n- **blur()** - Removes focus from the control.\n- **emit(name: _string_, options: _CustomEventInit_)** - Emits a custom event with more convenient defaults.\n\n### **Slots:**\n - _default_ - The listbox options. Must be `<sd-option>` elements. You can use `<sd-divider>` to group items visually.\n- **label** - The input's label. Alternatively, you can use the `label` attribute.\n- **help-text** - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.\n- **clear-icon** - An icon to use in lieu of the default clear icon.\n- **expand-icon** - The icon to show when the control is expanded and collapsed. Rotates on open and close.\n- **tooltip** - An optional tooltip that helps describe the input. Use this slot with the `sd-tooltip` component.\n\n### **CSS Properties:**\n - **--tag-max-width** - Set the maximum width of the tags and to show an ellipsis. Defaults to \"15ch\" _(default: undefined)_\n\n### **CSS Parts:**\n - **form-control** - The form control that wraps the label, input, and help text.\n- **form-control-label** - The label's wrapper.\n- **form-control-input** - The select's wrapper.\n- **form-control-help-text** - The help text's wrapper.\n- **combobox** - The container the wraps the combobox, clear icon, and expand button.\n- **display-input** - The element that displays the selected option's label, an `<input>` element.\n- **listbox** - The listbox container where options are slotted.\n- **tags** - The container that houses option tags when `multiselect` is used.\n- **tag** - The individual tags that represent each multiselect option.\n- **tag__base** - The tag's base part.\n- **tag__content** - The tag's content part.\n- **tag__removable-indicator** - The tag's remove button.\n- **clear-button** - The clear button.\n- **expand-icon** - The container that wraps the expand icon.",
4745
4755
  "doc-url": "",
4746
4756
  "attributes": [
4747
4757
  {
@@ -4769,6 +4779,11 @@
4769
4779
  "description": "Placeholder text to show as a hint when the select is empty.",
4770
4780
  "value": { "type": "string" }
4771
4781
  },
4782
+ {
4783
+ "name": "max-options-tag-label",
4784
+ "description": "Label text shown on tag if max-options-visible is reached.",
4785
+ "value": { "type": "string" }
4786
+ },
4772
4787
  {
4773
4788
  "name": "disabled",
4774
4789
  "description": "Disables the select control.",
@@ -4949,6 +4964,10 @@
4949
4964
  "name": "placeholder",
4950
4965
  "description": "Placeholder text to show as a hint when the select is empty."
4951
4966
  },
4967
+ {
4968
+ "name": "maxOptionsTagLabel",
4969
+ "description": "Label text shown on tag if max-options-visible is reached."
4970
+ },
4952
4971
  {
4953
4972
  "name": "disabled",
4954
4973
  "description": "Disables the select control.",
@@ -32,7 +32,7 @@ let SdMenu = class SdMenu extends SolidElement {
32
32
  if (item.type === 'checkbox') {
33
33
  item.checked = !item.checked;
34
34
  }
35
- this.emit('sd-4-0-0-next-5-select', { detail: { item } });
35
+ this.emit('sd-4-0-0-next-7-select', { detail: { item } });
36
36
  }
37
37
  handleKeyDown(event) {
38
38
  if (event.key === 'Enter') {
@@ -11,7 +11,7 @@ export default css `
11
11
  overscroll-behavior: none;
12
12
  }
13
13
 
14
- ::slotted(sd-4-0-0-next-5-divider) {
14
+ ::slotted(sd-4-0-0-next-7-divider) {
15
15
  --spacing: var(--sd-spacing-x-small);
16
16
  }
17
17
  `;
@@ -74,7 +74,7 @@ let SdMenuItem = class SdMenuItem extends SolidElement {
74
74
  })}
75
75
  >
76
76
  <span part="checked-icon" class="menu-item__check">
77
- <sd-4-0-0-next-5-icon name="check" library="system" aria-hidden="true"></sd-4-0-0-next-5-icon>
77
+ <sd-4-0-0-next-7-icon name="check" library="system" aria-hidden="true"></sd-4-0-0-next-7-icon>
78
78
  </span>
79
79
 
80
80
  <slot name="prefix" part="prefix" class="menu-item__prefix"></slot>
@@ -84,7 +84,7 @@ let SdMenuItem = class SdMenuItem extends SolidElement {
84
84
  <slot name="suffix" part="suffix" class="menu-item__suffix"></slot>
85
85
 
86
86
  <span class="menu-item__chevron">
87
- <sd-4-0-0-next-5-icon name="chevron-right" library="system" aria-hidden="true"></sd-4-0-0-next-5-icon>
87
+ <sd-4-0-0-next-7-icon name="chevron-right" library="system" aria-hidden="true"></sd-4-0-0-next-7-icon>
88
88
  </span>
89
89
  </div>
90
90
  `;