@sbb-esta/lyne-elements 0.53.0 → 1.2.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.
- package/button/common/button-common.d.ts.map +1 -1
- package/button/mini-button.js +5 -5
- package/calendar/calendar.d.ts +3 -1
- package/calendar/calendar.d.ts.map +1 -1
- package/calendar.js +62 -52
- package/card/common/card-action-common.d.ts.map +1 -1
- package/checkbox/common/checkbox-common.d.ts.map +1 -1
- package/clock/clock.d.ts.map +1 -1
- package/clock.js +45 -50
- package/core/decorators/host-attributes.d.ts.map +1 -1
- package/core/eventing/throttle.d.ts.map +1 -1
- package/core/i18n/i18n.d.ts +1 -3
- package/core/i18n/i18n.d.ts.map +1 -1
- package/core/i18n.js +91 -127
- package/core/mixins/disabled-mixin.d.ts.map +1 -1
- package/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -1
- package/core/mixins/form-associated-mixin.d.ts.map +1 -1
- package/core/mixins/hydration-mixin.d.ts +2 -8
- package/core/mixins/hydration-mixin.d.ts.map +1 -1
- package/core/mixins/named-slot-list-mixin.d.ts.map +1 -1
- package/core/mixins/negative-mixin.d.ts.map +1 -1
- package/core/mixins/panel-mixin.d.ts.map +1 -1
- package/core/mixins/required-mixin.d.ts.map +1 -1
- package/core/mixins/update-scheduler-mixin.d.ts.map +1 -1
- package/core/mixins.js +90 -99
- package/core/observers/intersection-observer.d.ts +1 -1
- package/core/styles/_index.scss +1 -0
- package/core/styles/mixins/buttons.scss +1 -1
- package/core/styles/mixins/table.scss +148 -0
- package/core/styles/standard-theme.scss +1 -0
- package/core/styles/table.scss +56 -0
- package/core/testing/private.d.ts +0 -1
- package/core/testing/private.d.ts.map +1 -1
- package/core/testing/wait-for-render.d.ts +1 -1
- package/core/testing/wait-for-render.d.ts.map +1 -1
- package/core/testing.js +40 -37
- package/custom-elements.json +557 -864
- package/datepicker/datepicker-next-day.js +5 -5
- package/datepicker/datepicker-previous-day.js +1 -1
- package/datepicker/datepicker-toggle.js +7 -7
- package/development/accordion.js +7 -1
- package/development/action-group.js +7 -1
- package/development/alert/alert-group.js +7 -1
- package/development/alert/alert.js +7 -1
- package/development/autocomplete.js +7 -1
- package/development/breadcrumb/breadcrumb-group.js +7 -1
- package/development/breadcrumb/breadcrumb.js +7 -1
- package/development/button/common/button-common.d.ts.map +1 -1
- package/development/button/common.js +7 -1
- package/development/button/mini-button.js +8 -2
- package/development/calendar/calendar.d.ts +3 -1
- package/development/calendar/calendar.d.ts.map +1 -1
- package/development/calendar.js +18 -2
- package/development/card/card-badge.js +7 -1
- package/development/card/card.js +7 -1
- package/development/card/common/card-action-common.d.ts.map +1 -1
- package/development/card/common.js +7 -1
- package/development/checkbox/checkbox-group.js +7 -1
- package/development/checkbox/checkbox.js +7 -1
- package/development/checkbox/common/checkbox-common.d.ts.map +1 -1
- package/development/checkbox/common.js +7 -1
- package/development/chip.js +7 -1
- package/development/clock/clock.d.ts.map +1 -1
- package/development/clock.js +35 -31
- package/development/container/container.js +7 -1
- package/development/container/sticky-bar.js +7 -1
- package/development/core/decorators/host-attributes.d.ts.map +1 -1
- package/development/core/eventing/throttle.d.ts.map +1 -1
- package/development/core/i18n/i18n.d.ts +1 -3
- package/development/core/i18n/i18n.d.ts.map +1 -1
- package/development/core/i18n.js +5 -43
- package/development/core/mixins/disabled-mixin.d.ts.map +1 -1
- package/development/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -1
- package/development/core/mixins/form-associated-mixin.d.ts.map +1 -1
- package/development/core/mixins/hydration-mixin.d.ts +2 -8
- package/development/core/mixins/hydration-mixin.d.ts.map +1 -1
- package/development/core/mixins/named-slot-list-mixin.d.ts.map +1 -1
- package/development/core/mixins/negative-mixin.d.ts.map +1 -1
- package/development/core/mixins/panel-mixin.d.ts.map +1 -1
- package/development/core/mixins/required-mixin.d.ts.map +1 -1
- package/development/core/mixins/update-scheduler-mixin.d.ts.map +1 -1
- package/development/core/mixins.js +26 -36
- package/development/core/observers/intersection-observer.d.ts +1 -1
- package/development/core/testing/private.d.ts +0 -1
- package/development/core/testing/private.d.ts.map +1 -1
- package/development/core/testing/wait-for-render.d.ts +1 -1
- package/development/core/testing/wait-for-render.d.ts.map +1 -1
- package/development/core/testing.js +6 -2
- package/development/datepicker/datepicker-next-day.js +8 -2
- package/development/datepicker/datepicker-previous-day.js +8 -2
- package/development/datepicker/datepicker-toggle.js +7 -2
- package/development/datepicker/datepicker.js +7 -1
- package/development/dialog/dialog-actions.js +7 -1
- package/development/dialog/dialog-content.js +7 -1
- package/development/dialog/dialog-title.js +7 -1
- package/development/dialog/dialog.js +7 -1
- package/development/divider.js +7 -1
- package/development/expansion-panel/expansion-panel-content.js +7 -1
- package/development/expansion-panel/expansion-panel-header.js +7 -1
- package/development/expansion-panel/expansion-panel.js +7 -1
- package/development/file-selector.js +7 -1
- package/development/footer.js +7 -1
- package/development/form-error.js +7 -1
- package/development/form-field/form-field-clear.js +8 -2
- package/development/form-field/form-field.js +7 -1
- package/development/header/common/header-action-common.d.ts.map +1 -1
- package/development/header/common.js +7 -1
- package/development/header/header.js +7 -1
- package/development/icon/icon-name-mixin.d.ts.map +1 -1
- package/development/icon/icon-request.d.ts.map +1 -1
- package/development/icon.js +7 -1
- package/development/image.js +7 -1
- package/development/journey-header.js +7 -1
- package/development/lead-container.js +7 -1
- package/development/link/common/block-link-common.d.ts.map +1 -1
- package/development/link/common/inline-link-common.d.ts.map +1 -1
- package/development/link/common/link-common.d.ts.map +1 -1
- package/development/link/common.js +19 -1
- package/development/link-list.js +7 -1
- package/development/loading-indicator.js +7 -1
- package/development/logo.js +7 -1
- package/development/map-container.js +7 -1
- package/development/menu/common/menu-action-common.d.ts.map +1 -1
- package/development/menu/common.js +7 -1
- package/development/menu/menu.js +7 -1
- package/development/message.js +7 -1
- package/development/navigation/common/navigation-action-common.d.ts.map +1 -1
- package/development/navigation/common.js +7 -1
- package/development/navigation/navigation-list.js +7 -1
- package/development/navigation/navigation-marker.js +7 -1
- package/development/navigation/navigation-section.js +7 -1
- package/development/navigation/navigation.js +7 -1
- package/development/notification.js +8 -1
- package/development/option/optgroup/optgroup.d.ts +2 -0
- package/development/option/optgroup/optgroup.d.ts.map +1 -1
- package/development/option/optgroup.js +21 -4
- package/development/option/option/option.d.ts +6 -5
- package/development/option/option/option.d.ts.map +1 -1
- package/development/option/option.js +53 -29
- package/development/overlay.js +7 -1
- package/development/popover/popover-trigger.js +8 -2
- package/development/popover/popover.js +7 -1
- package/development/radio-button/common/radio-button-common.d.ts.map +1 -1
- package/development/radio-button/common.js +7 -1
- package/development/radio-button/radio-button-group.js +7 -1
- package/development/radio-button/radio-button.js +7 -1
- package/development/screen-reader-only.js +7 -1
- package/development/select.js +7 -1
- package/development/selection-expansion-panel.js +7 -1
- package/development/signet.js +7 -1
- package/development/skiplink-list.js +7 -1
- package/development/slider.js +7 -1
- package/development/status.js +7 -1
- package/development/stepper/step-label.js +7 -1
- package/development/stepper/step.js +7 -1
- package/development/stepper/stepper.js +7 -1
- package/development/table/table-wrapper/table-wrapper.d.ts +24 -0
- package/development/table/table-wrapper/table-wrapper.d.ts.map +1 -0
- package/development/table/table-wrapper.d.ts +2 -0
- package/development/table/table-wrapper.d.ts.map +1 -0
- package/development/table/table-wrapper.js +130 -0
- package/development/table.d.ts +2 -0
- package/development/table.d.ts.map +1 -0
- package/development/table.js +2 -0
- package/development/tabs/tab-group/tab-group.d.ts +4 -7
- package/development/tabs/tab-group/tab-group.d.ts.map +1 -1
- package/development/tabs/tab-group.js +69 -73
- package/development/tabs/tab-label.js +7 -1
- package/development/tabs/tab.js +7 -1
- package/development/tag/tag-group.js +7 -1
- package/development/tag/tag.js +7 -1
- package/development/teaser.js +7 -1
- package/development/time-input.js +7 -1
- package/development/timetable-occupancy-icon.js +7 -1
- package/development/timetable-occupancy.js +7 -1
- package/development/title.js +13 -1
- package/development/toast.js +7 -1
- package/development/toggle/toggle-option.js +7 -1
- package/development/toggle/toggle.js +7 -1
- package/development/toggle-check.js +7 -1
- package/development/train/train-blocked-passage.js +7 -1
- package/development/train/train-formation.js +7 -1
- package/development/train/train-wagon.js +7 -1
- package/development/train/train.js +7 -1
- package/development/visual-checkbox.js +7 -1
- package/form-field/form-field-clear.js +1 -1
- package/header/common/header-action-common.d.ts.map +1 -1
- package/icon/icon-name-mixin.d.ts.map +1 -1
- package/icon/icon-request.d.ts.map +1 -1
- package/index.d.ts +2 -0
- package/index.js +2 -0
- package/link/common/block-link-common.d.ts.map +1 -1
- package/link/common/inline-link-common.d.ts.map +1 -1
- package/link/common/link-common.d.ts.map +1 -1
- package/menu/common/menu-action-common.d.ts.map +1 -1
- package/navigation/common/navigation-action-common.d.ts.map +1 -1
- package/notification.js +1 -1
- package/option/optgroup/optgroup.d.ts +2 -0
- package/option/optgroup/optgroup.d.ts.map +1 -1
- package/option/optgroup.js +24 -21
- package/option/option/option.d.ts +6 -5
- package/option/option/option.d.ts.map +1 -1
- package/option/option.js +72 -69
- package/package.json +11 -1
- package/popover/popover-trigger.js +1 -1
- package/radio-button/common/radio-button-common.d.ts.map +1 -1
- package/standard-theme.css +196 -0
- package/table/table-wrapper/table-wrapper.d.ts +24 -0
- package/table/table-wrapper/table-wrapper.d.ts.map +1 -0
- package/table/table-wrapper.d.ts +2 -0
- package/table/table-wrapper.d.ts.map +1 -0
- package/table/table-wrapper.js +39 -0
- package/table.d.ts +2 -0
- package/table.d.ts.map +1 -0
- package/table.js +1 -0
- package/tabs/tab-group/tab-group.d.ts +4 -7
- package/tabs/tab-group/tab-group.d.ts.map +1 -1
- package/tabs/tab-group.js +80 -81
package/core/mixins.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { property as o, state as
|
|
2
|
-
import { defaultConverter as
|
|
3
|
-
import { hostAttributes as
|
|
4
|
-
import { preventScrollOnSpacebarPress as
|
|
5
|
-
import { getLocalName as
|
|
1
|
+
import { property as o, state as _ } from "lit/decorators.js";
|
|
2
|
+
import { defaultConverter as b, html as l, nothing as h, css as y } from "lit";
|
|
3
|
+
import { hostAttributes as C } from "./decorators.js";
|
|
4
|
+
import { preventScrollOnSpacebarPress as u, forwardEventToHost as x, EventEmitter as k } from "./eventing.js";
|
|
5
|
+
import { getLocalName as p } from "./dom.js";
|
|
6
6
|
import "../screen-reader-only.js";
|
|
7
|
-
var w = Object.defineProperty,
|
|
8
|
-
for (var e =
|
|
7
|
+
var w = Object.defineProperty, S = Object.getOwnPropertyDescriptor, E = (n, r, s, t) => {
|
|
8
|
+
for (var e = S(r, s), i = n.length - 1, a; i >= 0; i--)
|
|
9
9
|
(a = n[i]) && (e = a(r, s, e) || e);
|
|
10
10
|
return e && w(r, s, e), e;
|
|
11
11
|
};
|
|
12
|
-
const
|
|
12
|
+
const g = (n) => {
|
|
13
13
|
class r extends n {
|
|
14
14
|
constructor() {
|
|
15
15
|
super(...arguments), this._disabled = !1;
|
|
@@ -28,23 +28,23 @@ const y = (n) => {
|
|
|
28
28
|
return !1;
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
|
-
return
|
|
31
|
+
return E([
|
|
32
32
|
o({ reflect: !0, type: Boolean })
|
|
33
33
|
], r.prototype, "disabled"), r;
|
|
34
|
-
},
|
|
35
|
-
class r extends
|
|
34
|
+
}, G = (n) => {
|
|
35
|
+
class r extends g(n) {
|
|
36
36
|
willUpdate(t) {
|
|
37
37
|
super.willUpdate(t), t.has("disabled") && (this.disabled ? (this.setAttribute("aria-disabled", "true"), this.removeAttribute("tabindex")) : (this.removeAttribute("aria-disabled"), this.setAttribute("tabindex", "0")));
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
return r;
|
|
41
41
|
};
|
|
42
|
-
var
|
|
43
|
-
for (var e = t > 1 ? void 0 : t ?
|
|
42
|
+
var P = Object.defineProperty, $ = Object.getOwnPropertyDescriptor, d = (n, r, s, t) => {
|
|
43
|
+
for (var e = t > 1 ? void 0 : t ? $(r, s) : r, i = n.length - 1, a; i >= 0; i--)
|
|
44
44
|
(a = n[i]) && (e = (t ? a(r, s, e) : a(e)) || e);
|
|
45
|
-
return t && e &&
|
|
45
|
+
return t && e && P(r, s, e), e;
|
|
46
46
|
};
|
|
47
|
-
const
|
|
47
|
+
const R = (n) => {
|
|
48
48
|
const s = class s extends n {
|
|
49
49
|
constructor() {
|
|
50
50
|
super(...arguments), this._value = null, this.internals = this.attachInternals(), this.formDisabled = !1;
|
|
@@ -140,15 +140,15 @@ const A = (n) => {
|
|
|
140
140
|
], r.prototype, "name", 1), d([
|
|
141
141
|
o()
|
|
142
142
|
], r.prototype, "value", 1), d([
|
|
143
|
-
|
|
143
|
+
_()
|
|
144
144
|
], r.prototype, "formDisabled", 2), r;
|
|
145
145
|
};
|
|
146
|
-
var
|
|
147
|
-
for (var e =
|
|
146
|
+
var A = Object.defineProperty, O = Object.getOwnPropertyDescriptor, q = (n, r, s, t) => {
|
|
147
|
+
for (var e = O(r, s), i = n.length - 1, a; i >= 0; i--)
|
|
148
148
|
(a = n[i]) && (e = a(r, s, e) || e);
|
|
149
|
-
return e &&
|
|
149
|
+
return e && A(r, s, e), e;
|
|
150
150
|
};
|
|
151
|
-
const
|
|
151
|
+
const L = (n) => {
|
|
152
152
|
class r extends n {
|
|
153
153
|
constructor() {
|
|
154
154
|
super(...arguments), this._required = !1;
|
|
@@ -170,17 +170,17 @@ const U = (n) => {
|
|
|
170
170
|
return !1;
|
|
171
171
|
}
|
|
172
172
|
}
|
|
173
|
-
return
|
|
173
|
+
return q([
|
|
174
174
|
o({ reflect: !0, type: Boolean })
|
|
175
175
|
], r.prototype, "required"), r;
|
|
176
176
|
};
|
|
177
|
-
var D = Object.defineProperty, M = Object.getOwnPropertyDescriptor,
|
|
177
|
+
var D = Object.defineProperty, M = Object.getOwnPropertyDescriptor, v = (n, r, s, t) => {
|
|
178
178
|
for (var e = t > 1 ? void 0 : t ? M(r, s) : r, i = n.length - 1, a; i >= 0; i--)
|
|
179
179
|
(a = n[i]) && (e = (t ? a(r, s, e) : a(e)) || e);
|
|
180
180
|
return t && e && D(r, s, e), e;
|
|
181
181
|
};
|
|
182
|
-
const
|
|
183
|
-
let r = class extends
|
|
182
|
+
const J = (n) => {
|
|
183
|
+
let r = class extends g(L(R(n))) {
|
|
184
184
|
constructor() {
|
|
185
185
|
super(), this._attributeMutationBlocked = !1, this._checked = !1, this._handleKeyboardInteraction = (s) => {
|
|
186
186
|
s.key === " " && this._handleUserInteraction();
|
|
@@ -197,10 +197,10 @@ const Y = (n) => {
|
|
|
197
197
|
return this._checked;
|
|
198
198
|
}
|
|
199
199
|
connectedCallback() {
|
|
200
|
-
super.connectedCallback(), this.addEventListener("click", this._handleUserInteraction), this.addEventListener("keydown",
|
|
200
|
+
super.connectedCallback(), this.addEventListener("click", this._handleUserInteraction), this.addEventListener("keydown", u), this.addEventListener("keyup", this._handleKeyboardInteraction);
|
|
201
201
|
}
|
|
202
202
|
disconnectedCallback() {
|
|
203
|
-
super.disconnectedCallback(), this.removeEventListener("click", this._handleUserInteraction), this.removeEventListener("keydown",
|
|
203
|
+
super.disconnectedCallback(), this.removeEventListener("click", this._handleUserInteraction), this.removeEventListener("keydown", u), this.removeEventListener("keyup", this._handleKeyboardInteraction);
|
|
204
204
|
}
|
|
205
205
|
attributeChangedCallback(s, t, e) {
|
|
206
206
|
(s !== "checked" || !this._attributeMutationBlocked) && super.attributeChangedCallback(s, t, e);
|
|
@@ -229,53 +229,39 @@ const Y = (n) => {
|
|
|
229
229
|
this.checked ? this.internals.setFormValue(this.value, `${this.checked}`) : this.internals.setFormValue(null);
|
|
230
230
|
}
|
|
231
231
|
};
|
|
232
|
-
return
|
|
232
|
+
return v([
|
|
233
233
|
o({
|
|
234
234
|
type: Boolean,
|
|
235
235
|
converter: {
|
|
236
|
-
...
|
|
236
|
+
...b,
|
|
237
237
|
// We need to pass information to the setter so that we know it was called by attribute change.
|
|
238
238
|
fromAttribute: (s, t) => {
|
|
239
239
|
var i, a;
|
|
240
|
-
return { value: (a = (i =
|
|
240
|
+
return { value: (a = (i = b).fromAttribute) == null ? void 0 : a.call(i, s, t), attribute: !0 };
|
|
241
241
|
}
|
|
242
242
|
}
|
|
243
243
|
})
|
|
244
|
-
], r.prototype, "checked", 1), r =
|
|
245
|
-
|
|
244
|
+
], r.prototype, "checked", 1), r = v([
|
|
245
|
+
C({
|
|
246
246
|
tabindex: "0"
|
|
247
247
|
})
|
|
248
248
|
], r), r;
|
|
249
|
-
},
|
|
249
|
+
}, U = (n) => {
|
|
250
250
|
class r extends n {
|
|
251
|
-
constructor() {
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
251
|
+
constructor(...t) {
|
|
252
|
+
var e;
|
|
253
|
+
if (super(...t), this._hydrationComplete = new Promise(
|
|
254
|
+
(i) => this._resolveHydration = i
|
|
255
|
+
), this._handleBeforeHydrationSlotchange = (i) => {
|
|
255
256
|
if (!this._hydrationRequired)
|
|
256
257
|
return;
|
|
257
|
-
|
|
258
|
-
const
|
|
259
|
-
this.hydrationComplete.then(() =>
|
|
260
|
-
}
|
|
261
|
-
}
|
|
262
|
-
/**
|
|
263
|
-
* Returns a Promise that resolves when the element has completed hydration.
|
|
264
|
-
* The Promise value is a boolean that is `true` if the element required hydration
|
|
265
|
-
* and `false` if not.
|
|
266
|
-
*
|
|
267
|
-
* @return A promise of a boolean that resolves to true once the hydration completed.
|
|
268
|
-
* @internal
|
|
269
|
-
*/
|
|
270
|
-
get hydrationComplete() {
|
|
271
|
-
return this._hydrationComplete;
|
|
272
|
-
}
|
|
273
|
-
createRenderRoot() {
|
|
274
|
-
var t, e;
|
|
275
|
-
if (this._hydrationRequired = !!this.shadowRoot && B in globalThis && (b || !H), !this._hydrationRequired)
|
|
258
|
+
i.stopImmediatePropagation();
|
|
259
|
+
const a = i.target;
|
|
260
|
+
this.hydrationComplete.then(() => x(i, a));
|
|
261
|
+
}, this._hydrationRequired = !!this.shadowRoot, !this._hydrationRequired)
|
|
276
262
|
this._resolveHydration(!1);
|
|
277
263
|
else {
|
|
278
|
-
const i = (
|
|
264
|
+
const i = (e = this.shadowRoot) == null ? void 0 : e.querySelectorAll("slot");
|
|
279
265
|
i != null && i.length && (i.forEach(
|
|
280
266
|
(a) => a.addEventListener("slotchange", this._handleBeforeHydrationSlotchange, {
|
|
281
267
|
capture: !0
|
|
@@ -284,40 +270,45 @@ const Y = (n) => {
|
|
|
284
270
|
() => i.forEach(
|
|
285
271
|
(a) => a.removeEventListener("slotchange", this._handleBeforeHydrationSlotchange)
|
|
286
272
|
)
|
|
287
|
-
))
|
|
273
|
+
));
|
|
288
274
|
}
|
|
289
|
-
return super.createRenderRoot();
|
|
290
275
|
}
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
276
|
+
/**
|
|
277
|
+
* Returns a Promise that resolves when the element has completed hydration.
|
|
278
|
+
* The Promise value is a boolean that is `true` if the element required hydration
|
|
279
|
+
* and `false` if not.
|
|
280
|
+
*
|
|
281
|
+
* @return A promise of a boolean that resolves to true once the hydration completed.
|
|
282
|
+
* @internal
|
|
283
|
+
*/
|
|
284
|
+
get hydrationComplete() {
|
|
285
|
+
return this._hydrationComplete;
|
|
286
|
+
}
|
|
287
|
+
/** Returns whether hydration is required and not completed. */
|
|
288
|
+
get hydrationRequired() {
|
|
289
|
+
return this._hydrationRequired;
|
|
294
290
|
}
|
|
295
291
|
update(t) {
|
|
296
292
|
super.update(t), this._hydrationRequired && (this._hydrationRequired = !1, this._resolveHydration(!0));
|
|
297
293
|
}
|
|
298
|
-
/** Reads and removes an attribute with the given name. Either returns the attributte value or null. */
|
|
299
|
-
getAndRemoveAttribute(t) {
|
|
300
|
-
const e = this.getAttribute(t);
|
|
301
|
-
return this.removeAttribute(t), e;
|
|
302
|
-
}
|
|
303
294
|
}
|
|
304
295
|
return r;
|
|
305
296
|
};
|
|
306
|
-
var
|
|
297
|
+
var B = Object.defineProperty, I = (n, r, s, t) => {
|
|
307
298
|
for (var e = void 0, i = n.length - 1, a; i >= 0; i--)
|
|
308
299
|
(a = n[i]) && (e = a(r, s, e) || e);
|
|
309
|
-
return e &&
|
|
300
|
+
return e && B(r, s, e), e;
|
|
310
301
|
};
|
|
311
|
-
const
|
|
312
|
-
class r extends
|
|
302
|
+
const f = "data-ssr-child-count", m = "li", Q = (n) => {
|
|
303
|
+
class r extends U(n) {
|
|
313
304
|
constructor() {
|
|
314
305
|
super(...arguments), this.listChildren = [], this._handleSlotchange = () => {
|
|
315
306
|
const t = Array.from(this.children ?? []).filter(
|
|
316
307
|
(e) => this.listChildLocalNames.includes(e.localName)
|
|
317
308
|
);
|
|
318
309
|
t.length === this.listChildren.length && this.listChildren.every((e, i) => t[i] === e) || (this.listChildren.filter((e) => !t.includes(e)).forEach((e) => e.removeAttribute("slot")), this.listChildren = t, this.listChildren.forEach(
|
|
319
|
-
(e, i) => e.setAttribute("slot", `${
|
|
320
|
-
), this.removeAttribute(
|
|
310
|
+
(e, i) => e.setAttribute("slot", `${m}-${i}`)
|
|
311
|
+
), this.removeAttribute(f));
|
|
321
312
|
};
|
|
322
313
|
}
|
|
323
314
|
connectedCallback() {
|
|
@@ -341,15 +332,15 @@ const m = "data-ssr-child-count", _ = "li", Z = (n) => {
|
|
|
341
332
|
const e = this.listSlotNames();
|
|
342
333
|
return e.length >= 2 ? l`
|
|
343
334
|
<ul
|
|
344
|
-
class=${t.class || (this.localName ??
|
|
345
|
-
aria-label=${t.ariaLabel ||
|
|
346
|
-
aria-labelledby=${t.ariaLabelledby ||
|
|
335
|
+
class=${t.class || (this.localName ?? p(this))}
|
|
336
|
+
aria-label=${t.ariaLabel || h}
|
|
337
|
+
aria-labelledby=${t.ariaLabelledby || h}
|
|
347
338
|
>
|
|
348
339
|
${e.map((i) => l`<li><slot name=${i}></slot></li>`)}
|
|
349
340
|
</ul>
|
|
350
341
|
${this.renderHiddenSlot()}
|
|
351
342
|
` : e.length === 1 ? l`<sbb-screen-reader-only>${t.ariaLabel}</sbb-screen-reader-only>
|
|
352
|
-
<span class=${t.class || (this.localName ??
|
|
343
|
+
<span class=${t.class || (this.localName ?? p(this))}>
|
|
353
344
|
<span><slot name=${e[0]}></slot></span>
|
|
354
345
|
</span>
|
|
355
346
|
${this.renderHiddenSlot()} ` : this.renderHiddenSlot();
|
|
@@ -364,7 +355,7 @@ const m = "data-ssr-child-count", _ = "li", Z = (n) => {
|
|
|
364
355
|
* children to be passed via the `data-ssr-child-count` attribute value.
|
|
365
356
|
*/
|
|
366
357
|
listSlotNames() {
|
|
367
|
-
return (this.listChildren.length ? this.listChildren : Array.from({ length: +(this.getAttribute(
|
|
358
|
+
return (this.listChildren.length ? this.listChildren : Array.from({ length: +(this.getAttribute(f) ?? 0) })).map((e, i) => `${m}-${i}`);
|
|
368
359
|
}
|
|
369
360
|
/**
|
|
370
361
|
* Returns a hidden slot, which is intended as the children change detection.
|
|
@@ -375,31 +366,31 @@ const m = "data-ssr-child-count", _ = "li", Z = (n) => {
|
|
|
375
366
|
return l`<span hidden><slot></slot></span>`;
|
|
376
367
|
}
|
|
377
368
|
}
|
|
378
|
-
return
|
|
379
|
-
|
|
369
|
+
return I([
|
|
370
|
+
_()
|
|
380
371
|
], r.prototype, "listChildren"), r;
|
|
381
372
|
};
|
|
382
|
-
var
|
|
373
|
+
var N = Object.defineProperty, H = (n, r, s, t) => {
|
|
383
374
|
for (var e = void 0, i = n.length - 1, a; i >= 0; i--)
|
|
384
375
|
(a = n[i]) && (e = a(r, s, e) || e);
|
|
385
|
-
return e &&
|
|
376
|
+
return e && N(r, s, e), e;
|
|
386
377
|
};
|
|
387
|
-
const
|
|
378
|
+
const W = (n) => {
|
|
388
379
|
class r extends n {
|
|
389
380
|
constructor() {
|
|
390
381
|
super(...arguments), this.negative = !1;
|
|
391
382
|
}
|
|
392
383
|
}
|
|
393
|
-
return
|
|
384
|
+
return H([
|
|
394
385
|
o({ reflect: !0, type: Boolean })
|
|
395
386
|
], r.prototype, "negative"), r;
|
|
396
387
|
};
|
|
397
|
-
var
|
|
388
|
+
var V = Object.defineProperty, c = (n, r, s, t) => {
|
|
398
389
|
for (var e = void 0, i = n.length - 1, a; i >= 0; i--)
|
|
399
390
|
(a = n[i]) && (e = a(r, s, e) || e);
|
|
400
|
-
return e &&
|
|
391
|
+
return e && V(r, s, e), e;
|
|
401
392
|
};
|
|
402
|
-
const
|
|
393
|
+
const Y = (n) => {
|
|
403
394
|
var t;
|
|
404
395
|
const r = (t = class extends n {
|
|
405
396
|
constructor() {
|
|
@@ -422,7 +413,7 @@ const te = (n) => {
|
|
|
422
413
|
], r.prototype, "borderless"), c([
|
|
423
414
|
o()
|
|
424
415
|
], r.prototype, "expansionState"), r;
|
|
425
|
-
},
|
|
416
|
+
}, Z = (n) => {
|
|
426
417
|
class r extends n {
|
|
427
418
|
constructor() {
|
|
428
419
|
super(...arguments), this._updatePromise = Promise.resolve(), this._updateResolve = () => {
|
|
@@ -440,17 +431,17 @@ const te = (n) => {
|
|
|
440
431
|
}
|
|
441
432
|
}
|
|
442
433
|
return r;
|
|
443
|
-
},
|
|
434
|
+
}, ee = y`:host{--sbb-selection-panel-background: var( --sbb-selection-expansion-panel-inner-background, var(--sbb-color-white) );--sbb-selection-panel-border-color: var(--sbb-color-cloud);--sbb-selection-panel-border-radius: var( --sbb-selection-expansion-panel-border-radius, var(--sbb-border-radius-4x) );--sbb-selection-panel-border-width: var( --sbb-selection-expansion-panel-inner-border-width, var(--sbb-border-width-1x) );--sbb-selection-panel-input-padding: var(--sbb-spacing-responsive-xs) var(--sbb-spacing-responsive-xxs);--sbb-selection-panel-animation-duration: var( --sbb-disable-animation-zero-time, var(--sbb-animation-duration-4x) );--sbb-selection-panel-cursor: pointer;--sbb-selection-panel-suffix-color: var(--sbb-color-charcoal);--sbb-selection-panel-subtext-color: var(--sbb-color-granite);display:block;outline:none!important}:host([color=milk]){--sbb-selection-panel-background: var( --sbb-selection-expansion-panel-inner-background, var(--sbb-color-milk) )}:host([borderless]:not([data-checked])){--sbb-selection-panel-border-color: transparent}:host(:is([data-checked]):not(:disabled,[disabled])){--sbb-selection-panel-border-color: var(--sbb-color-charcoal);--sbb-selection-panel-border-width: var( --sbb-selection-expansion-panel-inner-border-width, var(--sbb-border-width-2x) )}:host(:is(:disabled,[disabled])){--sbb-selection-panel-cursor: default}.sbb-selection-panel{display:block;cursor:var(--sbb-selection-panel-cursor);position:relative;border-radius:var(--sbb-selection-panel-border-radius);box-shadow:inset 0 0 0 var(--sbb-selection-panel-border-width) var(--sbb-selection-panel-border-color);padding:var(--sbb-selection-panel-input-padding);background-color:var(--sbb-selection-panel-background);transition-duration:var(--sbb-selection-panel-animation-duration);transition-timing-function:var(--sbb-animation-easing);transition-property:box-shadow}@media (forced-colors: active){.sbb-selection-panel:after{content:"";display:block;position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border:var(--sbb-selection-panel-border-width) solid var(--sbb-selection-panel-border-color);border-radius:var(--sbb-selection-panel-border-radius)}}:host(:focus-visible) .sbb-selection-panel{outline-offset:var(--sbb-focus-outline-offset);outline:var(--sbb-focus-outline-color) solid var(--sbb-focus-outline-width)}.sbb-selection-panel__badge{-webkit-user-select:none;user-select:none;pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--sbb-selection-panel-border-radius);overflow:hidden}slot[name=suffix]{color:var(--sbb-selection-panel-suffix-color)}slot[name=subtext]{display:block;color:var(--sbb-selection-panel-subtext-color);padding-inline-start:var(--sbb-spacing-fixed-8x)}:host(:not([data-slot-names~=subtext])) slot[name=subtext]{display:none}`;
|
|
444
435
|
export {
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
436
|
+
g as SbbDisabledMixin,
|
|
437
|
+
G as SbbDisabledTabIndexActionMixin,
|
|
438
|
+
J as SbbFormAssociatedCheckboxMixin,
|
|
439
|
+
R as SbbFormAssociatedMixin,
|
|
440
|
+
U as SbbHydrationMixin,
|
|
441
|
+
Q as SbbNamedSlotListMixin,
|
|
442
|
+
W as SbbNegativeMixin,
|
|
443
|
+
Y as SbbPanelMixin,
|
|
444
|
+
L as SbbRequiredMixin,
|
|
445
|
+
Z as SbbUpdateSchedulerMixin,
|
|
446
|
+
ee as panelCommonStyle
|
|
456
447
|
};
|
|
@@ -8,7 +8,7 @@ export declare class NodeIntersectionObserver implements IntersectionObserver {
|
|
|
8
8
|
unobserve(): void;
|
|
9
9
|
}
|
|
10
10
|
export declare const AgnosticIntersectionObserver: typeof NodeIntersectionObserver | {
|
|
11
|
-
new (callback: IntersectionObserverCallback, options?: IntersectionObserverInit
|
|
11
|
+
new (callback: IntersectionObserverCallback, options?: IntersectionObserverInit): IntersectionObserver;
|
|
12
12
|
prototype: IntersectionObserver;
|
|
13
13
|
};
|
|
14
14
|
//# sourceMappingURL=intersection-observer.d.ts.map
|
package/core/styles/_index.scss
CHANGED
|
@@ -118,7 +118,7 @@
|
|
|
118
118
|
color: var(--sbb-button-color-default-text);
|
|
119
119
|
cursor: pointer;
|
|
120
120
|
user-select: none;
|
|
121
|
-
display:
|
|
121
|
+
display: flex;
|
|
122
122
|
|
|
123
123
|
// Renders background and border in the background absolute to enable the hover animation
|
|
124
124
|
&::before {
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
@use './typo';
|
|
2
|
+
|
|
3
|
+
/*
|
|
4
|
+
* SBB table mixin
|
|
5
|
+
* Notes:
|
|
6
|
+
* We cannot use `border-collapse` because it is not compatible with the `border-radius` property.
|
|
7
|
+
* Therefore, we have to build the grid avoiding double borders.
|
|
8
|
+
*/
|
|
9
|
+
@mixin table {
|
|
10
|
+
@include table--striped;
|
|
11
|
+
@include table--m;
|
|
12
|
+
|
|
13
|
+
--sbb-table-border: var(--sbb-border-width-1x) solid var(--sbb-table-border-color);
|
|
14
|
+
--sbb-table-border-color: var(--sbb-color-cloud);
|
|
15
|
+
--sbb-table-border-radius: var(--sbb-border-radius-4x);
|
|
16
|
+
--sbb-table-background-color: var(--sbb-color-white);
|
|
17
|
+
--sbb-table-row-striped-color: var(--sbb-color-milk);
|
|
18
|
+
--sbb-table-color: inherit;
|
|
19
|
+
--sbb-table-caption-color: var(--sbb-color-granite);
|
|
20
|
+
--sbb-table-caption-margin-block-start: var(--sbb-spacing-fixed-4x);
|
|
21
|
+
|
|
22
|
+
background-color: var(--sbb-table-background-color);
|
|
23
|
+
border: var(--sbb-table-border);
|
|
24
|
+
border-radius: var(--sbb-table-border-radius);
|
|
25
|
+
border-spacing: 0;
|
|
26
|
+
caption-side: bottom;
|
|
27
|
+
color: var(--sbb-table-color);
|
|
28
|
+
table-layout: auto;
|
|
29
|
+
|
|
30
|
+
thead {
|
|
31
|
+
& > tr > th {
|
|
32
|
+
@include table-header-cell;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
tbody {
|
|
37
|
+
& > tr {
|
|
38
|
+
@include table-data-row;
|
|
39
|
+
|
|
40
|
+
& > td {
|
|
41
|
+
@include table-data-cell;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
caption {
|
|
47
|
+
@include table-caption;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
@mixin table-header-cell {
|
|
52
|
+
@include typo.text-xs--bold;
|
|
53
|
+
|
|
54
|
+
border-bottom: var(--sbb-table-border);
|
|
55
|
+
border-right: var(--sbb-table-border);
|
|
56
|
+
padding-block: var(--sbb-table-header-padding-block);
|
|
57
|
+
padding-inline: var(--sbb-table-header-padding-inline);
|
|
58
|
+
text-align: left;
|
|
59
|
+
|
|
60
|
+
// To avoid double border
|
|
61
|
+
&:last-of-type {
|
|
62
|
+
border-right: none;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
@mixin table-data-row {
|
|
67
|
+
// To avoid double borders
|
|
68
|
+
&:first-of-type td {
|
|
69
|
+
border-top: none;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
@mixin table-data-cell {
|
|
74
|
+
@include typo.text-s--regular;
|
|
75
|
+
|
|
76
|
+
border-top: var(--sbb-table-border);
|
|
77
|
+
border-right: var(--sbb-table-border);
|
|
78
|
+
padding-block: var(--sbb-table-cell-padding-block);
|
|
79
|
+
padding-inline: var(--sbb-table-cell-padding-inline);
|
|
80
|
+
|
|
81
|
+
// To avoid double border
|
|
82
|
+
&:last-of-type {
|
|
83
|
+
border-right: none;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
@mixin table-caption {
|
|
88
|
+
@include typo.text-xs--regular;
|
|
89
|
+
|
|
90
|
+
// Defaults are needed for cases where the caption is used outside a table
|
|
91
|
+
color: var(--sbb-table-caption-color, var(--sbb-color-granite));
|
|
92
|
+
margin-block-start: var(--sbb-table-caption-margin-block-start, var(--sbb-spacing-fixed-4x));
|
|
93
|
+
text-align: left;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
@mixin table--striped {
|
|
97
|
+
tbody tr:nth-child(odd) {
|
|
98
|
+
@include table-row--striped;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
@mixin table--unstriped {
|
|
103
|
+
tbody tr:nth-child(odd) {
|
|
104
|
+
background-color: unset;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
@mixin table-row--striped {
|
|
109
|
+
background-color: var(--sbb-table-row-striped-color);
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
@mixin table--negative {
|
|
113
|
+
--sbb-table-border-color: var(--sbb-color-anthracite);
|
|
114
|
+
--sbb-table-background-color: var(--sbb-color-midnight);
|
|
115
|
+
--sbb-table-color: var(--sbb-color-white);
|
|
116
|
+
--sbb-table-row-striped-color: var(--sbb-color-charcoal);
|
|
117
|
+
--sbb-table-caption-color: var(--sbb-color-cement);
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
@mixin table--m {
|
|
121
|
+
--sbb-table-header-padding-block: var(--sbb-spacing-fixed-3x);
|
|
122
|
+
--sbb-table-header-padding-inline: var(--sbb-spacing-fixed-4x);
|
|
123
|
+
--sbb-table-cell-padding-block: var(--sbb-spacing-responsive-xxxs);
|
|
124
|
+
--sbb-table-cell-padding-inline: var(--sbb-spacing-fixed-4x);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
@mixin table--s {
|
|
128
|
+
--sbb-table-header-padding-block: var(--sbb-spacing-fixed-1x);
|
|
129
|
+
--sbb-table-header-padding-inline: var(--sbb-spacing-fixed-2x);
|
|
130
|
+
--sbb-table-cell-padding-block: var(--sbb-spacing-fixed-1x);
|
|
131
|
+
--sbb-table-cell-padding-inline: var(--sbb-spacing-fixed-2x);
|
|
132
|
+
|
|
133
|
+
tbody > tr > td {
|
|
134
|
+
@include typo.text-xs--regular;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
@mixin table--theme-iron {
|
|
139
|
+
--sbb-table-cell-color: var(--sbb-color-iron);
|
|
140
|
+
|
|
141
|
+
tbody > tr > td {
|
|
142
|
+
color: var(--sbb-table-cell-color);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
@mixin table--theme-iron-negative {
|
|
147
|
+
--sbb-table-cell-color: var(--sbb-color-cloud);
|
|
148
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
@use './mixins/table';
|
|
2
|
+
|
|
3
|
+
.sbb-table,
|
|
4
|
+
.sbb-table-m,
|
|
5
|
+
.sbb-table-s {
|
|
6
|
+
@include table.table;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.sbb-table-m {
|
|
10
|
+
@include table.table--m;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.sbb-table-s {
|
|
14
|
+
@include table.table--s;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
sbb-table-wrapper[negative] .sbb-table,
|
|
18
|
+
.sbb-table--negative {
|
|
19
|
+
@include table.table--negative;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.sbb-table--striped {
|
|
23
|
+
@include table.table--striped;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.sbb-table--unstriped {
|
|
27
|
+
@include table.table--unstriped;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.sbb-table--theme-iron {
|
|
31
|
+
@include table.table--theme-iron;
|
|
32
|
+
|
|
33
|
+
&.sbb-table--negative {
|
|
34
|
+
@include table.table--theme-iron-negative;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.sbb-table-header-cell {
|
|
39
|
+
@include table.table-header-cell;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.sbb-table-data-row {
|
|
43
|
+
@include table.table-data-row;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.sbb-table-row--striped {
|
|
47
|
+
@include table.table-row--striped;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.sbb-table-data-cell {
|
|
51
|
+
@include table.table-data-cell;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.sbb-table-caption {
|
|
55
|
+
@include table.table-caption;
|
|
56
|
+
}
|
|
@@ -5,7 +5,6 @@ export * from './private/dispatch-events.js';
|
|
|
5
5
|
export * from './private/event-objects.js';
|
|
6
6
|
export * from './private/fixture.js';
|
|
7
7
|
export * from './private/load-asset-as-base64.js';
|
|
8
|
-
export * from './private/platform.js';
|
|
9
8
|
export * from './private/type-in-element.js';
|
|
10
9
|
export * from './private/visual-regression-snapshot.js';
|
|
11
10
|
//# sourceMappingURL=private.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"private.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/testing/private.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,mCAAmC,CAAC;AAClD,cAAc,
|
|
1
|
+
{"version":3,"file":"private.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/testing/private.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,mCAAmC,CAAC;AAClD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yCAAyC,CAAC"}
|
|
@@ -14,5 +14,5 @@ export declare const isReactiveElement: (element: Element) => element is Reactiv
|
|
|
14
14
|
*
|
|
15
15
|
* @param root a parent node to wait for rendering on.
|
|
16
16
|
*/
|
|
17
|
-
export declare const waitForLitRender: (
|
|
17
|
+
export declare const waitForLitRender: <T extends HTMLElement | DocumentFragment = HTMLElement | DocumentFragment>(node: T | Promise<T>) => Promise<T>;
|
|
18
18
|
//# sourceMappingURL=wait-for-render.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wait-for-render.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/testing/wait-for-render.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,KAAK,CAAC;AAE3C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAE1D;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,YACnB,OAAO,
|
|
1
|
+
{"version":3,"file":"wait-for-render.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/testing/wait-for-render.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,KAAK,CAAC;AAE3C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAE1D;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,YACnB,OAAO,KACf,OAAO,IAAI,eAAe,GAAG,OAAO,CAAC,qBAAqB,CAE5D,CAAC;AAIF;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAC3B,CAAC,SAAS,WAAW,GAAG,gBAAgB,yCAElC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,KACnB,OAAO,CAAC,CAAC,CAeX,CAAC"}
|