@solid-design-system/components 3.17.12 → 3.18.0

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 (143) hide show
  1. package/dist/custom-elements.json +1 -1
  2. package/dist/package/components/tab-group/tab-group.d.ts +1 -5
  3. package/dist/styles/solid-styles.css +1 -1
  4. package/dist/versioned-components/es/accordion-group.js +1 -1
  5. package/dist/versioned-components/es/accordion.js +1 -1
  6. package/dist/versioned-components/es/badge.js +1 -1
  7. package/dist/versioned-components/es/brandshape.js +1 -1
  8. package/dist/versioned-components/es/button.js +1 -1
  9. package/dist/versioned-components/es/carousel-item.js +1 -1
  10. package/dist/versioned-components/es/carousel.js +3 -3
  11. package/dist/versioned-components/es/checkbox-group.js +1 -1
  12. package/dist/versioned-components/es/checkbox.js +1 -1
  13. package/dist/versioned-components/es/dialog.js +1 -1
  14. package/dist/versioned-components/es/divider.js +1 -1
  15. package/dist/versioned-components/es/drawer.js +1 -1
  16. package/dist/versioned-components/es/dropdown.js +1 -1
  17. package/dist/versioned-components/es/expandable.js +1 -1
  18. package/dist/versioned-components/es/flipcard.js +1 -1
  19. package/dist/versioned-components/es/form.js +1 -1
  20. package/dist/versioned-components/es/header.js +1 -1
  21. package/dist/versioned-components/es/icon.js +1 -1
  22. package/dist/versioned-components/es/include.js +1 -1
  23. package/dist/versioned-components/es/input.js +1 -1
  24. package/dist/versioned-components/es/link.js +1 -1
  25. package/dist/versioned-components/es/map-marker.js +1 -1
  26. package/dist/versioned-components/es/navigation-item.js +1 -1
  27. package/dist/versioned-components/es/notification.js +1 -1
  28. package/dist/versioned-components/es/option.js +1 -1
  29. package/dist/versioned-components/es/quickfact.js +1 -1
  30. package/dist/versioned-components/es/radio-button.js +1 -1
  31. package/dist/versioned-components/es/radio-group.js +1 -1
  32. package/dist/versioned-components/es/radio.js +1 -1
  33. package/dist/versioned-components/es/scrollable.js +1 -1
  34. package/dist/versioned-components/es/select.js +3 -3
  35. package/dist/versioned-components/es/solid-components2.js +1 -1
  36. package/dist/versioned-components/es/spinner.js +1 -1
  37. package/dist/versioned-components/es/step-group.js +1 -1
  38. package/dist/versioned-components/es/step.js +1 -1
  39. package/dist/versioned-components/es/switch.js +1 -1
  40. package/dist/versioned-components/es/tab-group.js +1 -1
  41. package/dist/versioned-components/es/tab-panel.js +1 -1
  42. package/dist/versioned-components/es/tab.js +1 -1
  43. package/dist/versioned-components/es/tag.js +1 -1
  44. package/dist/versioned-components/es/teaser-media.js +1 -1
  45. package/dist/versioned-components/es/teaser.js +1 -1
  46. package/dist/versioned-components/es/textarea.js +1 -1
  47. package/dist/versioned-components/es/tooltip.js +2 -2
  48. package/dist/versioned-components/es/video.js +1 -1
  49. package/dist/versioned-package/_components/button-group/button-group.d.ts +1 -1
  50. package/dist/versioned-package/_components/button-group/button-group.js +11 -11
  51. package/dist/versioned-package/components/accordion/accordion.d.ts +1 -1
  52. package/dist/versioned-package/components/accordion/accordion.js +2 -2
  53. package/dist/versioned-package/components/accordion-group/accordion-group.d.ts +1 -1
  54. package/dist/versioned-package/components/accordion-group/accordion-group.js +3 -3
  55. package/dist/versioned-package/components/badge/badge.d.ts +1 -1
  56. package/dist/versioned-package/components/badge/badge.js +1 -1
  57. package/dist/versioned-package/components/brandshape/brandshape.d.ts +1 -1
  58. package/dist/versioned-package/components/brandshape/brandshape.js +1 -1
  59. package/dist/versioned-package/components/button/button.d.ts +1 -1
  60. package/dist/versioned-package/components/button/button.js +4 -4
  61. package/dist/versioned-package/components/carousel/carousel.d.ts +1 -1
  62. package/dist/versioned-package/components/carousel/carousel.js +6 -6
  63. package/dist/versioned-package/components/carousel-item/carousel-item.d.ts +1 -1
  64. package/dist/versioned-package/components/carousel-item/carousel-item.js +1 -1
  65. package/dist/versioned-package/components/checkbox/checkbox.d.ts +1 -1
  66. package/dist/versioned-package/components/checkbox/checkbox.js +3 -3
  67. package/dist/versioned-package/components/checkbox-group/checkbox-group.d.ts +1 -1
  68. package/dist/versioned-package/components/checkbox-group/checkbox-group.js +5 -5
  69. package/dist/versioned-package/components/dialog/dialog.d.ts +1 -1
  70. package/dist/versioned-package/components/dialog/dialog.js +2 -2
  71. package/dist/versioned-package/components/divider/divider.d.ts +1 -1
  72. package/dist/versioned-package/components/divider/divider.js +2 -2
  73. package/dist/versioned-package/components/drawer/drawer.d.ts +1 -1
  74. package/dist/versioned-package/components/drawer/drawer.js +2 -2
  75. package/dist/versioned-package/components/dropdown/dropdown.d.ts +1 -1
  76. package/dist/versioned-package/components/dropdown/dropdown.js +8 -8
  77. package/dist/versioned-package/components/expandable/expandable.d.ts +1 -1
  78. package/dist/versioned-package/components/expandable/expandable.js +2 -2
  79. package/dist/versioned-package/components/flipcard/flipcard.d.ts +1 -1
  80. package/dist/versioned-package/components/flipcard/flipcard.js +1 -1
  81. package/dist/versioned-package/components/header/header.d.ts +1 -1
  82. package/dist/versioned-package/components/header/header.js +4 -4
  83. package/dist/versioned-package/components/icon/icon.d.ts +1 -1
  84. package/dist/versioned-package/components/icon/icon.js +1 -1
  85. package/dist/versioned-package/components/include/include.d.ts +1 -1
  86. package/dist/versioned-package/components/include/include.js +1 -1
  87. package/dist/versioned-package/components/input/input.d.ts +1 -1
  88. package/dist/versioned-package/components/input/input.js +2 -2
  89. package/dist/versioned-package/components/link/link.d.ts +1 -1
  90. package/dist/versioned-package/components/link/link.js +2 -2
  91. package/dist/versioned-package/components/map-marker/map-marker.d.ts +1 -1
  92. package/dist/versioned-package/components/map-marker/map-marker.js +1 -1
  93. package/dist/versioned-package/components/navigation-item/navigation-item.d.ts +1 -1
  94. package/dist/versioned-package/components/navigation-item/navigation-item.js +5 -5
  95. package/dist/versioned-package/components/notification/notification.d.ts +1 -1
  96. package/dist/versioned-package/components/notification/notification.js +5 -5
  97. package/dist/versioned-package/components/option/option.d.ts +1 -1
  98. package/dist/versioned-package/components/option/option.js +2 -2
  99. package/dist/versioned-package/components/popup/popup.d.ts +1 -1
  100. package/dist/versioned-package/components/popup/popup.js +1 -1
  101. package/dist/versioned-package/components/quickfact/quickfact.d.ts +1 -1
  102. package/dist/versioned-package/components/quickfact/quickfact.js +2 -2
  103. package/dist/versioned-package/components/radio/radio.d.ts +1 -1
  104. package/dist/versioned-package/components/radio/radio.js +2 -2
  105. package/dist/versioned-package/components/radio-button/radio-button.d.ts +1 -1
  106. package/dist/versioned-package/components/radio-button/radio-button.js +2 -2
  107. package/dist/versioned-package/components/radio-group/radio-group.d.ts +2 -2
  108. package/dist/versioned-package/components/radio-group/radio-group.js +13 -13
  109. package/dist/versioned-package/components/scrollable/scrollable.d.ts +1 -1
  110. package/dist/versioned-package/components/scrollable/scrollable.js +3 -3
  111. package/dist/versioned-package/components/select/select.d.ts +4 -4
  112. package/dist/versioned-package/components/select/select.js +25 -25
  113. package/dist/versioned-package/components/spinner/spinner.d.ts +1 -1
  114. package/dist/versioned-package/components/spinner/spinner.js +1 -1
  115. package/dist/versioned-package/components/step/step.d.ts +1 -1
  116. package/dist/versioned-package/components/step/step.js +2 -2
  117. package/dist/versioned-package/components/step-group/step-group.d.ts +1 -1
  118. package/dist/versioned-package/components/step-group/step-group.js +2 -2
  119. package/dist/versioned-package/components/switch/switch.d.ts +1 -1
  120. package/dist/versioned-package/components/switch/switch.js +1 -1
  121. package/dist/versioned-package/components/tab/tab.d.ts +1 -1
  122. package/dist/versioned-package/components/tab/tab.js +2 -2
  123. package/dist/versioned-package/components/tab-group/tab-group.d.ts +2 -6
  124. package/dist/versioned-package/components/tab-group/tab-group.js +13 -13
  125. package/dist/versioned-package/components/tab-panel/tab-panel.d.ts +1 -1
  126. package/dist/versioned-package/components/tab-panel/tab-panel.js +2 -2
  127. package/dist/versioned-package/components/tag/tag.d.ts +1 -1
  128. package/dist/versioned-package/components/tag/tag.js +2 -2
  129. package/dist/versioned-package/components/teaser/teaser.js +1 -1
  130. package/dist/versioned-package/components/teaser-media/teaser-media.js +1 -1
  131. package/dist/versioned-package/components/textarea/textarea.d.ts +1 -1
  132. package/dist/versioned-package/components/textarea/textarea.js +2 -2
  133. package/dist/versioned-package/components/tooltip/tooltip.d.ts +1 -1
  134. package/dist/versioned-package/components/tooltip/tooltip.js +5 -5
  135. package/dist/versioned-package/components/video/video.d.ts +1 -1
  136. package/dist/versioned-package/components/video/video.js +2 -2
  137. package/dist/versioned-package/internal/form.js +3 -3
  138. package/dist/versioned-package/styles/headline/headline.css.js +1 -1
  139. package/dist/versioned-package/utilities/autocomplete-config.js +4 -4
  140. package/dist/versioned-styles/solid-styles.css +1 -1
  141. package/dist/vscode.html-custom-data.json +46 -46
  142. package/dist/web-types.json +45 -45
  143. package/package.json +1 -1
