@sbb-esta/lyne-elements 4.4.0 → 4.5.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 (58) hide show
  1. package/autocomplete/autocomplete-base-element.js +69 -56
  2. package/button/common.js +1 -1
  3. package/button/mini-button-group/mini-button-group.component.js +14 -14
  4. package/button.js +1 -1
  5. package/core/a11y/focus-trap-controller.js +10 -10
  6. package/core/datetime.js +15 -12
  7. package/core/styles/core.scss +14 -0
  8. package/core.css +54 -0
  9. package/custom-elements.json +75 -17
  10. package/datepicker/common.js +5 -3
  11. package/datepicker/datepicker-next-day/datepicker-next-day.component.js +13 -11
  12. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +12 -10
  13. package/datepicker/datepicker-toggle/datepicker-toggle.component.js +21 -19
  14. package/datepicker-button-Debzp_As.js +5 -0
  15. package/datepicker.js +6 -4
  16. package/development/autocomplete/autocomplete-base-element.d.ts +6 -1
  17. package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  18. package/development/autocomplete/autocomplete-base-element.js +28 -5
  19. package/development/button/common.js +1 -1
  20. package/development/button/mini-button-group/mini-button-group.component.js +10 -14
  21. package/development/button.js +1 -1
  22. package/development/core/a11y/focus-trap-controller.d.ts.map +1 -1
  23. package/development/core/a11y/focus-trap-controller.js +4 -3
  24. package/development/core/controllers/overlay-position-controller.d.ts.map +1 -1
  25. package/development/core/controllers/overlay-position-controller.js +1 -1
  26. package/development/core/datetime.d.ts +1 -0
  27. package/development/core/datetime.d.ts.map +1 -1
  28. package/development/core/datetime.js +5 -2
  29. package/development/datepicker/common.d.ts.map +1 -1
  30. package/development/datepicker/common.js +4 -2
  31. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts.map +1 -1
  32. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.js +7 -8
  33. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts.map +1 -1
  34. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +7 -8
  35. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts.map +1 -1
  36. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.js +7 -8
  37. package/development/datepicker-button-BDlxIp9r.js +9 -0
  38. package/development/datepicker.js +4 -2
  39. package/development/{mini-button-label-common-0DeEC1qs.js → mini-button-label-common-BaMSfSTe.js} +13 -63
  40. package/development/radio-button/radio-button-group/radio-button-group.component.d.ts.map +1 -1
  41. package/development/radio-button/radio-button-group/radio-button-group.component.js +1 -1
  42. package/development/select/select.component.d.ts +1 -1
  43. package/development/select/select.component.d.ts.map +1 -1
  44. package/development/select/select.component.js +17 -8
  45. package/development/tabs/tab/tab.component.d.ts.map +1 -1
  46. package/development/tabs/tab/tab.component.js +2 -1
  47. package/development/tabs/tab-group/tab-group.component.d.ts +6 -7
  48. package/development/tabs/tab-group/tab-group.component.d.ts.map +1 -1
  49. package/development/tabs/tab-group/tab-group.component.js +23 -66
  50. package/mini-button-label-common-Dx9JhmQ6.js +11 -0
  51. package/off-brand-theme.css +54 -0
  52. package/package.json +1 -1
  53. package/safety-theme.css +54 -0
  54. package/select/select.component.js +20 -20
  55. package/standard-theme.css +54 -0
  56. package/tabs/tab/tab.component.js +4 -4
  57. package/tabs/tab-group/tab-group.component.js +55 -56
  58. package/mini-button-label-common-BOB7JQKi.js +0 -11
@@ -29,56 +29,14 @@ const style = css`:host {
29
29
  );
30
30
  }
31
31
 
32
- :host([fixed-height]) .sbb-tab-group-content {
33
- --sbb-scrollbar-thumb-width: 0.125rem;
34
- --sbb-scrollbar-thumb-width-hover: 0.25rem;
35
- --sbb-scrollbar-width-firefox: thin;
36
- --sbb-scrollbar-color: color-mix(in srgb, var(--sbb-color-black) 30%, transparent);
37
- --sbb-scrollbar-color: light-dark(
38
- color-mix(in srgb, var(--sbb-color-black) 30%, transparent),
39
- color-mix(in srgb, var(--sbb-color-white) 30%, transparent)
40
- );
41
- --sbb-scrollbar-color-hover: color-mix(in srgb, var(--sbb-color-black) 60%, transparent);
42
- --sbb-scrollbar-color-hover: light-dark(
43
- color-mix(in srgb, var(--sbb-color-black) 60%, transparent),
44
- color-mix(in srgb, var(--sbb-color-white) 60%, transparent)
45
- );
46
- --sbb-scrollbar-track-color: transparent;
47
- --sbb-scrollbar-width: var(--sbb-spacing-fixed-3x);
48
- }
49
- :host([fixed-height]) .sbb-tab-group-content::-webkit-scrollbar {
50
- width: var(--sbb-scrollbar-width);
51
- height: var(--sbb-scrollbar-width);
52
- background-color: var(--sbb-scrollbar-track-color, transparent);
53
- }
54
- :host([fixed-height]) .sbb-tab-group-content::-webkit-scrollbar-corner {
55
- background-color: var(--sbb-scrollbar-track-color, transparent);
56
- }
57
- :host([fixed-height]) .sbb-tab-group-content::-webkit-scrollbar-thumb {
58
- background-color: var(--sbb-scrollbar-color, currentcolor);
59
- border: calc(0.5 * (var(--sbb-scrollbar-width) - var(--sbb-scrollbar-thumb-width))) solid transparent;
60
- border-radius: var(--sbb-border-radius-4x);
61
- background-clip: padding-box;
62
- }
63
- :host([fixed-height]) .sbb-tab-group-content::-webkit-scrollbar-thumb:hover {
64
- background-color: var(--sbb-scrollbar-color-hover, currentcolor);
65
- border-width: calc(0.5 * (var(--sbb-scrollbar-width) - var(--sbb-scrollbar-thumb-width-hover)));
66
- }
67
- :host([fixed-height]) .sbb-tab-group-content::-webkit-scrollbar-button, :host([fixed-height]) .sbb-tab-group-content::-webkit-scrollbar-corner {
68
- display: none;
69
- }
70
- @supports not selector(::-webkit-scrollbar) {
71
- :host([fixed-height]) .sbb-tab-group-content {
72
- scrollbar-width: var(--sbb-scrollbar-width-firefox);
73
- scrollbar-color: var(--sbb-scrollbar-color, currentcolor) var(--sbb-scrollbar-track-color, transparent);
74
- }
32
+ .sbb-tab-group-content {
33
+ height: var(--sbb-tab-content-height);
34
+ transition: height var(--sbb-tab-group-animation-duration) var(--sbb-animation-easing);
75
35
  }
76
- :host([fixed-height]) .sbb-tab-group-content {
36
+
37
+ :host([fixed-height]) ::slotted(sbb-tab) {
77
38
  height: 100%;
78
39
  overflow: auto;
79
- }
80
- .sbb-tab-group-content {
81
- transition: height var(--sbb-tab-group-animation-duration) var(--sbb-animation-easing);
82
40
  }`;
