@sbb-esta/lyne-elements-dev 4.9.0-dev.1775120732 → 4.9.0-dev.1775125441

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 (35) hide show
  1. package/core/styles/core.scss +9 -1
  2. package/core.css +25 -0
  3. package/development/tag/tag/tag.component.js +1 -1
  4. package/development/tag/tag-group/tag-group.component.d.ts.map +1 -1
  5. package/development/tag/tag-group/tag-group.component.js +1 -1
  6. package/development/tag/tag-group.js +1 -1
  7. package/development/tag/tag.js +1 -1
  8. package/development/{tag-group.component-B7bBirrj.js → tag-group.component-Cw46bt0E.js} +2 -4
  9. package/development/tag.component-CnNPL6aI.js +245 -0
  10. package/development/tag.js +2 -2
  11. package/development/tag.pure.js +2 -2
  12. package/development/teaser/teaser.component.js +1 -1
  13. package/development/teaser.component-Cky6kKU0.js +118 -0
  14. package/development/teaser.js +1 -1
  15. package/development/teaser.pure.js +1 -1
  16. package/off-brand-theme.css +25 -0
  17. package/package.json +2 -2
  18. package/safety-theme.css +25 -0
  19. package/standard-theme.css +25 -0
  20. package/tag/tag/tag.component.js +1 -1
  21. package/tag/tag-group/tag-group.component.js +1 -1
  22. package/tag/tag-group.js +1 -1
  23. package/tag/tag.js +1 -1
  24. package/{tag-group.component-DyEB8c6w.js → tag-group.component-DkQVBbQY.js} +1 -3
  25. package/tag.component-CzYJZuFT.js +170 -0
  26. package/tag.js +2 -2
  27. package/tag.pure.js +2 -2
  28. package/teaser/teaser.component.js +1 -1
  29. package/teaser.component-WZL0vAo9.js +91 -0
  30. package/teaser.js +1 -1
  31. package/teaser.pure.js +1 -1
  32. package/development/tag.component-0vKnvMOm.js +0 -245
  33. package/development/teaser.component-C63t0z1I.js +0 -118
  34. package/tag.component-C3ogN9Th.js +0 -170
  35. package/teaser.component-u1uLVhwo.js +0 -91