@@ -83,7 +83,7 @@ let SdRadioButton = class extends SolidElement {
83
83
  SdRadioButton.styles = [
84
84
  SolidElement.styles,
85
85
  componentStyles,
86
- css`:host{display:block;width:-moz-min-content;width:min-content}.hidden-input{all:unset;position:absolute;inset:var(--sd-spacing-0,0);z-index:-10;opacity:var(--sd-opacity-0,0);outline-style:dotted;outline-width:1px;outline-color:rgb(var(--sd-color-error,204 25 55) / 1)}.lg-label{height:var(--sd-spacing-12,3rem)}.lg-no-label{height:var(--sd-spacing-12,3rem);width:var(--sd-spacing-12,3rem)}.md-label{height:var(--sd-spacing-10,2.5rem)}.md-no-label{height:var(--sd-spacing-10,2.5rem);width:var(--sd-spacing-10,2.5rem)}.sm-label{height:var(--sd-spacing-8,2rem)}.sm-no-label{height:var(--sd-spacing-8,2rem);width:var(--sd-spacing-8,2rem)}:host(.sd-3-17-12-button-group__button--first:not(.sd-3-17-12-button-group__button--last)) button{border-top-right-radius:var(--sd-border-radius-none,0);border-bottom-right-radius:var(--sd-border-radius-none,0)}:host(.sd-3-17-12-button-group__button--inner) button{border-radius:var(--sd-border-radius-none,0)}:host(.sd-3-17-12-button-group__button--last:not(.sd-3-17-12-button-group__button--first)) button{border-top-left-radius:var(--sd-border-radius-none,0);border-bottom-left-radius:var(--sd-border-radius-none,0)}:host(.sd-3-17-12-button-group__button:not(.sd-3-17-12-button-group__button--first)){margin-inline-start:-1px}:host(.sd-3-17-12-button-group__button--hover){z-index:10}:host(.sd-3-17-12-button-group__button--focus),:host(.sd-3-17-12-button-group__button[checked]){z-index:20}`
86
+ css`:host{display:block;width:-moz-min-content;width:min-content}.hidden-input{all:unset;position:absolute;inset:var(--sd-spacing-0,0);z-index:-10;opacity:var(--sd-opacity-0,0);outline-style:dotted;outline-width:1px;outline-color:rgb(var(--sd-color-error,204 25 55) / 1)}.lg-label{height:var(--sd-spacing-12,3rem)}.lg-no-label{height:var(--sd-spacing-12,3rem);width:var(--sd-spacing-12,3rem)}.md-label{height:var(--sd-spacing-10,2.5rem)}.md-no-label{height:var(--sd-spacing-10,2.5rem);width:var(--sd-spacing-10,2.5rem)}.sm-label{height:var(--sd-spacing-8,2rem)}.sm-no-label{height:var(--sd-spacing-8,2rem);width:var(--sd-spacing-8,2rem)}:host(.sd-3-18-0-button-group__button--first:not(.sd-3-18-0-button-group__button--last)) button{border-top-right-radius:var(--sd-border-radius-none,0);border-bottom-right-radius:var(--sd-border-radius-none,0)}:host(.sd-3-18-0-button-group__button--inner) button{border-radius:var(--sd-border-radius-none,0)}:host(.sd-3-18-0-button-group__button--last:not(.sd-3-18-0-button-group__button--first)) button{border-top-left-radius:var(--sd-border-radius-none,0);border-bottom-left-radius:var(--sd-border-radius-none,0)}:host(.sd-3-18-0-button-group__button:not(.sd-3-18-0-button-group__button--first)){margin-inline-start:-1px}:host(.sd-3-18-0-button-group__button--hover){z-index:10}:host(.sd-3-18-0-button-group__button--focus),:host(.sd-3-18-0-button-group__button[checked]){z-index:20}`
87
87
  ];
88
88
  __decorateClass([
89
89
  query(".button")
@@ -110,7 +110,7 @@ __decorateClass([
110
110
  watch("disabled", { waitUntilFirstUpdate: true })
111
111
  ], SdRadioButton.prototype, "handleDisabledChange", 1);
112
112
  SdRadioButton = __decorateClass([
113
- customElement("sd-3-17-12-radio-button")
113
+ customElement("sd-3-18-0-radio-button")
114
114
  ], SdRadioButton);
115
115
  export {
116
116
  SdRadioButton as default
@@ -4,7 +4,7 @@ import SolidElement from '../../internal/solid-element';
4
4
  import type { SolidFormControl } from '../../internal/solid-element';
5
5
  export default class SdRadioGroup extends SolidElement implements SolidFormControl {
6
6
  static dependencies: {
7
- 'sd-3-17-12-button-group': typeof SdButtonGroup;
7
+ 'sd-3-18-0-button-group': typeof SdButtonGroup;
8
8
  };
9
9
  protected readonly formControlController: FormControlController;
10
10
  private readonly hasSlotController;
@@ -48,6 +48,6 @@ export default class SdRadioGroup extends SolidElement implements SolidFormContr
48
48
  }
49
49
  declare global {
50
50
  interface HTMLElementTagNameMap {
51
- 'sd-3-17-12-radio-group': SdRadioGroup;
51
+ 'sd-3-18-0-radio-group': SdRadioGroup;
52
52
  }
53
53
  }
@@ -67,10 +67,10 @@ let SdRadioGroup = class extends SolidElement {
67
67
  this.formControlController.updateValidity();
68
68
  }
69
69
  getAllRadios() {
70
- return [...this.querySelectorAll("sd-3-17-12-radio, sd-3-17-12-radio-button")];
70
+ return [...this.querySelectorAll("sd-3-18-0-radio, sd-3-18-0-radio-button")];
71
71
  }
72
72
  handleRadioClick(event) {
73
- const target = event.target.closest("sd-3-17-12-radio, sd-3-17-12-radio-button");
73
+ const target = event.target.closest("sd-3-18-0-radio, sd-3-18-0-radio-button");
74
74
  const radios = this.getAllRadios();
75
75
  const oldValue = this.value;
76
76
  if (target.disabled) {
@@ -146,7 +146,7 @@ let SdRadioGroup = class extends SolidElement {
146
146
  }
147
147
  })
148
148
  );
149
- this.hasButtonGroup = radios.some((radio) => radio.tagName.toLowerCase() === "sd-3-17-12-radio-button");
149
+ this.hasButtonGroup = radios.some((radio) => radio.tagName.toLowerCase() === "sd-3-18-0-radio-button");
150
150
  if (!radios.some((radio) => radio.checked)) {
151
151
  if (this.hasButtonGroup) {
152
152
  const buttonRadio = (_a = radios[0].shadowRoot) == null ? void 0 : _a.querySelector("button");
@@ -158,26 +158,26 @@ let SdRadioGroup = class extends SolidElement {
158
158
  }
159
159
  }
160
160
  if (this.hasButtonGroup) {
161
- const buttonGroup = (_b = this.shadowRoot) == null ? void 0 : _b.querySelector("sd-3-17-12-button-group");
161
+ const buttonGroup = (_b = this.shadowRoot) == null ? void 0 : _b.querySelector("sd-3-18-0-button-group");
162
162
  if (buttonGroup) {
163
163
  buttonGroup.disableRole = true;
164
164
  }
165
165
  }
166
166
  }
167
167
  syncRadios() {
168
- if (customElements.get("sd-3-17-12-radio") && customElements.get("sd-3-17-12-radio-button")) {
168
+ if (customElements.get("sd-3-18-0-radio") && customElements.get("sd-3-18-0-radio-button")) {
169
169
  this.syncRadioElements();
170
170
  return;
171
171
  }
172
- if (customElements.get("sd-3-17-12-radio")) {
172
+ if (customElements.get("sd-3-18-0-radio")) {
173
173
  this.syncRadioElements();
174
174
  } else {
175
- customElements.whenDefined("sd-3-17-12-radio").then(() => this.syncRadios());
175
+ customElements.whenDefined("sd-3-18-0-radio").then(() => this.syncRadios());
176
176
  }
177
- if (customElements.get("sd-3-17-12-radio-button")) {
177
+ if (customElements.get("sd-3-18-0-radio-button")) {
178
178
  this.syncRadioElements();
179
179
  } else {
180
- customElements.whenDefined("sd-3-17-12-radio-button").then(() => this.syncRadios());
180
+ customElements.whenDefined("sd-3-18-0-radio-button").then(() => this.syncRadios());
181
181
  }
182
182
  }
183
183
  updateCheckedRadio() {
@@ -252,14 +252,14 @@ let SdRadioGroup = class extends SolidElement {
252
252
  vertical: "flex-col",
253
253
  horizontal: "flex-row"
254
254
  }[this.orientation]
255
- )}"><div class="sr-only"><label><input id="validation-input" type="text" ?required="${this.required}" tabindex="-1" hidden @invalid="${this.handleInvalid}"></label></div>${this.hasButtonGroup ? html`<sd-3-17-12-button-group part="button-group" exportparts="base:button-group__base" role="presentation">${defaultSlot}</sd-3-17-12-button-group>` : defaultSlot}</div></fieldset>${this.formControlController.renderInvalidMessage()}`;
255
+ )}"><div class="sr-only"><label><input id="validation-input" type="text" ?required="${this.required}" tabindex="-1" hidden @invalid="${this.handleInvalid}"></label></div>${this.hasButtonGroup ? html`<sd-3-18-0-button-group part="button-group" exportparts="base:button-group__base" role="presentation">${defaultSlot}</sd-3-18-0-button-group>` : defaultSlot}</div></fieldset>${this.formControlController.renderInvalidMessage()}`;
256
256
  }
257
257
  };
258
- SdRadioGroup.dependencies = { "sd-3-17-12-button-group": SdButtonGroup };
258
+ SdRadioGroup.dependencies = { "sd-3-18-0-button-group": SdButtonGroup };
259
259
  SdRadioGroup.styles = [
260
260
  componentStyles,
261
261
  SolidElement.styles,
262
- css`:host{display:block}:host([orientation=vertical]) ::slotted(sd-3-17-12-radio){margin-bottom:var(--sd-spacing-2,.5rem);display:flex}:host([orientation=vertical]) ::slotted(sd-3-17-12-radio:last-of-type){margin-bottom:var(--sd-spacing-0,0)}:host([orientation=horizontal]) ::slotted(sd-3-17-12-radio){margin-right:var(--sd-spacing-6,1.5rem)}:host([orientation=horizontal]) ::slotted(sd-3-17-12-radio:last-of-type){margin-right:var(--sd-spacing-0,0)}:host([orientation=horizontal]):host([size=sm]) ::slotted(sd-3-17-12-radio){margin-right:var(--sd-spacing-4,1rem)}:host([orientation=horizontal]):host([size=sm]) ::slotted(sd-3-17-12-radio:last-of-type){margin-right:var(--sd-spacing-0,0)}:host([required]) #label::after{content:' *'}`
262
+ css`:host{display:block}:host([orientation=vertical]) ::slotted(sd-3-18-0-radio){margin-bottom:var(--sd-spacing-2,.5rem);display:flex}:host([orientation=vertical]) ::slotted(sd-3-18-0-radio:last-of-type){margin-bottom:var(--sd-spacing-0,0)}:host([orientation=horizontal]) ::slotted(sd-3-18-0-radio){margin-right:var(--sd-spacing-6,1.5rem)}:host([orientation=horizontal]) ::slotted(sd-3-18-0-radio:last-of-type){margin-right:var(--sd-spacing-0,0)}:host([orientation=horizontal]):host([size=sm]) ::slotted(sd-3-18-0-radio){margin-right:var(--sd-spacing-4,1rem)}:host([orientation=horizontal]):host([size=sm]) ::slotted(sd-3-18-0-radio:last-of-type){margin-right:var(--sd-spacing-0,0)}:host([required]) #label::after{content:' *'}`
263
263
  ];
264
264
  __decorateClass([
265
265
  query("slot:not([name])")
@@ -313,7 +313,7 @@ __decorateClass([
313
313
  watch("value")
314
314
  ], SdRadioGroup.prototype, "handleValueChange", 1);
315
315
  SdRadioGroup = __decorateClass([
316
- customElement("sd-3-17-12-radio-group")
316
+ customElement("sd-3-18-0-radio-group")
317
317
  ], SdRadioGroup);
318
318
  export {
319
319
  SdRadioGroup as default
@@ -23,6 +23,6 @@ export default class SdScrollable extends SolidElement {
23
23
  }
24
24
  declare global {
25
25
  interface HTMLElementTagNameMap {
26
- 'sd-3-17-12-scrollable': SdScrollable;
26
+ 'sd-3-18-0-scrollable': SdScrollable;
27
27
  }
28
28
  }
@@ -111,14 +111,14 @@ let SdScrollable = class extends SolidElement {
111
111
  this.orientation === "auto" && "scroll-auto overflow-auto",
112
112
  this.scrollbars ? "show-scrollbars" : "hide-scrollbars",
113
113
  this.inset ? "p-4" : ""
114
- )}" @scroll="${this.updateScrollIndicatorVisibility}"><div part="scroll-content" class="flex-1"><slot></slot></div></div>${this.buttons ? html`${this.isScrollHorizontalEnabled ? html`${this.canScroll.left ? html`<div part="button-left" class="absolute z-10 flex items-center justify-center top-0 left-0 h-full w-8"><button part="button-start" class="${cx(scrollButtonClasses)}" @click="${() => this.handleScroll("left")}"><slot name="icon-start"><sd-3-17-12-icon library="system" name="chevron-up" class="rotate-[-90deg]"></sd-3-17-12-icon></slot></button></div>` : null} ${this.canScroll.right ? html`<div part="button-right" class="absolute z-10 flex items-center justify-center top-0 right-0 h-full w-8"><button part="button-end" class="${cx(scrollButtonClasses)}" @click="${() => this.handleScroll("right")}"><slot name="icon-end"><sd-3-17-12-icon library="system" name="chevron-down" class="rotate-[-90deg]"></sd-3-17-12-icon></slot></button></div>` : null}` : null} ${this.isScrollVerticalEnabled ? html`${this.canScroll.up ? html`<div part="button-top" class="absolute z-10 flex items-center justify-center top-0 left-0 w-full h-8"><button part="button-start" class="${cx(scrollButtonClasses)}" @click="${() => this.handleScroll("up")}"><slot name="icon-start"><sd-3-17-12-icon library="system" name="chevron-up"></sd-3-17-12-icon></slot></button></div>` : null} ${this.canScroll.down ? html`<div part="button-bottom" class="absolute z-10 flex items-center justify-center bottom-0 left-0 w-full h-8"><button part="button-end" class="${cx(scrollButtonClasses)}" @click="${() => this.handleScroll("down")}"><slot name="icon-end"><sd-3-17-12-icon library="system" name="chevron-down"></sd-3-17-12-icon></slot></button></div>` : null}` : null}` : null} ${this.shadows ? html`${this.isScrollHorizontalEnabled ? html`${this.canScroll.left ? html`<div part="shadow-left" class="${scrollShadowClasses} left top-0 left-0 w-[6px] h-full"></div>` : null} ${this.canScroll.right ? html`<div part="shadow-right" class="${scrollShadowClasses} right top-0 right-0 w-[6px] h-full"></div>` : null}` : null} ${this.isScrollVerticalEnabled ? html`${this.canScroll.up ? html`<div part="shadow-top" class="${scrollShadowClasses} top top-0 left-0 w-full h-[6px]"></div>` : null} ${this.canScroll.down ? html`<div part="shadow-bottom" class="${scrollShadowClasses} bottom bottom-0 left-0 w-full h-[6px]"></div>` : null}` : null}` : null}`;
114
+ )}" @scroll="${this.updateScrollIndicatorVisibility}"><div part="scroll-content" class="flex-1"><slot></slot></div></div>${this.buttons ? html`${this.isScrollHorizontalEnabled ? html`${this.canScroll.left ? html`<div part="button-left" class="absolute z-10 flex items-center justify-center top-0 left-0 h-full w-8"><button part="button-start" class="${cx(scrollButtonClasses)}" @click="${() => this.handleScroll("left")}"><slot name="icon-start"><sd-3-18-0-icon library="system" name="chevron-up" class="rotate-[-90deg]"></sd-3-18-0-icon></slot></button></div>` : null} ${this.canScroll.right ? html`<div part="button-right" class="absolute z-10 flex items-center justify-center top-0 right-0 h-full w-8"><button part="button-end" class="${cx(scrollButtonClasses)}" @click="${() => this.handleScroll("right")}"><slot name="icon-end"><sd-3-18-0-icon library="system" name="chevron-down" class="rotate-[-90deg]"></sd-3-18-0-icon></slot></button></div>` : null}` : null} ${this.isScrollVerticalEnabled ? html`${this.canScroll.up ? html`<div part="button-top" class="absolute z-10 flex items-center justify-center top-0 left-0 w-full h-8"><button part="button-start" class="${cx(scrollButtonClasses)}" @click="${() => this.handleScroll("up")}"><slot name="icon-start"><sd-3-18-0-icon library="system" name="chevron-up"></sd-3-18-0-icon></slot></button></div>` : null} ${this.canScroll.down ? html`<div part="button-bottom" class="absolute z-10 flex items-center justify-center bottom-0 left-0 w-full h-8"><button part="button-end" class="${cx(scrollButtonClasses)}" @click="${() => this.handleScroll("down")}"><slot name="icon-end"><sd-3-18-0-icon library="system" name="chevron-down"></sd-3-18-0-icon></slot></button></div>` : null}` : null}` : null} ${this.shadows ? html`${this.isScrollHorizontalEnabled ? html`${this.canScroll.left ? html`<div part="shadow-left" class="${scrollShadowClasses} left top-0 left-0 w-[6px] h-full"></div>` : null} ${this.canScroll.right ? html`<div part="shadow-right" class="${scrollShadowClasses} right top-0 right-0 w-[6px] h-full"></div>` : null}` : null} ${this.isScrollVerticalEnabled ? html`${this.canScroll.up ? html`<div part="shadow-top" class="${scrollShadowClasses} top top-0 left-0 w-full h-[6px]"></div>` : null} ${this.canScroll.down ? html`<div part="shadow-bottom" class="${scrollShadowClasses} bottom bottom-0 left-0 w-full h-[6px]"></div>` : null}` : null}` : null}`;
115
115
  }