83
41
  let SbbTabGroupElement = (() => {
84
42
  var _size_accessor_storage, _initialSelectedIndex_accessor_storage, _fixedHeight_accessor_storage, _a;
@@ -167,28 +125,28 @@ let SbbTabGroupElement = (() => {
167
125
  }
168
126
  /**
169
127
  * Disables a tab by index.
170
- * @param tabIndex The index of the tab you want to disable.
128
+ * @param index The index of the tab you want to disable.
171
129
  */
172
- disableTab(tabIndex) {
173
- if (this.labels[tabIndex]) {
174
- this.labels[tabIndex].disabled = true;
130
+ disableTab(index) {
131
+ if (this.labels[index]) {
132
+ this.labels[index].disabled = true;
175
133
  }
176
134
  }
177
135
  /**
178
136
  * Enables a tab by index.
179
- * @param tabIndex The index of the tab you want to enable.
137
+ * @param index The index of the tab you want to enable.
180
138
  */
181
- enableTab(tabIndex) {
182
- if (this.labels[tabIndex]) {
183
- this.labels[tabIndex].disabled = false;
139
+ enableTab(index) {
140
+ if (this.labels[index]) {
141
+ this.labels[index].disabled = false;
184
142
  }
185
143
  }
186
144
  /**
187
145
  * Activates a tab by index.
188
- * @param tabIndex The index of the tab you want to activate.
146
+ * @param index The index of the tab you want to activate.
189
147
  */
190
- activateTab(tabIndex) {
191
- this.labels[tabIndex]?.activate();
148
+ activateTab(index) {
149
+ this.labels[index]?.activate();
192
150
  }
193
151
  _enabledTabs() {
194
152
  return this.labels.filter((t) => {
@@ -232,7 +190,7 @@ let SbbTabGroupElement = (() => {
232
190
  * @internal
233
191
  */
234
192
  setTabContentHeight(contentHeight) {
235
- this._tabContentElement.style.height = `${contentHeight}px`;
193
+ this.style.setProperty("--sbb-tab-content-height", `${contentHeight}px`);
236
194
  }
237
195
  render() {
238
196
  return html`
@@ -243,12 +201,11 @@ let SbbTabGroupElement = (() => {
243
201
  >
244
202
  <slot name="tab-bar" @slotchange=${this._onLabelSlotChange}></slot>
245
203
  </div>
246
- <div
247
- class="sbb-tab-group-content"
248
- ${ref((el) => this._tabContentElement = el)}
249
- >
250
- <slot @slotchange=${throttle(this._onContentSlotChange, 150)}></slot>
251
- </div>
204
+ ${!this.fixedHeight ? html`
205
+ <div class="sbb-tab-group-content">
206
+ <slot @slotchange=${throttle(this._onContentSlotChange, 150)}></slot>
207
+ </div>
208
+ ` : html`<slot @slotchange=${throttle(this._onContentSlotChange, 150)}></slot>`}
252
209
  `;
253
210
  }
254
211
  }, _size_accessor_storage = new WeakMap(), _initialSelectedIndex_accessor_storage = new WeakMap(), _fixedHeight_accessor_storage = new WeakMap(), _classThis = _a, (() => {
@@ -276,4 +233,4 @@ let SbbTabGroupElement = (() => {
276
233
  export {
277
234
  SbbTabGroupElement
278
235
  };
279
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3RhYnMvdGFiLWdyb3VwL3RhYi1ncm91cC5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVzaXplQ29udHJvbGxlciB9IGZyb20gJ0BsaXQtbGFicy9vYnNlcnZlcnMvcmVzaXplLWNvbnRyb2xsZXIuanMnO1xuaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgUHJvcGVydHlWYWx1ZXMsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyByZWYgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9yZWYuanMnO1xuXG5pbXBvcnQgeyBnZXROZXh0RWxlbWVudEluZGV4LCBpc0Fycm93S2V5UHJlc3NlZCB9IGZyb20gJy4uLy4uL2NvcmUvYTExeS50cyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMudHMnO1xuaW1wb3J0IHsgaXNMZWFuIH0gZnJvbSAnLi4vLi4vY29yZS9kb20udHMnO1xuaW1wb3J0IHsgdGhyb3R0bGUgfSBmcm9tICcuLi8uLi9jb3JlL2V2ZW50aW5nLnRzJztcbmltcG9ydCB7XG4gIFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpbixcbiAgU2JiSHlkcmF0aW9uTWl4aW4sXG4gIMm1c3RhdGVDb250cm9sbGVyLFxufSBmcm9tICcuLi8uLi9jb3JlL21peGlucy50cyc7XG5pbXBvcnQgeyBib3hTaXppbmdTdHlsZXMgfSBmcm9tICcuLi8uLi9jb3JlL3N0eWxlcy50cyc7XG5pbXBvcnQgeyB0YWJHcm91cENvbW1vblN0eWxlcyB9IGZyb20gJy4uL2NvbW1vbi50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYlRhYkxhYmVsRWxlbWVudCB9IGZyb20gJy4uL3RhYi1sYWJlbC50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYlRhYkVsZW1lbnQgfSBmcm9tICcuLi90YWIudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90YWItZ3JvdXAuc2Nzcz9saXQmaW5saW5lJztcblxuZXhwb3J0IHR5cGUgU2JiVGFiQ2hhbmdlZEV2ZW50RGV0YWlscyA9IHtcbiAgYWN0aXZlSW5kZXg6IG51bWJlcjtcbiAgYWN0aXZlVGFiTGFiZWw6IFNiYlRhYkxhYmVsRWxlbWVudDtcbiAgYWN0aXZlVGFiOiBTYmJUYWJFbGVtZW50O1xuICBwcmV2aW91c0luZGV4OiBudW1iZXI7XG4gIHByZXZpb3VzVGFiTGFiZWw6IFNiYlRhYkxhYmVsRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgcHJldmlvdXNUYWI6IFNiYlRhYkVsZW1lbnQgfCB1bmRlZmluZWQ7XG59O1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIG9uZSBvciBtb3JlIHRhYnMsIGVhY2ggb25lIHdpdGggYSBsYWJlbCBhbmQgc29tZSBjb250ZW50LlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIGBzYmItdGFiLWdyb3VwYCB2aWEgYHNiYi10YWItbGFiZWxgIGFuZCBgc2JiLXRhYmAgaW5zdGFuY2VzLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDxTYmJUYWJDaGFuZ2VkRXZlbnREZXRhaWxzPn0gdGFiY2hhbmdlIC0gVGhlIHRhYmNoYW5nZSBldmVudCBpcyBkaXNwYXRjaGVkIHdoZW4gYSB0YWIgaXMgc2VsZWN0ZWQuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi10YWItZ3JvdXAnKVxuY2xhc3MgU2JiVGFiR3JvdXBFbGVtZW50IGV4dGVuZHMgU2JiRWxlbWVudEludGVybmFsc01peGluKFNiYkh5ZHJhdGlvbk1peGluKExpdEVsZW1lbnQpKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtib3hTaXppbmdTdHlsZXMsIHRhYkdyb3VwQ29tbW9uU3R5bGVzLCBzdHlsZV07XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgIHRhYmNoYW5nZTogJ3RhYmNoYW5nZScsXG4gIH0gYXMgY29uc3Q7XG5cbiAgcHJpdmF0ZSBfdGFiR3JvdXBFbGVtZW50ITogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX3RhYkNvbnRlbnRFbGVtZW50ITogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX3RhYkdyb3VwUmVzaXplT2JzZXJ2ZXIgPSBuZXcgUmVzaXplQ29udHJvbGxlcih0aGlzLCB7XG4gICAgdGFyZ2V0OiBudWxsLFxuICAgIHNraXBJbml0aWFsOiB0cnVlLFxuICAgIGNhbGxiYWNrOiAoKSA9PiB0aGlzLl9vblRhYkdyb3VwRWxlbWVudFJlc2l6ZSgpLFxuICB9KTtcblxuICAvKipcbiAgICogU2l6ZSB2YXJpYW50LCBlaXRoZXIgcywgbCBvciB4bC5cbiAgICogQGRlZmF1bHQgJ2wnIC8gJ3MnIChsZWFuKVxuICAgKi9cbiAgQHByb3BlcnR5KClcbiAgcHVibGljIGFjY2Vzc29yIHNpemU6ICdzJyB8ICdsJyB8ICd4bCcgPSBpc0xlYW4oKSA/ICdzJyA6ICdsJztcblxuICAvKipcbiAgICogU2V0cyB0aGUgaW5pdGlhbCB0YWIuIElmIGl0IG1hdGNoZXMgYSBkaXNhYmxlZCB0YWIgb3IgZXhjZWVkcyB0aGUgbGVuZ3RoIG9mXG4gICAqIHRoZSB0YWIgZ3JvdXAsIHRoZSBmaXJzdCBlbmFibGVkIHRhYiB3aWxsIGJlIHNlbGVjdGVkLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2luaXRpYWwtc2VsZWN0ZWQtaW5kZXgnLCB0eXBlOiBOdW1iZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIGluaXRpYWxTZWxlY3RlZEluZGV4OiBudW1iZXIgPSAwO1xuXG4gIC8qKlxuICAgKiBJZiBzZXQgdG8gdHJ1ZSwgdGhlIGBzYmItdGFiYCBlbGVtZW50cyB0YWtlIDEwMCUgaGVpZ2h0IG9mIHRoZSBgc2JiLXRhYi1ncm91cGAuXG4gICAqIEl0IGVuYWJsZXMgY29udHJvbGxpbmcgdGhlIGhlaWdodCBvbiB0aGUgYHNiYi10YWItZ3JvdXBgIGVsZW1lbnQuXG4gICAqIFRoZSBjb250ZW50IGJlY29tZXMgc2Nyb2xsYWJsZSBvbiBvdmVyZmxvdy5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdmaXhlZC1oZWlnaHQnLCB0eXBlOiBCb29sZWFuLCByZWZsZWN0OiB0cnVlIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBmaXhlZEhlaWdodDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBHZXRzIHRoZSBzbG90dGVkIGBzYmItdGFiLWxhYmVsYHMuICovXG4gIHB1YmxpYyBnZXQgbGFiZWxzKCk6IFNiYlRhYkxhYmVsRWxlbWVudFtdIHtcbiAgICAvKipcbiAgICAgKiBUaGUgcXVlcnlTZWxlY3RvciBBUEkgaXMgbm90IHVzZWQgYmVjYXVzZSB3aGVuIG5lc3RlZCB0YWJzIGFyZSB1c2VkLFxuICAgICAqIHRoZSByZXR1cm5lZCBhcnJheSBjb250YWlucyB0aGUgaW5uZXIgdGFicyB0b28sIGFuZCB0aGlzIGJyZWFrcyB0aGUga2V5Ym9hcmQgbmF2aWdhdGlvbi5cbiAgICAgKi9cbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmNoaWxkcmVuID8/IFtdKS5maWx0ZXIoKGNoaWxkKSA9PlxuICAgICAgL15zYmItdGFiLWxhYmVsJC91LnRlc3QoY2hpbGQubG9jYWxOYW1lKSxcbiAgICApIGFzIFNiYlRhYkxhYmVsRWxlbWVudFtdO1xuICB9XG5cbiAgLyoqIEdldHMgdGhlIHNsb3R0ZWQgYHNiYi10YWJgcy4gKi9cbiAgcHVibGljIGdldCB0YWJzKCk6IFNiYlRhYkVsZW1lbnRbXSB7XG4gICAgLyoqXG4gICAgICogVGhlIHF1ZXJ5U2VsZWN0b3IgQVBJIGlzIG5vdCB1c2VkIGJlY2F1c2Ugd2hlbiBuZXN0ZWQgdGFicyBhcmUgdXNlZCxcbiAgICAgKiB0aGUgcmV0dXJuZWQgYXJyYXkgY29udGFpbnMgdGhlIGlubmVyIHRhYnMgdG9vLCBhbmQgdGhpcyBicmVha3MgdGhlIGtleWJvYXJkIG5hdmlnYXRpb24uXG4gICAgICovXG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5jaGlsZHJlbiA/PyBbXSkuZmlsdGVyKChjaGlsZCkgPT5cbiAgICAgIC9ec2JiLXRhYiQvdS50ZXN0KGNoaWxkLmxvY2FsTmFtZSksXG4gICAgKSBhcyBTYmJUYWJFbGVtZW50W107XG4gIH1cblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/Ligna2V5ZG93bicsIChlKSA9PiB0aGlzLl9oYW5kbGVLZXlEb3duKGUpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIHRoaXMubGFiZWxzLmZvckVhY2goKHRhYkxhYmVsKSA9PiB0YWJMYWJlbFsnbGlua1RvVGFiJ10oKSk7XG4gICAgdGhpcy5faW5pdFNlbGVjdGlvbigpO1xuXG4gICAgLy8gVG8gYXZvaWQgYW5pbWF0aW9ucyBvbiBpbml0aWFsaXphdGlvbiwgd2UgaGF2ZSB0byBtYXJrIHRoZSBjb21wb25lbnQgYXMgaW5pdGlhbGl6ZWQgYW5kIHdhaXQgYSB0aWNrLlxuICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4gdGhpcy5pbnRlcm5hbHMuc3RhdGVzLmFkZCgnaW5pdGlhbGl6ZWQnKSk7XG4gICAgdGhpcy5fdGFiR3JvdXBSZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMuX3RhYkdyb3VwRWxlbWVudCk7XG4gIH1cblxuICAvKipcbiAgICogRGlzYWJsZXMgYSB0YWIgYnkgaW5kZXguXG4gICAqIEBwYXJhbSB0YWJJbmRleCBUaGUgaW5kZXggb2YgdGhlIHRhYiB5b3Ugd2FudCB0byBkaXNhYmxlLlxuICAgKi9cbiAgcHVibGljIGRpc2FibGVUYWIodGFiSW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIGlmICh0aGlzLmxhYmVsc1t0YWJJbmRleF0pIHtcbiAgICAgIHRoaXMubGFiZWxzW3RhYkluZGV4XS5kaXNhYmxlZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEVuYWJsZXMgYSB0YWIgYnkgaW5kZXguXG4gICAqIEBwYXJhbSB0YWJJbmRleCBUaGUgaW5kZXggb2YgdGhlIHRhYiB5b3Ugd2FudCB0byBlbmFibGUuXG4gICAqL1xuICBwdWJsaWMgZW5hYmxlVGFiKHRhYkluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5sYWJlbHNbdGFiSW5kZXhdKSB7XG4gICAgICB0aGlzLmxhYmVsc1t0YWJJbmRleF0uZGlzYWJsZWQgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWN0aXZhdGVzIGEgdGFiIGJ5IGluZGV4LlxuICAgKiBAcGFyYW0gdGFiSW5kZXggVGhlIGluZGV4IG9mIHRoZSB0YWIgeW91IHdhbnQgdG8gYWN0aXZhdGUuXG4gICAqL1xuICBwdWJsaWMgYWN0aXZhdGVUYWIodGFiSW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMubGFiZWxzW3RhYkluZGV4XT8uYWN0aXZhdGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2VuYWJsZWRUYWJzKCk6IFNiYlRhYkxhYmVsRWxlbWVudFtdIHtcbiAgICByZXR1cm4gdGhpcy5sYWJlbHMuZmlsdGVyKCh0KSA9PiB7XG4gICAgICBjdXN0b21FbGVtZW50cy51cGdyYWRlKHQpO1xuICAgICAgcmV0dXJuICF0LmRpc2FibGVkO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfb25Db250ZW50U2xvdENoYW5nZSA9ICgpOiB2b2lkID0+IHtcbiAgICB0aGlzLmxhYmVscy5mb3JFYWNoKCh0YWJMYWJlbCkgPT4gdGFiTGFiZWxbJ2xpbmtUb1RhYiddKCkpO1xuICAgIHRoaXMubGFiZWxzLmZpbmQoKHRhYkxhYmVsKSA9PiB0YWJMYWJlbC5hY3RpdmUpPy5hY3RpdmF0ZSgpO1xuICB9O1xuXG4gIHByaXZhdGUgX29uTGFiZWxTbG90Q2hhbmdlID0gKCk6IHZvaWQgPT4ge1xuICAgIHRoaXMubGFiZWxzLmZvckVhY2goKHRhYkxhYmVsKSA9PiB0YWJMYWJlbFsnbGlua1RvVGFiJ10oKSk7XG4gIH07XG5cbiAgcHJpdmF0ZSBfaW5pdFNlbGVjdGlvbigpOiB2b2lkIHtcbiAgICBjb25zdCBzZWxlY3RlZFRhYkxhYmVsID0gdGhpcy5sYWJlbHNbdGhpcy5pbml0aWFsU2VsZWN0ZWRJbmRleF07XG4gICAgaWYgKHNlbGVjdGVkVGFiTGFiZWwpIHtcbiAgICAgIGN1c3RvbUVsZW1lbnRzLnVwZ3JhZGUoc2VsZWN0ZWRUYWJMYWJlbCk7XG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMuaW5pdGlhbFNlbGVjdGVkSW5kZXggPj0gMCAmJlxuICAgICAgICB0aGlzLmluaXRpYWxTZWxlY3RlZEluZGV4IDwgdGhpcy5sYWJlbHMubGVuZ3RoICYmXG4gICAgICAgICFzZWxlY3RlZFRhYkxhYmVsLmRpc2FibGVkXG4gICAgICApIHtcbiAgICAgICAgc2VsZWN0ZWRUYWJMYWJlbC5hY3RpdmF0ZSgpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuX2VuYWJsZWRUYWJzKClbMF0/LmFjdGl2YXRlKCk7XG4gIH1cblxuICBwcml2YXRlIF9vblRhYkdyb3VwRWxlbWVudFJlc2l6ZSgpOiB2b2lkIHtcbiAgICBjb25zdCB0YWJMYWJlbHMgPSB0aGlzLmxhYmVscztcbiAgICB0YWJMYWJlbHMuZm9yRWFjaCgodGFiTGFiZWwpID0+IHtcbiAgICAgIMm1c3RhdGVDb250cm9sbGVyKHRhYkxhYmVsKT8udG9nZ2xlKFxuICAgICAgICAnaGFzLWRpdmlkZXInLFxuICAgICAgICB0YWJMYWJlbCA9PT0gdGFiTGFiZWxzWzBdIHx8IHRhYkxhYmVsLm9mZnNldExlZnQgPT09IHRhYkxhYmVsc1swXS5vZmZzZXRMZWZ0LFxuICAgICAgKTtcbiAgICB9KTtcblxuICAgIHRoaXMuc3R5bGUuc2V0UHJvcGVydHkoJy0tc2JiLXRhYi1ncm91cC13aWR0aCcsIGAke3RoaXMuX3RhYkdyb3VwRWxlbWVudC5jbGllbnRXaWR0aH1weGApO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlS2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBlbmFibGVkVGFiczogU2JiVGFiTGFiZWxFbGVtZW50W10gPSB0aGlzLl9lbmFibGVkVGFicygpO1xuXG4gICAgaWYgKFxuICAgICAgIWVuYWJsZWRUYWJzIHx8XG4gICAgICAvLyBkb24ndCB0cmFwIG5lc3RlZCBoYW5kbGluZ1xuICAgICAgKChldnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KSAhPT0gdGhpcyAmJiAoZXZ0LnRhcmdldCBhcyBIVE1MRWxlbWVudCkucGFyZW50RWxlbWVudCAhPT0gdGhpcylcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoaXNBcnJvd0tleVByZXNzZWQoZXZ0KSkge1xuICAgICAgY29uc3QgY3VycmVudDogbnVtYmVyID0gZW5hYmxlZFRhYnMuZmluZEluZGV4KCh0KSA9PiB0LmFjdGl2ZSk7XG4gICAgICBjb25zdCBuZXh0SW5kZXg6IG51bWJlciA9IGdldE5leHRFbGVtZW50SW5kZXgoZXZ0LCBjdXJyZW50LCBlbmFibGVkVGFicy5sZW5ndGgpO1xuICAgICAgZW5hYmxlZFRhYnNbbmV4dEluZGV4XT8uYWN0aXZhdGUoKTtcbiAgICAgIGVuYWJsZWRUYWJzW25leHRJbmRleF0/LmZvY3VzKCk7XG4gICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwcm90ZWN0ZWQgc2V0VGFiQ29udGVudEhlaWdodChjb250ZW50SGVpZ2h0OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLl90YWJDb250ZW50RWxlbWVudC5zdHlsZS5oZWlnaHQgPSBgJHtjb250ZW50SGVpZ2h0fXB4YDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cInNiYi10YWItZ3JvdXBcIlxuICAgICAgICByb2xlPVwidGFibGlzdFwiXG4gICAgICAgICR7cmVmKChlbD86IEVsZW1lbnQpID0+ICh0aGlzLl90YWJHcm91cEVsZW1lbnQgPSBlbCBhcyBIVE1MRWxlbWVudCkpfVxuICAgICAgPlxuICAgICAgICA8c2xvdCBuYW1lPVwidGFiLWJhclwiIEBzbG90Y2hhbmdlPSR7dGhpcy5fb25MYWJlbFNsb3RDaGFuZ2V9Pjwvc2xvdD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cInNiYi10YWItZ3JvdXAtY29udGVudFwiXG4gICAgICAgICR7cmVmKChlbD86IEVsZW1lbnQpID0+ICh0aGlzLl90YWJDb250ZW50RWxlbWVudCA9IGVsIGFzIEhUTUxFbGVtZW50KSl9XG4gICAgICA+XG4gICAgICAgIDxzbG90IEBzbG90Y2hhbmdlPSR7dGhyb3R0bGUodGhpcy5fb25Db250ZW50U2xvdENoYW5nZSwgMTUwKX0+PC9zbG90PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRhYi1ncm91cCc6IFNiYlRhYkdyb3VwRWxlbWVudDtc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
236
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3RhYnMvdGFiLWdyb3VwL3RhYi1ncm91cC5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVzaXplQ29udHJvbGxlciB9IGZyb20gJ0BsaXQtbGFicy9vYnNlcnZlcnMvcmVzaXplLWNvbnRyb2xsZXIuanMnO1xuaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgUHJvcGVydHlWYWx1ZXMsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyByZWYgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9yZWYuanMnO1xuXG5pbXBvcnQgeyBnZXROZXh0RWxlbWVudEluZGV4LCBpc0Fycm93S2V5UHJlc3NlZCB9IGZyb20gJy4uLy4uL2NvcmUvYTExeS50cyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMudHMnO1xuaW1wb3J0IHsgaXNMZWFuIH0gZnJvbSAnLi4vLi4vY29yZS9kb20udHMnO1xuaW1wb3J0IHsgdGhyb3R0bGUgfSBmcm9tICcuLi8uLi9jb3JlL2V2ZW50aW5nLnRzJztcbmltcG9ydCB7XG4gIFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpbixcbiAgU2JiSHlkcmF0aW9uTWl4aW4sXG4gIMm1c3RhdGVDb250cm9sbGVyLFxufSBmcm9tICcuLi8uLi9jb3JlL21peGlucy50cyc7XG5pbXBvcnQgeyBib3hTaXppbmdTdHlsZXMgfSBmcm9tICcuLi8uLi9jb3JlL3N0eWxlcy50cyc7XG5pbXBvcnQgeyB0YWJHcm91cENvbW1vblN0eWxlcyB9IGZyb20gJy4uL2NvbW1vbi50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYlRhYkxhYmVsRWxlbWVudCB9IGZyb20gJy4uL3RhYi1sYWJlbC50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYlRhYkVsZW1lbnQgfSBmcm9tICcuLi90YWIudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90YWItZ3JvdXAuc2Nzcz9saXQmaW5saW5lJztcblxuZXhwb3J0IHR5cGUgU2JiVGFiQ2hhbmdlZEV2ZW50RGV0YWlscyA9IHtcbiAgYWN0aXZlSW5kZXg6IG51bWJlcjtcbiAgYWN0aXZlVGFiTGFiZWw6IFNiYlRhYkxhYmVsRWxlbWVudDtcbiAgYWN0aXZlVGFiOiBTYmJUYWJFbGVtZW50O1xuICBwcmV2aW91c0luZGV4OiBudW1iZXI7XG4gIHByZXZpb3VzVGFiTGFiZWw6IFNiYlRhYkxhYmVsRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgcHJldmlvdXNUYWI6IFNiYlRhYkVsZW1lbnQgfCB1bmRlZmluZWQ7XG59O1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIG9uZSBvciBtb3JlIHRhYnMsIGVhY2ggb25lIHdpdGggYSBsYWJlbCBhbmQgc29tZSBjb250ZW50LlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIGBzYmItdGFiLWdyb3VwYCB2aWEgYHNiYi10YWItbGFiZWxgIGFuZCBgc2JiLXRhYmAgaW5zdGFuY2VzLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDxTYmJUYWJDaGFuZ2VkRXZlbnREZXRhaWxzPn0gdGFiY2hhbmdlIC0gVGhlIHRhYmNoYW5nZSBldmVudCBpcyBkaXNwYXRjaGVkIHdoZW4gYSB0YWIgaXMgc2VsZWN0ZWQuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi10YWItZ3JvdXAnKVxuY2xhc3MgU2JiVGFiR3JvdXBFbGVtZW50IGV4dGVuZHMgU2JiRWxlbWVudEludGVybmFsc01peGluKFNiYkh5ZHJhdGlvbk1peGluKExpdEVsZW1lbnQpKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtib3hTaXppbmdTdHlsZXMsIHRhYkdyb3VwQ29tbW9uU3R5bGVzLCBzdHlsZV07XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgIHRhYmNoYW5nZTogJ3RhYmNoYW5nZScsXG4gIH0gYXMgY29uc3Q7XG5cbiAgcHJpdmF0ZSBfdGFiR3JvdXBFbGVtZW50ITogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX3RhYkdyb3VwUmVzaXplT2JzZXJ2ZXIgPSBuZXcgUmVzaXplQ29udHJvbGxlcih0aGlzLCB7XG4gICAgdGFyZ2V0OiBudWxsLFxuICAgIHNraXBJbml0aWFsOiB0cnVlLFxuICAgIGNhbGxiYWNrOiAoKSA9PiB0aGlzLl9vblRhYkdyb3VwRWxlbWVudFJlc2l6ZSgpLFxuICB9KTtcblxuICAvKipcbiAgICogU2l6ZSB2YXJpYW50LCBlaXRoZXIgcywgbCBvciB4bC5cbiAgICogQGRlZmF1bHQgJ2wnIC8gJ3MnIChsZWFuKVxuICAgKi9cbiAgQHByb3BlcnR5KClcbiAgcHVibGljIGFjY2Vzc29yIHNpemU6ICdzJyB8ICdsJyB8ICd4bCcgPSBpc0xlYW4oKSA/ICdzJyA6ICdsJztcblxuICAvKipcbiAgICogU2V0cyB0aGUgaW5pdGlhbCB0YWIuIElmIGl0IG1hdGNoZXMgYSBkaXNhYmxlZCB0YWIgb3IgZXhjZWVkcyB0aGUgbGVuZ3RoIG9mXG4gICAqIHRoZSB0YWIgZ3JvdXAsIHRoZSBmaXJzdCBlbmFibGVkIHRhYiB3aWxsIGJlIHNlbGVjdGVkLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2luaXRpYWwtc2VsZWN0ZWQtaW5kZXgnLCB0eXBlOiBOdW1iZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIGluaXRpYWxTZWxlY3RlZEluZGV4OiBudW1iZXIgPSAwO1xuXG4gIC8qKlxuICAgKiBJZiBzZXQgdG8gdHJ1ZSwgdGhlIGBzYmItdGFiYCBlbGVtZW50cyB0YWtlIDEwMCUgaGVpZ2h0IG9mIHRoZSBgc2JiLXRhYi1ncm91cGAuXG4gICAqIEl0IGVuYWJsZXMgY29udHJvbGxpbmcgdGhlIGhlaWdodCBvbiB0aGUgYHNiYi10YWItZ3JvdXBgIGVsZW1lbnQuXG4gICAqIFRoZSBjb250ZW50IGJlY29tZXMgc2Nyb2xsYWJsZSBvbiBvdmVyZmxvdy5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdmaXhlZC1oZWlnaHQnLCB0eXBlOiBCb29sZWFuLCByZWZsZWN0OiB0cnVlIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBmaXhlZEhlaWdodDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBHZXRzIHRoZSBzbG90dGVkIGBzYmItdGFiLWxhYmVsYHMuICovXG4gIHB1YmxpYyBnZXQgbGFiZWxzKCk6IFNiYlRhYkxhYmVsRWxlbWVudFtdIHtcbiAgICAvKipcbiAgICAgKiBUaGUgcXVlcnlTZWxlY3RvciBBUEkgaXMgbm90IHVzZWQgYmVjYXVzZSB3aGVuIG5lc3RlZCB0YWJzIGFyZSB1c2VkLFxuICAgICAqIHRoZSByZXR1cm5lZCBhcnJheSBjb250YWlucyB0aGUgaW5uZXIgdGFicyB0b28sIGFuZCB0aGlzIGJyZWFrcyB0aGUga2V5Ym9hcmQgbmF2aWdhdGlvbi5cbiAgICAgKi9cbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmNoaWxkcmVuID8/IFtdKS5maWx0ZXIoKGNoaWxkKSA9PlxuICAgICAgL15zYmItdGFiLWxhYmVsJC91LnRlc3QoY2hpbGQubG9jYWxOYW1lKSxcbiAgICApIGFzIFNiYlRhYkxhYmVsRWxlbWVudFtdO1xuICB9XG5cbiAgLyoqIEdldHMgdGhlIHNsb3R0ZWQgYHNiYi10YWJgcy4gKi9cbiAgcHVibGljIGdldCB0YWJzKCk6IFNiYlRhYkVsZW1lbnRbXSB7XG4gICAgLyoqXG4gICAgICogVGhlIHF1ZXJ5U2VsZWN0b3IgQVBJIGlzIG5vdCB1c2VkIGJlY2F1c2Ugd2hlbiBuZXN0ZWQgdGFicyBhcmUgdXNlZCxcbiAgICAgKiB0aGUgcmV0dXJuZWQgYXJyYXkgY29udGFpbnMgdGhlIGlubmVyIHRhYnMgdG9vLCBhbmQgdGhpcyBicmVha3MgdGhlIGtleWJvYXJkIG5hdmlnYXRpb24uXG4gICAgICovXG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5jaGlsZHJlbiA/PyBbXSkuZmlsdGVyKChjaGlsZCkgPT5cbiAgICAgIC9ec2JiLXRhYiQvdS50ZXN0KGNoaWxkLmxvY2FsTmFtZSksXG4gICAgKSBhcyBTYmJUYWJFbGVtZW50W107XG4gIH1cblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/Ligna2V5ZG93bicsIChlKSA9PiB0aGlzLl9oYW5kbGVLZXlEb3duKGUpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIHRoaXMubGFiZWxzLmZvckVhY2goKHRhYkxhYmVsKSA9PiB0YWJMYWJlbFsnbGlua1RvVGFiJ10oKSk7XG4gICAgdGhpcy5faW5pdFNlbGVjdGlvbigpO1xuXG4gICAgLy8gVG8gYXZvaWQgYW5pbWF0aW9ucyBvbiBpbml0aWFsaXphdGlvbiwgd2UgaGF2ZSB0byBtYXJrIHRoZSBjb21wb25lbnQgYXMgaW5pdGlhbGl6ZWQgYW5kIHdhaXQgYSB0aWNrLlxuICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4gdGhpcy5pbnRlcm5hbHMuc3RhdGVzLmFkZCgnaW5pdGlhbGl6ZWQnKSk7XG4gICAgdGhpcy5fdGFiR3JvdXBSZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMuX3RhYkdyb3VwRWxlbWVudCk7XG4gIH1cblxuICAvKipcbiAgICogRGlzYWJsZXMgYSB0YWIgYnkgaW5kZXguXG4gICAqIEBwYXJhbSBpbmRleCBUaGUgaW5kZXggb2YgdGhlIHRhYiB5b3Ugd2FudCB0byBkaXNhYmxlLlxuICAgKi9cbiAgcHVibGljIGRpc2FibGVUYWIoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIGlmICh0aGlzLmxhYmVsc1tpbmRleF0pIHtcbiAgICAgIHRoaXMubGFiZWxzW2luZGV4XS5kaXNhYmxlZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEVuYWJsZXMgYSB0YWIgYnkgaW5kZXguXG4gICAqIEBwYXJhbSBpbmRleCBUaGUgaW5kZXggb2YgdGhlIHRhYiB5b3Ugd2FudCB0byBlbmFibGUuXG4gICAqL1xuICBwdWJsaWMgZW5hYmxlVGFiKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5sYWJlbHNbaW5kZXhdKSB7XG4gICAgICB0aGlzLmxhYmVsc1tpbmRleF0uZGlzYWJsZWQgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWN0aXZhdGVzIGEgdGFiIGJ5IGluZGV4LlxuICAgKiBAcGFyYW0gaW5kZXggVGhlIGluZGV4IG9mIHRoZSB0YWIgeW91IHdhbnQgdG8gYWN0aXZhdGUuXG4gICAqL1xuICBwdWJsaWMgYWN0aXZhdGVUYWIoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMubGFiZWxzW2luZGV4XT8uYWN0aXZhdGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2VuYWJsZWRUYWJzKCk6IFNiYlRhYkxhYmVsRWxlbWVudFtdIHtcbiAgICByZXR1cm4gdGhpcy5sYWJlbHMuZmlsdGVyKCh0KSA9PiB7XG4gICAgICBjdXN0b21FbGVtZW50cy51cGdyYWRlKHQpO1xuICAgICAgcmV0dXJuICF0LmRpc2FibGVkO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfb25Db250ZW50U2xvdENoYW5nZSA9ICgpOiB2b2lkID0+IHtcbiAgICB0aGlzLmxhYmVscy5mb3JFYWNoKCh0YWJMYWJlbCkgPT4gdGFiTGFiZWxbJ2xpbmtUb1RhYiddKCkpO1xuICAgIHRoaXMubGFiZWxzLmZpbmQoKHRhYkxhYmVsKSA9PiB0YWJMYWJlbC5hY3RpdmUpPy5hY3RpdmF0ZSgpO1xuICB9O1xuXG4gIHByaXZhdGUgX29uTGFiZWxTbG90Q2hhbmdlID0gKCk6IHZvaWQgPT4ge1xuICAgIHRoaXMubGFiZWxzLmZvckVhY2goKHRhYkxhYmVsKSA9PiB0YWJMYWJlbFsnbGlua1RvVGFiJ10oKSk7XG4gIH07XG5cbiAgcHJpdmF0ZSBfaW5pdFNlbGVjdGlvbigpOiB2b2lkIHtcbiAgICBjb25zdCBzZWxlY3RlZFRhYkxhYmVsID0gdGhpcy5sYWJlbHNbdGhpcy5pbml0aWFsU2VsZWN0ZWRJbmRleF07XG4gICAgaWYgKHNlbGVjdGVkVGFiTGFiZWwpIHtcbiAgICAgIGN1c3RvbUVsZW1lbnRzLnVwZ3JhZGUoc2VsZWN0ZWRUYWJMYWJlbCk7XG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMuaW5pdGlhbFNlbGVjdGVkSW5kZXggPj0gMCAmJlxuICAgICAgICB0aGlzLmluaXRpYWxTZWxlY3RlZEluZGV4IDwgdGhpcy5sYWJlbHMubGVuZ3RoICYmXG4gICAgICAgICFzZWxlY3RlZFRhYkxhYmVsLmRpc2FibGVkXG4gICAgICApIHtcbiAgICAgICAgc2VsZWN0ZWRUYWJMYWJlbC5hY3RpdmF0ZSgpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuX2VuYWJsZWRUYWJzKClbMF0/LmFjdGl2YXRlKCk7XG4gIH1cblxuICBwcml2YXRlIF9vblRhYkdyb3VwRWxlbWVudFJlc2l6ZSgpOiB2b2lkIHtcbiAgICBjb25zdCB0YWJMYWJlbHMgPSB0aGlzLmxhYmVscztcbiAgICB0YWJMYWJlbHMuZm9yRWFjaCgodGFiTGFiZWwpID0+IHtcbiAgICAgIMm1c3RhdGVDb250cm9sbGVyKHRhYkxhYmVsKT8udG9nZ2xlKFxuICAgICAgICAnaGFzLWRpdmlkZXInLFxuICAgICAgICB0YWJMYWJlbCA9PT0gdGFiTGFiZWxzWzBdIHx8IHRhYkxhYmVsLm9mZnNldExlZnQgPT09IHRhYkxhYmVsc1swXS5vZmZzZXRMZWZ0LFxuICAgICAgKTtcbiAgICB9KTtcblxuICAgIHRoaXMuc3R5bGUuc2V0UHJvcGVydHkoJy0tc2JiLXRhYi1ncm91cC13aWR0aCcsIGAke3RoaXMuX3RhYkdyb3VwRWxlbWVudC5jbGllbnRXaWR0aH1weGApO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlS2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBlbmFibGVkVGFiczogU2JiVGFiTGFiZWxFbGVtZW50W10gPSB0aGlzLl9lbmFibGVkVGFicygpO1xuXG4gICAgaWYgKFxuICAgICAgIWVuYWJsZWRUYWJzIHx8XG4gICAgICAvLyBkb24ndCB0cmFwIG5lc3RlZCBoYW5kbGluZ1xuICAgICAgKChldnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KSAhPT0gdGhpcyAmJiAoZXZ0LnRhcmdldCBhcyBIVE1MRWxlbWVudCkucGFyZW50RWxlbWVudCAhPT0gdGhpcylcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoaXNBcnJvd0tleVByZXNzZWQoZXZ0KSkge1xuICAgICAgY29uc3QgY3VycmVudDogbnVtYmVyID0gZW5hYmxlZFRhYnMuZmluZEluZGV4KCh0KSA9PiB0LmFjdGl2ZSk7XG4gICAgICBjb25zdCBuZXh0SW5kZXg6IG51bWJlciA9IGdldE5leHRFbGVtZW50SW5kZXgoZXZ0LCBjdXJyZW50LCBlbmFibGVkVGFicy5sZW5ndGgpO1xuICAgICAgZW5hYmxlZFRhYnNbbmV4dEluZGV4XT8uYWN0aXZhdGUoKTtcbiAgICAgIGVuYWJsZWRUYWJzW25leHRJbmRleF0/LmZvY3VzKCk7XG4gICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwcm90ZWN0ZWQgc2V0VGFiQ29udGVudEhlaWdodChjb250ZW50SGVpZ2h0OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLnN0eWxlLnNldFByb3BlcnR5KCctLXNiYi10YWItY29udGVudC1oZWlnaHQnLCBgJHtjb250ZW50SGVpZ2h0fXB4YCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJzYmItdGFiLWdyb3VwXCJcbiAgICAgICAgcm9sZT1cInRhYmxpc3RcIlxuICAgICAgICAke3JlZigoZWw/OiBFbGVtZW50KSA9PiAodGhpcy5fdGFiR3JvdXBFbGVtZW50ID0gZWwgYXMgSFRNTEVsZW1lbnQpKX1cbiAgICAgID5cbiAgICAgICAgPHNsb3QgbmFtZT1cInRhYi1iYXJcIiBAc2xvdGNoYW5nZT0ke3RoaXMuX29uTGFiZWxTbG90Q2hhbmdlfT48L3Nsb3Q+XG4gICAgICA8L2Rpdj5cbiAgICAgICR7IXRoaXMuZml4ZWRIZWlnaHRcbiAgICAgICAgPyBodG1sYFxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi10YWItZ3JvdXAtY29udGVudFwiPlxuICAgICAgICAgICAgICA8c2xvdCBAc2xvdGNoYW5nZT0ke3Rocm90dGxlKHRoaXMuX29uQ29udGVudFNsb3RDaGFuZ2UsIDE1MCl9Pjwvc2xvdD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIGBcbiAgICAgICAgOiBodG1sYDxzbG90IEBzbG90Y2hhbmdlPSR7dGhyb3R0bGUodGhpcy5fb25Db250ZW50U2xvdENoYW5nZSwgMTUwKX0+PC9zbG90PmB9XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRhYi1ncm91cCc6IFNiYlRhYkdyb3VwRWxlbWVudDtc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
@@ -0,0 +1,11 @@
1
+ import { css as o } from "lit";
2
+ const b = o`:host{display:inline-block;outline:none!important;--sbb-button-transition-duration: var( --sbb-disable-animation-duration, var(--sbb-animation-duration-2x) );--sbb-button-box-shadow-definition: var(--sbb-shadow-elevation-level-3-shadow-2-offset-x) var(--sbb-button-shadow-2-offset-y) var(--sbb-button-shadow-2-blur) var(--sbb-shadow-elevation-level-3-shadow-2-spread) var(--sbb-button-shadow-2-color), var(--sbb-shadow-elevation-level-3-shadow-1-offset-x) var(--sbb-button-shadow-1-offset-y) var(--sbb-button-shadow-1-blur) var(--sbb-shadow-elevation-level-3-shadow-1-spread) var(--sbb-button-shadow-1-color);--_width: unset;--_min-height-modifier: 0rem;--_border-color: var(--sbb-button-color-default-border);--_background-color: var(--sbb-button-color-default-background);--_color: var(--sbb-button-color-default-text);--_button-inset: 0;--_border: calc(var(--sbb-button-border-width) + var(--sbb-button-border-overlap-fix, 1px)) solid var(--_border-color)}@media(forced-colors:active){:host{--sbb-button-color-default-border: CanvasText !important;--sbb-button-color-active-border: Highlight !important;--sbb-button-color-default-background: Canvas !important;--sbb-button-color-hover-background: Canvas !important;--sbb-button-color-active-background: Canvas !important;--sbb-button-color-disabled-background: Canvas !important;--sbb-button-color-disabled-text: GrayText !important;--sbb-button-color-loading-border: Highlight !important;--sbb-button-color-default-text: CanvasText !important;--sbb-button-color-hover-text: CanvasText !important;--sbb-button-color-active-text: CanvasText !important;--sbb-button-border-overlap-fix: 0rem}}@media(forced-colors:active){:host(:is(:state(button),[state--button])){--sbb-button-color-default-text: ButtonText !important;--sbb-button-color-hover-text: ButtonText !important;--sbb-button-color-active-text: ButtonText !important}}@media(forced-colors:active){:host(:is(:state(link),[state--link])){--sbb-button-color-default-text: LinkText !important;--sbb-button-color-hover-text: LinkText !important;--sbb-button-color-active-text: LinkText !important}}:host([negative]){--sbb-button-color-disabled-background: var(--sbb-background-color-3-negative);--sbb-button-color-disabled-text: var(--sbb-color-aluminium)}:host([size=l]){--sbb-button-min-height: var(--sbb-button-min-height-size-l);--sbb-button-padding-inline: var(--sbb-button-padding-inline-size-l)}:host([size=m]){--sbb-button-min-height: var(--sbb-button-min-height-size-m);--sbb-button-padding-inline: var(--sbb-button-padding-inline-size-m)}:host([size=s]){--sbb-button-min-height: var(--sbb-button-min-height-size-s);--sbb-button-padding-inline: var(--sbb-button-padding-inline-size-s);--sbb-button-gap: var(--sbb-spacing-fixed-1x)}:host(:where(:is(:state(slotted-icon),[state--slotted-icon]),:is(:state(has-icon-name),[state--has-icon-name])):not(:is(:state(slotted),[state--slotted]))){--sbb-button-padding-inline: 0;--_width: calc(var(--sbb-button-min-height) + var(--_min-height-modifier))}@media(any-hover:hover){:host(:not([disabled],:disabled,[disabled-interactive],:active,:is(:state(active),[state--active]),[loading]):is(:hover,:is(:state(force-hover),[state--force-hover]))){--sbb-button-translate-y-content-hover: -.0625rem;--sbb-button-shadow-1-offset-y: calc( .5 * var(--sbb-shadow-elevation-level-3-shadow-1-offset-y) );--sbb-button-shadow-1-blur: calc(.5 * var(--sbb-shadow-elevation-level-3-shadow-1-blur));--sbb-button-shadow-2-blur: calc(.5 * var(--sbb-shadow-elevation-level-3-shadow-2-blur));--sbb-button-cursor: var(--sbb-cursor-pointer);--_border-color: var(--sbb-button-color-hover-border);--_color: var(--sbb-button-color-hover-text);--_background-color: var(--sbb-button-color-hover-background);--_button-inset: calc(var(--sbb-button-border-width) * -1)}}@media(forced-colors:active){:host(:not([disabled],:disabled,[disabled-interactive],:active,:is(:state(active),[state--active]),[loading]):is(:hover,:is(:state(force-hover),[state--force-hover]))){--sbb-button-color-hover-border: Highlight !important}}:host(:is([disabled],:disabled,[disabled-interactive])){--sbb-button-cursor: var(--sbb-cursor-default);--_color: var(--sbb-button-color-disabled-text);--_background-color: var(--sbb-button-color-disabled-background);--_border-color: var(--sbb-button-color-disabled-border);--_border: var(--sbb-button-border-disabled-width) var(--sbb-button-border-disabled-style) var(--_border-color)}:host(:not([disabled],:disabled,[disabled-interactive]):is(:active,:is(:state(active),[state--active]),[loading])){--_color: var(--sbb-button-color-active-text);--_background-color: var(--sbb-button-color-active-background);--_border-color: var(--sbb-button-color-active-border)}:host([loading]:not([disabled],:disabled,[disabled-interactive])){--_min-height-modifier: calc(-2 * var(--sbb-button-loading-border-width));--sbb-button-focus-outline-offset-override: calc( var(--sbb-focus-outline-offset) + var(--sbb-button-loading-border-width) );--_border: none;--_transform-style: preserve-3d}.sbb-action-base{display:flex;gap:var(--sbb-button-gap);align-items:center;justify-content:center;font-size:var(--sbb-text-font-size-xs);font-weight:700;letter-spacing:var(--sbb-typo-letter-spacing-text);text-align:left;white-space:nowrap;text-decoration:none;min-height:calc(var(--sbb-button-min-height) + var(--_min-height-modifier));outline:none;width:var(--_width);border-radius:var(--sbb-button-border-radius);color:var(--_color);cursor:var(--sbb-button-cursor);-webkit-user-select:none;user-select:none;background-color:var(--_background-color);transition-duration:var(--sbb-button-transition-duration);transition-timing-function:var(--sbb-button-transition-easing-function);transition-property:color,background-color;transform-style:var(--_transform-style, flat);padding-block:var(--sbb-button-padding-block-min);padding-inline:var(--sbb-button-padding-inline);position:relative}.sbb-action-base:before{content:"";position:absolute;inset:var(--_button-inset);border:var(--_border);border-radius:var(--sbb-button-border-radius);pointer-events:none;box-shadow:var(--sbb-button-box-shadow);transition-duration:var(--sbb-button-transition-duration);transition-timing-function:var(--sbb-button-transition-easing-function);transition-property:inset,border,box-shadow}:host([loading]:not([disabled],:disabled,[disabled-interactive])) .sbb-action-base{margin:var(--sbb-button-loading-border-width);padding-inline:calc(var(--sbb-button-padding-inline) - var(--sbb-button-loading-border-width));transition-property:none}:host(:is(:state(focus-visible),[state--focus-visible])) .sbb-action-base:before,:host(:focus-visible) .sbb-action-base:before,.sbb-action-base:focus-visible:before{outline-offset:var(--sbb-focus-outline-offset);outline:var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width);outline-offset:var(--sbb-button-focus-outline-offset-override, var(--sbb-focus-outline-offset))}.sbb-button__label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host(:where(:is(:state(slotted-icon),[state--slotted-icon]),:is(:state(has-icon-name),[state--has-icon-name])):not(:is(:state(slotted),[state--slotted]))) .sbb-button__label{display:none}.sbb-button__label,::slotted([slot=icon]),sbb-icon{transition:translate var(--sbb-button-transition-duration) var(--sbb-button-transition-easing-function);translate:0 var(--sbb-button-translate-y-content-hover, 0)}.sbb-button-loading-border{position:absolute;inset:calc(-1 * var(--sbb-button-loading-border-width));clip-path:border-box;border-radius:var(--sbb-button-border-radius);background:var(--_background-color);transform:translateZ(-1px);z-index:-1;container-type:inline-size;contain:paint;animation:background-fade-in var(--sbb-disable-animation-duration, var(--sbb-animation-duration-6x)) var(--sbb-disable-animation-duration, var(--sbb-button-loading-delay)) linear;animation-fill-mode:forwards}.sbb-button-loading-border:before{content:"";display:block;width:64cqmin;max-height:var(--sbb-button-min-height);aspect-ratio:2/1;position:absolute;background:radial-gradient(100% 100% at right,var(--sbb-button-color-active-text),transparent 50%);offset-path:border-box;offset-anchor:100% 50%;opacity:0;animation:snake-fade-in var(--sbb-disable-animation-duration, calc(var(--sbb-animation-duration-12x) * 2)) var(--sbb-disable-animation-duration, calc(var(--sbb-button-loading-delay) + var(--sbb-animation-duration-5x))) var(--sbb-animation-easing),snake-position var(--sbb-disable-animation-duration, calc(max(tan(atan2(var(--sbb-button-width), 1px)) / 136, .5)*3s) ) infinite linear;animation-fill-mode:forwards;transform-style:preserve-3d}@keyframes snake-position{to{offset-distance:100%}}@keyframes snake-fade-in{to{opacity:1}}@keyframes background-fade-in{to{background:var(--sbb-button-color-loading-border)}}`, r = o`:host{--sbb-button-color-active-background: var(--sbb-color-primary150);--sbb-button-color-active-border: var(--sbb-color-primary150);--sbb-button-color-active-text: var(--sbb-color-4-negative);--sbb-button-color-default-background: var(--sbb-color-primary);--sbb-button-color-default-border: var(--sbb-color-primary);--sbb-button-color-default-text: var(--sbb-color-1-negative);--sbb-button-color-hover-background: var(--sbb-color-primary125);--sbb-button-color-hover-border: var(--sbb-color-primary125);--sbb-button-color-hover-text: var(--sbb-color-3-negative);--sbb-button-color-loading-border: color-mix( in srgb, var(--sbb-button-color-active-background) 50%, var(--sbb-button-color-default-text) );--sbb-button-color-loading-border: light-dark( color-mix( in srgb, var(--sbb-button-color-active-background) 50%, var(--sbb-button-color-default-text) ), color-mix( in srgb, var(--sbb-button-color-active-background) 70%, var(--sbb-button-color-default-text) ) );--sbb-button-shadow-1-color: color-mix(in srgb, var(--sbb-color-primary) 20%, transparent);--sbb-button-shadow-1-color: light-dark( color-mix(in srgb, var(--sbb-color-primary) 20%, transparent), color-mix(in srgb, var(--sbb-color-primary) 40%, transparent) );--sbb-button-shadow-2-color: color-mix(in srgb, var(--sbb-color-primary125) 20%, transparent);--sbb-button-shadow-2-color: light-dark( color-mix(in srgb, var(--sbb-color-primary125) 20%, transparent), color-mix(in srgb, var(--sbb-color-primary125) 40%, transparent) )}:host([negative]){--sbb-button-color-active-background: var(--sbb-color-primary150);--sbb-button-color-active-border: var(--sbb-color-primary150);--sbb-button-color-active-text: var(--sbb-color-4-negative);--sbb-button-color-default-background: var(--sbb-color-primary);--sbb-button-color-default-border: var(--sbb-color-primary);--sbb-button-color-default-text: var(--sbb-color-1-negative);--sbb-button-color-hover-background: var(--sbb-color-primary125);--sbb-button-color-hover-border: var(--sbb-color-primary125);--sbb-button-color-hover-text: var(--sbb-color-3-negative);--sbb-button-color-loading-border: color-mix( in srgb, var(--sbb-button-color-active-background) 70%, var(--sbb-button-color-default-text) );--sbb-button-shadow-1-color: color-mix(in srgb, var(--sbb-color-primary) 60%, transparent);--sbb-button-shadow-1-color: light-dark( color-mix(in srgb, var(--sbb-color-primary) 60%, transparent), color-mix(in srgb, var(--sbb-color-primary) 40%, transparent) );--sbb-button-shadow-2-color: color-mix(in srgb, var(--sbb-color-primary125) 60%, transparent);--sbb-button-shadow-2-color: light-dark( color-mix(in srgb, var(--sbb-color-primary125) 60%, transparent), color-mix(in srgb, var(--sbb-color-primary125) 40%, transparent) )}:host(:not([disabled],:disabled,[disabled-interactive],:active,:is(:state(active),[state--active]),[loading])){--sbb-button-box-shadow: var(--sbb-button-box-shadow-definition)}`, a = o`:host{--sbb-button-color-active-background: var(--sbb-background-color-3);--sbb-button-color-active-border: var(--sbb-border-color-4-inverted);--sbb-button-color-active-text: var(--sbb-color-anthracite);--sbb-button-color-active-text: light-dark( var(--sbb-color-anthracite), var(--sbb-color-graphite) );--sbb-button-color-default-background: var(--sbb-background-color-1);--sbb-button-color-default-border: var(--sbb-border-color-4-inverted);--sbb-button-color-default-text: var(--sbb-color-3);--sbb-button-color-hover-background: var(--sbb-background-color-1);--sbb-button-color-hover-border: var(--sbb-border-color-4-inverted);--sbb-button-color-hover-text: var(--sbb-color-4);--sbb-button-color-loading-border: var(--sbb-border-color-4-inverted);--sbb-button-shadow-1-color: color-mix(in srgb, var(--sbb-color-platinum) 20%, transparent);--sbb-button-shadow-1-color: light-dark( color-mix(in srgb, var(--sbb-color-platinum) 20%, transparent), color-mix(in srgb, var(--sbb-color-black) 30%, transparent) );--sbb-button-shadow-2-color: color-mix(in srgb, var(--sbb-color-cement) 20%, transparent);--sbb-button-shadow-2-color: light-dark( color-mix(in srgb, var(--sbb-color-cement) 20%, transparent), color-mix(in srgb, var(--sbb-color-black) 30%, transparent) );--sbb-button-border-overlap-fix: 0rem}:host([negative]){--sbb-button-color-active-background: var(--sbb-background-color-2-negative);--sbb-button-color-active-border: var(--sbb-border-color-4-negative-inverted);--sbb-button-color-active-text: var(--sbb-color-graphite);--sbb-button-color-default-background: var(--sbb-background-color-1-negative);--sbb-button-color-default-border: var(--sbb-border-color-4-negative-inverted);--sbb-button-color-default-text: var(--sbb-color-3-negative);--sbb-button-color-hover-background: var(--sbb-background-color-1-negative);--sbb-button-color-hover-border: var(--sbb-border-color-4-negative-inverted);--sbb-button-color-hover-text: var(--sbb-color-4-negative);--sbb-button-color-loading-border: var(--sbb-border-color-4-negative-inverted);--sbb-button-shadow-1-color: color-mix(in srgb, var(--sbb-color-black) 30%, transparent);--sbb-button-shadow-2-color: color-mix(in srgb, var(--sbb-color-black) 30%, transparent)}:host(:not([disabled],:disabled,[disabled-interactive],:active,:is(:state(active),[state--active]))){--sbb-button-box-shadow: var(--sbb-button-box-shadow-definition)}`, n = o`:host{--sbb-button-color-active-background: var(--sbb-background-color-1-inverted);--sbb-button-color-active-border: var(--sbb-border-color-1);--sbb-button-color-active-text: var(--sbb-color-cloud);--sbb-button-color-active-text: light-dark(var(--sbb-color-cloud), var(--sbb-color-anthracite));--sbb-button-color-default-background: var(--sbb-background-color-3-inverted);--sbb-button-color-default-border: var(--sbb-border-color-3);--sbb-button-color-default-text: var(--sbb-color-1-inverted);--sbb-button-color-hover-background: var(--sbb-background-color-3-inverted);--sbb-button-color-hover-border: var(--sbb-border-color-3);--sbb-button-color-hover-text: var(--sbb-color-3-inverted);--sbb-button-color-loading-border: var(--sbb-color-iron);--sbb-button-color-loading-border: light-dark(var(--sbb-color-iron), var(--sbb-color-silver));--sbb-button-shadow-1-color: color-mix(in srgb, var(--sbb-color-platinum) 20%, transparent);--sbb-button-shadow-1-color: light-dark( color-mix(in srgb, var(--sbb-color-platinum) 20%, transparent), color-mix(in srgb, var(--sbb-color-black) 30%, transparent) );--sbb-button-shadow-2-color: color-mix(in srgb, var(--sbb-color-cement) 20%, transparent);--sbb-button-shadow-2-color: light-dark( color-mix(in srgb, var(--sbb-color-cement) 20%, transparent), color-mix(in srgb, var(--sbb-color-black) 30%, transparent) )}:host([negative]){--sbb-button-color-active-background: var(--sbb-background-color-1-negative-inverted);--sbb-button-color-active-border: var(--sbb-border-color-1-negative);--sbb-button-color-active-text: var(--sbb-color-anthracite);--sbb-button-color-default-background: var(--sbb-background-color-3-negative-inverted);--sbb-button-color-default-border: var(--sbb-border-color-3-negative);--sbb-button-color-default-text: var(--sbb-color-1-negative-inverted);--sbb-button-color-hover-background: var(--sbb-background-color-3-negative-inverted);--sbb-button-color-hover-border: var(--sbb-border-color-3-negative);--sbb-button-color-hover-text: var(--sbb-color-4-negative-inverted);--sbb-button-color-loading-border: var(--sbb-color-silver);--sbb-button-shadow-1-color: color-mix(in srgb, var(--sbb-color-black) 30%, transparent);--sbb-button-shadow-2-color: color-mix(in srgb, var(--sbb-color-black) 30%, transparent)}:host(:not([disabled],:disabled,[disabled-interactive],:active,:is(:state(active),[state--active]),[loading])){--sbb-button-box-shadow: var(--sbb-button-box-shadow-definition)}`, e = o`:host{--sbb-button-color-active-background: var(--sbb-background-color-4);--sbb-button-color-active-border: var(--sbb-border-color-4-inverted);--sbb-button-color-active-text: var(--sbb-color-1);--sbb-button-color-default-background: transparent;--sbb-button-color-default-border: transparent;--sbb-button-color-default-text: var(--sbb-color-1);--sbb-button-color-hover-background: var(--sbb-background-color-3);--sbb-button-color-hover-border: var(--sbb-border-color-3-inverted);--sbb-button-color-hover-text: var(--sbb-color-1);--sbb-button-color-loading-border: var(--sbb-color-silver);--sbb-button-color-loading-border: light-dark(var(--sbb-color-silver), var(--sbb-color-granite))}:host([negative]){--sbb-button-color-active-background: var(--sbb-background-color-4-negative);--sbb-button-color-active-border: var(--sbb-border-color-4-negative-inverted);--sbb-button-color-active-text: var(--sbb-color-1-negative);--sbb-button-color-default-background: transparent;--sbb-button-color-default-border: transparent;--sbb-button-color-default-text: var(--sbb-color-1-negative);--sbb-button-color-hover-background: var(--sbb-background-color-3-negative);--sbb-button-color-hover-border: var(--sbb-border-color-3-negative-inverted);--sbb-button-color-hover-text: var(--sbb-color-1-negative);--sbb-button-color-loading-border: var(--sbb-color-granite)}`, s = o`:host{display:inline-block;-webkit-tap-highlight-color:transparent;height:fit-content;outline:none!important;--sbb-mini-button-transition-duration: var( --sbb-disable-animation-duration, var(--sbb-animation-duration-2x) );--sbb-mini-button-color-background: var(--sbb-mini-button-color-default-background);--sbb-mini-button-color: var(--sbb-mini-button-color-text)}@media(forced-colors:active){:host{--sbb-mini-button-color-text: ButtonText !important;--sbb-mini-button-color-hover-background: Highlight !important;--sbb-mini-button-color-active-background: Highlight !important;--sbb-mini-button-color-disabled-background: Canvas !important;--sbb-mini-button-color-disabled-border: GrayText !important;--sbb-mini-button-color-disabled-text: GrayText !important}}:host([negative]){--sbb-mini-button-color-text: var(--sbb-color-3-negative);--sbb-mini-button-color-default-background: transparent;--sbb-mini-button-color-hover-background: var(--sbb-background-color-3-negative);--sbb-mini-button-color-active-background: var(--sbb-background-color-4-negative);--sbb-mini-button-color-disabled-background: var(--sbb-background-color-3-negative);--sbb-mini-button-color-disabled-border: var(--sbb-border-color-5);--sbb-mini-button-color-disabled-text: var(--sbb-color-5)}@media(any-hover:hover){:host(:is(:hover,:is(:state(force-hover),[state--force-hover])):not([disabled],:disabled,[disabled-interactive],:is(:state(disabled),[state--disabled]),:active,:is(:state(active),[state--active]))){--sbb-mini-button-translate-y-content-hover: -.0625rem;--sbb-mini-button-color-background: var(--sbb-mini-button-color-hover-background)}}:host(:is(:active,:is(:state(active),[state--active])):not([disabled],:disabled,[disabled-interactive],:is(:state(disabled),[state--disabled]))){--sbb-mini-button-color-background: var(--sbb-mini-button-color-active-background)}:host(:is([disabled],:disabled,[disabled-interactive],:is(:state(disabled),[state--disabled]))){--sbb-mini-button-color-background: var(--sbb-mini-button-color-disabled-background);--sbb-mini-button-border: var(--sbb-border-width-1x) dashed var(--sbb-mini-button-color-disabled-border);--sbb-mini-button-color: var(--sbb-mini-button-color-disabled-text);--sbb-mini-button-pointer-events: none;--sbb-mini-button-cursor: var(--sbb-cursor-default)}:host(:is(:state(focus-visible),[state--focus-visible])){--sbb-focus-outline-style: initial}.sbb-action-base{display:flex;position:relative;color:var(--sbb-mini-button-color);border-radius:var(--sbb-mini-button-border-radius);-webkit-user-select:none;user-select:none;pointer-events:var(--sbb-mini-button-pointer-events, auto);cursor:var(--sbb-mini-button-cursor, var(--sbb-cursor-pointer));transition:color var(--sbb-mini-button-transition-duration) var(--sbb-mini-button-transition-easing-function);text-decoration:none;outline:none}.sbb-action-base:before{position:absolute;content:"";inset:0;border-radius:var(--sbb-mini-button-border-radius);background-color:var(--sbb-mini-button-color-background);transition-duration:var(--sbb-mini-button-transition-duration);transition-timing-function:var(--sbb-mini-button-transition-easing-function);transition-property:inset,background-color;border:var(--sbb-mini-button-border)}.sbb-action-base:focus-visible:before,:host(:is(:is(:state(focus-visible),[state--focus-visible]),:focus-visible)) .sbb-action-base:before{outline-offset:var(--sbb-focus-outline-offset);outline:var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width)}::slotted(sbb-icon),sbb-icon{display:flex;transition:translate var(--sbb-mini-button-transition-duration) var(--sbb-mini-button-transition-easing-function);translate:0 var(--sbb-mini-button-translate-y-content-hover, 0rem);min-width:var(--_sbb-mini-button-image-size, var(--sbb-size-icon-ui-small));min-height:var(--_sbb-mini-button-image-size, var(--sbb-size-icon-ui-small));align-items:center;justify-content:center}`, i = o`:host{--sbb-mini-button-gap: .125rem;--sbb-mini-button-padding-inline: var(--sbb-spacing-fixed-2x);--sbb-mini-button-label-display: block;--sbb-mini-button-label-height: var(--sbb-size-icon-ui-small)}:host(:where(:is(:state(slotted-icon),[state--slotted-icon]),:is(:state(has-icon-name),[state--has-icon-name])):not(:is(:state(slotted),[state--slotted]))){--sbb-mini-button-padding-inline: 0;--sbb-mini-button-label-display: none;--sbb-mini-button-label-height: unset}.sbb-action-base{height:var(--sbb-mini-button-label-height);gap:var(--sbb-mini-button-gap);align-items:center;justify-content:center;padding-inline:var(--sbb-mini-button-padding-inline)}.sbb-mini-button__label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:var(--sbb-text-font-size-xxs);letter-spacing:var(--sbb-typo-letter-spacing-text);display:var(--sbb-mini-button-label-display);transition:translate var(--sbb-mini-button-transition-duration) var(--sbb-mini-button-transition-easing-function);translate:0 var(--sbb-mini-button-translate-y-content-hover, 0)}`;
3
+ export {
4
+ n as a,
5
+ b,
6
+ s as c,
7
+ i as m,
8
+ r as p,
9
+ a as s,
10
+ e as t
11
+ };
@@ -1367,6 +1367,57 @@ summary {
1367
1367
  var(--sbb-color-silver),
1368
1368
  var(--sbb-color-anthracite)
1369
1369
  );
1370
+ --sbb-button-box-shadow: transparent 0 0;
1371
+ --sbb-button-border-radius: var(--sbb-border-radius-infinity);
1372
+ --sbb-button-border-width: var(--sbb-border-width-2x);
1373
+ --sbb-button-border-disabled-style: dashed;
1374
+ --sbb-button-border-disabled-width: var(--sbb-border-width-1x);
1375
+ --sbb-button-color-disabled-background: var(--sbb-background-color-3);
1376
+ --sbb-button-color-disabled-border: var(--sbb-border-color-5);
1377
+ --sbb-button-color-disabled-text: var(--sbb-color-granite);
1378
+ --sbb-button-color-disabled-text: light-dark(
1379
+ var(--sbb-color-granite),
1380
+ var(--sbb-color-aluminium)
1381
+ );
1382
+ --sbb-button-gap: var(--sbb-spacing-fixed-2x);
1383
+ --sbb-button-loading-border-width: var(--sbb-border-width-3x);
1384
+ --sbb-button-loading-delay: 300ms;
1385
+ --sbb-button-min-height-size-l: var(--sbb-size-element-m);
1386
+ --sbb-button-min-height-size-m: var(--sbb-size-element-s);
1387
+ --sbb-button-min-height-size-s: var(--sbb-size-element-xs);
1388
+ --sbb-button-min-height: var(--sbb-button-min-height-size-l);
1389
+ --sbb-button-padding-block-min: var(--sbb-spacing-fixed-1x);
1390
+ --sbb-button-padding-inline-size-l: var(--sbb-spacing-fixed-8x);
1391
+ --sbb-button-padding-inline-size-m: var(--sbb-spacing-fixed-5x);
1392
+ --sbb-button-padding-inline-size-s: var(--sbb-spacing-fixed-4x);
1393
+ --sbb-button-padding-inline: var(--sbb-button-padding-inline-size-l);
1394
+ --sbb-button-shadow-1-offset-y: var(--sbb-shadow-elevation-level-3-shadow-1-offset-y);
1395
+ --sbb-button-shadow-2-offset-y: var(--sbb-shadow-elevation-level-3-shadow-2-offset-y);
1396
+ --sbb-button-shadow-1-blur: var(--sbb-shadow-elevation-level-3-shadow-1-blur);
1397
+ --sbb-button-shadow-2-blur: var(--sbb-shadow-elevation-level-3-shadow-2-blur);
1398
+ --sbb-button-transition-easing-function: var(--sbb-animation-easing);
1399
+ --sbb-mini-button-color-text: var(--sbb-color-3);
1400
+ --sbb-mini-button-color-default-background: transparent;
1401
+ --sbb-mini-button-color-hover-background: var(--sbb-background-color-3);
1402
+ --sbb-mini-button-color-active-background: var(--sbb-background-color-4);
1403
+ --sbb-mini-button-color-disabled-background: var(--sbb-background-color-3);
1404
+ --sbb-mini-button-color-disabled-border: var(--sbb-border-color-5);
1405
+ --sbb-mini-button-color-disabled-text: var(--sbb-color-granite);
1406
+ --sbb-mini-button-color-disabled-text: light-dark(
1407
+ var(--sbb-color-granite),
1408
+ var(--sbb-color-smoke)
1409
+ );
1410
+ --sbb-mini-button-border-radius: var(--sbb-border-radius-infinity);
1411
+ --sbb-mini-button-transition-easing-function: var(--sbb-animation-easing);
1412
+ --sbb-mini-button-group-background: var(--sbb-background-color-1);
1413
+ --sbb-mini-button-group-border-color: var(--sbb-border-color-4-inverted);
1414
+ --sbb-mini-button-group-border-width: var(--sbb-border-width-2x);
1415
+ --sbb-mini-button-group-border-radius: var(--sbb-border-radius-infinity);
1416
+ --sbb-mini-button-group-gap: var(--sbb-spacing-fixed-2x);
1417
+ --sbb-mini-button-group-min-height: var(--sbb-size-element-s);
1418
+ --sbb-mini-button-group-padding-inline: var(--sbb-spacing-fixed-3x);
1419
+ --sbb-mini-button-group-divider-height: var(--sbb-size-icon-ui-small);
1420
+ --sbb-mini-button-group-divider-padding: var(--sbb-spacing-fixed-1x);
1370
1421
  --sbb-card-background-color: var(--sbb-background-color-1);
1371
1422
  --sbb-card-border-color: transparent;
1372
1423
  --sbb-card-border-radius: var(--sbb-border-radius-4x);
@@ -1659,6 +1710,9 @@ summary {
1659
1710
  --sbb-size-element-s: var(--sbb-size-element-s-large);
1660
1711
  --sbb-size-element-m: var(--sbb-size-element-m-large);
1661
1712
  --sbb-size-element-l: var(--sbb-size-element-l-large);
1713
+ --sbb-button-padding-inline-size-l: var(--sbb-spacing-fixed-10x);
1714
+ --sbb-button-padding-inline-size-m: var(--sbb-spacing-fixed-8x);
1715
+ --sbb-button-padding-inline-size-s: var(--sbb-spacing-fixed-5x);
1662
1716
  --sbb-chip-group-margin-block: var(--_sbb-chip-group-margin-block-start-default-large) 0;
1663
1717
  --sbb-chip-group-margin-block-no-label-not-empty: 0.1875rem 0.875rem;
1664
1718
  --sbb-chip-group-margin-block-with-label-not-empty: var(--_sbb-chip-group-margin-block-start-default-large) var(--_sbb-chip-group-margin-block-start-default-large);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sbb-esta/lyne-elements",
3
- "version": "4.4.0",
3
+ "version": "4.5.0",
4
4
  "description": "Lyne Design System",
5
5
  "keywords": [
6
6
  "design system",
package/safety-theme.css CHANGED
@@ -1367,6 +1367,57 @@ summary {
1367
1367
  var(--sbb-color-silver),
1368
1368
  var(--sbb-color-anthracite)
1369
1369
  );
1370
+ --sbb-button-box-shadow: transparent 0 0;
1371
+ --sbb-button-border-radius: var(--sbb-border-radius-infinity);
1372
+ --sbb-button-border-width: var(--sbb-border-width-2x);
1373
+ --sbb-button-border-disabled-style: dashed;
1374
+ --sbb-button-border-disabled-width: var(--sbb-border-width-1x);
1375
+ --sbb-button-color-disabled-background: var(--sbb-background-color-3);
1376
+ --sbb-button-color-disabled-border: var(--sbb-border-color-5);
1377
+ --sbb-button-color-disabled-text: var(--sbb-color-granite);
1378
+ --sbb-button-color-disabled-text: light-dark(
1379
+ var(--sbb-color-granite),
1380
+ var(--sbb-color-aluminium)
1381
+ );
1382
+ --sbb-button-gap: var(--sbb-spacing-fixed-2x);
1383
+ --sbb-button-loading-border-width: var(--sbb-border-width-3x);
1384
+ --sbb-button-loading-delay: 300ms;
1385
+ --sbb-button-min-height-size-l: var(--sbb-size-element-m);
1386
+ --sbb-button-min-height-size-m: var(--sbb-size-element-s);
1387
+ --sbb-button-min-height-size-s: var(--sbb-size-element-xs);
1388
+ --sbb-button-min-height: var(--sbb-button-min-height-size-l);
1389
+ --sbb-button-padding-block-min: var(--sbb-spacing-fixed-1x);
1390
+ --sbb-button-padding-inline-size-l: var(--sbb-spacing-fixed-8x);
1391
+ --sbb-button-padding-inline-size-m: var(--sbb-spacing-fixed-5x);
1392
+ --sbb-button-padding-inline-size-s: var(--sbb-spacing-fixed-4x);
1393
+ --sbb-button-padding-inline: var(--sbb-button-padding-inline-size-l);
1394
+ --sbb-button-shadow-1-offset-y: var(--sbb-shadow-elevation-level-3-shadow-1-offset-y);
1395
+ --sbb-button-shadow-2-offset-y: var(--sbb-shadow-elevation-level-3-shadow-2-offset-y);
1396
+ --sbb-button-shadow-1-blur: var(--sbb-shadow-elevation-level-3-shadow-1-blur);
1397
+ --sbb-button-shadow-2-blur: var(--sbb-shadow-elevation-level-3-shadow-2-blur);
1398
+ --sbb-button-transition-easing-function: var(--sbb-animation-easing);
1399
+ --sbb-mini-button-color-text: var(--sbb-color-3);
1400
+ --sbb-mini-button-color-default-background: transparent;
1401
+ --sbb-mini-button-color-hover-background: var(--sbb-background-color-3);
1402
+ --sbb-mini-button-color-active-background: var(--sbb-background-color-4);
1403
+ --sbb-mini-button-color-disabled-background: var(--sbb-background-color-3);
1404
+ --sbb-mini-button-color-disabled-border: var(--sbb-border-color-5);
1405
+ --sbb-mini-button-color-disabled-text: var(--sbb-color-granite);
1406
+ --sbb-mini-button-color-disabled-text: light-dark(
1407
+ var(--sbb-color-granite),
1408
+ var(--sbb-color-smoke)
1409
+ );
1410
+ --sbb-mini-button-border-radius: var(--sbb-border-radius-infinity);
1411
+ --sbb-mini-button-transition-easing-function: var(--sbb-animation-easing);
1412
+ --sbb-mini-button-group-background: var(--sbb-background-color-1);
1413
+ --sbb-mini-button-group-border-color: var(--sbb-border-color-4-inverted);
1414
+ --sbb-mini-button-group-border-width: var(--sbb-border-width-2x);
1415
+ --sbb-mini-button-group-border-radius: var(--sbb-border-radius-infinity);
1416
+ --sbb-mini-button-group-gap: var(--sbb-spacing-fixed-2x);
1417
+ --sbb-mini-button-group-min-height: var(--sbb-size-element-s);
1418
+ --sbb-mini-button-group-padding-inline: var(--sbb-spacing-fixed-3x);
1419
+ --sbb-mini-button-group-divider-height: var(--sbb-size-icon-ui-small);
1420
+ --sbb-mini-button-group-divider-padding: var(--sbb-spacing-fixed-1x);
1370
1421
  --sbb-card-background-color: var(--sbb-background-color-1);
1371
1422
  --sbb-card-border-color: transparent;
1372
1423
  --sbb-card-border-radius: var(--sbb-border-radius-4x);
@@ -1659,6 +1710,9 @@ summary {
1659
1710
  --sbb-size-element-s: var(--sbb-size-element-s-large);
1660
1711
  --sbb-size-element-m: var(--sbb-size-element-m-large);
1661
1712
  --sbb-size-element-l: var(--sbb-size-element-l-large);
1713
+ --sbb-button-padding-inline-size-l: var(--sbb-spacing-fixed-10x);
1714
+ --sbb-button-padding-inline-size-m: var(--sbb-spacing-fixed-8x);
1715
+ --sbb-button-padding-inline-size-s: var(--sbb-spacing-fixed-5x);
1662
1716
  --sbb-chip-group-margin-block: var(--_sbb-chip-group-margin-block-start-default-large) 0;
1663
1717
  --sbb-chip-group-margin-block-no-label-not-empty: 0.1875rem 0.875rem;
1664
1718
  --sbb-chip-group-margin-block-with-label-not-empty: var(--_sbb-chip-group-margin-block-start-default-large) var(--_sbb-chip-group-margin-block-start-default-large);
@@ -6,9 +6,9 @@ var f = (i, a, r) => (Z(i, a, "read from private field"), r ? r.call(i) : a.get(
6
6
  import { __esDecorate as h, __runInitializers as n } from "tslib";
7
7
  import { MutationController as X } from "@lit-labs/observers/mutation-controller.js";
8
8
  import { ResizeController as ee } from "@lit-labs/observers/resize-controller.js";
9
- import { css as te, isServer as se, html as w, nothing as O } from "lit";
9
+ import { css as te, isServer as se, html as w, nothing as E } from "lit";
10
10
  import { customElement as ie, property as x, state as ae } from "lit/decorators.js";
11
- import { ref as E } from "lit/directives/ref.js";
11
+ import { ref as O } from "lit/directives/ref.js";
12
12
  import { until as H } from "lit/directives/until.js";
13
13
  import { getNextElementIndex as oe } from "../core/a11y.js";
14
14
  import { SbbOpenCloseBaseElement as re } from "../core/base-elements.js";
@@ -18,8 +18,8 @@ import { isLean as ce, setOrRemoveAttribute as S, isZeroAnimationDuration as de,
18
18
  import { i18nSelectionRequired as ue } from "../core/i18n.js";
19
19
  import { SbbUpdateSchedulerMixin as _e, SbbDisabledMixin as ge, SbbNegativeMixin as ve, SbbHydrationMixin as me, SbbRequiredMixin as fe, SbbReadonlyMixin as ye, SbbFormAssociatedMixin as xe } from "../core/mixins.js";
20
20
  import { isEventOnElement as W, setOverlayPosition as we, overlayGapFixCorners as ke } from "../core/overlay.js";
21
- import { boxSizingStyles as Oe } from "../core/styles.js";
22
- const Ee = te`.sbb-gap-fix-wrapper{position:relative;overflow:hidden;width:var(--sbb-options-panel-border-radius);height:var(--sbb-options-panel-border-radius);background-color:transparent}.sbb-gap-fix-corner{position:absolute;border-radius:50%;border:calc(var(--sbb-options-panel-border-radius) / 2) solid var(--sbb-options-panel-background-color);width:calc(var(--sbb-options-panel-border-radius) * 3);height:calc(var(--sbb-options-panel-border-radius) * 3);bottom:calc(var(--sbb-options-panel-border-radius) / 2 * -1)}.sbb-gap-fix-corner#left{left:calc(var(--sbb-options-panel-border-radius) / 2 * -1)}:host(:dir(rtl)) .sbb-gap-fix-corner#left{right:calc(var(--sbb-options-panel-border-radius) / 2 * -1);left:unset}.sbb-gap-fix-corner#right{right:calc(var(--sbb-options-panel-border-radius) / 2 * -1)}:host(:dir(rtl)) .sbb-gap-fix-corner#right{left:calc(var(--sbb-options-panel-border-radius) / 2 * -1);right:unset}:host{--sbb-scrollbar-thumb-width: .125rem;--sbb-scrollbar-thumb-width-hover: .25rem;--sbb-scrollbar-width-firefox: thin;--sbb-scrollbar-color: color-mix(in srgb, var(--sbb-color-black) 30%, transparent);--sbb-scrollbar-color: light-dark( color-mix(in srgb, var(--sbb-color-black) 30%, transparent), color-mix(in srgb, var(--sbb-color-white) 30%, transparent) );--sbb-scrollbar-color-hover: color-mix(in srgb, var(--sbb-color-black) 60%, transparent);--sbb-scrollbar-color-hover: light-dark( color-mix(in srgb, var(--sbb-color-black) 60%, transparent), color-mix(in srgb, var(--sbb-color-white) 60%, transparent) );--sbb-scrollbar-track-color: transparent;--sbb-options-panel-position-x: 0;--sbb-options-panel-position-y: 0;--_sbb-options-panel-max-height: min( var(--sbb-options-panel-max-height-calculated), var(--sbb-options-panel-max-height, 100000em) );--sbb-options-panel-min-height: var(--sbb-options-panel-origin-height);--sbb-options-panel-visibility: visible;--sbb-options-panel-width: fit-content;--sbb-options-panel-border-radius: var(--sbb-border-radius-4x);--sbb-options-panel-options-border-radius: 0 0 var(--sbb-options-panel-border-radius) var(--sbb-options-panel-border-radius);--sbb-options-panel-animation-duration: var( --sbb-disable-animation-duration, var(--sbb-animation-duration-4x) );--sbb-options-panel-animation-timing-function: ease;--sbb-options-panel-gap-fix-opacity: 0;--sbb-options-panel-gap-fix-transform: none;--sbb-options-panel-gap-fix-top: calc( var(--sbb-options-panel-position-y) - var(--sbb-options-panel-border-radius) );--sbb-options-panel-background-color: var(--sbb-background-color-1);--sbb-options-panel-padding-block: var(--sbb-spacing-fixed-2x);--sbb-options-panel-divider-margin-block: var(--sbb-spacing-fixed-3x);--sbb-focus-outline-color: var(--sbb-focus-outline-color-default);--sbb-focus-outline-color: light-dark( var(--sbb-focus-outline-color-default), var(--sbb-focus-outline-color-dark) );--sbb-options-panel-internal-z-index: var( --sbb-select-z-index, var(--sbb-overlay-default-z-index) );--sbb-select-placeholder-fallback-color: var(--sbb-color-metal);--sbb-select-placeholder-fallback-color: light-dark( var(--sbb-color-metal), var(--sbb-color-smoke) );display:block}:host([size=s]){--sbb-options-panel-padding-block: var(--sbb-spacing-fixed-1x)}:host([negative]){--sbb-scrollbar-color: color-mix(in srgb, var(--sbb-color-white) 30%, transparent);--sbb-scrollbar-color-hover: color-mix(in srgb, var(--sbb-color-white) 60%, transparent);--sbb-options-panel-background-color: var(--sbb-background-color-1-negative);--sbb-focus-outline-color: var(--sbb-focus-outline-color-dark);--sbb-select-placeholder-fallback-color: var(--sbb-color-5)}:host(:not(:is(:state(state-opening),[state--state-opening]),:is(:state(state-opened),[state--state-opened]),:is(:state(state-closing),[state--state-closing]))),:host(:is(:state(state-closed),[state--state-closed])){--sbb-options-panel-visibility: hidden}:host(:is(:state(state-opening),[state--state-opening])){--sbb-options-panel-animation-name: open}:host(:is(:state(state-closing),[state--state-closing])){--sbb-options-panel-animation-name: close}:host(:is(:state(state-opened),[state--state-opened])),:host(:is(:state(state-opening),[state--state-opening])){--sbb-options-panel-gap-fix-opacity: 1}:host(:is(:state(options-panel-position-below),[state--options-panel-position-below])){--sbb-options-panel-animation-transform: translateY( calc((var(--sbb-options-panel-origin-height) / 2) * -1) )}:host(:is(:state(options-panel-position-above),[state--options-panel-position-above])){--sbb-options-panel-options-border-radius: var(--sbb-options-panel-border-radius) var(--sbb-options-panel-border-radius) 0 0;--sbb-options-panel-gap-fix-top: var(--_sbb-options-panel-max-height);--sbb-options-panel-gap-fix-transform: rotate(180deg);--sbb-options-panel-animation-transform: translateY( calc(var(--sbb-options-panel-origin-height) / 2) )}::slotted(sbb-divider){margin-block:var(--sbb-options-panel-divider-margin-block)}:host([preserve-icon-space]){--sbb-option-icon-container-display: block}.sbb-select__trigger{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;cursor:var(--sbb-cursor-default);height:calc(1em * var(--sbb-typo-line-height-text))}.sbb-select__trigger--placeholder{color:var(--sbb-select-placeholder-color, var(--sbb-select-placeholder-fallback-color));-webkit-text-fill-color:var(--sbb-select-placeholder-color, var(--sbb-select-placeholder-fallback-color))}.sbb-select__container{position:fixed;pointer-events:none;inset:0;z-index:var(--sbb-options-panel-internal-z-index)}.sbb-select__container[popover]{margin:0;padding:0;border:none;width:auto;height:auto;background-color:transparent}.sbb-select__gap-fix{display:flex;justify-content:space-between;position:fixed;visibility:var(--sbb-options-panel-visibility);opacity:var(--sbb-options-panel-gap-fix-opacity);background-color:transparent;width:var(--sbb-options-panel-width);height:var(--sbb-options-panel-border-radius);top:var(--sbb-options-panel-gap-fix-top);left:var(--sbb-options-panel-position-x);transform:var(--sbb-options-panel-gap-fix-transform);transition:opacity var(--sbb-options-panel-animation-duration) var(--sbb-options-panel-animation-timing-function)}.sbb-select__panel{display:block;position:absolute;visibility:var(--sbb-options-panel-visibility);overflow:hidden;background-color:transparent;border:none;border-radius:var(--sbb-options-panel-border-radius);top:var(--sbb-options-panel-position-y);left:var(--sbb-options-panel-position-x);width:var(--sbb-options-panel-width);transition:box-shadow var(--sbb-options-panel-animation-duration) var(--sbb-options-panel-animation-timing-function)}.sbb-select__panel:before,.sbb-select__panel:after{content:"";display:none;position:relative;width:100%;height:var(--sbb-options-panel-origin-height);background-color:transparent;border-radius:var(--sbb-options-panel-border-radius);pointer-events:none;transition:box-shadow var(--sbb-options-panel-animation-duration) var(--sbb-options-panel-animation-timing-function);z-index:1}:host(:is(:state(options-panel-position-below),[state--options-panel-position-below])) .sbb-select__panel{inset-block-start:calc(var(--sbb-options-panel-position-y) - var(--sbb-options-panel-origin-height))}:host(:is(:is(:state(state-opened),[state--state-opened]),:is(:state(state-opening),[state--state-opening]))) .sbb-select__panel{box-shadow:var(--sbb-box-shadow-level-5-hard)}:host(:is(:is(:state(state-opened),[state--state-opened]),:is(:state(state-opening),[state--state-opening]))[negative]) .sbb-select__panel{box-shadow:var(--sbb-box-shadow-level-5-hard-negative)}:host(:is(:state(options-panel-position-below),[state--options-panel-position-below])) .sbb-select__panel:before{display:block}:host(:is(:state(options-panel-position-above),[state--options-panel-position-above])) .sbb-select__panel:after{display:block}:host(:is(:is(:state(state-opened),[state--state-opened]),:is(:state(state-opening),[state--state-opening])):is(:state(option-panel-origin-borderless),[state--option-panel-origin-borderless])) .sbb-select__panel:before,:host(:is(:is(:state(state-opened),[state--state-opened]),:is(:state(state-opening),[state--state-opening])):is(:state(option-panel-origin-borderless),[state--option-panel-origin-borderless])) .sbb-select__panel:after{box-shadow:var(--sbb-box-shadow-level-5-hard)}:host(:is(:is(:state(state-opened),[state--state-opened]),:is(:state(state-opening),[state--state-opening])):is(:state(option-panel-origin-borderless),[state--option-panel-origin-borderless])[negative]) .sbb-select__panel:before,:host(:is(:is(:state(state-opened),[state--state-opened]),:is(:state(state-opening),[state--state-opening])):is(:state(option-panel-origin-borderless),[state--option-panel-origin-borderless])[negative]) .sbb-select__panel:after{box-shadow:var(--sbb-box-shadow-level-5-hard-negative)}.sbb-select__wrapper{overflow:hidden}.sbb-select__options{background-color:var(--sbb-options-panel-background-color);padding-block:var(--sbb-options-panel-padding-block);padding-inline:0;border-radius:var(--sbb-options-panel-options-border-radius);max-height:var(--_sbb-options-panel-max-height);min-height:var(--sbb-options-panel-min-height);pointer-events:all;overflow-y:auto;animation-name:var(--sbb-options-panel-animation-name);animation-duration:var(--sbb-options-panel-animation-duration);animation-timing-function:var(--sbb-options-panel-animation-timing-function);--sbb-scrollbar-width: var(--sbb-spacing-fixed-3x)}.sbb-select__options::-webkit-scrollbar{width:var(--sbb-scrollbar-width);height:var(--sbb-scrollbar-width);background-color:var(--sbb-scrollbar-track-color, transparent)}.sbb-select__options::-webkit-scrollbar-corner{background-color:var(--sbb-scrollbar-track-color, transparent)}.sbb-select__options::-webkit-scrollbar-thumb{background-color:var(--sbb-scrollbar-color, currentcolor);border:calc(.5 * (var(--sbb-scrollbar-width) - var(--sbb-scrollbar-thumb-width))) solid transparent;border-radius:var(--sbb-border-radius-4x);background-clip:padding-box}.sbb-select__options::-webkit-scrollbar-thumb:hover{background-color:var(--sbb-scrollbar-color-hover, currentcolor);border-width:calc(.5 * (var(--sbb-scrollbar-width) - var(--sbb-scrollbar-thumb-width-hover)))}.sbb-select__options::-webkit-scrollbar-button,.sbb-select__options::-webkit-scrollbar-corner{display:none}@supports not selector(::-webkit-scrollbar){.sbb-select__options{scrollbar-width:var(--sbb-scrollbar-width-firefox);scrollbar-color:var(--sbb-scrollbar-color, currentcolor) var(--sbb-scrollbar-track-color, transparent)}}@media(forced-colors:active){.sbb-select__options{border:var(--sbb-border-width-1x) solid CanvasText;border-block-start:none}}@keyframes open{0%{transform:var(--sbb-options-panel-animation-transform);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes close{0%{transform:translateY(0);opacity:1}to{transform:var(--sbb-options-panel-animation-transform);opacity:0}}`, k = he;
21
+ import { boxSizingStyles as Ee } from "../core/styles.js";
22
+ const Oe = te`.sbb-gap-fix-wrapper{position:relative;overflow:hidden;width:var(--sbb-options-panel-border-radius);height:var(--sbb-options-panel-border-radius);background-color:transparent}.sbb-gap-fix-corner{position:absolute;border-radius:50%;border:calc(var(--sbb-options-panel-border-radius) / 2) solid var(--sbb-options-panel-background-color);width:calc(var(--sbb-options-panel-border-radius) * 3);height:calc(var(--sbb-options-panel-border-radius) * 3);bottom:calc(var(--sbb-options-panel-border-radius) / 2 * -1)}.sbb-gap-fix-corner#left{left:calc(var(--sbb-options-panel-border-radius) / 2 * -1)}:host(:dir(rtl)) .sbb-gap-fix-corner#left{right:calc(var(--sbb-options-panel-border-radius) / 2 * -1);left:unset}.sbb-gap-fix-corner#right{right:calc(var(--sbb-options-panel-border-radius) / 2 * -1)}:host(:dir(rtl)) .sbb-gap-fix-corner#right{left:calc(var(--sbb-options-panel-border-radius) / 2 * -1);right:unset}:host{--sbb-scrollbar-thumb-width: .125rem;--sbb-scrollbar-thumb-width-hover: .25rem;--sbb-scrollbar-width-firefox: thin;--sbb-scrollbar-color: color-mix(in srgb, var(--sbb-color-black) 30%, transparent);--sbb-scrollbar-color: light-dark( color-mix(in srgb, var(--sbb-color-black) 30%, transparent), color-mix(in srgb, var(--sbb-color-white) 30%, transparent) );--sbb-scrollbar-color-hover: color-mix(in srgb, var(--sbb-color-black) 60%, transparent);--sbb-scrollbar-color-hover: light-dark( color-mix(in srgb, var(--sbb-color-black) 60%, transparent), color-mix(in srgb, var(--sbb-color-white) 60%, transparent) );--sbb-scrollbar-track-color: transparent;--sbb-options-panel-position-x: 0;--sbb-options-panel-position-y: 0;--_sbb-options-panel-max-height: min( var(--sbb-options-panel-max-height-calculated), var(--sbb-options-panel-max-height, 100000em) );--sbb-options-panel-min-height: var(--sbb-options-panel-origin-height);--sbb-options-panel-visibility: visible;--sbb-options-panel-width: fit-content;--sbb-options-panel-border-radius: var(--sbb-border-radius-4x);--sbb-options-panel-options-border-radius: 0 0 var(--sbb-options-panel-border-radius) var(--sbb-options-panel-border-radius);--sbb-options-panel-animation-duration: var( --sbb-disable-animation-duration, var(--sbb-animation-duration-4x) );--sbb-options-panel-animation-timing-function: ease;--sbb-options-panel-gap-fix-opacity: 0;--sbb-options-panel-gap-fix-transform: none;--sbb-options-panel-gap-fix-top: calc( var(--sbb-options-panel-position-y) - var(--sbb-options-panel-border-radius) );--sbb-options-panel-background-color: var(--sbb-background-color-1);--sbb-options-panel-padding-block: var(--sbb-spacing-fixed-2x);--sbb-options-panel-divider-margin-block: var(--sbb-spacing-fixed-3x);--sbb-focus-outline-color: var(--sbb-focus-outline-color-default);--sbb-focus-outline-color: light-dark( var(--sbb-focus-outline-color-default), var(--sbb-focus-outline-color-dark) );--sbb-options-panel-internal-z-index: var( --sbb-select-z-index, var(--sbb-overlay-default-z-index) );--sbb-select-placeholder-fallback-color: var(--sbb-color-metal);--sbb-select-placeholder-fallback-color: light-dark( var(--sbb-color-metal), var(--sbb-color-smoke) );display:block}:host([size=s]){--sbb-options-panel-padding-block: var(--sbb-spacing-fixed-1x)}:host([negative]){--sbb-scrollbar-color: color-mix(in srgb, var(--sbb-color-white) 30%, transparent);--sbb-scrollbar-color-hover: color-mix(in srgb, var(--sbb-color-white) 60%, transparent);--sbb-options-panel-background-color: var(--sbb-background-color-1-negative);--sbb-focus-outline-color: var(--sbb-focus-outline-color-dark);--sbb-select-placeholder-fallback-color: var(--sbb-color-5)}:host(:not(:is(:state(state-opening),[state--state-opening]),:is(:state(state-opened),[state--state-opened]),:is(:state(state-closing),[state--state-closing]))),:host(:is(:state(state-closed),[state--state-closed])){--sbb-options-panel-visibility: hidden}:host(:is(:state(state-opening),[state--state-opening])){--sbb-options-panel-animation-name: open}:host(:is(:state(state-closing),[state--state-closing])){--sbb-options-panel-animation-name: close}:host(:is(:state(state-opened),[state--state-opened])),:host(:is(:state(state-opening),[state--state-opening])){--sbb-options-panel-gap-fix-opacity: 1}:host(:is(:state(options-panel-position-below),[state--options-panel-position-below])){--sbb-options-panel-animation-transform: translateY( calc((var(--sbb-options-panel-origin-height) / 2) * -1) )}:host(:is(:state(options-panel-position-above),[state--options-panel-position-above])){--sbb-options-panel-options-border-radius: var(--sbb-options-panel-border-radius) var(--sbb-options-panel-border-radius) 0 0;--sbb-options-panel-gap-fix-top: var(--_sbb-options-panel-max-height);--sbb-options-panel-gap-fix-transform: rotate(180deg);--sbb-options-panel-animation-transform: translateY( calc(var(--sbb-options-panel-origin-height) / 2) )}::slotted(sbb-divider){margin-block:var(--sbb-options-panel-divider-margin-block)}:host([preserve-icon-space]){--sbb-option-icon-container-display: block}.sbb-select__trigger{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;cursor:var(--sbb-cursor-default);height:calc(1em * var(--sbb-typo-line-height-text))}.sbb-select__trigger--placeholder{color:var(--sbb-select-placeholder-color, var(--sbb-select-placeholder-fallback-color));-webkit-text-fill-color:var(--sbb-select-placeholder-color, var(--sbb-select-placeholder-fallback-color))}.sbb-select__container{position:fixed;pointer-events:none;inset:0;z-index:var(--sbb-options-panel-internal-z-index)}.sbb-select__container[popover]{margin:0;padding:0;border:none;width:auto;height:auto;background-color:transparent}.sbb-select__gap-fix{display:flex;justify-content:space-between;position:fixed;visibility:var(--sbb-options-panel-visibility);opacity:var(--sbb-options-panel-gap-fix-opacity);background-color:transparent;width:var(--sbb-options-panel-width);height:var(--sbb-options-panel-border-radius);top:var(--sbb-options-panel-gap-fix-top);left:var(--sbb-options-panel-position-x);transform:var(--sbb-options-panel-gap-fix-transform);transition:opacity var(--sbb-options-panel-animation-duration) var(--sbb-options-panel-animation-timing-function)}.sbb-select__panel{display:block;position:absolute;visibility:var(--sbb-options-panel-visibility);overflow:hidden;background-color:transparent;border:none;border-radius:var(--sbb-options-panel-border-radius);top:var(--sbb-options-panel-position-y);left:var(--sbb-options-panel-position-x);width:var(--sbb-options-panel-width);transition:box-shadow var(--sbb-options-panel-animation-duration) var(--sbb-options-panel-animation-timing-function)}.sbb-select__panel:before,.sbb-select__panel:after{content:"";display:none;position:relative;width:100%;height:var(--sbb-options-panel-origin-height);background-color:transparent;border-radius:var(--sbb-options-panel-border-radius);pointer-events:none;transition:box-shadow var(--sbb-options-panel-animation-duration) var(--sbb-options-panel-animation-timing-function);z-index:1}:host(:is(:state(options-panel-position-below),[state--options-panel-position-below])) .sbb-select__panel{inset-block-start:calc(var(--sbb-options-panel-position-y) - var(--sbb-options-panel-origin-height))}:host(:is(:is(:state(state-opened),[state--state-opened]),:is(:state(state-opening),[state--state-opening]))) .sbb-select__panel{box-shadow:var(--sbb-box-shadow-level-5-hard)}:host(:is(:is(:state(state-opened),[state--state-opened]),:is(:state(state-opening),[state--state-opening]))[negative]) .sbb-select__panel{box-shadow:var(--sbb-box-shadow-level-5-hard-negative)}:host(:is(:state(options-panel-position-below),[state--options-panel-position-below])) .sbb-select__panel:before{display:block}:host(:is(:state(options-panel-position-above),[state--options-panel-position-above])) .sbb-select__panel:after{display:block}:host(:is(:is(:state(state-opened),[state--state-opened]),:is(:state(state-opening),[state--state-opening])):is(:state(option-panel-origin-borderless),[state--option-panel-origin-borderless])) .sbb-select__panel:before,:host(:is(:is(:state(state-opened),[state--state-opened]),:is(:state(state-opening),[state--state-opening])):is(:state(option-panel-origin-borderless),[state--option-panel-origin-borderless])) .sbb-select__panel:after{box-shadow:var(--sbb-box-shadow-level-5-hard)}:host(:is(:is(:state(state-opened),[state--state-opened]),:is(:state(state-opening),[state--state-opening])):is(:state(option-panel-origin-borderless),[state--option-panel-origin-borderless])[negative]) .sbb-select__panel:before,:host(:is(:is(:state(state-opened),[state--state-opened]),:is(:state(state-opening),[state--state-opening])):is(:state(option-panel-origin-borderless),[state--option-panel-origin-borderless])[negative]) .sbb-select__panel:after{box-shadow:var(--sbb-box-shadow-level-5-hard-negative)}.sbb-select__wrapper{overflow:hidden}.sbb-select__options{background-color:var(--sbb-options-panel-background-color);padding-block:var(--sbb-options-panel-padding-block);padding-inline:0;border-radius:var(--sbb-options-panel-options-border-radius);max-height:var(--_sbb-options-panel-max-height);min-height:var(--sbb-options-panel-min-height);pointer-events:all;overflow-y:auto;animation-name:var(--sbb-options-panel-animation-name);animation-duration:var(--sbb-options-panel-animation-duration);animation-timing-function:var(--sbb-options-panel-animation-timing-function);--sbb-scrollbar-width: var(--sbb-spacing-fixed-3x)}.sbb-select__options::-webkit-scrollbar{width:var(--sbb-scrollbar-width);height:var(--sbb-scrollbar-width);background-color:var(--sbb-scrollbar-track-color, transparent)}.sbb-select__options::-webkit-scrollbar-corner{background-color:var(--sbb-scrollbar-track-color, transparent)}.sbb-select__options::-webkit-scrollbar-thumb{background-color:var(--sbb-scrollbar-color, currentcolor);border:calc(.5 * (var(--sbb-scrollbar-width) - var(--sbb-scrollbar-thumb-width))) solid transparent;border-radius:var(--sbb-border-radius-4x);background-clip:padding-box}.sbb-select__options::-webkit-scrollbar-thumb:hover{background-color:var(--sbb-scrollbar-color-hover, currentcolor);border-width:calc(.5 * (var(--sbb-scrollbar-width) - var(--sbb-scrollbar-thumb-width-hover)))}.sbb-select__options::-webkit-scrollbar-button,.sbb-select__options::-webkit-scrollbar-corner{display:none}@supports not selector(::-webkit-scrollbar){.sbb-select__options{scrollbar-width:var(--sbb-scrollbar-width-firefox);scrollbar-color:var(--sbb-scrollbar-color, currentcolor) var(--sbb-scrollbar-track-color, transparent)}}@media(forced-colors:active){.sbb-select__options{border:var(--sbb-border-width-1x) solid CanvasText;border-block-start:none}}@keyframes open{0%{transform:var(--sbb-options-panel-animation-transform);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes close{0%{transform:translateY(0);opacity:1}to{transform:var(--sbb-options-panel-animation-transform);opacity:0}}`, k = he;
23
23
  let Ae = 0, je = (() => {
24
24
  var u, _, g, v, m, o;
25
25
  let i = [ie("sbb-select")], a, r = [], b, C = _e(ge(ve(me(fe(ye(xe(re))))))), V = [], I, D = [], z = [], L, P = [], $ = [], M, R = [], T = [], N, F, U = [], q = [], B, K = [], j = [];
@@ -37,7 +37,7 @@ let Ae = 0, je = (() => {
37
37
  callback: () => {
38
38
  this.isOpen && this._setOverlayPosition();
39
39
  }
40
- })), this._escapableOverlayController = new ne(this), this._overlayId = `sbb-select-${++Ae}`, this._activeItemIndex = -1, this._searchString = "", this._didLoad = !1, this._isPointerDownEventOnMenu = !1, this._languageController = new le(this), this._isValueManuallyAssigned = !1, this._pointerDownListener = (e) => {
40
+ })), this._originElement = null, this._triggerElement = null, this._escapableOverlayController = new ne(this), this._overlayId = `sbb-select-${++Ae}`, this._activeItemIndex = -1, this._searchString = "", this._didLoad = !1, this._isPointerDownEventOnMenu = !1, this._languageController = new le(this), this._isValueManuallyAssigned = !1, this._pointerDownListener = (e) => {
41
41
  this._isPointerDownEventOnMenu = W(this._overlay, e);
42
42
  }, this._closeOnBackdropClick = (e) => {
43
43
  !this._isPointerDownEventOnMenu && !W(this._overlay, e) && this.close();
@@ -111,7 +111,7 @@ let Ae = 0, je = (() => {
111
111
  * @internal
112
112
  */
113
113
  get inputElement() {
114
- return this._triggerElement;
114
+ return this._triggerElement ?? null;
115
115
  }
116
116
  /** Returns all SbbOptionElements from this sbb-select instance. */
117
117
  get options() {
@@ -199,7 +199,7 @@ let Ae = 0, je = (() => {
199
199
  super.willUpdate(e), e.has("negative") && this._syncNegative(), e.has("readOnly") && this._closeOnDisabledReadonlyChanged(this.readOnly);
200
200
  }
201
201
  disconnectedCallback() {
202
- this.prepend(this._triggerElement), super.disconnectedCallback(), this._openPanelEventsController?.abort();
202
+ this._triggerElement && this.prepend(this._triggerElement), super.disconnectedCallback(), this._openPanelEventsController?.abort();
203
203
  }
204
204
  /**
205
205
  * The reset value is the attribute value (the setup value), null otherwise.
@@ -248,10 +248,10 @@ let Ae = 0, je = (() => {
248
248
  * we are forced to move the 'combobox' trigger element to the light DOM
249
249
  */
250
250
  _setupTrigger() {
251
- this.parentElement.insertBefore?.(this._triggerElement, this);
251
+ this.parentElement && this._triggerElement && this.parentElement.insertBefore?.(this._triggerElement, this);
252
252
  }
253
253
  _setOverlayPosition() {
254
- we(this._overlay, this._originElement, this._optionContainer, this.shadowRoot.querySelector(".sbb-select__container"), this);
254
+ this._originElement && we(this._overlay, this._originElement, this._optionContainer, this.shadowRoot.querySelector(".sbb-select__container"), this);
255
255
  }
256
256
  // In rare cases it can be that the animationEnd event is triggered twice.
257
257
  // To avoid entering a corrupt state, exit when state is not expected.
@@ -259,10 +259,10 @@ let Ae = 0, je = (() => {
259
259
  e.animationName === "open" && this.state === "opening" ? this._handleOpening() : e.animationName === "close" && this.state === "closing" && this._handleClosing();
260
260
  }
261
261
  _handleOpening() {
262
- this.state = "opened", this._triggerElement.setAttribute("aria-expanded", "true"), this._originElement && this._originResizeObserver.observe(this._originElement), this.dispatchOpenEvent();
262
+ this.state = "opened", this._triggerElement?.setAttribute("aria-expanded", "true"), this._originElement && this._originResizeObserver.observe(this._originElement), this.dispatchOpenEvent();
263
263
  }
264
264
  _handleClosing() {
265
- this.state = "closed", this.shadowRoot?.querySelector(".sbb-select__container")?.hidePopover?.(), this._triggerElement.setAttribute("aria-expanded", "false"), this._resetActiveElement(), this._optionContainer.scrollTop = 0, this._escapableOverlayController.disconnect(), this.dispatchCloseEvent();
265
+ this.state = "closed", this.shadowRoot?.querySelector(".sbb-select__container")?.hidePopover?.(), this._triggerElement?.setAttribute("aria-expanded", "false"), this._resetActiveElement(), this._optionContainer.scrollTop = 0, this._escapableOverlayController.disconnect(), this.dispatchCloseEvent();
266
266
  }
267
267
  /** When an option is selected, updates the displayValue; it also closes the select if not `multiple`. */
268
268
  _onOptionSelected(e) {
@@ -365,14 +365,14 @@ let Ae = 0, je = (() => {
365
365
  this._setActiveElement(c, p), this.multiple ? e?.shiftKey && c.selectViaUserInteraction(!c.selected) : this._setSelectedElement(c, p), this._activeItemIndex = d;
366
366
  }
367
367
  _setActiveElement(e, t = null, s = !0) {
368
- e.setActive(!0), e.scrollIntoView({ block: "nearest" }), s && this._triggerElement.setAttribute("aria-activedescendant", e.id), t && t !== e && t.setActive(!1);
368
+ e.setActive(!0), e.scrollIntoView({ block: "nearest" }), s && this._triggerElement?.setAttribute("aria-activedescendant", e.id), t && t !== e && t.setActive(!1);
369
369
  }
370
370
  _setSelectedElement(e, t) {
371
371
  e.selectViaUserInteraction(!0), t && t !== e && t.selectViaUserInteraction(!1);
372
372
  }
373
373
  _resetActiveElement() {
374
374
  const e = this._selectableOptions()[this._activeItemIndex];
375
- e && e.setActive(!1), this._activeItemIndex = -1, this._triggerElement.removeAttribute("aria-activedescendant");
375
+ e && e.setActive(!1), this._activeItemIndex = -1, this._triggerElement?.removeAttribute("aria-activedescendant");
376
376
  }
377
377
  _updateOptionsFromValue() {
378
378
  const e = Array.isArray(this.value) ? this.value : [this.value];
@@ -425,7 +425,7 @@ let Ae = 0, je = (() => {
425
425
  readers to work properly -->
426
426
  <div
427
427
  class="sbb-screen-reader-only sbb-select-trigger"
428
- tabindex=${this.disabled || this.formDisabled ? O : "0"}
428
+ tabindex=${this.disabled || this.formDisabled ? E : "0"}
429
429
  role="combobox"
430
430
  aria-haspopup="listbox"
431
431
  aria-expanded="false"
@@ -434,7 +434,7 @@ let Ae = 0, je = (() => {
434
434
  aria-owns=${this._overlayId}
435
435
  @keydown=${this._onKeyDown}
436
436
  @click=${this._toggleOpening}
437
- ${E((e) => this._triggerElement = e)}
437
+ ${O((e) => this._triggerElement = e)}
438
438
  >
439
439
  ${H(...this._spreadDeferredDisplayValue(w`<span>${this.placeholder}</span>`))}
440
440
  </div>
@@ -450,15 +450,15 @@ let Ae = 0, je = (() => {
450
450
  <div
451
451
  @animationend=${this._onAnimationEnd}
452
452
  class="sbb-select__panel"
453
- ${E((e) => this._overlay = e)}
453
+ ${O((e) => this._overlay = e)}
454
454
  >
455
455
  <div class="sbb-select__wrapper">
456
456
  <div
457
- id=${k ? O : this._overlayId}
457
+ id=${k ? E : this._overlayId}
458
458
  class="sbb-select__options"
459
- role=${k ? O : "listbox"}
459
+ role=${k ? E : "listbox"}
460
460
  ?aria-multiselectable=${this.multiple}
461
- ${E((e) => this._optionContainer = e)}
461
+ ${O((e) => this._optionContainer = e)}
462
462
  tabindex="-1"
463
463
  >
464
464
  <slot @slotchange=${this._updateValueOptionState}></slot>
@@ -483,7 +483,7 @@ let Ae = 0, je = (() => {
483
483
  } }, metadata: e }, U, q), h(o, null, B, { kind: "accessor", name: "_displayValue", static: !1, private: !1, access: { has: (t) => "_displayValue" in t, get: (t) => t._displayValue, set: (t, s) => {
484
484
  t._displayValue = s;
485
485
  } }, metadata: e }, K, j), h(null, a = { value: b }, i, { kind: "class", name: b.name, metadata: e }, null, r), b = a.value, e && Object.defineProperty(b, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: e });
486
- })(), o.role = k ? "listbox" : null, o.styles = [Oe, Ee], o.events = {
486
+ })(), o.role = k ? "listbox" : null, o.styles = [Ee, Oe], o.events = {
487
487
  change: "change",
488
488
  input: "input",
489
489
  displayvaluechange: "displayvaluechange",