@sbb-esta/lyne-elements-dev 5.0.0-next-dev.1776128807 → 5.0.0-next-dev.1776241211
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/core/styles/core.scss +10 -4
- package/core.css +23 -5
- package/custom-elements.json +6114 -5911
- package/development/autocomplete/autocomplete-base-element.d.ts +6 -0
- package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
- package/development/autocomplete/autocomplete-base-element.js +1 -1
- package/development/autocomplete/autocomplete.component.js +1 -1
- package/development/autocomplete-base-element-qUzJFqLU.js +678 -0
- package/development/autocomplete.js +1 -1
- package/development/autocomplete.pure.js +1 -1
- package/development/datepicker/common/datepicker-button.d.ts +6 -0
- package/development/datepicker/common/datepicker-button.d.ts.map +1 -1
- package/development/datepicker/common/datepicker-button.js +1 -1
- package/development/datepicker/datepicker/datepicker.component.d.ts +3 -0
- package/development/datepicker/datepicker/datepicker.component.d.ts.map +1 -1
- package/development/datepicker/datepicker/datepicker.component.js +1 -1
- package/development/datepicker-button-BI5R118p.js +166 -0
- package/development/datepicker.component-AKlc7SAO.js +214 -0
- package/development/datepicker.js +2 -2
- package/development/datepicker.pure.js +2 -2
- package/development/form-field/form-field-clear/form-field-clear.component.d.ts +3 -0
- package/development/form-field/form-field-clear/form-field-clear.component.d.ts.map +1 -1
- package/development/form-field/form-field-clear/form-field-clear.component.js +4 -1
- package/development/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.d.ts +3 -0
- package/development/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.d.ts.map +1 -1
- package/development/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.js +1 -1
- package/development/{timetable-form-swap-button.component-BGziVzB8.js → timetable-form-swap-button.component-_EUhzoww.js} +4 -1
- package/development/timetable-form.js +1 -1
- package/development/timetable-form.pure.js +1 -1
- package/development/toggle/toggle/toggle.component.d.ts.map +1 -1
- package/development/toggle/toggle/toggle.component.js +1 -1
- package/development/toggle/toggle-option/toggle-option.component.d.ts +1 -0
- package/development/toggle/toggle-option/toggle-option.component.d.ts.map +1 -1
- package/development/toggle/toggle-option/toggle-option.component.js +1 -1
- package/development/toggle-option.component-DscH6K3b.js +164 -0
- package/development/toggle.component-Dap1d4rK.js +244 -0
- package/development/toggle.js +2 -2
- package/development/toggle.pure.js +2 -2
- package/off-brand-theme.css +23 -5
- package/package.json +2 -2
- package/safety-theme.css +23 -5
- package/standard-theme.css +23 -5
- package/toggle/toggle/toggle.component.js +1 -1
- package/toggle/toggle-option/toggle-option.component.js +1 -1
- package/{toggle-option.component-BF95HWOF.js → toggle-option.component-BiyjKQB1.js} +5 -7
- package/{toggle.component-2e_7FeR4.js → toggle.component-CVbRdQDM.js} +6 -10
- package/toggle.js +2 -2
- package/toggle.pure.js +2 -2
- package/development/autocomplete-base-element-B5n-eCMO.js +0 -672
- package/development/datepicker-button-CIvIHG8k.js +0 -160
- package/development/datepicker.component-BEiMYEc-.js +0 -211
- package/development/toggle-option.component-BWT4kEZo.js +0 -165
- package/development/toggle.component-DjLnSv3R.js +0 -249
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
-
import { html, unsafeCSS } from "lit";
|
|
3
|
-
import { property } from "lit/decorators.js";
|
|
4
|
-
import { SbbButtonBaseElement, SbbLanguageController, SbbNegativeMixin, defaultDateAdapter, i18nToday, idReference, readConfig } from "./core.js";
|
|
5
|
-
import { SbbIconElement } from "./icon.pure.js";
|
|
6
|
-
import { SbbDateInputElement } from "./date-input.pure.js";
|
|
7
|
-
//#endregion
|
|
8
|
-
//#region src/elements/datepicker/common/datepicker-button.ts
|
|
9
|
-
var datepickerButtonStyle = unsafeCSS(".sbb-action-base {\n margin: auto;\n -webkit-tap-highlight-color: transparent;\n}");
|
|
10
|
-
var SbbDatepickerButtonBase = (() => {
|
|
11
|
-
let _classSuper = SbbNegativeMixin(SbbButtonBaseElement);
|
|
12
|
-
let _input_decorators;
|
|
13
|
-
let _input_initializers = [];
|
|
14
|
-
let _input_extraInitializers = [];
|
|
15
|
-
return class SbbDatepickerButtonBase extends _classSuper {
|
|
16
|
-
constructor() {
|
|
17
|
-
super(...arguments);
|
|
18
|
-
this.#input_accessor_storage = __runInitializers(this, _input_initializers, null);
|
|
19
|
-
/** Whether the component is disabled due date-picker's input disabled. */
|
|
20
|
-
this._inputDisabled = (__runInitializers(this, _input_extraInitializers), true);
|
|
21
|
-
this.dateAdapter = readConfig().datetime?.dateAdapter ?? defaultDateAdapter;
|
|
22
|
-
this.language = new SbbLanguageController(this);
|
|
23
|
-
}
|
|
24
|
-
static {
|
|
25
|
-
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
26
|
-
_input_decorators = [idReference(), property()];
|
|
27
|
-
__esDecorate(this, null, _input_decorators, {
|
|
28
|
-
kind: "accessor",
|
|
29
|
-
name: "input",
|
|
30
|
-
static: false,
|
|
31
|
-
private: false,
|
|
32
|
-
access: {
|
|
33
|
-
has: (obj) => "input" in obj,
|
|
34
|
-
get: (obj) => obj.input,
|
|
35
|
-
set: (obj, value) => {
|
|
36
|
-
obj.input = value;
|
|
37
|
-
}
|
|
38
|
-
},
|
|
39
|
-
metadata: _metadata
|
|
40
|
-
}, _input_initializers, _input_extraInitializers);
|
|
41
|
-
if (_metadata) Object.defineProperty(this, Symbol.metadata, {
|
|
42
|
-
enumerable: true,
|
|
43
|
-
configurable: true,
|
|
44
|
-
writable: true,
|
|
45
|
-
value: _metadata
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
static {
|
|
49
|
-
this.elementDependencies = [SbbIconElement];
|
|
50
|
-
}
|
|
51
|
-
static {
|
|
52
|
-
this.sbbDateInputAssociated = true;
|
|
53
|
-
}
|
|
54
|
-
#input_accessor_storage;
|
|
55
|
-
/**
|
|
56
|
-
* The associated date input element.
|
|
57
|
-
*
|
|
58
|
-
* For attribute usage, provide an id reference.
|
|
59
|
-
*/
|
|
60
|
-
get input() {
|
|
61
|
-
return this.#input_accessor_storage;
|
|
62
|
-
}
|
|
63
|
-
set input(value) {
|
|
64
|
-
this.#input_accessor_storage = value;
|
|
65
|
-
}
|
|
66
|
-
/** Whether this button is disabled. */
|
|
67
|
-
get disabled() {
|
|
68
|
-
return !!this._inputDisabled;
|
|
69
|
-
}
|
|
70
|
-
connectedCallback() {
|
|
71
|
-
super.connectedCallback();
|
|
72
|
-
this.toggleAttribute("disabled", this.disabled);
|
|
73
|
-
const formField = this.closest?.("sbb-form-field");
|
|
74
|
-
if (formField) {
|
|
75
|
-
customElements.upgrade?.(formField);
|
|
76
|
-
this.negative = formField.negative;
|
|
77
|
-
SbbDateInputElement.resolveAssociation(this);
|
|
78
|
-
this.slot ||= this._findSlotPosition();
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
requestUpdate(name, oldValue, options) {
|
|
82
|
-
super.requestUpdate(name, oldValue, options);
|
|
83
|
-
if (name === "input" && this.input !== oldValue) {
|
|
84
|
-
this._inputAbortController?.abort();
|
|
85
|
-
this._inputDisabled = true;
|
|
86
|
-
if (this.input) {
|
|
87
|
-
this._inputAbortController = new AbortController();
|
|
88
|
-
this.slot = this._findSlotPosition();
|
|
89
|
-
customElements.upgrade?.(this.input);
|
|
90
|
-
this._sync();
|
|
91
|
-
this.input.addEventListener("ɵchange", () => this._sync());
|
|
92
|
-
}
|
|
93
|
-
if (this.hasUpdated) this.toggleAttribute("disabled", this.disabled);
|
|
94
|
-
} else if (!name && this.hasUpdated && this.input) this._sync();
|
|
95
|
-
}
|
|
96
|
-
_findSlotPosition() {
|
|
97
|
-
return !this.input || this.compareDocumentPosition(this.input) & Node.DOCUMENT_POSITION_FOLLOWING ? "prefix" : "suffix";
|
|
98
|
-
}
|
|
99
|
-
_sync() {
|
|
100
|
-
this.syncDateInputState();
|
|
101
|
-
this.toggleAttribute("disabled", this.disabled);
|
|
102
|
-
if (this.disabled) this.removeAttribute("tabindex");
|
|
103
|
-
else this.setAttribute("tabindex", "0");
|
|
104
|
-
}
|
|
105
|
-
syncDateInputState() {
|
|
106
|
-
this._inputDisabled = this.input.disabled || this.input.readOnly;
|
|
107
|
-
}
|
|
108
|
-
renderTemplate() {
|
|
109
|
-
return html`<sbb-icon name=${this.iconName}></sbb-icon>`;
|
|
110
|
-
}
|
|
111
|
-
};
|
|
112
|
-
})();
|
|
113
|
-
var SbbDatepickerButton = class extends SbbDatepickerButtonBase {
|
|
114
|
-
get disabled() {
|
|
115
|
-
return this._disabled || super.disabled;
|
|
116
|
-
}
|
|
117
|
-
constructor() {
|
|
118
|
-
super();
|
|
119
|
-
/** Whether the component is disabled due date equals to boundary date. */
|
|
120
|
-
this._disabled = true;
|
|
121
|
-
this.addEventListener?.("click", () => this._handleClick());
|
|
122
|
-
}
|
|
123
|
-
/** @deprecated Use `getFollowingDate(date: T)` instead. */
|
|
124
|
-
findAvailableDate(_date) {
|
|
125
|
-
return this.getFollowingDate(_date);
|
|
126
|
-
}
|
|
127
|
-
_handleClick() {
|
|
128
|
-
if (!this.input || this.disabled) return;
|
|
129
|
-
const startingDate = this.input.valueAsDate ?? this.dateAdapter.today();
|
|
130
|
-
const date = this.getFollowingDate(startingDate);
|
|
131
|
-
if (this.dateAdapter.isValid(date) && this.dateAdapter.compareDate(date, startingDate) !== 0) {
|
|
132
|
-
this.input.valueAsDate = date;
|
|
133
|
-
this.input.dispatchEvent(new InputEvent("input", {
|
|
134
|
-
bubbles: true,
|
|
135
|
-
composed: true
|
|
136
|
-
}));
|
|
137
|
-
this.input.dispatchEvent(new Event("change", {
|
|
138
|
-
bubbles: true,
|
|
139
|
-
composed: true
|
|
140
|
-
}));
|
|
141
|
-
this.input.dispatchEvent(new Event("blur", { composed: true }));
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
syncDateInputState() {
|
|
145
|
-
super.syncDateInputState();
|
|
146
|
-
if (!this.dateAdapter.isValid(this.input.valueAsDate)) {
|
|
147
|
-
this._disabled = true;
|
|
148
|
-
this.internals.ariaLabel = this.i18nOffBoundaryDay[this.language.current];
|
|
149
|
-
return;
|
|
150
|
-
}
|
|
151
|
-
const date = this.getFollowingDate(this.input.valueAsDate);
|
|
152
|
-
this._disabled = !this.dateAdapter.isValid(date) || this.dateAdapter.compareDate(date, this.input.valueAsDate) === 0;
|
|
153
|
-
const currentDateString = this.dateAdapter.compareDate(this.dateAdapter.today(), this.input.valueAsDate) === 0 ? i18nToday[this.language.current].toLowerCase() : this.dateAdapter.getAccessibilityFormatDate(this.input.valueAsDate);
|
|
154
|
-
this.internals.ariaLabel = this.i18nSelectOffBoundaryDay(currentDateString)[this.language.current];
|
|
155
|
-
}
|
|
156
|
-
};
|
|
157
|
-
//#endregion
|
|
158
|
-
export { SbbDatepickerButtonBase as n, datepickerButtonStyle as r, SbbDatepickerButton as t };
|
|
159
|
-
|
|
160
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1idXR0b24tQ0l2SUhHOGsuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2RhdGVwaWNrZXIvY29tbW9uL2RhdGVwaWNrZXItYnV0dG9uLnNjc3M/aW5saW5lIiwiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2RhdGVwaWNrZXIvY29tbW9uL2RhdGVwaWNrZXItYnV0dG9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbi5zYmItYWN0aW9uLWJhc2Uge1xuICBtYXJnaW46IGF1dG87XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4iLCJpbXBvcnQgeyBodG1sLCB1bnNhZmVDU1MsIHR5cGUgUHJvcGVydHlEZWNsYXJhdGlvbiwgdHlwZSBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHtcbiAgU2JiQnV0dG9uQmFzZUVsZW1lbnQsXG4gIHR5cGUgU2JiRWxlbWVudFR5cGUsXG4gIHR5cGUgRGF0ZUFkYXB0ZXIsXG4gIGRlZmF1bHREYXRlQWRhcHRlcixcbn0gZnJvbSAnLi4vLi4vY29yZS50cyc7XG5pbXBvcnQge1xuICByZWFkQ29uZmlnLFxuICBTYmJMYW5ndWFnZUNvbnRyb2xsZXIsXG4gIGlkUmVmZXJlbmNlLFxuICBpMThuVG9kYXksXG4gIFNiYk5lZ2F0aXZlTWl4aW4sXG59IGZyb20gJy4uLy4uL2NvcmUudHMnO1xuaW1wb3J0IHsgU2JiRGF0ZUlucHV0RWxlbWVudCwgdHlwZSBTYmJEYXRlSW5wdXRBc3NvY2lhdGVkIH0gZnJvbSAnLi4vLi4vZGF0ZS1pbnB1dC5wdXJlLnRzJztcbmltcG9ydCB7IFNiYkljb25FbGVtZW50IH0gZnJvbSAnLi4vLi4vaWNvbi5wdXJlLnRzJztcblxuaW1wb3J0IGRhdGVwaWNrZXJCdXR0b25TdHlsZVN0cmluZyBmcm9tICcuL2RhdGVwaWNrZXItYnV0dG9uLnNjc3M/aW5saW5lJztcblxuZXhwb3J0IGNvbnN0IGRhdGVwaWNrZXJCdXR0b25TdHlsZSA9IHVuc2FmZUNTUyhkYXRlcGlja2VyQnV0dG9uU3R5bGVTdHJpbmcpO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU2JiRGF0ZXBpY2tlckJ1dHRvbkJhc2U8VCA9IERhdGU+XG4gIGV4dGVuZHMgU2JiTmVnYXRpdmVNaXhpbihTYmJCdXR0b25CYXNlRWxlbWVudClcbiAgaW1wbGVtZW50cyBTYmJEYXRlSW5wdXRBc3NvY2lhdGVkPFQ+XG57XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgZWxlbWVudERlcGVuZGVuY2llczogU2JiRWxlbWVudFR5cGVbXSA9IFtTYmJJY29uRWxlbWVudF07XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgc2JiRGF0ZUlucHV0QXNzb2NpYXRlZCA9IHRydWU7XG5cbiAgLyoqXG4gICAqIFRoZSBhc3NvY2lhdGVkIGRhdGUgaW5wdXQgZWxlbWVudC5cbiAgICpcbiAgICogRm9yIGF0dHJpYnV0ZSB1c2FnZSwgcHJvdmlkZSBhbiBpZCByZWZlcmVuY2UuXG4gICAqL1xuICBAaWRSZWZlcmVuY2UoKVxuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgYWNjZXNzb3IgaW5wdXQ6IFNiYkRhdGVJbnB1dEVsZW1lbnQ8VD4gfCBudWxsID0gbnVsbDtcblxuICAvKiogV2hldGhlciB0aGlzIGJ1dHRvbiBpcyBkaXNhYmxlZC4gKi9cbiAgcHVibGljIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLl9pbnB1dERpc2FibGVkO1xuICB9XG5cbiAgLyoqIFdoZXRoZXIgdGhlIGNvbXBvbmVudCBpcyBkaXNhYmxlZCBkdWUgZGF0ZS1waWNrZXIncyBpbnB1dCBkaXNhYmxlZC4gKi9cbiAgcHJpdmF0ZSBfaW5wdXREaXNhYmxlZCA9IHRydWU7XG5cbiAgcHJpdmF0ZSBfaW5wdXRBYm9ydENvbnRyb2xsZXI/OiBBYm9ydENvbnRyb2xsZXI7XG5cbiAgcHJvdGVjdGVkIGRhdGVBZGFwdGVyOiBEYXRlQWRhcHRlcjxUPiA9IHJlYWRDb25maWcoKS5kYXRldGltZT8uZGF0ZUFkYXB0ZXIgPz8gZGVmYXVsdERhdGVBZGFwdGVyO1xuICBwcm90ZWN0ZWQgbGFuZ3VhZ2UgPSBuZXcgU2JiTGFuZ3VhZ2VDb250cm9sbGVyKHRoaXMpO1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgaWNvbk5hbWU6IHN0cmluZztcblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLnRvZ2dsZUF0dHJpYnV0ZSgnZGlzYWJsZWQnLCB0aGlzLmRpc2FibGVkKTtcbiAgICBjb25zdCBmb3JtRmllbGQgPSB0aGlzLmNsb3Nlc3Q/Lignc2JiLWZvcm0tZmllbGQnKTtcbiAgICBpZiAoZm9ybUZpZWxkKSB7XG4gICAgICBjdXN0b21FbGVtZW50cy51cGdyYWRlPy4oZm9ybUZpZWxkKTtcbiAgICAgIHRoaXMubmVnYXRpdmUgPSBmb3JtRmllbGQubmVnYXRpdmU7XG4gICAgICBTYmJEYXRlSW5wdXRFbGVtZW50LnJlc29sdmVBc3NvY2lhdGlvbih0aGlzKTtcbiAgICAgIHRoaXMuc2xvdCB8fD0gdGhpcy5fZmluZFNsb3RQb3NpdGlvbigpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSByZXF1ZXN0VXBkYXRlKFxuICAgIG5hbWU/OiBQcm9wZXJ0eUtleSxcbiAgICBvbGRWYWx1ZT86IHVua25vd24sXG4gICAgb3B0aW9ucz86IFByb3BlcnR5RGVjbGFyYXRpb24sXG4gICk6IHZvaWQge1xuICAgIHN1cGVyLnJlcXVlc3RVcGRhdGUobmFtZSwgb2xkVmFsdWUsIG9wdGlvbnMpO1xuICAgIGlmIChuYW1lID09PSAnaW5wdXQnICYmIHRoaXMuaW5wdXQgIT09IG9sZFZhbHVlKSB7XG4gICAgICB0aGlzLl9pbnB1dEFib3J0Q29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICAgIHRoaXMuX2lucHV0RGlzYWJsZWQgPSB0cnVlO1xuICAgICAgaWYgKHRoaXMuaW5wdXQpIHtcbiAgICAgICAgdGhpcy5faW5wdXRBYm9ydENvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7XG4gICAgICAgIHRoaXMuc2xvdCA9IHRoaXMuX2ZpbmRTbG90UG9zaXRpb24oKTtcbiAgICAgICAgLy8gVGhlIHNiYi1kYXRlLWlucHV0IGluc3RhbmNlIG11c3QgYmUgdXBncmFkZWQgaW4gb3JkZXJcbiAgICAgICAgLy8gZm9yIHByb3BlcnRpZXMgdG8gYmUgYWNjZXNzaWJsZS5cbiAgICAgICAgY3VzdG9tRWxlbWVudHMudXBncmFkZT8uKHRoaXMuaW5wdXQpO1xuICAgICAgICB0aGlzLl9zeW5jKCk7XG4gICAgICAgIHRoaXMuaW5wdXQuYWRkRXZlbnRMaXN0ZW5lcignybVjaGFuZ2UnLCAoKSA9PiB0aGlzLl9zeW5jKCkpO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuaGFzVXBkYXRlZCkge1xuICAgICAgICB0aGlzLnRvZ2dsZUF0dHJpYnV0ZSgnZGlzYWJsZWQnLCB0aGlzLmRpc2FibGVkKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKCFuYW1lICYmIHRoaXMuaGFzVXBkYXRlZCAmJiB0aGlzLmlucHV0KSB7XG4gICAgICAvLyBJZiBsYW5ndWFnZSBjaGFuZ2VzLCB3ZSBuZWVkIHRvIHVwZGF0ZSByZWxhdGVkIGFyaWEgcHJvcGVydGllcy5cbiAgICAgIHRoaXMuX3N5bmMoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9maW5kU2xvdFBvc2l0aW9uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICF0aGlzLmlucHV0IHx8XG4gICAgICB0aGlzLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKHRoaXMuaW5wdXQpICYgTm9kZS5ET0NVTUVOVF9QT1NJVElPTl9GT0xMT1dJTkdcbiAgICAgID8gJ3ByZWZpeCdcbiAgICAgIDogJ3N1ZmZpeCc7XG4gIH1cblxuICBwcml2YXRlIF9zeW5jKCk6IHZvaWQge1xuICAgIHRoaXMuc3luY0RhdGVJbnB1dFN0YXRlKCk7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2Rpc2FibGVkJywgdGhpcy5kaXNhYmxlZCk7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMucmVtb3ZlQXR0cmlidXRlKCd0YWJpbmRleCcpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZSgndGFiaW5kZXgnLCAnMCcpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBzeW5jRGF0ZUlucHV0U3RhdGUoKTogdm9pZCB7XG4gICAgdGhpcy5faW5wdXREaXNhYmxlZCA9IHRoaXMuaW5wdXQhLmRpc2FibGVkIHx8IHRoaXMuaW5wdXQhLnJlYWRPbmx5O1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlclRlbXBsYXRlKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGA8c2JiLWljb24gbmFtZT0ke3RoaXMuaWNvbk5hbWV9Pjwvc2JiLWljb24+YDtcbiAgfVxufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU2JiRGF0ZXBpY2tlckJ1dHRvbjxUID0gRGF0ZT4gZXh0ZW5kcyBTYmJEYXRlcGlja2VyQnV0dG9uQmFzZTxUPiB7XG4gIC8qKiBXaGV0aGVyIHRoZSBjb21wb25lbnQgaXMgZGlzYWJsZWQgZHVlIGRhdGUgZXF1YWxzIHRvIGJvdW5kYXJ5IGRhdGUuICovXG4gIHByaXZhdGUgX2Rpc2FibGVkID0gdHJ1ZTtcblxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgaTE4bk9mZkJvdW5kYXJ5RGF5OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgaTE4blNlbGVjdE9mZkJvdW5kYXJ5RGF5OiAoX2N1cnJlbnREYXRlOiBzdHJpbmcpID0+IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG5cbiAgcHVibGljIG92ZXJyaWRlIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQgfHwgc3VwZXIuZGlzYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LignY2xpY2snLCAoKSA9PiB0aGlzLl9oYW5kbGVDbGljaygpKTtcbiAgfVxuXG4gIC8qKiBAZGVwcmVjYXRlZCBVc2UgYGdldEZvbGxvd2luZ0RhdGUoZGF0ZTogVClgIGluc3RlYWQuICovXG4gIHByb3RlY3RlZCBmaW5kQXZhaWxhYmxlRGF0ZShfZGF0ZTogVCk6IFQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5nZXRGb2xsb3dpbmdEYXRlKF9kYXRlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBnZXRGb2xsb3dpbmdEYXRlKF9kYXRlOiBUKTogVCB8IG51bGw7XG5cbiAgcHJpdmF0ZSBfaGFuZGxlQ2xpY2soKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmlucHV0IHx8IHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3Qgc3RhcnRpbmdEYXRlOiBUID0gdGhpcy5pbnB1dC52YWx1ZUFzRGF0ZSA/PyB0aGlzLmRhdGVBZGFwdGVyLnRvZGF5KCk7XG4gICAgY29uc3QgZGF0ZSA9IHRoaXMuZ2V0Rm9sbG93aW5nRGF0ZShzdGFydGluZ0RhdGUpO1xuICAgIGlmICh0aGlzLmRhdGVBZGFwdGVyLmlzVmFsaWQoZGF0ZSkgJiYgdGhpcy5kYXRlQWRhcHRlci5jb21wYXJlRGF0ZShkYXRlLCBzdGFydGluZ0RhdGUpICE9PSAwKSB7XG4gICAgICB0aGlzLmlucHV0LnZhbHVlQXNEYXRlID0gZGF0ZTtcbiAgICAgIHRoaXMuaW5wdXQuZGlzcGF0Y2hFdmVudChuZXcgSW5wdXRFdmVudCgnaW5wdXQnLCB7IGJ1YmJsZXM6IHRydWUsIGNvbXBvc2VkOiB0cnVlIH0pKTtcbiAgICAgIHRoaXMuaW5wdXQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2NoYW5nZScsIHsgYnViYmxlczogdHJ1ZSwgY29tcG9zZWQ6IHRydWUgfSkpO1xuICAgICAgLy8gRW1pdCBibHVyIGV2ZW50IHdoZW4gdmFsdWUgaXMgY2hhbmdlZCBwcm9ncmFtbWF0aWNhbGx5IHRvIG5vdGlmeVxuICAgICAgLy8gZnJhbWV3b3JrcyB0aGF0IHJlbHkgb24gdGhhdCBldmVudCB0byB1cGRhdGUgZm9ybSBzdGF0dXMuXG4gICAgICB0aGlzLmlucHV0LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdibHVyJywgeyBjb21wb3NlZDogdHJ1ZSB9KSk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHN5bmNEYXRlSW5wdXRTdGF0ZSgpOiB2b2lkIHtcbiAgICBzdXBlci5zeW5jRGF0ZUlucHV0U3RhdGUoKTtcbiAgICBpZiAoIXRoaXMuZGF0ZUFkYXB0ZXIuaXNWYWxpZCh0aGlzLmlucHV0IS52YWx1ZUFzRGF0ZSkpIHtcbiAgICAgIHRoaXMuX2Rpc2FibGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLmFyaWFMYWJlbCA9IHRoaXMuaTE4bk9mZkJvdW5kYXJ5RGF5W3RoaXMubGFuZ3VhZ2UuY3VycmVudF07XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGF0ZSA9IHRoaXMuZ2V0Rm9sbG93aW5nRGF0ZSh0aGlzLmlucHV0IS52YWx1ZUFzRGF0ZSk7XG4gICAgdGhpcy5fZGlzYWJsZWQgPVxuICAgICAgIXRoaXMuZGF0ZUFkYXB0ZXIuaXNWYWxpZChkYXRlKSB8fFxuICAgICAgdGhpcy5kYXRlQWRhcHRlci5jb21wYXJlRGF0ZShkYXRlLCB0aGlzLmlucHV0IS52YWx1ZUFzRGF0ZSkgPT09IDA7XG4gICAgY29uc3QgY3VycmVudERhdGVTdHJpbmcgPVxuICAgICAgdGhpcy5kYXRlQWRhcHRlci5jb21wYXJlRGF0ZSh0aGlzLmRhdGVBZGFwdGVyLnRvZGF5KCksIHRoaXMuaW5wdXQhLnZhbHVlQXNEYXRlKSA9PT0gMFxuICAgICAgICA/IGkxOG5Ub2RheVt0aGlzLmxhbmd1YWdlLmN1cnJlbnRdLnRvTG93ZXJDYXNlKClcbiAgICAgICAgOiB0aGlzLmRhdGVBZGFwdGVyLmdldEFjY2Vzc2liaWxpdHlGb3JtYXREYXRlKHRoaXMuaW5wdXQhLnZhbHVlQXNEYXRlKTtcbiAgICB0aGlzLmludGVybmFscy5hcmlhTGFiZWwgPVxuICAgICAgdGhpcy5pMThuU2VsZWN0T2ZmQm91bmRhcnlEYXkoY3VycmVudERhdGVTdHJpbmcpW3RoaXMubGFuZ3VhZ2UuY3VycmVudF07XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUNxQkEsSUFBYSx3QkFBd0IsZ0dBQXNDO0lBRXJELGlDQUF1QjttQkFDbkMsaUJBQWlCLHFCQUFxQjs7OztjQUQxQixnQ0FDWixZQUFzQzs7O0FBYTlCLFNBQUEseUJBQUEsa0JBQUEsTUFBQSxxQkFBdUMsS0FBSTs7QUFRbkQsUUFBQSxrQkFBYyxrQkFBQSxNQUFBLHlCQUFBLEVBQUc7QUFJZixRQUFBLGNBQThCLFlBQVksQ0FBQyxVQUFVLGVBQWU7QUFDcEUsUUFBQSxXQUFXLElBQUksc0JBQXNCLEtBQUs7Ozs7d0JBZm5ELGFBQWEsRUFDYixVQUFVLENBQUE7QUFDWCxnQkFBQSxNQUFBLE1BQUEsbUJBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSxXQUFBO0tBQUEsTUFBQSxRQUFBLElBQWdCO0tBQUssTUFBQSxLQUFBLFVBQUE7QUFBQSxVQUFMLFFBQUs7O0tBQUE7SUFBQSxVQUFBO0lBQUEsRUFBQSxxQkFBQSx5QkFBQTs7Ozs7Ozs7O0FBVkUsUUFBQSxzQkFBd0MsQ0FBQyxlQUFlOzs7QUFDeEQsUUFBQSx5QkFBeUI7O0VBU2hEOzs7Ozs7RUFBQSxJQUFnQixRQUFLO0FBQUEsVUFBQSxNQUFBOztFQUFyQixJQUFnQixNQUFLLE9BQUE7QUFBQSxTQUFBLHlCQUFB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
|
|
@@ -1,211 +0,0 @@
|
|
|
1
|
-
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
-
import { html, isServer, nothing, unsafeCSS } from "lit";
|
|
3
|
-
import { property } from "lit/decorators.js";
|
|
4
|
-
import { SbbLanguageController, SbbUpdateSchedulerMixin, defaultDateAdapter, forceType, i18nDateChangedTo, idReference, readConfig } from "./core.js";
|
|
5
|
-
import { SbbDateInputElement } from "./date-input.pure.js";
|
|
6
|
-
import { SbbCalendarElement } from "./calendar.pure.js";
|
|
7
|
-
import { SbbPopoverBaseElement } from "./popover.pure.js";
|
|
8
|
-
//#region src/elements/datepicker/datepicker/datepicker.scss?inline
|
|
9
|
-
var datepicker_default = "#status-container {\n border: 0;\n clip-path: rect(0 0 0 0);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}";
|
|
10
|
-
//#endregion
|
|
11
|
-
//#region src/elements/datepicker/datepicker/datepicker.component.ts
|
|
12
|
-
var nextId = 0;
|
|
13
|
-
/**
|
|
14
|
-
* A datepicker component that allows users to select a date from a calendar view.
|
|
15
|
-
* @event {CustomEvent<T>} dateselected - Event emitted on date selection.
|
|
16
|
-
*/
|
|
17
|
-
var SbbDatepickerElement = (() => {
|
|
18
|
-
let _classSuper = SbbUpdateSchedulerMixin(SbbPopoverBaseElement);
|
|
19
|
-
let _wide_decorators;
|
|
20
|
-
let _wide_initializers = [];
|
|
21
|
-
let _wide_extraInitializers = [];
|
|
22
|
-
let _input_decorators;
|
|
23
|
-
let _input_initializers = [];
|
|
24
|
-
let _input_extraInitializers = [];
|
|
25
|
-
let _view_decorators;
|
|
26
|
-
let _view_initializers = [];
|
|
27
|
-
let _view_extraInitializers = [];
|
|
28
|
-
return class SbbDatepickerElement extends _classSuper {
|
|
29
|
-
static {
|
|
30
|
-
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
31
|
-
_wide_decorators = [forceType(), property({ type: Boolean })];
|
|
32
|
-
_input_decorators = [idReference(), property()];
|
|
33
|
-
_view_decorators = [property()];
|
|
34
|
-
__esDecorate(this, null, _wide_decorators, {
|
|
35
|
-
kind: "accessor",
|
|
36
|
-
name: "wide",
|
|
37
|
-
static: false,
|
|
38
|
-
private: false,
|
|
39
|
-
access: {
|
|
40
|
-
has: (obj) => "wide" in obj,
|
|
41
|
-
get: (obj) => obj.wide,
|
|
42
|
-
set: (obj, value) => {
|
|
43
|
-
obj.wide = value;
|
|
44
|
-
}
|
|
45
|
-
},
|
|
46
|
-
metadata: _metadata
|
|
47
|
-
}, _wide_initializers, _wide_extraInitializers);
|
|
48
|
-
__esDecorate(this, null, _input_decorators, {
|
|
49
|
-
kind: "accessor",
|
|
50
|
-
name: "input",
|
|
51
|
-
static: false,
|
|
52
|
-
private: false,
|
|
53
|
-
access: {
|
|
54
|
-
has: (obj) => "input" in obj,
|
|
55
|
-
get: (obj) => obj.input,
|
|
56
|
-
set: (obj, value) => {
|
|
57
|
-
obj.input = value;
|
|
58
|
-
}
|
|
59
|
-
},
|
|
60
|
-
metadata: _metadata
|
|
61
|
-
}, _input_initializers, _input_extraInitializers);
|
|
62
|
-
__esDecorate(this, null, _view_decorators, {
|
|
63
|
-
kind: "accessor",
|
|
64
|
-
name: "view",
|
|
65
|
-
static: false,
|
|
66
|
-
private: false,
|
|
67
|
-
access: {
|
|
68
|
-
has: (obj) => "view" in obj,
|
|
69
|
-
get: (obj) => obj.view,
|
|
70
|
-
set: (obj, value) => {
|
|
71
|
-
obj.view = value;
|
|
72
|
-
}
|
|
73
|
-
},
|
|
74
|
-
metadata: _metadata
|
|
75
|
-
}, _view_initializers, _view_extraInitializers);
|
|
76
|
-
if (_metadata) Object.defineProperty(this, Symbol.metadata, {
|
|
77
|
-
enumerable: true,
|
|
78
|
-
configurable: true,
|
|
79
|
-
writable: true,
|
|
80
|
-
value: _metadata
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
static {
|
|
84
|
-
this.elementName = "sbb-datepicker";
|
|
85
|
-
}
|
|
86
|
-
static {
|
|
87
|
-
this.elementDependencies = [SbbCalendarElement];
|
|
88
|
-
}
|
|
89
|
-
static {
|
|
90
|
-
this.styles = [SbbPopoverBaseElement.styles, unsafeCSS(datepicker_default)];
|
|
91
|
-
}
|
|
92
|
-
static {
|
|
93
|
-
this.sbbDateInputAssociated = true;
|
|
94
|
-
}
|
|
95
|
-
#wide_accessor_storage;
|
|
96
|
-
/** If set to true, two months are displayed. */
|
|
97
|
-
get wide() {
|
|
98
|
-
return this.#wide_accessor_storage;
|
|
99
|
-
}
|
|
100
|
-
set wide(value) {
|
|
101
|
-
this.#wide_accessor_storage = value;
|
|
102
|
-
}
|
|
103
|
-
#input_accessor_storage;
|
|
104
|
-
/**
|
|
105
|
-
* Reference to the sbb-date-input instance or the native input connected to the datepicker.
|
|
106
|
-
*
|
|
107
|
-
* For attribute usage, provide an id reference.
|
|
108
|
-
*/
|
|
109
|
-
get input() {
|
|
110
|
-
return this.#input_accessor_storage;
|
|
111
|
-
}
|
|
112
|
-
set input(value) {
|
|
113
|
-
this.#input_accessor_storage = value;
|
|
114
|
-
}
|
|
115
|
-
#view_accessor_storage;
|
|
116
|
-
/** The initial view of calendar which should be displayed on opening. */
|
|
117
|
-
get view() {
|
|
118
|
-
return this.#view_accessor_storage;
|
|
119
|
-
}
|
|
120
|
-
set view(value) {
|
|
121
|
-
this.#view_accessor_storage = value;
|
|
122
|
-
}
|
|
123
|
-
constructor() {
|
|
124
|
-
super();
|
|
125
|
-
this.#wide_accessor_storage = __runInitializers(this, _wide_initializers, false);
|
|
126
|
-
this.#input_accessor_storage = (__runInitializers(this, _wide_extraInitializers), __runInitializers(this, _input_initializers, null));
|
|
127
|
-
this.#view_accessor_storage = (__runInitializers(this, _input_extraInitializers), __runInitializers(this, _view_initializers, "day"));
|
|
128
|
-
this._inputAbortController = __runInitializers(this, _view_extraInitializers);
|
|
129
|
-
this._dateAdapter = readConfig().datetime?.dateAdapter ?? defaultDateAdapter;
|
|
130
|
-
this._language = new SbbLanguageController(this);
|
|
131
|
-
this._ready = false;
|
|
132
|
-
this.startUpdate();
|
|
133
|
-
this.addEventListener(SbbPopoverBaseElement.events.beforeopen, () => {
|
|
134
|
-
this.shadowRoot?.querySelector("sbb-calendar")?.resetPosition?.();
|
|
135
|
-
});
|
|
136
|
-
if (!isServer && this.hydrationRequired) this.hydrationComplete.then(() => this.requestUpdate());
|
|
137
|
-
}
|
|
138
|
-
connectedCallback() {
|
|
139
|
-
this.id ||= `sbb-datepicker-${++nextId}`;
|
|
140
|
-
super.connectedCallback();
|
|
141
|
-
const formField = this.closest?.("sbb-form-field");
|
|
142
|
-
if (formField) {
|
|
143
|
-
SbbDateInputElement.resolveAssociation(this);
|
|
144
|
-
const toggle = formField.querySelector("sbb-datepicker-toggle");
|
|
145
|
-
if (toggle && !toggle.hasAttribute("datepicker")) toggle.datepicker ??= this;
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
requestUpdate(name, oldValue, options) {
|
|
149
|
-
super.requestUpdate(name, oldValue, options);
|
|
150
|
-
if (name === "input" && this.input !== oldValue) {
|
|
151
|
-
this._inputAbortController?.abort();
|
|
152
|
-
if (this.input) {
|
|
153
|
-
const { signal } = this._inputAbortController = new AbortController();
|
|
154
|
-
this.input?.addEventListener("ɵchange", () => {
|
|
155
|
-
super.requestUpdate();
|
|
156
|
-
this._updateStatus();
|
|
157
|
-
}, { signal });
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
firstUpdated(changedProperties) {
|
|
162
|
-
super.firstUpdated(changedProperties);
|
|
163
|
-
setTimeout(() => {
|
|
164
|
-
this._ready = true;
|
|
165
|
-
this.requestUpdate();
|
|
166
|
-
this.completeUpdate();
|
|
167
|
-
});
|
|
168
|
-
}
|
|
169
|
-
_updateStatus() {
|
|
170
|
-
const status = this.shadowRoot?.getElementById("status-container");
|
|
171
|
-
if (!status) return;
|
|
172
|
-
const text = this._dateAdapter.isValid(this.input?.valueAsDate) ? `${i18nDateChangedTo[this._language.current]} ${this._dateAdapter.format(this.input.valueAsDate, { weekdayStyle: "long" })}` : "";
|
|
173
|
-
if (status.textContent !== text) status.textContent = text;
|
|
174
|
-
}
|
|
175
|
-
renderContent() {
|
|
176
|
-
return html`
|
|
177
|
-
<p id="status-container" role="status"></p>
|
|
178
|
-
<sbb-calendar
|
|
179
|
-
.view=${this.view}
|
|
180
|
-
.min=${this.input?.min ?? null}
|
|
181
|
-
.max=${this.input?.max ?? null}
|
|
182
|
-
.dateFilter=${this.input?.dateFilter ?? null}
|
|
183
|
-
.selected=${this.input?.valueAsDate ?? null}
|
|
184
|
-
?wide=${this.wide}
|
|
185
|
-
@dateselected=${(d) => {
|
|
186
|
-
if (this.input) {
|
|
187
|
-
this.input.valueAsDate = d.detail;
|
|
188
|
-
this.input.dispatchEvent(new InputEvent("input", {
|
|
189
|
-
bubbles: true,
|
|
190
|
-
composed: true
|
|
191
|
-
}));
|
|
192
|
-
this.input.dispatchEvent(new Event("change", {
|
|
193
|
-
bubbles: true,
|
|
194
|
-
composed: true
|
|
195
|
-
}));
|
|
196
|
-
this.input.dispatchEvent(new Event("blur", { composed: true }));
|
|
197
|
-
this.close();
|
|
198
|
-
}
|
|
199
|
-
}}
|
|
200
|
-
></sbb-calendar>
|
|
201
|
-
`;
|
|
202
|
-
}
|
|
203
|
-
render() {
|
|
204
|
-
return isServer || this.hydrationRequired || !this._ready ? html`${nothing}` : super.render();
|
|
205
|
-
}
|
|
206
|
-
};
|
|
207
|
-
})();
|
|
208
|
-
//#endregion
|
|
209
|
-
export { SbbDatepickerElement as t };
|
|
210
|
-
|
|
211
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci5jb21wb25lbnQtQkVpTVlFYy0uanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci9kYXRlcGlja2VyLnNjc3M/aW5saW5lIiwiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci9kYXRlcGlja2VyLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlICcuLi8uLi9jb3JlL3N0eWxlcycgYXMgc2JiO1xuXG4jc3RhdHVzLWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIHNiYi5zY3JlZW4tcmVhZGVyLW9ubHk7XG59XG4iLCJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBpc1NlcnZlcixcbiAgbm90aGluZyxcbiAgdHlwZSBQcm9wZXJ0eURlY2xhcmF0aW9uLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxuICB1bnNhZmVDU1MsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgU2JiQ2FsZW5kYXJFbGVtZW50LCB0eXBlIENhbGVuZGFyVmlldyB9IGZyb20gJy4uLy4uL2NhbGVuZGFyLnB1cmUudHMnO1xuaW1wb3J0IHsgdHlwZSBTYmJFbGVtZW50VHlwZSwgdHlwZSBEYXRlQWRhcHRlciwgZGVmYXVsdERhdGVBZGFwdGVyIH0gZnJvbSAnLi4vLi4vY29yZS50cyc7XG5pbXBvcnQge1xuICByZWFkQ29uZmlnLFxuICBTYmJMYW5ndWFnZUNvbnRyb2xsZXIsXG4gIGZvcmNlVHlwZSxcbiAgaWRSZWZlcmVuY2UsXG4gIGkxOG5EYXRlQ2hhbmdlZFRvLFxuICBTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbixcbn0gZnJvbSAnLi4vLi4vY29yZS50cyc7XG5pbXBvcnQgeyB0eXBlIFNiYkRhdGVJbnB1dEFzc29jaWF0ZWQsIFNiYkRhdGVJbnB1dEVsZW1lbnQgfSBmcm9tICcuLi8uLi9kYXRlLWlucHV0LnB1cmUudHMnO1xuaW1wb3J0IHsgU2JiUG9wb3ZlckJhc2VFbGVtZW50IH0gZnJvbSAnLi4vLi4vcG9wb3Zlci5wdXJlLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiRGF0ZXBpY2tlclRvZ2dsZUVsZW1lbnQgfSBmcm9tICcuLi9kYXRlcGlja2VyLXRvZ2dsZS9kYXRlcGlja2VyLXRvZ2dsZS5jb21wb25lbnQudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9kYXRlcGlja2VyLnNjc3M/aW5saW5lJztcblxubGV0IG5leHRJZCA9IDA7XG5cbi8qKlxuICogQSBkYXRlcGlja2VyIGNvbXBvbmVudCB0aGF0IGFsbG93cyB1c2VycyB0byBzZWxlY3QgYSBkYXRlIGZyb20gYSBjYWxlbmRhciB2aWV3LlxuICogQGV2ZW50IHtDdXN0b21FdmVudDxUPn0gZGF0ZXNlbGVjdGVkIC0gRXZlbnQgZW1pdHRlZCBvbiBkYXRlIHNlbGVjdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIFNiYkRhdGVwaWNrZXJFbGVtZW50PFQgPSBEYXRlPlxuICBleHRlbmRzIFNiYlVwZGF0ZVNjaGVkdWxlck1peGluKFNiYlBvcG92ZXJCYXNlRWxlbWVudClcbiAgaW1wbGVtZW50cyBTYmJEYXRlSW5wdXRBc3NvY2lhdGVkPFQ+XG57XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItZGF0ZXBpY2tlcic7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgZWxlbWVudERlcGVuZGVuY2llczogU2JiRWxlbWVudFR5cGVbXSA9IFtTYmJDYWxlbmRhckVsZW1lbnRdO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbU2JiUG9wb3ZlckJhc2VFbGVtZW50LnN0eWxlcywgdW5zYWZlQ1NTKHN0eWxlKV07XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgc2JiRGF0ZUlucHV0QXNzb2NpYXRlZCA9IHRydWU7XG5cbiAgLyoqIElmIHNldCB0byB0cnVlLCB0d28gbW9udGhzIGFyZSBkaXNwbGF5ZWQuICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyB0eXBlOiBCb29sZWFuIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciB3aWRlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFJlZmVyZW5jZSB0byB0aGUgc2JiLWRhdGUtaW5wdXQgaW5zdGFuY2Ugb3IgdGhlIG5hdGl2ZSBpbnB1dCBjb25uZWN0ZWQgdG8gdGhlIGRhdGVwaWNrZXIuXG4gICAqXG4gICAqIEZvciBhdHRyaWJ1dGUgdXNhZ2UsIHByb3ZpZGUgYW4gaWQgcmVmZXJlbmNlLlxuICAgKi9cbiAgQGlkUmVmZXJlbmNlKClcbiAgQHByb3BlcnR5KClcbiAgcHVibGljIGFjY2Vzc29yIGlucHV0OiBTYmJEYXRlSW5wdXRFbGVtZW50PFQ+IHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIFRoZSBpbml0aWFsIHZpZXcgb2YgY2FsZW5kYXIgd2hpY2ggc2hvdWxkIGJlIGRpc3BsYXllZCBvbiBvcGVuaW5nLiAqL1xuICBAcHJvcGVydHkoKSBwdWJsaWMgYWNjZXNzb3IgdmlldzogQ2FsZW5kYXJWaWV3ID0gJ2RheSc7XG5cbiAgcHJpdmF0ZSBfaW5wdXRBYm9ydENvbnRyb2xsZXI/OiBBYm9ydENvbnRyb2xsZXI7XG4gIHByaXZhdGUgX2RhdGVBZGFwdGVyOiBEYXRlQWRhcHRlcjxUPiA9IHJlYWRDb25maWcoKS5kYXRldGltZT8uZGF0ZUFkYXB0ZXIgPz8gZGVmYXVsdERhdGVBZGFwdGVyO1xuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX3JlYWR5ID0gZmFsc2U7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zdGFydFVwZGF0ZSgpO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihTYmJQb3BvdmVyQmFzZUVsZW1lbnQuZXZlbnRzLmJlZm9yZW9wZW4sICgpID0+IHtcbiAgICAgIHRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3Rvcignc2JiLWNhbGVuZGFyJyk/LnJlc2V0UG9zaXRpb24/LigpO1xuICAgIH0pO1xuICAgIGlmICghaXNTZXJ2ZXIgJiYgdGhpcy5oeWRyYXRpb25SZXF1aXJlZCkge1xuICAgICAgdGhpcy5oeWRyYXRpb25Db21wbGV0ZS50aGVuKCgpID0+IHRoaXMucmVxdWVzdFVwZGF0ZSgpKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgdGhpcy5pZCB8fD0gYHNiYi1kYXRlcGlja2VyLSR7KytuZXh0SWR9YDtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuXG4gICAgY29uc3QgZm9ybUZpZWxkID0gdGhpcy5jbG9zZXN0Py4oJ3NiYi1mb3JtLWZpZWxkJyk7XG4gICAgaWYgKGZvcm1GaWVsZCkge1xuICAgICAgU2JiRGF0ZUlucHV0RWxlbWVudC5yZXNvbHZlQXNzb2NpYXRpb24odGhpcyk7XG4gICAgICBjb25zdCB0b2dnbGUgPVxuICAgICAgICBmb3JtRmllbGQucXVlcnlTZWxlY3RvcjxTYmJEYXRlcGlja2VyVG9nZ2xlRWxlbWVudDxUPj4oJ3NiYi1kYXRlcGlja2VyLXRvZ2dsZScpO1xuICAgICAgaWYgKHRvZ2dsZSAmJiAhdG9nZ2xlLmhhc0F0dHJpYnV0ZSgnZGF0ZXBpY2tlcicpKSB7XG4gICAgICAgIHRvZ2dsZS5kYXRlcGlja2VyID8/PSB0aGlzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSByZXF1ZXN0VXBkYXRlKFxuICAgIG5hbWU/OiBQcm9wZXJ0eUtleSxcbiAgICBvbGRWYWx1ZT86IHVua25vd24sXG4gICAgb3B0aW9ucz86IFByb3BlcnR5RGVjbGFyYXRpb24sXG4gICk6IHZvaWQge1xuICAgIHN1cGVyLnJlcXVlc3RVcGRhdGUobmFtZSwgb2xkVmFsdWUsIG9wdGlvbnMpO1xuICAgIGlmIChuYW1lID09PSAnaW5wdXQnICYmIHRoaXMuaW5wdXQgIT09IG9sZFZhbHVlKSB7XG4gICAgICB0aGlzLl9pbnB1dEFib3J0Q29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICAgIGlmICh0aGlzLmlucHV0KSB7XG4gICAgICAgIGNvbnN0IHsgc2lnbmFsIH0gPSAodGhpcy5faW5wdXRBYm9ydENvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCkpO1xuICAgICAgICB0aGlzLmlucHV0Py5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgICAgICfJtWNoYW5nZScsXG4gICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgc3VwZXIucmVxdWVzdFVwZGF0ZSgpO1xuICAgICAgICAgICAgdGhpcy5fdXBkYXRlU3RhdHVzKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICB7IHNpZ25hbCB9LFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIC8vIFdlIHdhbnQgdG8gZGVsYXkgdGhlIHJlbmRlcmluZyBvZiB0aGUgY2FsZW5kYXIgdG8gYXZvaWQgYSBzbG93IGluaXRpYWwgcmVuZGVyLlxuICAgICAgLy8gVGhlIHNsb3cgcmVuZGVyIGNhbiBiZSBhIHByb2JsZW0gaWYgYSBsYXJnZSBhbW91bnQgb2YgZGF0ZXBpY2tlcnMgYXJlIHJlbmRlcmVkIGF0IG9uY2UuXG4gICAgICB0aGlzLl9yZWFkeSA9IHRydWU7XG4gICAgICB0aGlzLnJlcXVlc3RVcGRhdGUoKTtcbiAgICAgIHRoaXMuY29tcGxldGVVcGRhdGUoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZVN0YXR1cygpOiB2b2lkIHtcbiAgICBjb25zdCBzdGF0dXMgPSB0aGlzLnNoYWRvd1Jvb3Q/LmdldEVsZW1lbnRCeUlkKCdzdGF0dXMtY29udGFpbmVyJyk7XG4gICAgaWYgKCFzdGF0dXMpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB0ZXh0ID0gdGhpcy5fZGF0ZUFkYXB0ZXIuaXNWYWxpZCh0aGlzLmlucHV0Py52YWx1ZUFzRGF0ZSlcbiAgICAgID8gYCR7aTE4bkRhdGVDaGFuZ2VkVG9bdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19ICR7dGhpcy5fZGF0ZUFkYXB0ZXIuZm9ybWF0KFxuICAgICAgICAgIHRoaXMuaW5wdXQhLnZhbHVlQXNEYXRlLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHdlZWtkYXlTdHlsZTogJ2xvbmcnLFxuICAgICAgICAgIH0sXG4gICAgICAgICl9YFxuICAgICAgOiAnJztcbiAgICBpZiAoc3RhdHVzLnRleHRDb250ZW50ICE9PSB0ZXh0KSB7XG4gICAgICBzdGF0dXMudGV4dENvbnRlbnQgPSB0ZXh0O1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXJDb250ZW50KCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxwIGlkPVwic3RhdHVzLWNvbnRhaW5lclwiIHJvbGU9XCJzdGF0dXNcIj48L3A+XG4gICAgICA8c2JiLWNhbGVuZGFyXG4gICAgICAgIC52aWV3PSR7dGhpcy52aWV3fVxuICAgICAgICAubWluPSR7dGhpcy5pbnB1dD8ubWluID8/IG51bGx9XG4gICAgICAgIC5tYXg9JHt0aGlzLmlucHV0Py5tYXggPz8gbnVsbH1cbiAgICAgICAgLmRhdGVGaWx0ZXI9JHt0aGlzLmlucHV0Py5kYXRlRmlsdGVyID8/IG51bGx9XG4gICAgICAgIC5zZWxlY3RlZD0ke3RoaXMuaW5wdXQ/LnZhbHVlQXNEYXRlID8/IG51bGx9XG4gICAgICAgID93aWRlPSR7dGhpcy53aWRlfVxuICAgICAgICBAZGF0ZXNlbGVjdGVkPSR7KGQ6IEN1c3RvbUV2ZW50PFQ+KSA9PiB7XG4gICAgICAgICAgaWYgKHRoaXMuaW5wdXQpIHtcbiAgICAgICAgICAgIHRoaXMuaW5wdXQudmFsdWVBc0RhdGUgPSBkLmRldGFpbDtcbiAgICAgICAgICAgIHRoaXMuaW5wdXQuZGlzcGF0Y2hFdmVudChuZXcgSW5wdXRFdmVudCgnaW5wdXQnLCB7IGJ1YmJsZXM6IHRydWUsIGNvbXBvc2VkOiB0cnVlIH0pKTtcbiAgICAgICAgICAgIHRoaXMuaW5wdXQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2NoYW5nZScsIHsgYnViYmxlczogdHJ1ZSwgY29tcG9zZWQ6IHRydWUgfSkpO1xuICAgICAgICAgICAgLy8gRW1pdCBibHVyIGV2ZW50IHdoZW4gdmFsdWUgaXMgY2hhbmdlZCBwcm9ncmFtbWF0aWNhbGx5IHRvIG5vdGlmeVxuICAgICAgICAgICAgLy8gZnJhbWV3b3JrcyB0aGF0IHJlbHkgb24gdGhhdCBldmVudCB0byB1cGRhdGUgZm9ybSBzdGF0dXMuXG4gICAgICAgICAgICB0aGlzLmlucHV0LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdibHVyJywgeyBjb21wb3NlZDogdHJ1ZSB9KSk7XG4gICAgICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9fVxuICAgICAgPjwvc2JiLWNhbGVuZGFyPlxuICAgIGA7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaXNTZXJ2ZXIgfHwgdGhpcy5oeWRyYXRpb25SZXF1aXJlZCB8fCAhdGhpcy5fcmVhZHkgPyBodG1sYCR7bm90aGluZ31gIDogc3VwZXIucmVuZGVyKCk7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1kYXRlcGlja2VyJzogU2JiRGF0ZXBpY2tlckVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUM0QkEsSUFBSSxTQUFTOzs7OztJQU1BLDhCQUFvQjttQkFDdkIsd0JBQXdCLHNCQUFzQjs7Ozs7Ozs7OztjQUQzQyw2QkFDSCxZQUE4Qzs7O3VCQVNyRCxXQUFXLEVBQ1gsU0FBUyxFQUFFLE1BQU0sU0FBUyxDQUFDLENBQUE7d0JBUTNCLGFBQWEsRUFDYixVQUFVLENBQUE7dUJBSVYsVUFBVSxDQUFBO0FBWlgsZ0JBQUEsTUFBQSxNQUFBLGtCQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsVUFBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFJLE1BQUEsS0FBQSxVQUFBO0FBQUEsVUFBSixPQUFJOztLQUFBO0lBQUEsVUFBQTtJQUFBLEVBQUEsb0JBQUEsd0JBQUE7QUFTcEIsZ0JBQUEsTUFBQSxNQUFBLG1CQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsV0FBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFLLE1BQUEsS0FBQSxVQUFBO0FBQUEsVUFBTCxRQUFLOztLQUFBO0lBQUEsVUFBQTtJQUFBLEVBQUEscUJBQUEseUJBQUE7QUFHVCxnQkFBQSxNQUFBLE1BQUEsa0JBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSxVQUFBO0tBQUEsTUFBQSxRQUFBLElBQWdCO0tBQUksTUFBQSxLQUFBLFVBQUE7QUFBQSxVQUFKLE9BQUk7O0tBQUE7SUFBQSxVQUFBO0lBQUEsRUFBQSxvQkFB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
|
|
@@ -1,165 +0,0 @@
|
|
|
1
|
-
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
-
import { html, unsafeCSS } from "lit";
|
|
3
|
-
import { property } from "lit/decorators.js";
|
|
4
|
-
import { SbbDisabledMixin, SbbElement, boxSizingStyles, forceType } from "./core.js";
|
|
5
|
-
import { SbbIconNameMixin } from "./icon.pure.js";
|
|
6
|
-
import { ResizeController } from "@lit-labs/observers/resize-controller.js";
|
|
7
|
-
//#region src/elements/toggle/toggle-option/toggle-option.scss?inline
|
|
8
|
-
var toggle_option_default = ":host {\n --sbb-toggle-option-cursor: var(--sbb-cursor-pointer);\n --sbb-toggle-option-color: var(--sbb-color-anthracite);\n --sbb-toggle-option-color: light-dark(var(--sbb-color-anthracite), var(--sbb-color-cloud));\n --sbb-toggle-option-icon-min-size: var(--sbb-size-icon-ui-small);\n display: inline-block;\n overflow: hidden;\n outline: none !important;\n}\n\n:host([checked]) {\n --sbb-toggle-option-color: var(--sbb-color-2);\n}\n\n:host([disabled]) {\n --sbb-toggle-option-cursor: unset;\n --sbb-toggle-option-color: var(--sbb-color-anthracite);\n --sbb-toggle-option-color: light-dark(var(--sbb-color-anthracite), var(--sbb-color-cloud));\n}\n\n.sbb-toggle-option {\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 display: flex;\n justify-content: center;\n align-items: center;\n gap: var(--sbb-spacing-fixed-1x);\n height: var(--sbb-toggle-height);\n padding-inline: var(--sbb-toggle-padding-inline);\n color: var(--sbb-toggle-option-color);\n cursor: var(--sbb-toggle-option-cursor);\n}\n\n.sbb-toggle-option__label {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\nsbb-icon,\n::slotted(sbb-icon) {\n min-width: var(--sbb-toggle-option-icon-min-size);\n min-height: var(--sbb-toggle-option-icon-min-size);\n}";
|
|
9
|
-
//#endregion
|
|
10
|
-
//#region src/elements/toggle/toggle-option/toggle-option.component.ts
|
|
11
|
-
/**
|
|
12
|
-
* It displays a toggle option within a `sbb-toggle`.
|
|
13
|
-
*
|
|
14
|
-
* @slot - Use the unnamed slot to add content to the label of the toggle option.
|
|
15
|
-
* @slot icon - Slot used to render the `sbb-icon`.
|
|
16
|
-
* @overrideType value - (T = string) | null
|
|
17
|
-
*/
|
|
18
|
-
var SbbToggleOptionElement = (() => {
|
|
19
|
-
let _classSuper = SbbDisabledMixin(SbbIconNameMixin(SbbElement));
|
|
20
|
-
let _checked_decorators;
|
|
21
|
-
let _checked_initializers = [];
|
|
22
|
-
let _checked_extraInitializers = [];
|
|
23
|
-
let _value_decorators;
|
|
24
|
-
let _value_initializers = [];
|
|
25
|
-
let _value_extraInitializers = [];
|
|
26
|
-
return class SbbToggleOptionElement extends _classSuper {
|
|
27
|
-
static {
|
|
28
|
-
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
29
|
-
_checked_decorators = [forceType(), property({
|
|
30
|
-
reflect: true,
|
|
31
|
-
type: Boolean
|
|
32
|
-
})];
|
|
33
|
-
_value_decorators = [property()];
|
|
34
|
-
__esDecorate(this, null, _checked_decorators, {
|
|
35
|
-
kind: "accessor",
|
|
36
|
-
name: "checked",
|
|
37
|
-
static: false,
|
|
38
|
-
private: false,
|
|
39
|
-
access: {
|
|
40
|
-
has: (obj) => "checked" in obj,
|
|
41
|
-
get: (obj) => obj.checked,
|
|
42
|
-
set: (obj, value) => {
|
|
43
|
-
obj.checked = value;
|
|
44
|
-
}
|
|
45
|
-
},
|
|
46
|
-
metadata: _metadata
|
|
47
|
-
}, _checked_initializers, _checked_extraInitializers);
|
|
48
|
-
__esDecorate(this, null, _value_decorators, {
|
|
49
|
-
kind: "accessor",
|
|
50
|
-
name: "value",
|
|
51
|
-
static: false,
|
|
52
|
-
private: false,
|
|
53
|
-
access: {
|
|
54
|
-
has: (obj) => "value" in obj,
|
|
55
|
-
get: (obj) => obj.value,
|
|
56
|
-
set: (obj, value) => {
|
|
57
|
-
obj.value = value;
|
|
58
|
-
}
|
|
59
|
-
},
|
|
60
|
-
metadata: _metadata
|
|
61
|
-
}, _value_initializers, _value_extraInitializers);
|
|
62
|
-
if (_metadata) Object.defineProperty(this, Symbol.metadata, {
|
|
63
|
-
enumerable: true,
|
|
64
|
-
configurable: true,
|
|
65
|
-
writable: true,
|
|
66
|
-
value: _metadata
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
static {
|
|
70
|
-
this.elementName = "sbb-toggle-option";
|
|
71
|
-
}
|
|
72
|
-
static {
|
|
73
|
-
this.role = "radio";
|
|
74
|
-
}
|
|
75
|
-
static {
|
|
76
|
-
this.styles = [boxSizingStyles, unsafeCSS(toggle_option_default)];
|
|
77
|
-
}
|
|
78
|
-
#checked_accessor_storage;
|
|
79
|
-
/** Whether the toggle-option is checked. */
|
|
80
|
-
get checked() {
|
|
81
|
-
return this.#checked_accessor_storage;
|
|
82
|
-
}
|
|
83
|
-
set checked(value) {
|
|
84
|
-
this.#checked_accessor_storage = value;
|
|
85
|
-
}
|
|
86
|
-
#value_accessor_storage;
|
|
87
|
-
/** Value of toggle-option. */
|
|
88
|
-
get value() {
|
|
89
|
-
return this.#value_accessor_storage;
|
|
90
|
-
}
|
|
91
|
-
set value(value) {
|
|
92
|
-
this.#value_accessor_storage = value;
|
|
93
|
-
}
|
|
94
|
-
constructor() {
|
|
95
|
-
super();
|
|
96
|
-
this.#checked_accessor_storage = __runInitializers(this, _checked_initializers, false);
|
|
97
|
-
this.#value_accessor_storage = (__runInitializers(this, _checked_extraInitializers), __runInitializers(this, _value_initializers, null));
|
|
98
|
-
this._toggle = (__runInitializers(this, _value_extraInitializers), null);
|
|
99
|
-
this.addEventListener?.("input", () => this._handleInput());
|
|
100
|
-
this.addEventListener?.("click", () => {
|
|
101
|
-
if (!this.disabled && !this.checked) this.dispatchEvent(new InputEvent("input", {
|
|
102
|
-
bubbles: true,
|
|
103
|
-
composed: true
|
|
104
|
-
}));
|
|
105
|
-
});
|
|
106
|
-
this.addController(new ResizeController(this, {
|
|
107
|
-
skipInitial: true,
|
|
108
|
-
callback: () => this._toggle?.updatePillPosition?.(true)
|
|
109
|
-
}));
|
|
110
|
-
}
|
|
111
|
-
connectedCallback() {
|
|
112
|
-
super.connectedCallback();
|
|
113
|
-
this._toggle = this.closest?.("sbb-toggle") ?? null;
|
|
114
|
-
this._verifyTabindex();
|
|
115
|
-
this._toggle?.updatePillPosition?.(true);
|
|
116
|
-
}
|
|
117
|
-
disconnectedCallback() {
|
|
118
|
-
super.disconnectedCallback();
|
|
119
|
-
this._toggle = null;
|
|
120
|
-
}
|
|
121
|
-
firstUpdated(changedProperties) {
|
|
122
|
-
super.firstUpdated(changedProperties);
|
|
123
|
-
this._toggle?.updatePillPosition?.(true);
|
|
124
|
-
}
|
|
125
|
-
willUpdate(changedProperties) {
|
|
126
|
-
super.willUpdate(changedProperties);
|
|
127
|
-
if (changedProperties.has("checked")) {
|
|
128
|
-
this.internals.ariaChecked = `${this.checked}`;
|
|
129
|
-
this._verifyTabindex();
|
|
130
|
-
if (this.checked) this._uncheckOtherOptions();
|
|
131
|
-
}
|
|
132
|
-
if (changedProperties.has("disabled")) this._handleDisabledChange();
|
|
133
|
-
}
|
|
134
|
-
_uncheckOtherOptions() {
|
|
135
|
-
this._toggle?.options.filter((o) => o !== this).forEach((o) => o.checked = false);
|
|
136
|
-
this._toggle?.statusChanged();
|
|
137
|
-
}
|
|
138
|
-
_handleDisabledChange() {
|
|
139
|
-
this.internals.ariaDisabled = this.disabled ? "true" : null;
|
|
140
|
-
this._verifyTabindex();
|
|
141
|
-
}
|
|
142
|
-
_handleInput() {
|
|
143
|
-
if (this.disabled) return;
|
|
144
|
-
this.checked = true;
|
|
145
|
-
this._uncheckOtherOptions();
|
|
146
|
-
}
|
|
147
|
-
_verifyTabindex() {
|
|
148
|
-
this.tabIndex = this.checked && !this.disabled ? 0 : -1;
|
|
149
|
-
}
|
|
150
|
-
render() {
|
|
151
|
-
return html`
|
|
152
|
-
<div class="sbb-toggle-option">
|
|
153
|
-
${this.renderIconSlot()}
|
|
154
|
-
<span class="sbb-toggle-option__label">
|
|
155
|
-
<slot></slot>
|
|
156
|
-
</span>
|
|
157
|
-
</div>
|
|
158
|
-
`;
|
|
159
|
-
}
|
|
160
|
-
};
|
|
161
|
-
})();
|
|
162
|
-
//#endregion
|
|
163
|
-
export { SbbToggleOptionElement as t };
|
|
164
|
-
|
|
165
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLW9wdGlvbi5jb21wb25lbnQtQldUNGtFWm8uanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3RvZ2dsZS90b2dnbGUtb3B0aW9uL3RvZ2dsZS1vcHRpb24uc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdG9nZ2xlL3RvZ2dsZS1vcHRpb24vdG9nZ2xlLW9wdGlvbi5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnLi4vLi4vY29yZS9zdHlsZXMnIGFzIHNiYjtcblxuOmhvc3Qge1xuICAtLXNiYi10b2dnbGUtb3B0aW9uLWN1cnNvcjogdmFyKC0tc2JiLWN1cnNvci1wb2ludGVyKTtcbiAgLS1zYmItdG9nZ2xlLW9wdGlvbi1jb2xvcjogbGlnaHQtZGFyayh2YXIoLS1zYmItY29sb3ItYW50aHJhY2l0ZSksIHZhcigtLXNiYi1jb2xvci1jbG91ZCkpO1xuICAtLXNiYi10b2dnbGUtb3B0aW9uLWljb24tbWluLXNpemU6IHZhcigtLXNiYi1zaXplLWljb24tdWktc21hbGwpO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAvLyBVc2UgIWltcG9ydGFudCBoZXJlIHRvIG5vdCBpbnRlcmZlcmUgd2l0aCBGaXJlZm94IGZvY3VzIHJpbmcgZGVmaW5pdGlvblxuICAvLyB3aGljaCBhcHBlYXJzIGluIG5vcm1hbGl6ZSBDU1Mgb2Ygc2V2ZXJhbCBmcmFtZXdvcmtzLlxuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbjpob3N0KFtjaGVja2VkXSkge1xuICAtLXNiYi10b2dnbGUtb3B0aW9uLWNvbG9yOiB2YXIoLS1zYmItY29sb3ItMik7XG59XG5cbjpob3N0KFtkaXNhYmxlZF0pIHtcbiAgLS1zYmItdG9nZ2xlLW9wdGlvbi1jdXJzb3I6IHVuc2V0O1xuICAtLXNiYi10b2dnbGUtb3B0aW9uLWNvbG9yOiBsaWdodC1kYXJrKHZhcigtLXNiYi1jb2xvci1hbnRocmFjaXRlKSwgdmFyKC0tc2JiLWNvbG9yLWNsb3VkKSk7XG59XG5cbi5zYmItdG9nZ2xlLW9wdGlvbiB7XG4gIEBpbmNsdWRlIHNiYi50ZXh0LXhzLS1ib2xkO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTF4KTtcbiAgaGVpZ2h0OiB2YXIoLS1zYmItdG9nZ2xlLWhlaWdodCk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItdG9nZ2xlLXBhZGRpbmctaW5saW5lKTtcbiAgY29sb3I6IHZhcigtLXNiYi10b2dnbGUtb3B0aW9uLWNvbG9yKTtcbiAgY3Vyc29yOiB2YXIoLS1zYmItdG9nZ2xlLW9wdGlvbi1jdXJzb3IpO1xufVxuXG4uc2JiLXRvZ2dsZS1vcHRpb25fX2xhYmVsIHtcbiAgQGluY2x1ZGUgc2JiLmVsbGlwc2lzO1xufVxuXG5zYmItaWNvbixcbjo6c2xvdHRlZChzYmItaWNvbikge1xuICBtaW4td2lkdGg6IHZhcigtLXNiYi10b2dnbGUtb3B0aW9uLWljb24tbWluLXNpemUpO1xuICBtaW4taGVpZ2h0OiB2YXIoLS1zYmItdG9nZ2xlLW9wdGlvbi1pY29uLW1pbi1zaXplKTtcbn1cbiIsImltcG9ydCB7IFJlc2l6ZUNvbnRyb2xsZXIgfSBmcm9tICdAbGl0LWxhYnMvb2JzZXJ2ZXJzL3Jlc2l6ZS1jb250cm9sbGVyLmpzJztcbmltcG9ydCB7XG4gIGh0bWwsXG4gIHVuc2FmZUNTUyxcbiAgdHlwZSBDU1NSZXN1bHRHcm91cCxcbiAgdHlwZSBQcm9wZXJ0eVZhbHVlcyxcbiAgdHlwZSBUZW1wbGF0ZVJlc3VsdCxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBTYmJFbGVtZW50LCBmb3JjZVR5cGUsIFNiYkRpc2FibGVkTWl4aW4sIGJveFNpemluZ1N0eWxlcyB9IGZyb20gJy4uLy4uL2NvcmUudHMnO1xuaW1wb3J0IHsgU2JiSWNvbk5hbWVNaXhpbiB9IGZyb20gJy4uLy4uL2ljb24ucHVyZS50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYlRvZ2dsZUVsZW1lbnQgfSBmcm9tICcuLi90b2dnbGUvdG9nZ2xlLmNvbXBvbmVudC50cyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3RvZ2dsZS1vcHRpb24uc2Nzcz9pbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgdG9nZ2xlIG9wdGlvbiB3aXRoaW4gYSBgc2JiLXRvZ2dsZWAuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgY29udGVudCB0byB0aGUgbGFiZWwgb2YgdGhlIHRvZ2dsZSBvcHRpb24uXG4gKiBAc2xvdCBpY29uIC0gU2xvdCB1c2VkIHRvIHJlbmRlciB0aGUgYHNiYi1pY29uYC5cbiAqIEBvdmVycmlkZVR5cGUgdmFsdWUgLSAoVCA9IHN0cmluZykgfCBudWxsXG4gKi9cbmV4cG9ydCBjbGFzcyBTYmJUb2dnbGVPcHRpb25FbGVtZW50PFQgPSBzdHJpbmc+IGV4dGVuZHMgU2JiRGlzYWJsZWRNaXhpbihcbiAgU2JiSWNvbk5hbWVNaXhpbihTYmJFbGVtZW50KSxcbikge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHJlYWRvbmx5IGVsZW1lbnROYW1lOiBzdHJpbmcgPSAnc2JiLXRvZ2dsZS1vcHRpb24nO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHJlYWRvbmx5IHJvbGUgPSAncmFkaW8nO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbYm94U2l6aW5nU3R5bGVzLCB1bnNhZmVDU1Moc3R5bGUpXTtcblxuICAvKiogV2hldGhlciB0aGUgdG9nZ2xlLW9wdGlvbiBpcyBjaGVja2VkLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgYWNjZXNzb3IgY2hlY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBWYWx1ZSBvZiB0b2dnbGUtb3B0aW9uLiAqL1xuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgYWNjZXNzb3IgdmFsdWU6IFQgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF90b2dnbGU6IFNiYlRvZ2dsZUVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICAvLyBXZSBuZWVkIHRvIGxpc3RlbiBpbnB1dCBldmVudCBvbiBob3N0IGFzIHdpdGgga2V5Ym9hcmQgbmF2aWdhdGlvblxuICAgIC8vIHRoZSBJbnB1dCBFdmVudCBpcyB0cmlnZ2VyZWQgZnJvbSBzYmItdG9nZ2xlLlxuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdpbnB1dCcsICgpID0+IHRoaXMuX2hhbmRsZUlucHV0KCkpO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdjbGljaycsICgpID0+IHtcbiAgICAgIGlmICghdGhpcy5kaXNhYmxlZCAmJiAhdGhpcy5jaGVja2VkKSB7XG4gICAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgSW5wdXRFdmVudCgnaW5wdXQnLCB7IGJ1YmJsZXM6IHRydWUsIGNvbXBvc2VkOiB0cnVlIH0pKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuYWRkQ29udHJvbGxlcihcbiAgICAgIG5ldyBSZXNpemVDb250cm9sbGVyKHRoaXMsIHtcbiAgICAgICAgc2tpcEluaXRpYWw6IHRydWUsXG4gICAgICAgIGNhbGxiYWNrOiAoKSA9PiB0aGlzLl90b2dnbGU/LnVwZGF0ZVBpbGxQb3NpdGlvbj8uKHRydWUpLFxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuXG4gICAgLy8gV2UgY2FuIHVzZSBjbG9zZXN0IGhlcmUsIGFzIHdlIGV4cGVjdCB0aGUgcGFyZW50IHNiYi10b2dnbGUgdG8gYmUgaW4gbGlnaHQgRE9NLlxuICAgIHRoaXMuX3RvZ2dsZSA9IHRoaXMuY2xvc2VzdD8uKCdzYmItdG9nZ2xlJykgPz8gbnVsbDtcbiAgICB0aGlzLl92ZXJpZnlUYWJpbmRleCgpO1xuICAgIHRoaXMuX3RvZ2dsZT8udXBkYXRlUGlsbFBvc2l0aW9uPy4odHJ1ZSk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZGlzY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLl90b2dnbGUgPSBudWxsO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci5maXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgdGhpcy5fdG9nZ2xlPy51cGRhdGVQaWxsUG9zaXRpb24/Lih0cnVlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnY2hlY2tlZCcpKSB7XG4gICAgICB0aGlzLmludGVybmFscy5hcmlhQ2hlY2tlZCA9IGAke3RoaXMuY2hlY2tlZH1gO1xuICAgICAgdGhpcy5fdmVyaWZ5VGFiaW5kZXgoKTtcbiAgICAgIGlmICh0aGlzLmNoZWNrZWQpIHtcbiAgICAgICAgdGhpcy5fdW5jaGVja090aGVyT3B0aW9ucygpO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdkaXNhYmxlZCcpKSB7XG4gICAgICB0aGlzLl9oYW5kbGVEaXNhYmxlZENoYW5nZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3VuY2hlY2tPdGhlck9wdGlvbnMoKTogdm9pZCB7XG4gICAgdGhpcy5fdG9nZ2xlPy5vcHRpb25zLmZpbHRlcigobykgPT4gbyAhPT0gdGhpcykuZm9yRWFjaCgobykgPT4gKG8uY2hlY2tlZCA9IGZhbHNlKSk7XG4gICAgdGhpcy5fdG9nZ2xlPy5zdGF0dXNDaGFuZ2VkKCk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVEaXNhYmxlZENoYW5nZSgpOiB2b2lkIHtcbiAgICB0aGlzLmludGVybmFscy5hcmlhRGlzYWJsZWQgPSB0aGlzLmRpc2FibGVkID8gJ3RydWUnIDogbnVsbDtcbiAgICB0aGlzLl92ZXJpZnlUYWJpbmRleCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlSW5wdXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jaGVja2VkID0gdHJ1ZTtcbiAgICB0aGlzLl91bmNoZWNrT3RoZXJPcHRpb25zKCk7XG4gIH1cblxuICBwcml2YXRlIF92ZXJpZnlUYWJpbmRleCgpOiB2b2lkIHtcbiAgICB0aGlzLnRhYkluZGV4ID0gdGhpcy5jaGVja2VkICYmICF0aGlzLmRpc2FibGVkID8gMCA6IC0xO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXRvZ2dsZS1vcHRpb25cIj5cbiAgICAgICAgJHt0aGlzLnJlbmRlckljb25TbG90KCl9XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRvZ2dsZS1vcHRpb25fX2xhYmVsXCI+XG4gICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdG9nZ2xlLW9wdGlvbic6IFNiYlRvZ2dsZU9wdGlvbkVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7SUN1QmEsZ0NBQXNCO21CQUFxQixpQkFDdEQsaUJBQWlCLFdBQVcsQ0FDN0I7Ozs7Ozs7Y0FGWSwrQkFBMkMsWUFFdkQ7OzswQkFNRSxXQUFXLEVBQ1gsU0FBUztJQUFFLFNBQVM7SUFBTSxNQUFNO0lBQVMsQ0FBQyxDQUFBO3dCQUkxQyxVQUFVLENBQUE7QUFIWCxnQkFBQSxNQUFBLE1BQUEscUJBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSxhQUFBO0tBQUEsTUFBQSxRQUFBLElBQWdCO0tBQU8sTUFBQSxLQUFBLFVBQUE7QUFBQSxVQUFQLFVBQU87O0tBQUE7SUFBQSxVQUFBO0lBQUEsRUFBQSx1QkFBQSwyQkFBQTtBQUl2QixnQkFBQSxNQUFBLE1BQUEsbUJBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSxXQUFBO0tBQUEsTUFBQSxRQUFBLElBQWdCO0tBQUssTUFBQSxLQUFBLFVBQUE7QUFBQSxVQUFMLFFBQUs7O0tBQUE7SUFBQSxVQUFBO0lBQUEsRUFBQSxxQkFBQSx5QkFBQTs7Ozs7Ozs7O0FBWFcsUUFBQSxjQUFzQjs7O0FBQ3RCLFFBQUEsT0FBTzs7O0FBQ2hCLFFBQUEsU0FBeUIsQ0FBQyxpQkFBaUIsVUFBVSxzQkFBTSxDQUFDOztFQUtuRjs7RUFBQSxJQUFnQixVQUFPO0FBQUEsVUFBQSxNQUFBOztFQUF2QixJQUFnQixRQUFPLE9BQUE7QUFBQSxTQUFBLDJCQUFBOztFQUl2Qjs7RUFBQSxJQUFnQixRQUFLO0FBQUEsVUFBQSxNQUFBOztFQUFyQixJQUFnQixNQUFLLE9BQUE7QUFBQSxTQUFBLHlCQUFBOztFQUlyQixjQUFBO0FBQ0UsVUFBTztBQVRPLFNBQUEsMkJBQUEsa0JBQUEsTUFBQSx1QkFBbUIsTUFBSztBQUl4QixTQUFBLDBCQUFBLGtCQUFBLE1BQUEsMkJBQUEsRUFBQSxrQkFBQSxNQUFBLHFCQUFrQixLQUFJO0FBRTlCLFFBQUEsV0FBTyxrQkFBQSxNQUFBLHlCQUFBLEVBQTRCO0FBTXpDLFFBQUssbUJBQW1CLGVBQWUsS0FBSyxjQUFjLENBQUM7QUFDM0QsUUFBSyxtQkFBbUIsZUFBYztBQUNwQyxRQUFJLENBQUMsS0FBSyxZQUFZLENBQUMsS0FBSyxRQUMxQixNQUFLLGNBQWMsSUFBSSxXQUFXLFNBQVM7S0FBRSxTQUFTO0tBQU0sVUFBVTtLQUFNLENBQUMsQ0FBQztLQUVoRjtBQUVGLFFBQUssY0FDSCxJQUFJLGlCQUFpQixNQUFNO0lBQ3pCLGFBQWE7SUFDYixnQkFBZ0IsS0FBSyxTQUFTLHFCQUFxQixLQUFBO0lBQ3BELENBQUMsQ0FDSDs7RUFHYSxvQkFBaUI7QUFDL0IsU0FBTSxtQkFBbUI7QUFHekIsUUFBSyxVQUFVLEtBQUssVUFBVSxhQUFhLElBQUk7QUFDL0MsUUFBSyxpQkFBaUI7QUFDdEIsUUFBSyxTQUFTLHFCQUFxQixLQUFLOztFQUcxQix1QkFBb0I7QUFDbEMsU0FBTSxzQkFBc0I7QUFDNUIsUUFBSyxVQUFVOztFQUdFLGFBQWEsbUJBQXVDO0FBQ3JFLFNBQU0sYUFBYSxrQkFBa0I7QUFFckMsUUFBSyxTQUFTLHFCQUFxQixLQUFLOztFQUd2QixXQUFXLG1CQUF1QztBQUNuRSxTQUFNLFdBQVcsa0JBQWtCO0FBRW5DLE9BQUksa0JBQWtCLElBQUksVUFBVSxFQUFFO0FBQ3BDLFNBQUssVUFBVSxjQUFjLEdBQUcsS0FBSztBQUNyQyxTQUFLLGlCQUFpQjtBQUN0QixRQUFJLEtBQUssUUFDUCxNQUFLLHNCQUFzQjs7QUFHL0IsT0FBSSxrQkFBa0IsSUFBSSxXQUFXLENBQ25DLE1BQUssdUJBQXVCOztFQUl4Qix1QkFBb0I7QUFDMUIsUUFBSyxTQUFTLFFBQVEsUUFBUSxNQUFNLE1BQU0sS0FBSyxDQUFDLFNBQVMsTUFBTyxFQUFFLFVBQVUsTUFBTztBQUNuRixRQUFLLFNBQVMsZUFBZTs7RUFHdkIsd0JBQXFCO0FBQzNCLFFBQUssVUFBVSxlQUFlLEtBQUssV0FBVyxTQUFTO0FBQ3ZELFFBQUssaUJBQWlCOztFQUdoQixlQUFZO0FBQ2xCLE9BQUksS0FBSyxTQUNQO0FBRUYsUUFBSyxVQUFVO0FBQ2YsUUFBSyxzQkFBc0I7O0VBR3JCLGtCQUFlO0FBQ3JCLFFBQUssV0FBVyxLQUFLLFdBQVcsQ0FBQyxLQUFLLFdBQVcsSUFBSTs7RUFHcEMsU0FBTTtBQUN2QixVQUFPLElBQUk7O1VBRUwsS0FBSyxnQkFBZ0IsQ0FBQSJ9
|