116
116
  };
117
117
  SdScrollable.styles = [
118
118
  SolidElement.styles,
119
119
  unsafeCSS(InteractiveStyles),
120
120
  componentStyles,
121
- css`:host{--gradient-color:rgba(255, 255, 255, 0);--gradient:var(--gradient-color) 0%,#fff 80%,#fff 100%;position:relative;display:flex;overflow:hidden}.hide-scrollbars{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbars::-webkit-scrollbar{display:none}.scroll-container::-webkit-scrollbar-thumb{background-color:transparent}.scroll-container:hover::-webkit-scrollbar-thumb{background:var(--background-neutral-400,#c3c3c3);border-radius:var(--sd-border-radius-sm,.125rem)}.scroll-container::-webkit-scrollbar{height:var(--sd-spacing-1,.25rem);width:var(--sd-spacing-1,.25rem)}.scroll-auto{overflow:auto}[part=button-left]{background:linear-gradient(270deg,var(--gradient))}[part=button-right]{background:linear-gradient(90deg,var(--gradient))}[part=button-top]{background:linear-gradient(0deg,var(--gradient))}[part=button-bottom]{background:linear-gradient(180deg,var(--gradient))}[part=shadow-left]{background:linear-gradient(270deg,rgba(24,24,24,0) 50%,rgba(24,24,24,.4) 100%)}[part=shadow-right]{background:linear-gradient(90deg,rgba(24,24,24,0) 50%,rgba(24,24,24,.4) 100%)}[part=shadow-top]{background:linear-gradient(0deg,rgba(24,24,24,0) 50%,rgba(24,24,24,.4) 100%)}[part=shadow-bottom]{background:linear-gradient(180deg,rgba(24,24,24,0) 50%,rgba(24,24,24,.4) 100%)}.sd-3-17-12-icon--top{align-self:flex-start}.sd-3-17-12-icon--down{align-self:flex-end}`
121
+ css`:host{--gradient-color:rgba(255, 255, 255, 0);--gradient:var(--gradient-color) 0%,#fff 80%,#fff 100%;position:relative;display:flex;overflow:hidden}.hide-scrollbars{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbars::-webkit-scrollbar{display:none}.scroll-container::-webkit-scrollbar-thumb{background-color:transparent}.scroll-container:hover::-webkit-scrollbar-thumb{background:var(--background-neutral-400,#c3c3c3);border-radius:var(--sd-border-radius-sm,.125rem)}.scroll-container::-webkit-scrollbar{height:var(--sd-spacing-1,.25rem);width:var(--sd-spacing-1,.25rem)}.scroll-auto{overflow:auto}[part=button-left]{background:linear-gradient(270deg,var(--gradient))}[part=button-right]{background:linear-gradient(90deg,var(--gradient))}[part=button-top]{background:linear-gradient(0deg,var(--gradient))}[part=button-bottom]{background:linear-gradient(180deg,var(--gradient))}[part=shadow-left]{background:linear-gradient(270deg,rgba(24,24,24,0) 50%,rgba(24,24,24,.4) 100%)}[part=shadow-right]{background:linear-gradient(90deg,rgba(24,24,24,0) 50%,rgba(24,24,24,.4) 100%)}[part=shadow-top]{background:linear-gradient(0deg,rgba(24,24,24,0) 50%,rgba(24,24,24,.4) 100%)}[part=shadow-bottom]{background:linear-gradient(180deg,rgba(24,24,24,0) 50%,rgba(24,24,24,.4) 100%)}.sd-3-18-0-icon--top{align-self:flex-start}.sd-3-18-0-icon--down{align-self:flex-end}`
122
122
  ];