@@ -1,245 +0,0 @@
1
- import { __esDecorate, __runInitializers } from "tslib";
2
- import { html, unsafeCSS } from "lit";
3
- import { property } from "lit/decorators.js";
4
- import { SbbButtonLikeBaseElement } from "./core/base-elements.js";
5
- import { forceType, getOverride, omitEmptyConverter } from "./core/decorators.js";
6
- import { isLean } from "./core/dom.js";
7
- import { SbbDisabledTabIndexActionMixin } from "./core/mixins.js";
8
- import { boxSizingStyles } from "./core/styles.js";
9
- import { SbbIconNameMixin } from "./icon.js";
10
- //#region src/elements/tag/tag/tag.scss?inline
11
- var tag_default = ":host {\n display: inline-block;\n outline: none !important;\n max-width: 100%;\n --sbb-tag-border-radius: var(--sbb-border-radius-infinity);\n --sbb-tag-background-color: var(--sbb-background-color-1);\n --sbb-tag-border-color: var(--sbb-border-color-4-inverted);\n --sbb-tag-border-style: solid;\n --sbb-tag-border-width: var(--sbb-border-width-1x);\n --sbb-tag-text-color: var(--sbb-color-2);\n --sbb-tag-amount-color: var(--sbb-color-metal);\n --sbb-tag-amount-color: light-dark(var(--sbb-color-metal), var(--sbb-color-smoke));\n --sbb-tag-height: var(--sbb-size-element-xs);\n --sbb-tag-inset: 0;\n --sbb-tag-cursor: var(--sbb-cursor-pointer);\n --sbb-tag-content-shift: translateY(0);\n --sbb-tag-animation-duration: var(\n --sbb-disable-animation-duration,\n var(--sbb-animation-duration-2x)\n );\n --sbb-tag-animation-easing: var(--sbb-animation-easing);\n --sbb-tag-padding-inline: var(--sbb-spacing-fixed-5x);\n --sbb-tag-gap: var(--sbb-spacing-fixed-2x);\n}\n@media (forced-colors: active) {\n :host {\n --sbb-tag-background-color: Canvas !important;\n --sbb-tag-text-color: ButtonText;\n --sbb-tag-amount-color: ButtonText;\n --sbb-tag-border-color: CanvasText;\n --sbb-tag-border-width: var(--sbb-border-width-2x);\n }\n}\n\n:host(:is(:state(checked),[state--checked])) {\n --sbb-tag-border-color: var(--sbb-border-color-3);\n --sbb-tag-border-width: var(--sbb-border-width-2x);\n}\n@media (forced-colors: active) {\n :host(:is(:state(checked),[state--checked])) {\n --sbb-tag-border-color: Highlight !important;\n --sbb-tag-border-width: var(--sbb-border-width-4x);\n }\n}\n\n:host(:is(:disabled, [disabled-interactive])) {\n --sbb-tag-text-color: var(--sbb-color-granite);\n --sbb-tag-text-color: light-dark(var(--sbb-color-granite), var(--sbb-color-aluminium));\n --sbb-tag-amount-color: var(--sbb-tag-text-color);\n --sbb-tag-background-color: var(--sbb-background-color-3);\n --sbb-tag-border-color: var(--sbb-color-cement);\n --sbb-tag-border-color: light-dark(var(--sbb-color-cement), var(--sbb-color-smoke));\n --sbb-tag-border-style: dashed;\n --sbb-tag-cursor: unset;\n --sbb-tag-pointer-events: none;\n}\n@media (forced-colors: active) {\n :host(:is(:disabled, [disabled-interactive])) {\n --sbb-tag-text-color: GrayText;\n --sbb-tag-amount-color: GrayText;\n --sbb-tag-border-color: GrayText;\n }\n}\n\n:host(:is(:state(checked),[state--checked]):is(:disabled, [disabled-interactive])) {\n --sbb-tag-border-color: var(--sbb-color-metal);\n --sbb-tag-border-color: light-dark(var(--sbb-color-metal), var(--sbb-color-cement));\n --sbb-tag-border-style: dashed;\n}\n\n@media (any-hover: hover) {\n :host(:hover:not(:disabled, [disabled-interactive], :active, :is(:state(active),[state--active]))) {\n --sbb-tag-background-color: var(--sbb-background-color-3);\n --sbb-tag-inset: calc(var(--sbb-border-width-2x) * -1);\n --sbb-tag-content-shift: translateY(calc(var(--sbb-border-width-1x) * -1));\n }\n}\n@media (any-hover: hover) and (forced-colors: active) {\n :host(:hover:not(:disabled, [disabled-interactive], :active, :is(:state(active),[state--active]))) {\n --sbb-tag-border-color: Highlight;\n }\n}\n\n:host(:is(:active, :is(:state(active),[state--active])):not(:disabled, [disabled-interactive])) {\n --sbb-tag-background-color: var(--sbb-background-color-3);\n --sbb-tag-border-color: var(--sbb-color-iron);\n --sbb-tag-border-color: light-dark(var(--sbb-color-iron), var(--sbb-color-storm));\n --sbb-tag-border-width: var(--sbb-border-width-2x);\n --sbb-tag-text-color: var(--sbb-color-4);\n}\n@media (forced-colors: active) {\n :host(:is(:active, :is(:state(active),[state--active])):not(:disabled, [disabled-interactive])) {\n --sbb-tag-border-color: Highlight;\n --sbb-tag-text-color: ButtonText;\n }\n}\n\n:host([size=s]) {\n --sbb-tag-height: var(--sbb-size-element-xxxs);\n --sbb-tag-padding-inline: var(--sbb-spacing-fixed-3x);\n}\n\n.sbb-tag {\n --sbb-text-font-size: var(--sbb-text-font-size-xs);\n font-family: var(--sbb-typo-font-family);\n font-weight: normal;\n line-height: var(--sbb-typo-line-height-text);\n letter-spacing: var(--sbb-typo-letter-spacing-text);\n font-size: var(--sbb-text-font-size);\n font-weight: bold;\n position: relative;\n display: flex;\n align-items: center;\n height: var(--sbb-tag-height);\n max-width: 100%;\n gap: var(--sbb-tag-gap);\n padding-inline: var(--sbb-tag-padding-inline);\n cursor: var(--sbb-tag-cursor);\n border-radius: var(--sbb-tag-border-radius);\n color: var(--sbb-tag-text-color);\n transition: color var(--sbb-tag-animation-duration) var(--sbb-tag-animation-easing);\n -webkit-tap-highlight-color: transparent;\n user-select: none;\n pointer-events: var(--sbb-tag-pointer-events, unset);\n}\n.sbb-tag::before {\n content: \"\";\n position: absolute;\n inset: var(--sbb-tag-inset);\n background-color: var(--sbb-tag-background-color);\n border: var(--sbb-tag-border-width) var(--sbb-tag-border-style) var(--sbb-tag-border-color);\n border-radius: var(--sbb-tag-border-radius);\n transition-duration: var(--sbb-tag-animation-duration);\n transition-timing-function: var(--sbb-tag-animation-easing);\n transition-property: inset, background-color, border-color, box-shadow;\n}\n:host(:focus-visible) .sbb-tag::before {\n outline-offset: var(--sbb-focus-outline-offset);\n outline: var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width);\n}\n\n.sbb-tag__icon {\n display: flex;\n align-items: center;\n height: calc(var(--sbb-typo-line-height-text) * 1em);\n flex-shrink: 0;\n}\n:host(:not(:is(:state(slotted-icon),[state--slotted-icon]), :is(:state(has-icon-name),[state--has-icon-name]))) .sbb-tag__icon {\n display: none;\n}\n\n.sbb-tag__text {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\n.sbb-tag__amount {\n --sbb-text-font-size: var(--sbb-text-font-size-xs);\n font-family: var(--sbb-typo-font-family);\n font-weight: normal;\n line-height: var(--sbb-typo-line-height-text);\n letter-spacing: var(--sbb-typo-letter-spacing-text);\n font-size: var(--sbb-text-font-size);\n color: var(--sbb-tag-amount-color);\n}\n:host(:not(:is(:state(slotted-amount),[state--slotted-amount]), [amount])) .sbb-tag__amount {\n display: none;\n}\n\n.sbb-tag--shift {\n transition: transform var(--sbb-tag-animation-duration) var(--sbb-tag-animation-easing);\n transform: var(--sbb-tag-content-shift);\n will-change: transform;\n}";
12
- //#endregion
13
- //#region src/elements/tag/tag/tag.component.ts
14
- /**
15
- * It displays a selectable element which can be used as a filter.
16
- *
17
- * @slot - Use the unnamed slot to add content to the tag label.
18
- * @slot icon - Use this slot to display an icon at the component start, by providing a `sbb-icon` component.
19
- * @slot amount - Provide an amount to show it at the component end.
20
- * @overrideType value - (T = string) | null
21
- */
22
- var SbbTagElement = (() => {
23
- let _classSuper = SbbIconNameMixin(SbbDisabledTabIndexActionMixin(SbbButtonLikeBaseElement));
24
- let _value_decorators;
25
- let _value_initializers = [];
26
- let _value_extraInitializers = [];
27
- let _amount_decorators;
28
- let _amount_initializers = [];
29
- let _amount_extraInitializers = [];
30
- let _checked_decorators;
31
- let _checked_initializers = [];
32
- let _checked_extraInitializers = [];
33
- let _size_decorators;
34
- let _size_initializers = [];
35
- let _size_extraInitializers = [];
36
- return class SbbTagElement extends _classSuper {
37
- static {
38
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
39
- _value_decorators = [property()];
40
- _amount_decorators = [forceType(), property({
41
- reflect: true,
42
- converter: omitEmptyConverter
43
- })];
44
- _checked_decorators = [forceType(), property({
45
- reflect: false,
46
- type: Boolean
47
- })];
48
- _size_decorators = [property({ reflect: true }), getOverride((i, v) => i._group?.size ?? v)];
49
- __esDecorate(this, null, _value_decorators, {
50
- kind: "accessor",
51
- name: "value",
52
- static: false,
53
- private: false,
54
- access: {
55
- has: (obj) => "value" in obj,
56
- get: (obj) => obj.value,
57
- set: (obj, value) => {
58
- obj.value = value;
59
- }
60
- },
61
- metadata: _metadata
62
- }, _value_initializers, _value_extraInitializers);
63
- __esDecorate(this, null, _amount_decorators, {
64
- kind: "accessor",
65
- name: "amount",
66
- static: false,
67
- private: false,
68
- access: {
69
- has: (obj) => "amount" in obj,
70
- get: (obj) => obj.amount,
71
- set: (obj, value) => {
72
- obj.amount = value;
73
- }
74
- },
75
- metadata: _metadata
76
- }, _amount_initializers, _amount_extraInitializers);
77
- __esDecorate(this, null, _checked_decorators, {
78
- kind: "accessor",
79
- name: "checked",
80
- static: false,
81
- private: false,
82
- access: {
83
- has: (obj) => "checked" in obj,
84
- get: (obj) => obj.checked,
85
- set: (obj, value) => {
86
- obj.checked = value;
87
- }
88
- },
89
- metadata: _metadata
90
- }, _checked_initializers, _checked_extraInitializers);
91
- __esDecorate(this, null, _size_decorators, {
92
- kind: "accessor",
93
- name: "size",
94
- static: false,
95
- private: false,
96
- access: {
97
- has: (obj) => "size" in obj,
98
- get: (obj) => obj.size,
99
- set: (obj, value) => {
100
- obj.size = value;
101
- }
102
- },
103
- metadata: _metadata
104
- }, _size_initializers, _size_extraInitializers);
105
- if (_metadata) Object.defineProperty(this, Symbol.metadata, {
106
- enumerable: true,
107
- configurable: true,
108
- writable: true,
109
- value: _metadata
110
- });
111
- }
112
- static {
113
- this.elementName = "sbb-tag";
114
- }
115
- static {
116
- this.styles = [boxSizingStyles, unsafeCSS(tag_default)];
117
- }
118
- static {
119
- this.events = {
120
- input: "input",
121
- didChange: "didChange",
122
- change: "change"
123
- };
124
- }
125
- #value_accessor_storage;
126
- /** Value of the form element. */
127
- get value() {
128
- return this.#value_accessor_storage;
129
- }
130
- set value(value) {
131
- this.#value_accessor_storage = value;
132
- }
133
- #amount_accessor_storage;
134
- /** Amount displayed inside the tag. */
135
- get amount() {
136
- return this.#amount_accessor_storage;
137
- }
138
- set amount(value) {
139
- this.#amount_accessor_storage = value;
140
- }
141
- #checked_accessor_storage;
142
- /** Whether the tag is checked. */
143
- get checked() {
144
- return this.#checked_accessor_storage;
145
- }
146
- set checked(value) {
147
- this.#checked_accessor_storage = value;
148
- }
149
- #size_accessor_storage;
150
- /**
151
- * Tag size, either s or m.
152
- * @default 'm' / 's' (lean)
153
- */
154
- get size() {
155
- return this.#size_accessor_storage;
156
- }
157
- set size(value) {
158
- this.#size_accessor_storage = value;
159
- }
160
- constructor() {
161
- super();
162
- this.#value_accessor_storage = __runInitializers(this, _value_initializers, null);
163
- this.#amount_accessor_storage = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _amount_initializers, ""));
164
- this.#checked_accessor_storage = (__runInitializers(this, _amount_extraInitializers), __runInitializers(this, _checked_initializers, false));
165
- this.#size_accessor_storage = (__runInitializers(this, _checked_extraInitializers), __runInitializers(this, _size_initializers, isLean() ? "s" : "m"));
166
- /** Reference to the connected tag group. */
167
- this._group = (__runInitializers(this, _size_extraInitializers), null);
168
- this.addEventListener?.("click", () => this._handleClick());
169
- }
170
- connectedCallback() {
171
- super.connectedCallback();
172
- this._group = this.closest("sbb-tag-group");
173
- }
174
- isDisabledExternally() {
175
- return this._group?.disabled ?? false;
176
- }
177
- /** Method triggered on button click. Inverts the checked value and emits events. */
178
- _handleClick() {
179
- if (this.disabled) return;
180
- const tagGroup = this.closest("sbb-tag-group");
181
- if (tagGroup && !tagGroup.multiple && this.checked) return;
182
- this.checked = !this.checked;
183
- /** The input event fires when the value has been changed as a direct result of a user action. */
184
- this.dispatchEvent(new InputEvent("input", {
185
- bubbles: true,
186
- composed: true
187
- }));
188
- /**
189
- * The change event is fired when the user modifies the element's value.
190
- * Unlike the input event, the change event is not necessarily fired
191
- * for each alteration to an element's value.
192
- */
193
- this.dispatchEvent(new Event("change", { bubbles: true }));
194
- /**
195
- * Deprecated. Mirrors change event for React. Will be removed once React properly supports change events.
196
- * @deprecated
197
- */
198
- this.dispatchEvent(new Event("didChange", { bubbles: true }));
199
- }
200
- willUpdate(changedProperties) {
201
- super.willUpdate(changedProperties);
202
- if (changedProperties.has("checked")) {
203
- this.internals.ariaPressed = `${this.checked}`;
204
- this.toggleState("checked", this.checked);
205
- this.updateFormValue();
206
- }
207
- const tagGroup = this.closest?.("sbb-tag-group");
208
- if (tagGroup && !tagGroup.multiple && changedProperties.has("checked") && this.checked) tagGroup?.tags.filter((t) => t !== this).forEach((t) => t.checked = false);
209
- }
210
- /**
211
- * @internal
212
- */
213
- formResetCallback() {
214
- this.checked = this.hasAttribute("checked");
215
- }
216
- /**
217
- * @internal
218
- */
219
- formStateRestoreCallback(state, _reason) {
220
- if (state) this.checked = state === "true";
221
- }
222
- updateFormValue() {
223
- if (this.checked) super.updateFormValue();
224
- else this.internals.setFormValue(null);
225
- }
226
- formState() {
227
- return `${this.checked}`;
228
- }
229
- renderTemplate() {
230
- return html`
231
- <span class="sbb-tag__icon sbb-tag--shift"> ${this.renderIconSlot()} </span>
232
- <span class="sbb-tag__text sbb-tag--shift">
233
- <slot></slot>
234
- </span>
235
- <span class="sbb-tag__amount sbb-tag--shift">
236
- <slot name="amount">${this.amount}</slot>
237
- </span>
238
- `;
239
- }
240
- };
241
- })();
242
- //#endregion
243
- export { SbbTagElement as t };
244
-
245
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLmNvbXBvbmVudC0wdktudk1PbS5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy90YWcuc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy90YWcuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbiRkaXNhYmxlZDogJzpkaXNhYmxlZCwgW2Rpc2FibGVkLWludGVyYWN0aXZlXSc7XG4kYWN0aXZlOiAnOmFjdGl2ZSwgOnN0YXRlKGFjdGl2ZSknO1xuXG46aG9zdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAvLyBVc2UgIWltcG9ydGFudCBoZXJlIHRvIG5vdCBpbnRlcmZlcmUgd2l0aCBGaXJlZm94IGZvY3VzIHJpbmcgZGVmaW5pdGlvblxuICAvLyB3aGljaCBhcHBlYXJzIGluIG5vcm1hbGl6ZSBDU1Mgb2Ygc2V2ZXJhbCBmcmFtZXdvcmtzLlxuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogMTAwJTtcblxuICAtLXNiYi10YWctYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLWJvcmRlci1yYWRpdXMtaW5maW5pdHkpO1xuICAtLXNiYi10YWctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLWJhY2tncm91bmQtY29sb3ItMSk7XG4gIC0tc2JiLXRhZy1ib3JkZXItY29sb3I6IHZhcigtLXNiYi1ib3JkZXItY29sb3ItNC1pbnZlcnRlZCk7XG4gIC0tc2JiLXRhZy1ib3JkZXItc3R5bGU6IHNvbGlkO1xuICAtLXNiYi10YWctYm9yZGVyLXdpZHRoOiB2YXIoLS1zYmItYm9yZGVyLXdpZHRoLTF4KTtcbiAgLS1zYmItdGFnLXRleHQtY29sb3I6IHZhcigtLXNiYi1jb2xvci0yKTtcbiAgLS1zYmItdGFnLWFtb3VudC1jb2xvcjogbGlnaHQtZGFyayh2YXIoLS1zYmItY29sb3ItbWV0YWwpLCB2YXIoLS1zYmItY29sb3Itc21va2UpKTtcbiAgLS1zYmItdGFnLWhlaWdodDogdmFyKC0tc2JiLXNpemUtZWxlbWVudC14cyk7XG4gIC0tc2JiLXRhZy1pbnNldDogMDtcbiAgLS1zYmItdGFnLWN1cnNvcjogdmFyKC0tc2JiLWN1cnNvci1wb2ludGVyKTtcbiAgLS1zYmItdGFnLWNvbnRlbnQtc2hpZnQ6IHRyYW5zbGF0ZVkoMCk7XG4gIC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb246IHZhcihcbiAgICAtLXNiYi1kaXNhYmxlLWFuaW1hdGlvbi1kdXJhdGlvbixcbiAgICB2YXIoLS1zYmItYW5pbWF0aW9uLWR1cmF0aW9uLTJ4KVxuICApO1xuICAtLXNiYi10YWctYW5pbWF0aW9uLWVhc2luZzogdmFyKC0tc2JiLWFuaW1hdGlvbi1lYXNpbmcpO1xuICAtLXNiYi10YWctcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTV4KTtcbiAgLS1zYmItdGFnLWdhcDogdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtMngpO1xuXG4gIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAtLXNiYi10YWctYmFja2dyb3VuZC1jb2xvcjogQ2FudmFzICFpbXBvcnRhbnQ7XG4gICAgLS1zYmItdGFnLXRleHQtY29sb3I6IEJ1dHRvblRleHQ7XG4gICAgLS1zYmItdGFnLWFtb3VudC1jb2xvcjogQnV0dG9uVGV4dDtcbiAgICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBDYW52YXNUZXh0O1xuICAgIC0tc2JiLXRhZy1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuICB9XG59XG5cbi8vIEFjdGl2ZSBzdGF0ZVxuOmhvc3QoOnN0YXRlKGNoZWNrZWQpKSB7XG4gIC0tc2JiLXRhZy1ib3JkZXItY29sb3I6IHZhcigtLXNiYi1ib3JkZXItY29sb3ItMyk7XG4gIC0tc2JiLXRhZy1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuXG4gIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBIaWdobGlnaHQgIWltcG9ydGFudDtcbiAgICAtLXNiYi10YWctYm9yZGVyLXdpZHRoOiB2YXIoLS1zYmItYm9yZGVyLXdpZHRoLTR4KTtcbiAgfVxufVxuXG46aG9zdCg6aXMoI3skZGlzYWJsZWR9KSkge1xuICAtLXNiYi10YWctdGV4dC1jb2xvcjogbGlnaHQtZGFyayh2YXIoLS1zYmItY29sb3ItZ3Jhbml0ZSksIHZhcigtLXNiYi1jb2xvci1hbHVtaW5pdW0pKTtcbiAgLS1zYmItdGFnLWFtb3VudC1jb2xvcjogdmFyKC0tc2JiLXRhZy10ZXh0LWNvbG9yKTtcbiAgLS1zYmItdGFnLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTMpO1xuICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBsaWdodC1kYXJrKHZhcigtLXNiYi1jb2xvci1jZW1lbnQpLCB2YXIoLS1zYmItY29sb3Itc21va2UpKTtcbiAgLS1zYmItdGFnLWJvcmRlci1zdHlsZTogZGFzaGVkO1xuICAtLXNiYi10YWctY3Vyc29yOiB1bnNldDtcbiAgLS1zYmItdGFnLXBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAtLXNiYi10YWctdGV4dC1jb2xvcjogR3JheVRleHQ7XG4gICAgLS1zYmItdGFnLWFtb3VudC1jb2xvcjogR3JheVRleHQ7XG4gICAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogR3JheVRleHQ7XG4gIH1cbn1cblxuOmhvc3QoOnN0YXRlKGNoZWNrZWQpOmlzKCN7JGRpc2FibGVkfSkpIHtcbiAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogbGlnaHQtZGFyayh2YXIoLS1zYmItY29sb3ItbWV0YWwpLCB2YXIoLS1zYmItY29sb3ItY2VtZW50KSk7XG4gIC0tc2JiLXRhZy1ib3JkZXItc3R5bGU6IGRhc2hlZDtcbn1cblxuOmhvc3QoOmhvdmVyOm5vdCgjeyRkaXNhYmxlZH0sICN7JGFjdGl2ZX0pKSB7XG4gIEBpbmNsdWRlIHNiYi5ob3Zlci1tcSgkaG92ZXI6IHRydWUpIHtcbiAgICAtLXNiYi10YWctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLWJhY2tncm91bmQtY29sb3ItMyk7XG4gICAgLS1zYmItdGFnLWluc2V0OiBjYWxjKHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpICogLTEpO1xuICAgIC0tc2JiLXRhZy1jb250ZW50LXNoaWZ0OiB0cmFuc2xhdGVZKGNhbGModmFyKC0tc2JiLWJvcmRlci13aWR0aC0xeCkgKiAtMSkpO1xuXG4gICAgQGluY2x1ZGUgc2JiLmlmLWZvcmNlZC1jb2xvcnMge1xuICAgICAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogSGlnaGxpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4vLyBQcmVzc2VkIHN0YXRlXG46aG9zdCg6aXMoI3skYWN0aXZlfSk6bm90KCN7JGRpc2FibGVkfSkpIHtcbiAgLS1zYmItdGFnLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTMpO1xuICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBsaWdodC1kYXJrKHZhcigtLXNiYi1jb2xvci1pcm9uKSwgdmFyKC0tc2JiLWNvbG9yLXN0b3JtKSk7XG4gIC0tc2JiLXRhZy1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuICAtLXNiYi10YWctdGV4dC1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLTQpO1xuXG4gIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBIaWdobGlnaHQ7XG4gICAgLS1zYmItdGFnLXRleHQtY29sb3I6IEJ1dHRvblRleHQ7XG4gIH1cbn1cblxuOmhvc3QoW3NpemU9J3MnXSkge1xuICAtLXNiYi10YWctaGVpZ2h0OiB2YXIoLS1zYmItc2l6ZS1lbGVtZW50LXh4eHMpO1xuICAtLXNiYi10YWctcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTN4KTtcbn1cblxuLnNiYi10YWcge1xuICBAaW5jbHVkZSBzYmIudGV4dC14cy0tYm9sZDtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogdmFyKC0tc2JiLXRhZy1oZWlnaHQpO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGdhcDogdmFyKC0tc2JiLXRhZy1nYXApO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc2JiLXRhZy1wYWRkaW5nLWlubGluZSk7XG4gIGN1cnNvcjogdmFyKC0tc2JiLXRhZy1jdXJzb3IpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItdGFnLWJvcmRlci1yYWRpdXMpO1xuICBjb2xvcjogdmFyKC0tc2JiLXRhZy10ZXh0LWNvbG9yKTtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb24pIHZhcigtLXNiYi10YWctYW5pbWF0aW9uLWVhc2luZyk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBwb2ludGVyLWV2ZW50czogdmFyKC0tc2JiLXRhZy1wb2ludGVyLWV2ZW50cywgdW5zZXQpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiB2YXIoLS1zYmItdGFnLWluc2V0KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItdGFnLWJhY2tncm91bmQtY29sb3IpO1xuICAgIGJvcmRlcjogdmFyKC0tc2JiLXRhZy1ib3JkZXItd2lkdGgpIHZhcigtLXNiYi10YWctYm9yZGVyLXN0eWxlKSB2YXIoLS1zYmItdGFnLWJvcmRlci1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLXRhZy1ib3JkZXItcmFkaXVzKTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoLS1zYmItdGFnLWFuaW1hdGlvbi1kdXJhdGlvbik7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IHZhcigtLXNiYi10YWctYW5pbWF0aW9uLWVhc2luZyk7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogaW5zZXQsIGJhY2tncm91bmQtY29sb3IsIGJvcmRlci1jb2xvciwgYm94LXNoYWRvdztcblxuICAgIDpob3N0KDpmb2N1cy12aXNpYmxlKSAmIHtcbiAgICAgIEBpbmNsdWRlIHNiYi5mb2N1cy1vdXRsaW5lO1xuICAgIH1cbiAgfVxufVxuXG4uc2JiLXRhZ19faWNvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogY2FsYyh2YXIoLS1zYmItdHlwby1saW5lLWhlaWdodC10ZXh0KSAqIDFlbSk7XG4gIGZsZXgtc2hyaW5rOiAwO1xuXG4gIDpob3N0KDpub3QoOnN0YXRlKHNsb3R0ZWQtaWNvbiksIDpzdGF0ZShoYXMtaWNvbi1uYW1lKSkpICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnNiYi10YWdfX3RleHQge1xuICBAaW5jbHVkZSBzYmIuZWxsaXBzaXM7XG59XG5cbi5zYmItdGFnX19hbW91bnQge1xuICBAaW5jbHVkZSBzYmIudGV4dC14cy0tcmVndWxhcjtcblxuICBjb2xvcjogdmFyKC0tc2JiLXRhZy1hbW91bnQtY29sb3IpO1xuXG4gIDpob3N0KDpub3QoOnN0YXRlKHNsb3R0ZWQtYW1vdW50KSwgW2Ftb3VudF0pKSAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zYmItdGFnLS1zaGlmdCB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS1zYmItdGFnLWFuaW1hdGlvbi1kdXJhdGlvbikgdmFyKC0tc2JiLXRhZy1hbmltYXRpb24tZWFzaW5nKTtcbiAgdHJhbnNmb3JtOiB2YXIoLS1zYmItdGFnLWNvbnRlbnQtc2hpZnQpO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xufVxuIiwiaW1wb3J0IHtcbiAgaHRtbCxcbiAgdW5zYWZlQ1NTLFxuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IFNiYkJ1dHRvbkxpa2VCYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy50cyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUsIGdldE92ZXJyaWRlLCBvbWl0RW1wdHlDb252ZXJ0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMudHMnO1xuaW1wb3J0IHsgaXNMZWFuIH0gZnJvbSAnLi4vLi4vY29yZS9kb20udHMnO1xuaW1wb3J0IHtcbiAgdHlwZSBGb3JtUmVzdG9yZVJlYXNvbixcbiAgdHlwZSBGb3JtUmVzdG9yZVN0YXRlLFxuICBTYmJEaXNhYmxlZFRhYkluZGV4QWN0aW9uTWl4aW4sXG59IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLnRzJztcbmltcG9ydCB7IGJveFNpemluZ1N0eWxlcyB9IGZyb20gJy4uLy4uL2NvcmUvc3R5bGVzLnRzJztcbmltcG9ydCB7IFNiYkljb25OYW1lTWl4aW4gfSBmcm9tICcuLi8uLi9pY29uLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiVGFnR3JvdXBFbGVtZW50IH0gZnJvbSAnLi4vdGFnLWdyb3VwL3RhZy1ncm91cC5jb21wb25lbnQudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90YWcuc2Nzcz9pbmxpbmUnO1xuXG5leHBvcnQgdHlwZSBTYmJUYWdTaXplID0gJ3MnIHwgJ20nO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgc2VsZWN0YWJsZSBlbGVtZW50IHdoaWNoIGNhbiBiZSB1c2VkIGFzIGEgZmlsdGVyLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIHRhZyBsYWJlbC5cbiAqIEBzbG90IGljb24gLSBVc2UgdGhpcyBzbG90IHRvIGRpc3BsYXkgYW4gaWNvbiBhdCB0aGUgY29tcG9uZW50IHN0YXJ0LCBieSBwcm92aWRpbmcgYSBgc2JiLWljb25gIGNvbXBvbmVudC5cbiAqIEBzbG90IGFtb3VudCAtIFByb3ZpZGUgYW4gYW1vdW50IHRvIHNob3cgaXQgYXQgdGhlIGNvbXBvbmVudCBlbmQuXG4gKiBAb3ZlcnJpZGVUeXBlIHZhbHVlIC0gKFQgPSBzdHJpbmcpIHwgbnVsbFxuICovXG5leHBvcnQgY2xhc3MgU2JiVGFnRWxlbWVudDxUID0gc3RyaW5nPiBleHRlbmRzIFNiYkljb25OYW1lTWl4aW4oXG4gIFNiYkRpc2FibGVkVGFiSW5kZXhBY3Rpb25NaXhpbihTYmJCdXR0b25MaWtlQmFzZUVsZW1lbnQpLFxuKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItdGFnJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW2JveFNpemluZ1N0eWxlcywgdW5zYWZlQ1NTKHN0eWxlKV07XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgIGlucHV0OiAnaW5wdXQnLFxuICAgIGRpZENoYW5nZTogJ2RpZENoYW5nZScsXG4gICAgY2hhbmdlOiAnY2hhbmdlJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKiogVmFsdWUgb2YgdGhlIGZvcm0gZWxlbWVudC4gKi9cbiAgQHByb3BlcnR5KClcbiAgcHVibGljIGFjY2Vzc29yIHZhbHVlOiBUIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIEFtb3VudCBkaXNwbGF5ZWQgaW5zaWRlIHRoZSB0YWcuICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlLCBjb252ZXJ0ZXI6IG9taXRFbXB0eUNvbnZlcnRlciB9KVxuICBwdWJsaWMgYWNjZXNzb3IgYW1vdW50OiBzdHJpbmcgPSAnJztcblxuICAvKiogV2hldGhlciB0aGUgdGFnIGlzIGNoZWNrZWQuICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyByZWZsZWN0OiBmYWxzZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgYWNjZXNzb3IgY2hlY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUYWcgc2l6ZSwgZWl0aGVyIHMgb3IgbS5cbiAgICogQGRlZmF1bHQgJ20nIC8gJ3MnIChsZWFuKVxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KVxuICBAZ2V0T3ZlcnJpZGUoKGksIHYpID0+IGkuX2dyb3VwPy5zaXplID8/IHYpXG4gIHB1YmxpYyBhY2Nlc3NvciBzaXplOiBTYmJUYWdTaXplID0gaXNMZWFuKCkgPyAncycgOiAnbSc7XG5cbiAgLyoqIFJlZmVyZW5jZSB0byB0aGUgY29ubmVjdGVkIHRhZyBncm91cC4gKi9cbiAgcHJpdmF0ZSBfZ3JvdXA6IFNiYlRhZ0dyb3VwRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdjbGljaycsICgpID0+IHRoaXMuX2hhbmRsZUNsaWNrKCkpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fZ3JvdXAgPSB0aGlzLmNsb3Nlc3QoJ3NiYi10YWctZ3JvdXAnKSBhcyBTYmJUYWdHcm91cEVsZW1lbnQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgaXNEaXNhYmxlZEV4dGVybmFsbHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2dyb3VwPy5kaXNhYmxlZCA/PyBmYWxzZTtcbiAgfVxuXG4gIC8qKiBNZXRob2QgdHJpZ2dlcmVkIG9uIGJ1dHRvbiBjbGljay4gSW52ZXJ0cyB0aGUgY2hlY2tlZCB2YWx1ZSBhbmQgZW1pdHMgZXZlbnRzLiAqL1xuICBwcml2YXRlIF9oYW5kbGVDbGljaygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIFByZXZlbnQgZGVhY3RpdmF0aW5nIG9uIGV4Y2x1c2l2ZSAvIHJhZGlvIG1vZGVcbiAgICBjb25zdCB0YWdHcm91cCA9IHRoaXMuY2xvc2VzdCgnc2JiLXRhZy1ncm91cCcpO1xuICAgIGlmICh0YWdHcm91cCAmJiAhdGFnR3JvdXAubXVsdGlwbGUgJiYgdGhpcy5jaGVja2VkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuY2hlY2tlZCA9ICF0aGlzLmNoZWNrZWQ7XG5cbiAgICAvKiogVGhlIGlucHV0IGV2ZW50IGZpcmVzIHdoZW4gdGhlIHZhbHVlIGhhcyBiZWVuIGNoYW5nZWQgYXMgYSBkaXJlY3QgcmVzdWx0IG9mIGEgdXNlciBhY3Rpb24uICovXG4gICAgdGhpcy5kaXNwYXRjaEV2ZW50KFxuICAgICAgbmV3IElucHV0RXZlbnQoJ2lucHV0Jywge1xuICAgICAgICBidWJibGVzOiB0cnVlLFxuICAgICAgICBjb21wb3NlZDogdHJ1ZSxcbiAgICAgIH0pLFxuICAgICk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgY2hhbmdlIGV2ZW50IGlzIGZpcmVkIHdoZW4gdGhlIHVzZXIgbW9kaWZpZXMgdGhlIGVsZW1lbnQncyB2YWx1ZS5cbiAgICAgKiBVbmxpa2UgdGhlIGlucHV0IGV2ZW50LCB0aGUgY2hhbmdlIGV2ZW50IGlzIG5vdCBuZWNlc3NhcmlseSBmaXJlZFxuICAgICAqIGZvciBlYWNoIGFsdGVyYXRpb24gdG8gYW4gZWxlbWVudCdzIHZhbHVlLlxuICAgICAqL1xuICAgIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2NoYW5nZScsIHsgYnViYmxlczogdHJ1ZSB9KSk7XG5cbiAgICAvKipcbiAgICAgKiBEZXByZWNhdGVkLiBNaXJyb3JzIGNoYW5nZSBldmVudCBmb3IgUmVhY3QuIFdpbGwgYmUgcmVtb3ZlZCBvbmNlIFJlYWN0IHByb3Blcmx5IHN1cHBvcnRzIGNoYW5nZSBldmVudHMuXG4gICAgICogQGRlcHJlY2F0ZWRcbiAgICAgKi9cbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdkaWRDaGFuZ2UnLCB7IGJ1YmJsZXM6IHRydWUgfSkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdjaGVja2VkJykpIHtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLmFyaWFQcmVzc2VkID0gYCR7dGhpcy5jaGVja2VkfWA7XG4gICAgICB0aGlzLnRvZ2dsZVN0YXRlKCdjaGVja2VkJywgdGhpcy5jaGVja2VkKTtcbiAgICAgIHRoaXMudXBkYXRlRm9ybVZhbHVlKCk7XG4gICAgfVxuXG4gICAgY29uc3QgdGFnR3JvdXAgPSB0aGlzLmNsb3Nlc3Q/Lignc2JiLXRhZy1ncm91cCcpO1xuICAgIGlmICh0YWdHcm91cCAmJiAhdGFnR3JvdXAubXVsdGlwbGUgJiYgY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdjaGVja2VkJykgJiYgdGhpcy5jaGVja2VkKSB7XG4gICAgICB0YWdHcm91cD8udGFncy5maWx0ZXIoKHQpID0+IHQgIT09IHRoaXMpLmZvckVhY2goKHQpID0+ICh0LmNoZWNrZWQgPSBmYWxzZSkpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBmb3JtUmVzZXRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLmNoZWNrZWQgPSB0aGlzLmhhc0F0dHJpYnV0ZSgnY2hlY2tlZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGZvcm1TdGF0ZVJlc3RvcmVDYWxsYmFjayhcbiAgICBzdGF0ZTogRm9ybVJlc3RvcmVTdGF0ZSB8IG51bGwsXG4gICAgX3JlYXNvbjogRm9ybVJlc3RvcmVSZWFzb24sXG4gICk6IHZvaWQge1xuICAgIGlmIChzdGF0ZSkge1xuICAgICAgdGhpcy5jaGVja2VkID0gc3RhdGUgPT09ICd0cnVlJztcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgdXBkYXRlRm9ybVZhbHVlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNoZWNrZWQpIHtcbiAgICAgIHN1cGVyLnVwZGF0ZUZvcm1WYWx1ZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmludGVybmFscy5zZXRGb3JtVmFsdWUobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGZvcm1TdGF0ZSgpOiBGb3JtUmVzdG9yZVN0YXRlIHtcbiAgICByZXR1cm4gYCR7dGhpcy5jaGVja2VkfWA7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItdGFnX19pY29uIHNiYi10YWctLXNoaWZ0XCI+ICR7dGhpcy5yZW5kZXJJY29uU2xvdCgpfSA8L3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInNiYi10YWdfX3RleHQgc2JiLXRhZy0tc2hpZnRcIj5cbiAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgPC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItdGFnX19hbW91bnQgc2JiLXRhZy0tc2hpZnRcIj5cbiAgICAgICAgPHNsb3QgbmFtZT1cImFtb3VudFwiPiR7dGhpcy5hbW91bnR9PC9zbG90PlxuICAgICAgPC9zcGFuPlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi10YWcnOiBTYmJUYWdFbGVtZW50O1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQ2lDYSx1QkFBYTttQkFBcUIsaUJBQzdDLCtCQUErQix5QkFBeUIsQ0FDekQ7Ozs7Ozs7Ozs7Ozs7Y0FGWSxzQkFBa0MsWUFFOUM7Ozt3QkFVRSxVQUFVLENBQUE7eUJBSVYsV0FBVyxFQUNYLFNBQVM7SUFBRSxTQUFTO0lBQU0sV0FBVztJQUFvQixDQUFDLENBQUE7MEJBSTFELFdBQVcsRUFDWCxTQUFTO0lBQUUsU0FBUztJQUFPLE1BQU07SUFBUyxDQUFDLENBQUE7dUJBTzNDLFNBQVMsRUFBRSxTQUFTLE1BQU0sQ0FBQyxFQUMzQixhQUFhLEdBQUcsTUFBTSxFQUFFLFFBQVEsUUFBUSxFQUFFLENBQUE7QUFqQjNDLGdCQUFBLE1BQUEsTUFBQSxtQkFBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLFdBQUE7S0FBQSxNQUFBLFFBQUEsSUFBZ0I7S0FBSyxNQUFBLEtBQUEsVUFBQTtBQUFBLFVBQUwsUUFBSzs7S0FBQTtJQUFBLFVBQUE7SUFBQSxFQUFBLHFCQUFBLHlCQUFBO0FBS3JCLGdCQUFBLE1BQUEsTUFBQSxvQkFBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLFlBQUE7S0FBQSxNQUFBLFFB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
@@ -1,118 +0,0 @@
1
- import { __esDecorate, __runInitializers } from "tslib";
2
- import { unsafeCSS } from "lit";
3
- import { property } from "lit/decorators.js";
4
- import { SbbLinkBaseElement } from "./core/base-elements.js";
5
- import { boxSizingStyles } from "./core/styles.js";
6
- import { html as html$1 } from "lit/static-html.js";
7
- import "./screen-reader-only.js";
8
- //#region src/elements/teaser/teaser.scss?inline
9
- var teaser_default = "@charset \"UTF-8\";\n:host {\n display: inline-block;\n outline: none !important;\n --sbb-teaser-scale-hover: 1.02;\n --sbb-teaser-description-color: var(--sbb-color-granite);\n --sbb-teaser-description-color: light-dark(var(--sbb-color-granite), var(--sbb-color-silver));\n --sbb-teaser-flex-direction: row;\n --sbb-teaser-align-items: center;\n --sbb-teaser-gap: var(--sbb-spacing-fixed-4x);\n --sbb-teaser-border-radius: var(--sbb-border-radius-4x);\n}\n@media (forced-colors: active) {\n :host {\n --sbb-teaser-description-color: LinkText;\n --sbb-title-text-color-normal-override: LinkText !important;\n }\n}\n\n:host([alignment=after]) {\n --sbb-teaser-align-items: start;\n}\n\n:host([alignment=below]) {\n --sbb-teaser-flex-direction: column;\n --sbb-teaser-align-items: baseline;\n --sbb-teaser-gap: var(--sbb-spacing-fixed-3x);\n}\n\n@media (any-hover: hover) {\n :host(:hover) {\n --sbb-teaser-scale: var(--sbb-teaser-scale-hover);\n }\n}\n.sbb-teaser__wrapper {\n display: flex;\n position: relative;\n cursor: var(--sbb-cursor-pointer);\n}\n.sbb-teaser__wrapper::before {\n content: \"​\";\n user-select: none;\n width: 0;\n height: 0;\n}\n\n.sbb-teaser {\n text-decoration: none;\n position: absolute;\n inset: 0;\n}\n.sbb-teaser:focus-visible {\n outline-offset: var(--sbb-focus-outline-offset);\n outline: var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width);\n border-radius: var(--sbb-teaser-border-radius);\n}\n@media (forced-colors: active) {\n .sbb-teaser:focus-visible {\n outline-offset: calc(2 * var(--sbb-focus-outline-offset));\n }\n}\n@media (forced-colors: active) {\n .sbb-teaser::before {\n content: \"\";\n position: absolute;\n inset: calc(-1 * var(--sbb-focus-outline-offset));\n pointer-events: none;\n border-radius: calc(var(--sbb-teaser-border-radius) + var(--sbb-focus-outline-offset));\n border: var(--sbb-border-width-1x) solid CanvasText;\n }\n}\n\n.sbb-teaser__container {\n display: flex;\n flex-flow: var(--sbb-teaser-flex-direction) nowrap;\n align-items: var(--sbb-teaser-align-items);\n gap: var(--sbb-teaser-gap);\n max-width: 100%;\n width: 100%;\n pointer-events: none;\n}\n\n.sbb-teaser__text {\n --sbb-text-font-size: var(--sbb-text-font-size-s);\n font-family: var(--sbb-typo-font-family);\n font-weight: normal;\n line-height: var(--sbb-typo-line-height-text);\n letter-spacing: var(--sbb-typo-letter-spacing-text);\n font-size: var(--sbb-text-font-size);\n color: var(--sbb-teaser-description-color);\n overflow: hidden;\n max-width: 100%;\n}\n\n::slotted([slot=image]) {\n width: 18.75rem;\n display: block;\n}\n\n.sbb-teaser__image-wrapper {\n flex-shrink: 0;\n overflow: hidden;\n border-radius: var(--sbb-teaser-border-radius);\n transition: box-shadow var(--sbb-teaser-image-animation-duration) var(--sbb-animation-easing);\n}\n:host(:not(:is(:state(slotted-image),[state--slotted-image]))) .sbb-teaser__image-wrapper {\n display: none;\n}\n@media (any-hover: hover) {\n :host(:hover) .sbb-teaser__image-wrapper {\n box-shadow: var(--sbb-box-shadow-level-9-hard);\n }\n}\n\n.sbb-teaser__description {\n display: inline-block;\n margin: 0;\n padding: 0;\n}\n\n::slotted(sbb-chip-label) {\n display: block;\n max-width: fit-content;\n margin-block-end: var(--sbb-spacing-fixed-1x);\n}\n\n::slotted(sbb-title) {\n margin-block: 0;\n}";
10
- //#endregion
11
- //#region src/elements/teaser/teaser.component.ts
12
- /**
13
- * It displays an interactive image with caption.
14
- *
15
- * @slot image - Slot used to render the image.
16
- * @slot chip - Slot for the `sbb-chip-label` element. The slot on the `sbb-chip-label` element is automatically assigned when slotted in the unnamed slot.
17
- * @slot title - Slot for the title. For the standard `sbb-title` element, the slot is automatically assigned when slotted in the unnamed slot.
18
- * @slot - Use the unnamed slot to render the description, the sbb-title and the sbb-chip-label.
19
- */
20
- var SbbTeaserElement = (() => {
21
- let _classSuper = SbbLinkBaseElement;
22
- let _alignment_decorators;
23
- let _alignment_initializers = [];
24
- let _alignment_extraInitializers = [];
25
- return class SbbTeaserElement extends _classSuper {
26
- static {
27
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
28
- _alignment_decorators = [property({ reflect: true })];
29
- __esDecorate(this, null, _alignment_decorators, {
30
- kind: "accessor",
31
- name: "alignment",
32
- static: false,
33
- private: false,
34
- access: {
35
- has: (obj) => "alignment" in obj,
36
- get: (obj) => obj.alignment,
37
- set: (obj, value) => {
38
- obj.alignment = value;
39
- }
40
- },
41
- metadata: _metadata
42
- }, _alignment_initializers, _alignment_extraInitializers);
43
- if (_metadata) Object.defineProperty(this, Symbol.metadata, {
44
- enumerable: true,
45
- configurable: true,
46
- writable: true,
47
- value: _metadata
48
- });
49
- }
50
- static {
51
- this.elementName = "sbb-teaser";
52
- }
53
- static {
54
- this.styles = [boxSizingStyles, unsafeCSS(teaser_default)];
55
- }
56
- #alignment_accessor_storage = __runInitializers(this, _alignment_initializers, "after-centered");
57
- /** Teaser variant - define the position and the alignment of the text block. */
58
- get alignment() {
59
- return this.#alignment_accessor_storage;
60
- }
61
- set alignment(value) {
62
- this.#alignment_accessor_storage = value;
63
- }
64
- _handleSlotchange() {
65
- const chip = Array.from(this.children).find((el) => el.localName === "sbb-chip-label");
66
- if (chip) chip.slot = "chip";
67
- const title = Array.from(this.children).find((el) => el.localName === "sbb-title");
68
- if (title) title.slot = "title";
69
- }
70
- _configureChip(event) {
71
- const chipLabel = event.target.assignedElements().find((e) => e.localName === "sbb-chip-label");
72
- if (chipLabel) {
73
- customElements.upgrade(chipLabel);
74
- chipLabel.color = "charcoal";
75
- chipLabel.size = "xxs";
76
- }
77
- }
78
- _configureTitle(event) {
79
- const title = event.target.assignedElements().find((e) => e.localName === "sbb-title");
80
- if (title) {
81
- customElements.upgrade(title);
82
- title.visualLevel = "5";
83
- }
84
- }
85
- render() {
86
- return html$1`
87
- <div class="sbb-teaser__wrapper">
88
- ${this.renderLink(html$1`<sbb-screen-reader-only>${this.accessibilityLabel}</sbb-screen-reader-only>`)}
89
- ${this.renderContent()}
90
- </div>
91
- `;
92
- }
93
- renderContent() {
94
- return html$1`
95
- <span class="sbb-teaser__container">
96
- <span class="sbb-teaser__image-wrapper">
97
- <slot name="image"></slot>
98
- </span>
99
- <span class="sbb-teaser__text">
100
- <slot name="chip" @slotchange=${this._configureChip}></slot>
101
- <slot name="title" @slotchange=${this._configureTitle}></slot>
102
- <p class="sbb-teaser__description">
103
- <slot @slotchange=${this._handleSlotchange}></slot>
104
- </p>
105
- </span>
106
- </span>
107
- `;
108
- }
109
- constructor() {
110
- super(...arguments);
111
- __runInitializers(this, _alignment_extraInitializers);
112
- }
113
- };
114
- })();
115
- //#endregion
116
- export { SbbTeaserElement as t };
117
-
118
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVhc2VyLmNvbXBvbmVudC1DNjN0MHoxSS5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGVhc2VyL3RlYXNlci5zY3NzP2lubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy90ZWFzZXIvdGVhc2VyLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlICcuLi9jb3JlL3N0eWxlcycgYXMgc2JiO1xuXG46aG9zdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAvLyBVc2UgIWltcG9ydGFudCBoZXJlIHRvIG5vdCBpbnRlcmZlcmUgd2l0aCBGaXJlZm94IGZvY3VzIHJpbmcgZGVmaW5pdGlvblxuICAvLyB3aGljaCBhcHBlYXJzIGluIG5vcm1hbGl6ZSBDU1Mgb2Ygc2V2ZXJhbCBmcmFtZXdvcmtzLlxuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgLS1zYmItdGVhc2VyLXNjYWxlLWhvdmVyOiAxLjAyO1xuICAtLXNiYi10ZWFzZXItZGVzY3JpcHRpb24tY29sb3I6IGxpZ2h0LWRhcmsodmFyKC0tc2JiLWNvbG9yLWdyYW5pdGUpLCB2YXIoLS1zYmItY29sb3Itc2lsdmVyKSk7XG4gIC0tc2JiLXRlYXNlci1mbGV4LWRpcmVjdGlvbjogcm93O1xuICAtLXNiYi10ZWFzZXItYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLS1zYmItdGVhc2VyLWdhcDogdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtNHgpO1xuICAtLXNiYi10ZWFzZXItYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLWJvcmRlci1yYWRpdXMtNHgpO1xuXG4gIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAtLXNiYi10ZWFzZXItZGVzY3JpcHRpb24tY29sb3I6IExpbmtUZXh0O1xuICAgIC0tc2JiLXRpdGxlLXRleHQtY29sb3Itbm9ybWFsLW92ZXJyaWRlOiBMaW5rVGV4dCAhaW1wb3J0YW50O1xuICB9XG59XG5cbjpob3N0KFthbGlnbm1lbnQ9J2FmdGVyJ10pIHtcbiAgLS1zYmItdGVhc2VyLWFsaWduLWl0ZW1zOiBzdGFydDtcbn1cblxuOmhvc3QoW2FsaWdubWVudD0nYmVsb3cnXSkge1xuICAtLXNiYi10ZWFzZXItZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLS1zYmItdGVhc2VyLWFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgLS1zYmItdGVhc2VyLWdhcDogdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtM3gpO1xufVxuXG5AaW5jbHVkZSBzYmIuaG92ZXItbXEoJGhvdmVyOiB0cnVlKSB7XG4gIDpob3N0KDpob3Zlcikge1xuICAgIC0tc2JiLXRlYXNlci1zY2FsZTogdmFyKC0tc2JiLXRlYXNlci1zY2FsZS1ob3Zlcik7XG4gIH1cbn1cblxuLnNiYi10ZWFzZXJfX3dyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogdmFyKC0tc2JiLWN1cnNvci1wb2ludGVyKTtcblxuICBAaW5jbHVkZSBzYmIuemVyby13aWR0aC1zcGFjZTtcbn1cblxuLnNiYi10ZWFzZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBAaW5jbHVkZSBzYmIuZm9jdXMtb3V0bGluZTtcblxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXNiYi10ZWFzZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAvLyBXZSBtb3ZlIHRoZSBmb2N1cyBvdXRsaW5lIGZ1cnRoZXIgb3V0IHRvIG5vdCBvdmVybGFwIHdpdGggdGhlIHRlYXNlciBib3JkZXIgaW4gZm9yY2VkIGNvbG9yc1xuICAgIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAgIG91dGxpbmUtb2Zmc2V0OiBjYWxjKDIgKiB2YXIoLS1zYmItZm9jdXMtb3V0bGluZS1vZmZzZXQpKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBzYmIuaWYtZm9yY2VkLWNvbG9ycyB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaW5zZXQ6IGNhbGMoLTEgKiB2YXIoLS1zYmItZm9jdXMtb3V0bGluZS1vZmZzZXQpKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1zYmItdGVhc2VyLWJvcmRlci1yYWRpdXMpICsgdmFyKC0tc2JiLWZvY3VzLW91dGxpbmUtb2Zmc2V0KSk7XG4gICAgICBib3JkZXI6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMXgpIHNvbGlkIENhbnZhc1RleHQ7XG4gICAgfVxuICB9XG59XG5cbi5zYmItdGVhc2VyX19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHZhcigtLXNiYi10ZWFzZXItZmxleC1kaXJlY3Rpb24pIG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IHZhcigtLXNiYi10ZWFzZXItYWxpZ24taXRlbXMpO1xuICBnYXA6IHZhcigtLXNiYi10ZWFzZXItZ2FwKTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5zYmItdGVhc2VyX190ZXh0IHtcbiAgQGluY2x1ZGUgc2JiLnRleHQtcy0tcmVndWxhcjtcblxuICBjb2xvcjogdmFyKC0tc2JiLXRlYXNlci1kZXNjcmlwdGlvbi1jb2xvcik7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuOjpzbG90dGVkKFtzbG90PSdpbWFnZSddKSB7XG4gIHdpZHRoOiAje3NiYi5weC10by1yZW0tYnVpbGQoMzAwKX07XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2JiLXRlYXNlcl9faW1hZ2Utd3JhcHBlciB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItdGVhc2VyLWJvcmRlci1yYWRpdXMpO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IHZhcigtLXNiYi10ZWFzZXItaW1hZ2UtYW5pbWF0aW9uLWR1cmF0aW9uKSB2YXIoLS1zYmItYW5pbWF0aW9uLWVhc2luZyk7XG5cbiAgOmhvc3QoOm5vdCg6c3RhdGUoc2xvdHRlZC1pbWFnZSkpKSAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgQGluY2x1ZGUgc2JiLmhvdmVyLW1xKCRob3ZlcjogdHJ1ZSkge1xuICAgIDpob3N0KDpob3ZlcikgJiB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1zYmItYm94LXNoYWRvdy1sZXZlbC05LWhhcmQpO1xuICAgIH1cbiAgfVxufVxuXG4uc2JiLXRlYXNlcl9fZGVzY3JpcHRpb24ge1xuICAvLyBSZXNldCBwYXJhZ3JhcGggc3R5bGVzXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG46OnNsb3R0ZWQoc2JiLWNoaXAtbGFiZWwpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogZml0LWNvbnRlbnQ7XG4gIG1hcmdpbi1ibG9jay1lbmQ6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTF4KTtcbn1cblxuOjpzbG90dGVkKHNiYi10aXRsZSkge1xuICBtYXJnaW4tYmxvY2s6IDA7XG59XG4iLCJpbXBvcnQgeyB1bnNhZmVDU1MsIHR5cGUgQ1NTUmVzdWx0R3JvdXAsIHR5cGUgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBodG1sIH0gZnJvbSAnbGl0L3N0YXRpYy1odG1sLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJDaGlwTGFiZWxFbGVtZW50IH0gZnJvbSAnLi4vY2hpcC1sYWJlbC50cyc7XG5pbXBvcnQgeyBTYmJMaW5rQmFzZUVsZW1lbnQgfSBmcm9tICcuLi9jb3JlL2Jhc2UtZWxlbWVudHMudHMnO1xuaW1wb3J0IHsgYm94U2l6aW5nU3R5bGVzIH0gZnJvbSAnLi4vY29yZS9zdHlsZXMudHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJUaXRsZUVsZW1lbnQgfSBmcm9tICcuLi90aXRsZS50cyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3RlYXNlci5zY3NzP2lubGluZSc7XG5cbmltcG9ydCAnLi4vc2NyZWVuLXJlYWRlci1vbmx5LnRzJztcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhbiBpbnRlcmFjdGl2ZSBpbWFnZSB3aXRoIGNhcHRpb24uXG4gKlxuICogQHNsb3QgaW1hZ2UgLSBTbG90IHVzZWQgdG8gcmVuZGVyIHRoZSBpbWFnZS5cbiAqIEBzbG90IGNoaXAgLSBTbG90IGZvciB0aGUgYHNiYi1jaGlwLWxhYmVsYCBlbGVtZW50LiBUaGUgc2xvdCBvbiB0aGUgYHNiYi1jaGlwLWxhYmVsYCBlbGVtZW50IGlzIGF1dG9tYXRpY2FsbHkgYXNzaWduZWQgd2hlbiBzbG90dGVkIGluIHRoZSB1bm5hbWVkIHNsb3QuXG4gKiBAc2xvdCB0aXRsZSAtIFNsb3QgZm9yIHRoZSB0aXRsZS4gRm9yIHRoZSBzdGFuZGFyZCBgc2JiLXRpdGxlYCBlbGVtZW50LCB0aGUgc2xvdCBpcyBhdXRvbWF0aWNhbGx5IGFzc2lnbmVkIHdoZW4gc2xvdHRlZCBpbiB0aGUgdW5uYW1lZCBzbG90LlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byByZW5kZXIgdGhlIGRlc2NyaXB0aW9uLCB0aGUgc2JiLXRpdGxlIGFuZCB0aGUgc2JiLWNoaXAtbGFiZWwuXG4gKi9cbmV4cG9ydCBjbGFzcyBTYmJUZWFzZXJFbGVtZW50IGV4dGVuZHMgU2JiTGlua0Jhc2VFbGVtZW50IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSBlbGVtZW50TmFtZTogc3RyaW5nID0gJ3NiYi10ZWFzZXInO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbYm94U2l6aW5nU3R5bGVzLCB1bnNhZmVDU1Moc3R5bGUpXTtcblxuICAvKiogVGVhc2VyIHZhcmlhbnQgLSBkZWZpbmUgdGhlIHBvc2l0aW9uIGFuZCB0aGUgYWxpZ25tZW50IG9mIHRoZSB0ZXh0IGJsb2NrLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhY2Nlc3NvciBhbGlnbm1lbnQ6ICdhZnRlci1jZW50ZXJlZCcgfCAnYWZ0ZXInIHwgJ2JlbG93JyA9XG4gICAgJ2FmdGVyLWNlbnRlcmVkJztcblxuICBwcml2YXRlIF9oYW5kbGVTbG90Y2hhbmdlKCk6IHZvaWQge1xuICAgIGNvbnN0IGNoaXAgPSBBcnJheS5mcm9tKHRoaXMuY2hpbGRyZW4pLmZpbmQoKGVsKSA9PiBlbC5sb2NhbE5hbWUgPT09ICdzYmItY2hpcC1sYWJlbCcpO1xuICAgIGlmIChjaGlwKSB7XG4gICAgICBjaGlwLnNsb3QgPSAnY2hpcCc7XG4gICAgfVxuXG4gICAgY29uc3QgdGl0bGUgPSBBcnJheS5mcm9tKHRoaXMuY2hpbGRyZW4pLmZpbmQoKGVsKSA9PiBlbC5sb2NhbE5hbWUgPT09ICdzYmItdGl0bGUnKTtcbiAgICBpZiAodGl0bGUpIHtcbiAgICAgIHRpdGxlLnNsb3QgPSAndGl0bGUnO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2NvbmZpZ3VyZUNoaXAoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgLy8gV2UgbmVlZCB0byBjaGVjayBhc3NpZ25lZCBlbGVtZW50cyBiZWNhdXNlIGluIHRoZSBpbWFnZSBzbG90IGl0IGNhbiBoYXZlIGxhYmVscyBhcyB3ZWxsLlxuICAgIGNvbnN0IGNoaXBMYWJlbCA9IChldmVudC50YXJnZXQgYXMgSFRNTFNsb3RFbGVtZW50KVxuICAgICAgLmFzc2lnbmVkRWxlbWVudHMoKVxuICAgICAgLmZpbmQoKGUpOiBlIGlzIFNiYkNoaXBMYWJlbEVsZW1lbnQgPT4gZS5sb2NhbE5hbWUgPT09ICdzYmItY2hpcC1sYWJlbCcpO1xuXG4gICAgaWYgKGNoaXBMYWJlbCkge1xuICAgICAgY3VzdG9tRWxlbWVudHMudXBncmFkZShjaGlwTGFiZWwpO1xuICAgICAgY2hpcExhYmVsLmNvbG9yID0gJ2NoYXJjb2FsJztcbiAgICAgIGNoaXBMYWJlbC5zaXplID0gJ3h4cyc7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY29uZmlndXJlVGl0bGUoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgdGl0bGUgPSAoZXZlbnQudGFyZ2V0IGFzIEhUTUxTbG90RWxlbWVudClcbiAgICAgIC5hc3NpZ25lZEVsZW1lbnRzKClcbiAgICAgIC5maW5kKChlKTogZSBpcyBTYmJUaXRsZUVsZW1lbnQgPT4gZS5sb2NhbE5hbWUgPT09ICdzYmItdGl0bGUnKTtcblxuICAgIGlmICh0aXRsZSkge1xuICAgICAgY3VzdG9tRWxlbWVudHMudXBncmFkZSh0aXRsZSk7XG4gICAgICB0aXRsZS52aXN1YWxMZXZlbCA9ICc1JztcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICAvLyBXZSByZW5kZXIgdGhlIGNvbnRlbnQgb3V0c2lkZSB0aGUgYW5jaG9yIHRhZyB0byBhbGxvdyBzY3JlZW4gcmVhZGVycyB0byBuYXZpZ2F0ZSB0aHJvdWdoIGl0XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXRlYXNlcl9fd3JhcHBlclwiPlxuICAgICAgICAke3RoaXMucmVuZGVyTGluayhcbiAgICAgICAgICAvLyBGb3IgU0VPLCB3ZSBhZGQgdGhlIGFjY2Vzc2liaWxpdHkgaGlkZGVuIGFzIGhpZGRlbiBjb250ZW50IG9mIHRoZSBsaW5rXG4gICAgICAgICAgaHRtbGA8c2JiLXNjcmVlbi1yZWFkZXItb25seT4ke3RoaXMuYWNjZXNzaWJpbGl0eUxhYmVsfTwvc2JiLXNjcmVlbi1yZWFkZXItb25seT5gLFxuICAgICAgICApfVxuICAgICAgICAke3RoaXMucmVuZGVyQ29udGVudCgpfVxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxuXG4gIHByb3RlY3RlZCByZW5kZXJDb250ZW50KCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRlYXNlcl9fY29udGFpbmVyXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRlYXNlcl9faW1hZ2Utd3JhcHBlclwiPlxuICAgICAgICAgIDxzbG90IG5hbWU9XCJpbWFnZVwiPjwvc2xvdD5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi10ZWFzZXJfX3RleHRcIj5cbiAgICAgICAgICA8c2xvdCBuYW1lPVwiY2hpcFwiIEBzbG90Y2hhbmdlPSR7dGhpcy5fY29uZmlndXJlQ2hpcH0+PC9zbG90PlxuICAgICAgICAgIDxzbG90IG5hbWU9XCJ0aXRsZVwiIEBzbG90Y2hhbmdlPSR7dGhpcy5fY29uZmlndXJlVGl0bGV9Pjwvc2xvdD5cbiAgICAgICAgICA8cCBjbGFzcz1cInNiYi10ZWFzZXJfX2Rlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICA8c2xvdCBAc2xvdGNoYW5nZT0ke3RoaXMuX2hhbmRsZVNsb3RjaGFuZ2V9Pjwvc2xvdD5cbiAgICAgICAgICA8L3A+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvc3Bhbj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdGVhc2VyJzogU2JiVGVhc2VyRWxlbWVudDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lDcUJhLDBCQUFnQjttQkFBUzs7OztjQUF6Qix5QkFBeUIsWUFBa0I7Ozs0QkFLckQsU0FBUyxFQUFFLFNBQVMsTUFBTSxDQUFDLENBQUE7QUFBQyxnQkFBQSxNQUFBLE1BQUEsdUJBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSxlQUFBO0tBQUEsTUFBQSxRQUFBLElBQWdCO0tBQVMsTUFBQSxLQUFBLFVBQUE7QUFBQSxVQUFULFlBQVM7O0tBQUE7SUFBQSxVQUFBO0lBQUEsRUFBQSx5QkFBQSw2QkFBQTs7Ozs7Ozs7O0FBSnRCLFFBQUEsY0FBc0I7OztBQUMvQixRQUFBLFNBQXlCLENBQUMsaUJBQWlCLFVBQVUsZUFBTSxDQUFDOztFQUd0RCw4QkFBQSxrQkFBQSxNQUFBLHlCQUMzQixpQkFBZ0I7O0VBRFcsSUFBZ0IsWUFBUztBQUFBLFVBQUEsTUFBQTs7RUFBekIsSUFBZ0IsVUFBUyxPQUFBO0FBQUEsU0FBQSw2QkFBQTs7RUFHOUMsb0JBQWlCO0dBQ3ZCLE1BQU0sT0FBTyxNQUFNLEtBQUssS0FBSyxTQUFTLENBQUMsTUFBTSxPQUFPLEdBQUcsY0FBYyxpQkFBaUI7QUFDdEYsT0FBSSxLQUNGLE1BQUssT0FBTztHQUdkLE1BQU0sUUFBUSxNQUFNLEtBQUssS0FBSyxTQUFTLENBQUMsTUFBTSxPQUFPLEdBQUcsY0FBYyxZQUFZO0FBQ2xGLE9BQUksTUFDRixPQUFNLE9BQU87O0VBSVQsZUFBZSxPQUFZO0dBRWpDLE1BQU0sWUFBYSxNQUFNLE9BQ3RCLGtCQUFrQixDQUNsQixNQUFNLE1BQWdDLEVBQUUsY0FBYyxpQkFBaUI7QUFFMUUsT0FBSSxXQUFXO0FBQ2IsbUJBQWUsUUFBUSxVQUFVO0FBQ2pDLGNBQVUsUUFBUTtBQUNsQixjQUFVLE9BQU87OztFQUliLGdCQUFnQixPQUFZO0dBQ2xDLE1BQU0sUUFBUyxNQUFNLE9BQ2xCLGtCQUFrQixDQUNsQixNQUFNLE1BQTRCLEVBQUUsY0FBYyxZQUFZO0FBRWpFLE9BQUksT0FBTztBQUNULG1CQUFlLFFBQVEsTUFBTTtBQUM3QixVQUFNLGNBQWM7OztFQUlMLFNBQU07QUFFdkIsVUFBTyxNQUFJOztVQUVMLEtBQUssV0FFTCxNQUFJLDJCQUEyQixLQUFLLG1CQUFrQiwyQkFDdkQsQ0FBQTtVQUNDLEtBQUssZUFBZSxDQUFBOzs7O0VBS2xCLGdCQUFhO0FBQ3JCLFVBQU8sTUFBSTs7Ozs7OzBDQU0yQixLQUFLLGVBQWM7MkNBQ2xCLEtBQUssZ0JBQWU7O2dDQUUvQixLQUFLLGtCQUFpQiJ9
@@ -1,170 +0,0 @@
1
- import { __esDecorate as e, __runInitializers as t } from "tslib";
2
- import { html as n, unsafeCSS as r } from "lit";
3
- import { property as i } from "lit/decorators.js";
4
- import { SbbButtonLikeBaseElement as a } from "./core/base-elements.js";
5
- import { forceType as o, getOverride as s, omitEmptyConverter as c } from "./core/decorators.js";
6
- import { isLean as l } from "./core/dom.js";
7
- import { SbbDisabledTabIndexActionMixin as u } from "./core/mixins.js";
8
- import { boxSizingStyles as d } from "./core/styles.js";
9
- import { SbbIconNameMixin as f } from "./icon.js";
10
- //#region src/elements/tag/tag/tag.scss?inline
11
- var p = ":host{display:inline-block;outline:none!important;max-width:100%;--sbb-tag-border-radius: var(--sbb-border-radius-infinity);--sbb-tag-background-color: var(--sbb-background-color-1);--sbb-tag-border-color: var(--sbb-border-color-4-inverted);--sbb-tag-border-style: solid;--sbb-tag-border-width: var(--sbb-border-width-1x);--sbb-tag-text-color: var(--sbb-color-2);--sbb-tag-amount-color: var(--sbb-color-metal);--sbb-tag-amount-color: light-dark(var(--sbb-color-metal), var(--sbb-color-smoke));--sbb-tag-height: var(--sbb-size-element-xs);--sbb-tag-inset: 0;--sbb-tag-cursor: var(--sbb-cursor-pointer);--sbb-tag-content-shift: translateY(0);--sbb-tag-animation-duration: var( --sbb-disable-animation-duration, var(--sbb-animation-duration-2x) );--sbb-tag-animation-easing: var(--sbb-animation-easing);--sbb-tag-padding-inline: var(--sbb-spacing-fixed-5x);--sbb-tag-gap: var(--sbb-spacing-fixed-2x)}@media(forced-colors:active){:host{--sbb-tag-background-color: Canvas !important;--sbb-tag-text-color: ButtonText;--sbb-tag-amount-color: ButtonText;--sbb-tag-border-color: CanvasText;--sbb-tag-border-width: var(--sbb-border-width-2x)}}:host(:is(:state(checked),[state--checked])){--sbb-tag-border-color: var(--sbb-border-color-3);--sbb-tag-border-width: var(--sbb-border-width-2x)}@media(forced-colors:active){:host(:is(:state(checked),[state--checked])){--sbb-tag-border-color: Highlight !important;--sbb-tag-border-width: var(--sbb-border-width-4x)}}:host(:is(:disabled,[disabled-interactive])){--sbb-tag-text-color: var(--sbb-color-granite);--sbb-tag-text-color: light-dark(var(--sbb-color-granite), var(--sbb-color-aluminium));--sbb-tag-amount-color: var(--sbb-tag-text-color);--sbb-tag-background-color: var(--sbb-background-color-3);--sbb-tag-border-color: var(--sbb-color-cement);--sbb-tag-border-color: light-dark(var(--sbb-color-cement), var(--sbb-color-smoke));--sbb-tag-border-style: dashed;--sbb-tag-cursor: unset;--sbb-tag-pointer-events: none}@media(forced-colors:active){:host(:is(:disabled,[disabled-interactive])){--sbb-tag-text-color: GrayText;--sbb-tag-amount-color: GrayText;--sbb-tag-border-color: GrayText}}:host(:is(:state(checked),[state--checked]):is(:disabled,[disabled-interactive])){--sbb-tag-border-color: var(--sbb-color-metal);--sbb-tag-border-color: light-dark(var(--sbb-color-metal), var(--sbb-color-cement));--sbb-tag-border-style: dashed}@media(any-hover:hover){:host(:hover:not(:disabled,[disabled-interactive],:active,:is(:state(active),[state--active]))){--sbb-tag-background-color: var(--sbb-background-color-3);--sbb-tag-inset: calc(var(--sbb-border-width-2x) * -1);--sbb-tag-content-shift: translateY(calc(var(--sbb-border-width-1x) * -1))}}@media(any-hover:hover)and (forced-colors:active){:host(:hover:not(:disabled,[disabled-interactive],:active,:is(:state(active),[state--active]))){--sbb-tag-border-color: Highlight}}:host(:is(:active,:is(:state(active),[state--active])):not(:disabled,[disabled-interactive])){--sbb-tag-background-color: var(--sbb-background-color-3);--sbb-tag-border-color: var(--sbb-color-iron);--sbb-tag-border-color: light-dark(var(--sbb-color-iron), var(--sbb-color-storm));--sbb-tag-border-width: var(--sbb-border-width-2x);--sbb-tag-text-color: var(--sbb-color-4)}@media(forced-colors:active){:host(:is(:active,:is(:state(active),[state--active])):not(:disabled,[disabled-interactive])){--sbb-tag-border-color: Highlight;--sbb-tag-text-color: ButtonText}}:host([size=s]){--sbb-tag-height: var(--sbb-size-element-xxxs);--sbb-tag-padding-inline: var(--sbb-spacing-fixed-3x)}.sbb-tag{--sbb-text-font-size: var(--sbb-text-font-size-xs);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-text);letter-spacing:var(--sbb-typo-letter-spacing-text);font-size:var(--sbb-text-font-size);font-weight:700;position:relative;display:flex;align-items:center;height:var(--sbb-tag-height);max-width:100%;gap:var(--sbb-tag-gap);padding-inline:var(--sbb-tag-padding-inline);cursor:var(--sbb-tag-cursor);border-radius:var(--sbb-tag-border-radius);color:var(--sbb-tag-text-color);transition:color var(--sbb-tag-animation-duration) var(--sbb-tag-animation-easing);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;pointer-events:var(--sbb-tag-pointer-events, unset)}.sbb-tag:before{content:\"\";position:absolute;inset:var(--sbb-tag-inset);background-color:var(--sbb-tag-background-color);border:var(--sbb-tag-border-width) var(--sbb-tag-border-style) var(--sbb-tag-border-color);border-radius:var(--sbb-tag-border-radius);transition-duration:var(--sbb-tag-animation-duration);transition-timing-function:var(--sbb-tag-animation-easing);transition-property:inset,background-color,border-color,box-shadow}:host(:focus-visible) .sbb-tag: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)}.sbb-tag__icon{display:flex;align-items:center;height:calc(var(--sbb-typo-line-height-text) * 1em);flex-shrink:0}:host(:not(:is(:state(slotted-icon),[state--slotted-icon]),:is(:state(has-icon-name),[state--has-icon-name]))) .sbb-tag__icon{display:none}.sbb-tag__text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sbb-tag__amount{--sbb-text-font-size: var(--sbb-text-font-size-xs);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-text);letter-spacing:var(--sbb-typo-letter-spacing-text);font-size:var(--sbb-text-font-size);color:var(--sbb-tag-amount-color)}:host(:not(:is(:state(slotted-amount),[state--slotted-amount]),[amount])) .sbb-tag__amount{display:none}.sbb-tag--shift{transition:transform var(--sbb-tag-animation-duration) var(--sbb-tag-animation-easing);transform:var(--sbb-tag-content-shift);will-change:transform}", m = (() => {
12
- let m = f(u(a)), h, g = [], _ = [], v, y = [], b = [], x, S = [], C = [], w, T = [], E = [];
13
- return class extends m {
14
- static {
15
- let t = typeof Symbol == "function" && Symbol.metadata ? Object.create(m[Symbol.metadata] ?? null) : void 0;
16
- h = [i()], v = [o(), i({
17
- reflect: !0,
18
- converter: c
19
- })], x = [o(), i({
20
- reflect: !1,
21
- type: Boolean
22
- })], w = [i({ reflect: !0 }), s((e, t) => e._group?.size ?? t)], e(this, null, h, {
23
- kind: "accessor",
24
- name: "value",
25
- static: !1,
26
- private: !1,
27
- access: {
28
- has: (e) => "value" in e,
29
- get: (e) => e.value,
30
- set: (e, t) => {
31
- e.value = t;
32
- }
33
- },
34
- metadata: t
35
- }, g, _), e(this, null, v, {
36
- kind: "accessor",
37
- name: "amount",
38
- static: !1,
39
- private: !1,
40
- access: {
41
- has: (e) => "amount" in e,
42
- get: (e) => e.amount,
43
- set: (e, t) => {
44
- e.amount = t;
45
- }
46
- },
47
- metadata: t
48
- }, y, b), e(this, null, x, {
49
- kind: "accessor",
50
- name: "checked",
51
- static: !1,
52
- private: !1,
53
- access: {
54
- has: (e) => "checked" in e,
55
- get: (e) => e.checked,
56
- set: (e, t) => {
57
- e.checked = t;
58
- }
59
- },
60
- metadata: t
61
- }, S, C), e(this, null, w, {
62
- kind: "accessor",
63
- name: "size",
64
- static: !1,
65
- private: !1,
66
- access: {
67
- has: (e) => "size" in e,
68
- get: (e) => e.size,
69
- set: (e, t) => {
70
- e.size = t;
71
- }
72
- },
73
- metadata: t
74
- }, T, E), t && Object.defineProperty(this, Symbol.metadata, {
75
- enumerable: !0,
76
- configurable: !0,
77
- writable: !0,
78
- value: t
79
- });
80
- }
81
- static {
82
- this.elementName = "sbb-tag";
83
- }
84
- static {
85
- this.styles = [d, r(p)];
86
- }
87
- static {
88
- this.events = {
89
- input: "input",
90
- didChange: "didChange",
91
- change: "change"
92
- };
93
- }
94
- #e;
95
- get value() {
96
- return this.#e;
97
- }
98
- set value(e) {
99
- this.#e = e;
100
- }
101
- #t;
102
- get amount() {
103
- return this.#t;
104
- }
105
- set amount(e) {
106
- this.#t = e;
107
- }
108
- #n;
109
- get checked() {
110
- return this.#n;
111
- }
112
- set checked(e) {
113
- this.#n = e;
114
- }
115
- #r;
116
- get size() {
117
- return this.#r;
118
- }
119
- set size(e) {
120
- this.#r = e;
121
- }
122
- constructor() {
123
- super(), this.#e = t(this, g, null), this.#t = (t(this, _), t(this, y, "")), this.#n = (t(this, b), t(this, S, !1)), this.#r = (t(this, C), t(this, T, l() ? "s" : "m")), this._group = (t(this, E), null), this.addEventListener?.("click", () => this._handleClick());
124
- }
125
- connectedCallback() {
126
- super.connectedCallback(), this._group = this.closest("sbb-tag-group");
127
- }
128
- isDisabledExternally() {
129
- return this._group?.disabled ?? !1;
130
- }
131
- _handleClick() {
132
- if (this.disabled) return;
133
- let e = this.closest("sbb-tag-group");
134
- e && !e.multiple && this.checked || (this.checked = !this.checked, this.dispatchEvent(new InputEvent("input", {
135
- bubbles: !0,
136
- composed: !0
137
- })), this.dispatchEvent(new Event("change", { bubbles: !0 })), this.dispatchEvent(new Event("didChange", { bubbles: !0 })));
138
- }
139
- willUpdate(e) {
140
- super.willUpdate(e), e.has("checked") && (this.internals.ariaPressed = `${this.checked}`, this.toggleState("checked", this.checked), this.updateFormValue());
141
- let t = this.closest?.("sbb-tag-group");
142
- t && !t.multiple && e.has("checked") && this.checked && t?.tags.filter((e) => e !== this).forEach((e) => e.checked = !1);
143
- }
144
- formResetCallback() {
145
- this.checked = this.hasAttribute("checked");
146
- }
147
- formStateRestoreCallback(e, t) {
148
- e && (this.checked = e === "true");
149
- }
150
- updateFormValue() {
151
- this.checked ? super.updateFormValue() : this.internals.setFormValue(null);
152
- }
153
- formState() {
154
- return `${this.checked}`;
155
- }
156
- renderTemplate() {
157
- return n`
158
- <span class="sbb-tag__icon sbb-tag--shift"> ${this.renderIconSlot()} </span>
159
- <span class="sbb-tag__text sbb-tag--shift">
160
- <slot></slot>
161
- </span>
162
- <span class="sbb-tag__amount sbb-tag--shift">
163
- <slot name="amount">${this.amount}</slot>
164
- </span>
165
- `;
166
- }
167
- };
168
- })();
169
- //#endregion
170
- export { m as t };