123
123
  __decorateClass([
124
124
  property({ type: String, reflect: true })
@@ -148,7 +148,7 @@ __decorateClass([
148
148
  state()
149
149
  ], SdScrollable.prototype, "isScrollVerticalEnabled", 2);
150
150
  SdScrollable = __decorateClass([
151
- customElement("sd-3-17-12-scrollable")
151
+ customElement("sd-3-18-0-scrollable")
152
152
  ], SdScrollable);
153
153
  export {
154
154
  SdScrollable as default
@@ -8,9 +8,9 @@ import type { TemplateResult } from 'lit';
8
8
  import type SdOption from '../option/option';
9
9
  export default class SdSelect extends SolidElement implements SolidFormControl {
10
10
  static dependencies: {
11
- 'sd-3-17-12-icon': typeof SdIcon;
12
- 'sd-3-17-12-popup': typeof SdPopup;
13
- 'sd-3-17-12-tag': typeof SdTag;
11
+ 'sd-3-18-0-icon': typeof SdIcon;
12
+ 'sd-3-18-0-popup': typeof SdPopup;
13
+ 'sd-3-18-0-tag': typeof SdTag;
14
14
  };
15
15
  private readonly formControlController;
16
16
  private readonly hasSlotController;
@@ -98,6 +98,6 @@ export default class SdSelect extends SolidElement implements SolidFormControl {
98
98
  }
99
99
  declare global {
100
100
  interface HTMLElementTagNameMap {
101
- 'sd-3-17-12-select': SdSelect;
101
+ 'sd-3-18-0-select': SdSelect;
102
102
  }
103
103
  }
@@ -31,7 +31,7 @@ let SdSelect = class extends SolidElement {
31
31
  constructor() {
32
32
  super(...arguments);
33
33
  this.formControlController = new FormControlController(this, {
34
- assumeInteractionOn: ["sd-blur", "sd-3-17-12-input"]
34
+ assumeInteractionOn: ["sd-blur", "sd-3-18-0-input"]
35
35
  });
36
36
  this.hasSlotController = new HasSlotController(this, "help-text", "label");
37
37
  this.localize = new LocalizeController(this);
@@ -62,11 +62,11 @@ let SdSelect = class extends SolidElement {
62
62
  this.styleOnValid = false;
63
63
  this.hoist = false;
64
64
  this.getTag = (option) => {
65
- return html`<sd-3-17-12-tag ?disabled="${this.disabled}" part="tag" exportparts="
65
+ return html`<sd-3-18-0-tag ?disabled="${this.disabled}" part="tag" exportparts="
66
66
  base:tag__base,
67
67
  content:tag__content,
68
68
  removable-indicator:tag__removable-indicator,
69
- " size="${this.size === "sm" ? "sm" : "lg"}" removable @sd-remove="${(event) => this.handleTagRemove(event, option)}">${option.getTextLabel()}</sd-3-17-12-tag>`;
69
+ " size="${this.size === "sm" ? "sm" : "lg"}" removable @sd-remove="${(event) => this.handleTagRemove(event, option)}">${option.getTextLabel()}</sd-3-18-0-tag>`;
70
70
  };
71
71
  this.handleDocumentFocusIn = (event) => {
72
72
  const path = event.composedPath();
@@ -77,7 +77,7 @@ let SdSelect = class extends SolidElement {
77
77
  this.handleDocumentKeyDown = (event) => {
78
78
  const target = event.target;
79
79
  const isClearButton = target.closest(".select__clear") !== null;
80
- const isIconButton = target.closest("sd-3-17-12-icon-button") !== null;
80
+ const isIconButton = target.closest("sd-3-18-0-icon-button") !== null;
81
81
  if (isClearButton || isIconButton) {
82
82
  return;
83
83
  }
@@ -238,7 +238,7 @@ let SdSelect = class extends SolidElement {
238
238
  }
239
239
  handleOptionClick(event) {
240
240
  const target = event.target;
241
- const option = target.closest("sd-3-17-12-option");
241
+ const option = target.closest("sd-3-18-0-option");
242
242
  const oldValue = this.value;
243
243
  if (option && !option.disabled) {
244
244
  if (this.multiple) {
@@ -263,7 +263,7 @@ let SdSelect = class extends SolidElement {
263
263
  const allOptions = this.getAllOptions();
264
264
  const value = Array.isArray(this.value) ? this.value : [this.value];
265
265
  const values = [];
266
- if (customElements.get("sd-3-17-12-option")) {
266
+ if (customElements.get("sd-3-18-0-option")) {
267
267
  allOptions.forEach((option) => {
268
268
  if (this.multiple) {
269
269
  option.checkbox = true;
@@ -272,7 +272,7 @@ let SdSelect = class extends SolidElement {
272
272
  });
273
273
  this.setSelectedOptions(allOptions.filter((el) => value.includes(el.value)));
274
274
  } else {
275
- customElements.whenDefined("sd-3-17-12-option").then(() => this.handleDefaultSlotChange());
275
+ customElements.whenDefined("sd-3-18-0-option").then(() => this.handleDefaultSlotChange());
276
276
  }
277
277
  }
278
278
  handleTagRemove(event, option) {
@@ -285,13 +285,13 @@ let SdSelect = class extends SolidElement {
285
285
  });
286
286
  }
287
287
  }
288
- // Gets an array of all <sd-3-17-12-option> elements
288
+ // Gets an array of all <sd-3-18-0-option> elements
289
289
  getAllOptions() {
290
- return [...this.querySelectorAll("sd-3-17-12-option")];
290
+ return [...this.querySelectorAll("sd-3-18-0-option")];
291
291
  }
292
- // Gets the first <sd-3-17-12-option> element
292
+ // Gets the first <sd-3-18-0-option> element
293
293
  getFirstOption() {
294
- return this.querySelector("sd-3-17-12-option");
294
+ return this.querySelector("sd-3-18-0-option");
295
295
  }
296
296
  // Sets the current option, which is the option the user is currently interacting with (e.g. via keyboard). Only one
297
297
  // option may be "current" at a time.
@@ -353,7 +353,7 @@ let SdSelect = class extends SolidElement {
353
353
  const tag = this.getTag(option, index);
354
354
  return html`<div @sd-remove="${(e) => this.handleTagRemove(e, option)}">${typeof tag === "string" ? unsafeHTML(tag) : tag}</div>`;
355
355
  } else if (index === this.maxOptionsVisible) {
356
- return html`<sd-3-17-12-tag size="${this.size === "sm" ? "sm" : "lg"}" ?disabled="${this.disabled}">+${this.selectedOptions.length - index}</sd-3-17-12-tag>`;
356
+ return html`<sd-3-18-0-tag size="${this.size === "sm" ? "sm" : "lg"}" ?disabled="${this.disabled}">+${this.selectedOptions.length - index}</sd-3-18-0-tag>`;
357
357
  }
358
358
  return html``;
359
359
  });
@@ -369,7 +369,7 @@ let SdSelect = class extends SolidElement {
369
369
  handleMouseLeave() {
370
370
  this.hasHover = false;
371
371
  }
372
- /** Receives incoming event detail from sd-3-17-12-popup and updates local state for conditional styling. */
372
+ /** Receives incoming event detail from sd-3-18-0-popup and updates local state for conditional styling. */
373
373
  handleCurrentPlacement(e) {
374
374
  const incomingPlacement = e.detail;
375
375
  if (incomingPlacement) {
@@ -378,7 +378,7 @@ let SdSelect = class extends SolidElement {
378
378
  }
379
379
  handleUseTagsChange() {
380
380
  const allOptions = this.getAllOptions();
381
- if (customElements.get("sd-3-17-12-option")) {
381
+ if (customElements.get("sd-3-18-0-option")) {
382
382
  allOptions.forEach((option) => {
383
383
  option.checkbox = this.multiple;
384
384
  });
@@ -511,7 +511,7 @@ let SdSelect = class extends SolidElement {
511
511
  default: "border-neutral-800"
512
512
  }[selectState],
513
513
  this.open && (this.currentPlacement === "bottom" ? "rounded-bl-none rounded-br-none" : "rounded-tl-none rounded-tr-none")
514
- )}"></div><sd-3-17-12-popup @sd-current-placement="${this.handleCurrentPlacement}" class="${cx(
514
+ )}"></div><sd-3-18-0-popup @sd-current-placement="${this.handleCurrentPlacement}" class="${cx(
515
515
  "inline-flex relative w-full",
516
516
  this.currentPlacement === "bottom" ? "origin-top" : "origin-bottom"
517
517
  )}" placement="${this.placement}" strategy="${this.hoist ? "fixed" : "absolute"}" flip shift sync="width" auto-size="vertical" auto-size-padding="10" exportparts="
@@ -528,33 +528,33 @@ let SdSelect = class extends SolidElement {
528
528
  "appearance-none outline-none flex-grow bg-transparent w-full",
529
529
  cursorStyles,
530
530
  this.multiple && this.useTags && this.value.length > 0 ? "hidden" : ""
531
- )}" 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-describedby="help-text" 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>` : ""} <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-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-3-17-12-icon class="${cx("text-icon-fill-neutral-800", iconSize)}" library="system" name="closing-round"></sd-3-17-12-icon></slot></button>` : ""} ${this.showInvalidStyle ? html`<sd-3-17-12-icon part="invalid-icon" class="${cx(iconMarginLeft, iconSize, "text-error")}" library="system" name="risk"></sd-3-17-12-icon>` : ""} ${this.styleOnValid && this.showValidStyle ? html`<sd-3-17-12-icon part="valid-icon" class="${cx("flex-shrink-0 text-success", iconMarginLeft, iconSize)}" library="system" name="status-check"></sd-3-17-12-icon>` : ""}<slot name="expand-icon" part="expand-icon" class="${cx(
531
+ )}" 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-describedby="help-text" 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>` : ""} <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-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-3-18-0-icon class="${cx("text-icon-fill-neutral-800", iconSize)}" library="system" name="closing-round"></sd-3-18-0-icon></slot></button>` : ""} ${this.showInvalidStyle ? html`<sd-3-18-0-icon part="invalid-icon" class="${cx(iconMarginLeft, iconSize, "text-error")}" library="system" name="risk"></sd-3-18-0-icon>` : ""} ${this.styleOnValid && this.showValidStyle ? html`<sd-3-18-0-icon part="valid-icon" class="${cx("flex-shrink-0 text-success", iconMarginLeft, iconSize)}" library="system" name="status-check"></sd-3-18-0-icon>` : ""}<slot name="expand-icon" part="expand-icon" class="${cx(
532
532
  "inline-flex ml-2 transition-all",
533
533
  this.open ? "rotate-180" : "rotate-0",
534
534
  this.disabled ? "text-neutral-500" : "text-primary",
535
535
  iconSize
536
- )}"><sd-3-17-12-icon name="chevron-down" part="chevron" library="system" color="currentColor"></sd-3-17-12-icon></slot></div><div id="listbox" role="listbox" aria-expanded="${this.open ? "true" : "false"}" aria-multiselectable="${this.multiple ? "true" : "false"}" aria-labelledby="label" part="listbox" class="${cx(
536
+ )}"><sd-3-18-0-icon name="chevron-down" part="chevron" library="system" color="currentColor"></sd-3-18-0-icon></slot></div><div id="listbox" role="listbox" aria-expanded="${this.open ? "true" : "false"}" aria-multiselectable="${this.multiple ? "true" : "false"}" aria-labelledby="label" part="listbox" class="${cx(
537
537
  "bg-white px-2 py-3 relative border-primary overflow-y-auto",
538
538
  this.open && "shadow",
539
539
  this.currentPlacement === "bottom" ? "border-r-2 border-b-2 border-l-2 rounded-br-default rounded-bl-default" : "border-r-2 border-t-2 border-l-2 rounded-tr-default rounded-tl-default"
540
- )}" tabindex="-1" @mouseup="${this.handleOptionClick}" @slotchange="${this.handleDefaultSlotChange}"><slot></slot></div></sd-3-17-12-popup></div><div class="text-sm text-neutral-700" part="form-control-help-text" id="help-text" aria-hidden="${hasHelpText ? "false" : "true"}"><slot name="help-text">${this.helpText}</slot></div></div>${this.formControlController.renderInvalidMessage()}`;
540
+ )}" tabindex="-1" @mouseup="${this.handleOptionClick}" @slotchange="${this.handleDefaultSlotChange}"><slot></slot></div></sd-3-18-0-popup></div><div class="text-sm text-neutral-700" part="form-control-help-text" id="help-text" aria-hidden="${hasHelpText ? "false" : "true"}"><slot name="help-text">${this.helpText}</slot></div></div>${this.formControlController.renderInvalidMessage()}`;
541
541
  }
542
542
  };
543
543
  SdSelect.dependencies = {
544
- "sd-3-17-12-icon": SdIcon,
545
- "sd-3-17-12-popup": SdPopup,
546
- "sd-3-17-12-tag": SdTag
544
+ "sd-3-18-0-icon": SdIcon,
545
+ "sd-3-18-0-popup": SdPopup,
546
+ "sd-3-18-0-tag": SdTag
547
547
  };
548
548
  SdSelect.styles = [
549
549
  componentStyles,
550
550
  SolidElement.styles,
551
- css`:host{position:relative;display:block;width:100%}:host([required]) #label::after{content:' *'}[part=listbox]{max-height:var(--auto-size-available-height,auto)}sd-3-17-12-popup::part(popup){z-index:var(--sd-z-index-dropdown,900);overflow-y:scroll}sd-3-17-12-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-3-17-12-tag[size=lg]::part(base){padding-left:var(--sd-spacing-2,.5rem);padding-right:var(--sd-spacing-2,.5rem)}sd-3-17-12-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))}`
551
+ css`:host{position:relative;display:block;width:100%}:host([required]) #label::after{content:' *'}[part=listbox]{max-height:var(--auto-size-available-height,auto)}sd-3-18-0-popup::part(popup){z-index:var(--sd-z-index-dropdown,900);overflow-y:scroll}sd-3-18-0-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-3-18-0-tag[size=lg]::part(base){padding-left:var(--sd-spacing-2,.5rem);padding-right:var(--sd-spacing-2,.5rem)}sd-3-18-0-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))}`
552
552
  ];
553
553
  __decorateClass([
554
- queryAssignedElements({ selector: "sd-3-17-12-option" })
554
+ queryAssignedElements({ selector: "sd-3-18-0-option" })
555
555
  ], SdSelect.prototype, "_optionsInDefaultSlot", 2);
556
556
  __decorateClass([
557
- query("sd-3-17-12-popup")
557
+ query("sd-3-18-0-popup")
558
558
  ], SdSelect.prototype, "popup", 2);
559
559
  __decorateClass([
560
560
  query('[part="combobox"]')
@@ -673,7 +673,7 @@ __decorateClass([
673
673
  watch("value", { waitUntilFirstUpdate: true })
674
674
  ], SdSelect.prototype, "handleValueChange", 1);
675
675
  SdSelect = __decorateClass([
676
- customElement("sd-3-17-12-select")
676
+ customElement("sd-3-18-0-select")
677
677
  ], SdSelect);
678
678
  setDefaultAnimation("select.show", {
679
679
  keyframes: [
@@ -8,6 +8,6 @@ export default class SdSpinner extends SolidElement {
8
8
  }
9
9
  declare global {
10
10
  interface HTMLElementTagNameMap {
11
- 'sd-3-17-12-spinner': SdSpinner;
11
+ 'sd-3-18-0-spinner': SdSpinner;
12
12
  }
13
13
  }
@@ -39,7 +39,7 @@ __decorateClass([
39
39
  property({ reflect: true })
40
40
  ], SdSpinner.prototype, "color", 2);
41
41
  SdSpinner = __decorateClass([
42
- customElement("sd-3-17-12-spinner")
42
+ customElement("sd-3-18-0-spinner")
43
43
  ], SdSpinner);
44
44
  export {
45
45
  SdSpinner as default
@@ -22,6 +22,6 @@ export default class SdStep extends SolidElement {
22
22
  }
23
23
  declare global {
24
24
  interface HTMLElementTagNameMap {
25
- 'sd-3-17-12-step': SdStep;
25
+ 'sd-3-18-0-step': SdStep;
26
26
  }
27
27
  }
@@ -84,7 +84,7 @@ let SdStep = class extends SolidElement {
84
84
  !this.disabled && !this.current && !this.notInteractive && "text-primary group-hover:text-primary-500 group-hover:fill-primary-500",
85
85
  this.notInteractive && "text-primary",
86
86
  this.size === "lg" ? "text-lg" : "text-sm"
87
- )}">${!this.disabled && !this.current && !this.notInteractive ? html`<sd-3-17-12-icon name="status-check" library="system"></sd-3-17-12-icon>` : html`${this.index}`}</slot></${tag}>${this.noTail ? "" : html`<div part="tail" class="${cx(
87
+ )}">${!this.disabled && !this.current && !this.notInteractive ? html`<sd-3-18-0-icon name="status-check" library="system"></sd-3-18-0-icon>` : html`${this.index}`}</slot></${tag}>${this.noTail ? "" : html`<div part="tail" class="${cx(
88
88
  this.orientation === "horizontal" ? "border-t w-full my-auto mr-2" : "border-l flex-grow flex-shrink-0 basis-auto h-full w-[1px] mx-auto",
89
89
  !this.disabled && !this.current && !this.notInteractive ? " border-primary group-hover:border-primary-500" : "border-neutral-400"
90
90
  )}"></div>`}</div><div part="text-container" class="${cx("mt-4 mr-4 break-words flex flex-col gap-2", this.orientation === "horizontal" ? "text-center w-40" : "w-max text-left", this.disabled && "!text-neutral-500")}"><div part="label" class="${cx("!font-bold sd-paragraph", this.disabled && "!text-neutral-500", !this.disabled && !this.current && !this.notInteractive ? "!text-primary group-hover:!text-primary-500 group-hover:cursor-pointer" : "text-black")}"><slot name="label">${this.label}</slot></div><div part="description" class="${cx("sd-paragraph sd-paragraph--size-sm", this.disabled && "!text-neutral-500")}">${this.description || html`<slot></slot>`}</div></div></div>`;
@@ -136,7 +136,7 @@ __decorateClass([
136
136
  watch("notInteractive")
137
137
  ], SdStep.prototype, "handleInteractivityChange", 1);
138
138
  SdStep = __decorateClass([
139
- customElement("sd-3-17-12-step")
139
+ customElement("sd-3-18-0-step")
140
140
  ], SdStep);
141
141
  export {
142
142
  SdStep as default
@@ -17,6 +17,6 @@ export default class SdStepGroup extends SolidElement {
17
17
  }
18
18
  declare global {
19
19
  interface HTMLElementTagNameMap {
20
- 'sd-3-17-12-step-group': SdStepGroup;
20
+ 'sd-3-18-0-step-group': SdStepGroup;
21
21
  }
22
22
  }
@@ -56,7 +56,7 @@ let SdStepGroup = class extends SolidElement {
56
56
  });
57
57
  }
58
58
  getAllSteps() {
59
- return [...this.body.assignedElements()].filter((el) => el.tagName.toLowerCase() === "sd-3-17-12-step");
59
+ return [...this.body.assignedElements()].filter((el) => el.tagName.toLowerCase() === "sd-3-18-0-step");
60
60
  }
61
61
  /**
62
62
  * Sets the active step.
@@ -119,7 +119,7 @@ __decorateClass([
119
119
  watch("notInteractive")
120
120
  ], SdStepGroup.prototype, "handleInteractivityChange", 1);
121
121
  SdStepGroup = __decorateClass([
122
- customElement("sd-3-17-12-step-group")
122
+ customElement("sd-3-18-0-step-group")
123
123
  ], SdStepGroup);
124
124
  export {
125
125
  SdStepGroup as default
@@ -34,6 +34,6 @@ export default class SdSwitch extends SolidElement implements SolidFormControl {
34
34
  }
35
35
  declare global {
36
36
  interface HTMLElementTagNameMap {
37
- 'sd-3-17-12-switch': SdSwitch;
37
+ 'sd-3-18-0-switch': SdSwitch;
38
38
  }
39
39
  }
@@ -162,7 +162,7 @@ __decorateClass([
162
162
  watch(["checked"], { waitUntilFirstUpdate: true })
163
163
  ], SdSwitch.prototype, "handleStateChange", 1);
164
164
  SdSwitch = __decorateClass([
165
- customElement("sd-3-17-12-switch")
165
+ customElement("sd-3-18-0-switch")
166
166
  ], SdSwitch);
167
167
  export {
168
168
  SdSwitch as default
@@ -17,6 +17,6 @@ export default class SdTab extends SolidElement {
17
17
  }
18
18
  declare global {
19
19
  interface HTMLElementTagNameMap {
20
- 'sd-3-17-12-tab': SdTab;
20
+ 'sd-3-18-0-tab': SdTab;
21
21
  }
22
22
  }
@@ -20,7 +20,7 @@ let SdTab = class extends SolidElement {
20
20
  constructor() {
21
21
  super(...arguments);
22
22
  this.attrId = ++id;
23
- this.componentId = `sd-3-17-12-tab-${this.attrId}`;
23
+ this.componentId = `sd-3-18-0-tab-${this.attrId}`;
24
24
  this.variant = "default";
25
25
  this.active = false;
26
26
  this.disabled = false;
@@ -87,7 +87,7 @@ __decorateClass([
87
87
  watch("disabled")
88
88
  ], SdTab.prototype, "handleDisabledChange", 1);
89
89
  SdTab = __decorateClass([
90
- customElement("sd-3-17-12-tab")
90
+ customElement("sd-3-18-0-tab")
91
91
  ], SdTab);
92
92
  export {
93
93
  SdTab as default
@@ -1,6 +1,5 @@
1
1
  import { LocalizeController } from '../../utilities/localize';
2
2
  import SolidElement from '../../internal/solid-element';
3
- import type SdTab from '../tab/tab';
4
3
  export default class SdTabGroup extends SolidElement {
5
4
  localize: LocalizeController;
6
5
  private activeTab?;
@@ -23,10 +22,7 @@ export default class SdTabGroup extends SolidElement {
23
22
  private handleKeyDown;
24
23
  private handleScrollToStart;
25
24
  private handleScrollToEnd;
26
- setActiveTab(tab: SdTab, options?: {
27
- emitEvents?: boolean;
28
- scrollBehavior?: 'auto' | 'smooth';
29
- }): void;
25
+ private setActiveTab;
30
26
  private setAriaLabels;
31
27
  private syncTabsAndPanels;
32
28
  private updateScrollControls;
@@ -36,6 +32,6 @@ export default class SdTabGroup extends SolidElement {
36
32
  }
37
33
  declare global {
38
34
  interface HTMLElementTagNameMap {
39
- 'sd-3-17-12-tab-group': SdTabGroup;
35
+ 'sd-3-18-0-tab-group': SdTabGroup;
40
36
  }
41
37
  }
@@ -29,8 +29,8 @@ let SdTabGroup = class extends SolidElement {
29
29
  }
30
30
  connectedCallback() {
31
31
  const whenAllDefined = Promise.all([
32
- customElements.whenDefined("sd-3-17-12-tab"),
33
- customElements.whenDefined("sd-3-17-12-tab-panel")
32
+ customElements.whenDefined("sd-3-18-0-tab"),
33
+ customElements.whenDefined("sd-3-18-0-tab-panel")
34
34
  ]);
35
35
  super.connectedCallback();
36
36
  this.resizeObserver = new ResizeObserver(() => {
@@ -67,19 +67,19 @@ let SdTabGroup = class extends SolidElement {
67
67
  getAllTabs(options = { includeDisabled: true }) {
68
68
  const slot = this.shadowRoot.querySelector('slot[name="nav"]');
69
69
  return [...slot.assignedElements()].filter((el) => {
70
- return options.includeDisabled ? el.tagName.toLowerCase() === "sd-3-17-12-tab" : el.tagName.toLowerCase() === "sd-3-17-12-tab" && !el.disabled;
70
+ return options.includeDisabled ? el.tagName.toLowerCase() === "sd-3-18-0-tab" : el.tagName.toLowerCase() === "sd-3-18-0-tab" && !el.disabled;
71
71
  });
72
72
  }
73
73
  getAllPanels() {
74
- return [...this.body.assignedElements()].filter((el) => el.tagName.toLowerCase() === "sd-3-17-12-tab-panel");
74
+ return [...this.body.assignedElements()].filter((el) => el.tagName.toLowerCase() === "sd-3-18-0-tab-panel");
75
75
  }
76
76
  getActiveTab() {
77
77
  return this.tabs.find((t) => t.matches(":focus"));
78
78
  }
79
79
  handleClick(event) {
80
80
  const target = event.target;
81
- const tab = target.closest("sd-3-17-12-tab");
82
- const tabGroup = tab == null ? void 0 : tab.closest("sd-3-17-12-tab-group");
81
+ const tab = target.closest("sd-3-18-0-tab");
82
+ const tabGroup = tab == null ? void 0 : tab.closest("sd-3-18-0-tab-group");
83
83
  if (tabGroup !== this) {
84
84
  return;
85
85
  }
@@ -89,8 +89,8 @@ let SdTabGroup = class extends SolidElement {
89
89
  }
90
90
  handleKeyDown(event) {
91
91
  const target = event.target;
92
- const tab = target.closest("sd-3-17-12-tab");
93
- const tabGroup = tab == null ? void 0 : tab.closest("sd-3-17-12-tab-group");
92
+ const tab = target.closest("sd-3-18-0-tab");
93
+ const tabGroup = tab == null ? void 0 : tab.closest("sd-3-18-0-tab-group");
94
94
  if (tabGroup !== this) {
95
95
  return;
96
96
  }
@@ -115,7 +115,7 @@ let SdTabGroup = class extends SolidElement {
115
115
  if (["ArrowLeft", "ArrowRight", "ArrowUp", "ArrowDown", "Home", "End"].includes(event.key)) {
116
116
  const activeEl = this.tabs.find((t) => t.matches(":focus"));
117
117
  const isRtl = this.localize.dir() === "rtl";
118
- if ((activeEl == null ? void 0 : activeEl.tagName.toLowerCase()) === "sd-3-17-12-tab") {
118
+ if ((activeEl == null ? void 0 : activeEl.tagName.toLowerCase()) === "sd-3-18-0-tab") {
119
119
  let index = this.tabs.indexOf(activeEl);
120
120
  if (event.key === "Home") {
121
121
  index = 0;
@@ -210,17 +210,17 @@ let SdTabGroup = class extends SolidElement {
210
210
  return html`<div part="base" class="${cx("flex flex-col rounded-none")}" @click="${this.handleClick}" @keydown="${this.handleKeyDown}"><div part="nav" class="${cx(this.hasScrollControls && "relative py-0 px-12")}">${this.hasScrollControls ? html`<button part="scroll-button--start" exportparts="base:scroll-button__base" class="${cx(
211
211
  "sd-interactive flex items-center justify-center absolute top-0 bottom-0 left-0 !outline-offset-0 border-b border-neutral-400 z-10",
212
212
  this.localize.dir() === "rtl" && "left-auto right-0"
213
- )}" @click="${this.handleScrollToStart}"><sd-3-17-12-icon library="system" name="${isRtl ? "chevron-up" : "chevron-down"}" class="${cx("h-6 w-12 rotate-90 grid place-items-center")}"></sd-3-17-12-icon></button>` : ""}<div part="scroll-container" class="flex overflow-x-auto focus-visible:focus-outline !outline-offset-0"><div part="tabs" class="${cx("flex flex-auto relative flex-row")}" role="tablist"><div part="separation" class="w-full h-0.25 bg-neutral-400 absolute bottom-0"></div><slot name="nav" @slotchange="${this.syncTabsAndPanels}"></slot></div></div>${this.hasScrollControls ? html`<button part="scroll-button--end" exportparts="base:scroll-button__base" class="${cx(
213
+ )}" @click="${this.handleScrollToStart}"><sd-3-18-0-icon library="system" name="${isRtl ? "chevron-up" : "chevron-down"}" class="${cx("h-6 w-12 rotate-90 grid place-items-center")}"></sd-3-18-0-icon></button>` : ""}<div part="scroll-container" class="flex overflow-x-auto focus-visible:focus-outline !outline-offset-0"><div part="tabs" class="${cx("flex flex-auto relative flex-row")}" role="tablist"><div part="separation" class="w-full h-0.25 bg-neutral-400 absolute bottom-0"></div><slot name="nav" @slotchange="${this.syncTabsAndPanels}"></slot></div></div>${this.hasScrollControls ? html`<button part="scroll-button--end" exportparts="base:scroll-button__base" class="${cx(
214
214
  "sd-interactive flex items-center justify-center absolute top-0 bottom-0 right-0 !outline-offset-0 border-b border-neutral-400 z-10",
215
215
  this.localize.dir() === "rtl" && "right-auto left-0"
216
- )}" @click="${this.handleScrollToEnd}"><sd-3-17-12-icon library="system" name="${isRtl ? "chevron-down" : "chevron-up"}" class="${cx("h-6 w-12 rotate-90 grid place-items-center")}"></sd-3-17-12-icon></button>` : ""}</div><slot part="body" class="${cx("block auto py-8 px-6", this.variant === "container" && "border border-neutral-400 border-t-0")}" @slotchange="${this.syncTabsAndPanels}"></slot></div>`;
216
+ )}" @click="${this.handleScrollToEnd}"><sd-3-18-0-icon library="system" name="${isRtl ? "chevron-down" : "chevron-up"}" class="${cx("h-6 w-12 rotate-90 grid place-items-center")}"></sd-3-18-0-icon></button>` : ""}</div><slot part="body" class="${cx("block auto py-8 px-6", this.variant === "container" && "border border-neutral-400 border-t-0")}" @slotchange="${this.syncTabsAndPanels}"></slot></div>`;
217
217
  }
218
218
  };
219
219
  SdTabGroup.styles = [
220
220
  SolidElement.styles,
221
221
  unsafeCSS(InteractiveStyles),
222
222
  componentStyles,
223
- css`:host{box-sizing:border-box;display:block}[part=scroll-container]{scrollbar-width:none}[part=scroll-container]::-webkit-scrollbar{height:var(--sd-spacing-0,0);width:var(--sd-spacing-0,0)}::slotted(sd-3-17-12-tab-panel){--padding:1rem 0}`
223
+ css`:host{box-sizing:border-box;display:block}[part=scroll-container]{scrollbar-width:none}[part=scroll-container]::-webkit-scrollbar{height:var(--sd-spacing-0,0);width:var(--sd-spacing-0,0)}::slotted(sd-3-18-0-tab-panel){--padding:1rem 0}`
224
224
  ];
225
225
  __decorateClass([
226
226
  query("[part=base]")
@@ -241,7 +241,7 @@ __decorateClass([
241
241
  property()
242
242
  ], SdTabGroup.prototype, "activation", 2);
243
243
  SdTabGroup = __decorateClass([
244
- customElement("sd-3-17-12-tab-group")
244
+ customElement("sd-3-18-0-tab-group")
245
245
  ], SdTabGroup);
246
246
  export {
247
247
  SdTabGroup as default