@sbb-esta/lyne-elements-dev 4.11.0-dev.1776143908 → 4.11.0-dev.1776241564
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/custom-elements.json +1091 -888
- 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-VKU7Lpr7.js +684 -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/common.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/datepicker.js +1 -1
- package/development/datepicker-button-CUPeoQgH.js +169 -0
- package/development/datepicker.component-D2DxFng_.js +216 -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/timetable-form-swap-button.js +1 -1
- package/development/{timetable-form-swap-button.component-BUKUjrpl.js → timetable-form-swap-button.component-Bh9aPmdn.js} +4 -1
- package/development/timetable-form.js +1 -1
- package/development/timetable-form.pure.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/toggle-option.js +1 -1
- package/development/{toggle-option.component-D-F7Fh7i.js → toggle-option.component-DRodFwFk.js} +2 -1
- package/development/toggle.js +1 -1
- package/development/toggle.pure.js +1 -1
- package/package.json +2 -2
- package/development/autocomplete-base-element-YwfObJzm.js +0 -678
- package/development/datepicker-button-CANzGO5m.js +0 -163
- package/development/datepicker.component-C8XQVo45.js +0 -213
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
-
import { html, unsafeCSS } from "lit";
|
|
3
|
-
import { property } from "lit/decorators.js";
|
|
4
|
-
import { SbbButtonBaseElement } from "./core/base-elements.js";
|
|
5
|
-
import { idReference } from "./core/decorators.js";
|
|
6
|
-
import { SbbNegativeMixin } from "./core/mixins.js";
|
|
7
|
-
import { SbbLanguageController } from "./core/controllers.js";
|
|
8
|
-
import { i18nToday } from "./core/i18n.js";
|
|
9
|
-
import "./icon.js";
|
|
10
|
-
import { readConfig } from "./core/config.js";
|
|
11
|
-
import { defaultDateAdapter } from "./core/datetime.js";
|
|
12
|
-
import { SbbDateInputElement } from "./date-input.js";
|
|
13
|
-
//#endregion
|
|
14
|
-
//#region src/elements/datepicker/common/datepicker-button.ts
|
|
15
|
-
var datepickerButtonStyle = unsafeCSS(".sbb-action-base {\n margin: auto;\n -webkit-tap-highlight-color: transparent;\n}");
|
|
16
|
-
var SbbDatepickerButtonBase = (() => {
|
|
17
|
-
let _classSuper = SbbNegativeMixin(SbbButtonBaseElement);
|
|
18
|
-
let _input_decorators;
|
|
19
|
-
let _input_initializers = [];
|
|
20
|
-
let _input_extraInitializers = [];
|
|
21
|
-
return class SbbDatepickerButtonBase extends _classSuper {
|
|
22
|
-
constructor() {
|
|
23
|
-
super(...arguments);
|
|
24
|
-
this.#input_accessor_storage = __runInitializers(this, _input_initializers, null);
|
|
25
|
-
/** Whether the component is disabled due date-picker's input disabled. */
|
|
26
|
-
this._inputDisabled = (__runInitializers(this, _input_extraInitializers), true);
|
|
27
|
-
this.dateAdapter = readConfig().datetime?.dateAdapter ?? defaultDateAdapter;
|
|
28
|
-
this.language = new SbbLanguageController(this);
|
|
29
|
-
}
|
|
30
|
-
static {
|
|
31
|
-
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
32
|
-
_input_decorators = [idReference(), property()];
|
|
33
|
-
__esDecorate(this, null, _input_decorators, {
|
|
34
|
-
kind: "accessor",
|
|
35
|
-
name: "input",
|
|
36
|
-
static: false,
|
|
37
|
-
private: false,
|
|
38
|
-
access: {
|
|
39
|
-
has: (obj) => "input" in obj,
|
|
40
|
-
get: (obj) => obj.input,
|
|
41
|
-
set: (obj, value) => {
|
|
42
|
-
obj.input = value;
|
|
43
|
-
}
|
|
44
|
-
},
|
|
45
|
-
metadata: _metadata
|
|
46
|
-
}, _input_initializers, _input_extraInitializers);
|
|
47
|
-
if (_metadata) Object.defineProperty(this, Symbol.metadata, {
|
|
48
|
-
enumerable: true,
|
|
49
|
-
configurable: true,
|
|
50
|
-
writable: true,
|
|
51
|
-
value: _metadata
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
static {
|
|
55
|
-
this.sbbDateInputAssociated = true;
|
|
56
|
-
}
|
|
57
|
-
#input_accessor_storage;
|
|
58
|
-
/**
|
|
59
|
-
* The associated date input element.
|
|
60
|
-
*
|
|
61
|
-
* For attribute usage, provide an id reference.
|
|
62
|
-
*/
|
|
63
|
-
get input() {
|
|
64
|
-
return this.#input_accessor_storage;
|
|
65
|
-
}
|
|
66
|
-
set input(value) {
|
|
67
|
-
this.#input_accessor_storage = value;
|
|
68
|
-
}
|
|
69
|
-
/** Whether this button is disabled. */
|
|
70
|
-
get disabled() {
|
|
71
|
-
return !!this._inputDisabled;
|
|
72
|
-
}
|
|
73
|
-
connectedCallback() {
|
|
74
|
-
super.connectedCallback();
|
|
75
|
-
this.toggleAttribute("disabled", this.disabled);
|
|
76
|
-
const formField = this.closest?.("sbb-form-field");
|
|
77
|
-
if (formField) {
|
|
78
|
-
customElements.upgrade?.(formField);
|
|
79
|
-
this.negative = formField.negative;
|
|
80
|
-
SbbDateInputElement.resolveAssociation(this);
|
|
81
|
-
this.slot ||= this._findSlotPosition();
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
requestUpdate(name, oldValue, options) {
|
|
85
|
-
super.requestUpdate(name, oldValue, options);
|
|
86
|
-
if (name === "input" && this.input !== oldValue) {
|
|
87
|
-
this._inputAbortController?.abort();
|
|
88
|
-
this._inputDisabled = true;
|
|
89
|
-
if (this.input) {
|
|
90
|
-
this._inputAbortController = new AbortController();
|
|
91
|
-
this.slot = this._findSlotPosition();
|
|
92
|
-
customElements.upgrade?.(this.input);
|
|
93
|
-
this._sync();
|
|
94
|
-
this.input.addEventListener("ɵchange", () => this._sync());
|
|
95
|
-
}
|
|
96
|
-
if (this.hasUpdated) this.toggleAttribute("disabled", this.disabled);
|
|
97
|
-
} else if (!name && this.hasUpdated && this.input) this._sync();
|
|
98
|
-
}
|
|
99
|
-
_findSlotPosition() {
|
|
100
|
-
return !this.input || this.compareDocumentPosition(this.input) & Node.DOCUMENT_POSITION_FOLLOWING ? "prefix" : "suffix";
|
|
101
|
-
}
|
|
102
|
-
_sync() {
|
|
103
|
-
this.syncDateInputState();
|
|
104
|
-
this.toggleAttribute("disabled", this.disabled);
|
|
105
|
-
if (this.disabled) this.removeAttribute("tabindex");
|
|
106
|
-
else this.setAttribute("tabindex", "0");
|
|
107
|
-
}
|
|
108
|
-
syncDateInputState() {
|
|
109
|
-
this._inputDisabled = this.input.disabled || this.input.readOnly;
|
|
110
|
-
}
|
|
111
|
-
renderTemplate() {
|
|
112
|
-
return html`<sbb-icon name=${this.iconName}></sbb-icon>`;
|
|
113
|
-
}
|
|
114
|
-
};
|
|
115
|
-
})();
|
|
116
|
-
var SbbDatepickerButton = class extends SbbDatepickerButtonBase {
|
|
117
|
-
get disabled() {
|
|
118
|
-
return this._disabled || super.disabled;
|
|
119
|
-
}
|
|
120
|
-
constructor() {
|
|
121
|
-
super();
|
|
122
|
-
/** Whether the component is disabled due date equals to boundary date. */
|
|
123
|
-
this._disabled = true;
|
|
124
|
-
this.addEventListener?.("click", () => this._handleClick());
|
|
125
|
-
}
|
|
126
|
-
/** @deprecated Use `getFollowingDate(date: T)` instead. */
|
|
127
|
-
findAvailableDate(_date) {
|
|
128
|
-
return this.getFollowingDate(_date);
|
|
129
|
-
}
|
|
130
|
-
_handleClick() {
|
|
131
|
-
if (!this.input || this.disabled) return;
|
|
132
|
-
const startingDate = this.input.valueAsDate ?? this.dateAdapter.today();
|
|
133
|
-
const date = this.getFollowingDate(startingDate);
|
|
134
|
-
if (this.dateAdapter.isValid(date) && this.dateAdapter.compareDate(date, startingDate) !== 0) {
|
|
135
|
-
this.input.valueAsDate = date;
|
|
136
|
-
this.input.dispatchEvent(new InputEvent("input", {
|
|
137
|
-
bubbles: true,
|
|
138
|
-
composed: true
|
|
139
|
-
}));
|
|
140
|
-
this.input.dispatchEvent(new Event("change", {
|
|
141
|
-
bubbles: true,
|
|
142
|
-
composed: true
|
|
143
|
-
}));
|
|
144
|
-
this.input.dispatchEvent(new Event("blur", { composed: true }));
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
syncDateInputState() {
|
|
148
|
-
super.syncDateInputState();
|
|
149
|
-
if (!this.dateAdapter.isValid(this.input.valueAsDate)) {
|
|
150
|
-
this._disabled = true;
|
|
151
|
-
this.internals.ariaLabel = this.i18nOffBoundaryDay[this.language.current];
|
|
152
|
-
return;
|
|
153
|
-
}
|
|
154
|
-
const date = this.getFollowingDate(this.input.valueAsDate);
|
|
155
|
-
this._disabled = !this.dateAdapter.isValid(date) || this.dateAdapter.compareDate(date, this.input.valueAsDate) === 0;
|
|
156
|
-
const currentDateString = this.dateAdapter.compareDate(this.dateAdapter.today(), this.input.valueAsDate) === 0 ? i18nToday[this.language.current].toLowerCase() : this.dateAdapter.getAccessibilityFormatDate(this.input.valueAsDate);
|
|
157
|
-
this.internals.ariaLabel = this.i18nSelectOffBoundaryDay(currentDateString)[this.language.current];
|
|
158
|
-
}
|
|
159
|
-
};
|
|
160
|
-
//#endregion
|
|
161
|
-
export { SbbDatepickerButtonBase as n, datepickerButtonStyle as r, SbbDatepickerButton as t };
|
|
162
|
-
|
|
163
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1idXR0b24tQ0FOekdPNW0uanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2RhdGVwaWNrZXIvY29tbW9uL2RhdGVwaWNrZXItYnV0dG9uLnNjc3M/aW5saW5lIiwiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2RhdGVwaWNrZXIvY29tbW9uL2RhdGVwaWNrZXItYnV0dG9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbi5zYmItYWN0aW9uLWJhc2Uge1xuICBtYXJnaW46IGF1dG87XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4iLCJpbXBvcnQgeyBodG1sLCB1bnNhZmVDU1MsIHR5cGUgUHJvcGVydHlEZWNsYXJhdGlvbiwgdHlwZSBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgU2JiQnV0dG9uQmFzZUVsZW1lbnQgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UtZWxlbWVudHMudHMnO1xuaW1wb3J0IHsgcmVhZENvbmZpZyB9IGZyb20gJy4uLy4uL2NvcmUvY29uZmlnLnRzJztcbmltcG9ydCB7IFNiYkxhbmd1YWdlQ29udHJvbGxlciB9IGZyb20gJy4uLy4uL2NvcmUvY29udHJvbGxlcnMudHMnO1xuaW1wb3J0IHsgdHlwZSBEYXRlQWRhcHRlciwgZGVmYXVsdERhdGVBZGFwdGVyIH0gZnJvbSAnLi4vLi4vY29yZS9kYXRldGltZS50cyc7XG5pbXBvcnQgeyBpZFJlZmVyZW5jZSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy50cyc7XG5pbXBvcnQgeyBpMThuVG9kYXkgfSBmcm9tICcuLi8uLi9jb3JlL2kxOG4udHMnO1xuaW1wb3J0IHsgU2JiTmVnYXRpdmVNaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLnRzJztcbmltcG9ydCB7IFNiYkRhdGVJbnB1dEVsZW1lbnQsIHR5cGUgU2JiRGF0ZUlucHV0QXNzb2NpYXRlZCB9IGZyb20gJy4uLy4uL2RhdGUtaW5wdXQudHMnO1xuXG5pbXBvcnQgZGF0ZXBpY2tlckJ1dHRvblN0eWxlU3RyaW5nIGZyb20gJy4vZGF0ZXBpY2tlci1idXR0b24uc2Nzcz9pbmxpbmUnO1xuXG5pbXBvcnQgJy4uLy4uL2ljb24udHMnO1xuXG5leHBvcnQgY29uc3QgZGF0ZXBpY2tlckJ1dHRvblN0eWxlID0gdW5zYWZlQ1NTKGRhdGVwaWNrZXJCdXR0b25TdHlsZVN0cmluZyk7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTYmJEYXRlcGlja2VyQnV0dG9uQmFzZTxUID0gRGF0ZT5cbiAgZXh0ZW5kcyBTYmJOZWdhdGl2ZU1peGluKFNiYkJ1dHRvbkJhc2VFbGVtZW50KVxuICBpbXBsZW1lbnRzIFNiYkRhdGVJbnB1dEFzc29jaWF0ZWQ8VD5cbntcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBzYmJEYXRlSW5wdXRBc3NvY2lhdGVkID0gdHJ1ZTtcblxuICAvKipcbiAgICogVGhlIGFzc29jaWF0ZWQgZGF0ZSBpbnB1dCBlbGVtZW50LlxuICAgKlxuICAgKiBGb3IgYXR0cmlidXRlIHVzYWdlLCBwcm92aWRlIGFuIGlkIHJlZmVyZW5jZS5cbiAgICovXG4gIEBpZFJlZmVyZW5jZSgpXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBhY2Nlc3NvciBpbnB1dDogU2JiRGF0ZUlucHV0RWxlbWVudDxUPiB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBXaGV0aGVyIHRoaXMgYnV0dG9uIGlzIGRpc2FibGVkLiAqL1xuICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuX2lucHV0RGlzYWJsZWQ7XG4gIH1cblxuICAvKiogV2hldGhlciB0aGUgY29tcG9uZW50IGlzIGRpc2FibGVkIGR1ZSBkYXRlLXBpY2tlcidzIGlucHV0IGRpc2FibGVkLiAqL1xuICBwcml2YXRlIF9pbnB1dERpc2FibGVkID0gdHJ1ZTtcblxuICBwcml2YXRlIF9pbnB1dEFib3J0Q29udHJvbGxlcj86IEFib3J0Q29udHJvbGxlcjtcblxuICBwcm90ZWN0ZWQgZGF0ZUFkYXB0ZXI6IERhdGVBZGFwdGVyPFQ+ID0gcmVhZENvbmZpZygpLmRhdGV0aW1lPy5kYXRlQWRhcHRlciA/PyBkZWZhdWx0RGF0ZUFkYXB0ZXI7XG4gIHByb3RlY3RlZCBsYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBpY29uTmFtZTogc3RyaW5nO1xuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMudG9nZ2xlQXR0cmlidXRlKCdkaXNhYmxlZCcsIHRoaXMuZGlzYWJsZWQpO1xuICAgIGNvbnN0IGZvcm1GaWVsZCA9IHRoaXMuY2xvc2VzdD8uKCdzYmItZm9ybS1maWVsZCcpO1xuICAgIGlmIChmb3JtRmllbGQpIHtcbiAgICAgIGN1c3RvbUVsZW1lbnRzLnVwZ3JhZGU/Lihmb3JtRmllbGQpO1xuICAgICAgdGhpcy5uZWdhdGl2ZSA9IGZvcm1GaWVsZC5uZWdhdGl2ZTtcbiAgICAgIFNiYkRhdGVJbnB1dEVsZW1lbnQucmVzb2x2ZUFzc29jaWF0aW9uKHRoaXMpO1xuICAgICAgdGhpcy5zbG90IHx8PSB0aGlzLl9maW5kU2xvdFBvc2l0aW9uKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHJlcXVlc3RVcGRhdGUoXG4gICAgbmFtZT86IFByb3BlcnR5S2V5LFxuICAgIG9sZFZhbHVlPzogdW5rbm93bixcbiAgICBvcHRpb25zPzogUHJvcGVydHlEZWNsYXJhdGlvbixcbiAgKTogdm9pZCB7XG4gICAgc3VwZXIucmVxdWVzdFVwZGF0ZShuYW1lLCBvbGRWYWx1ZSwgb3B0aW9ucyk7XG4gICAgaWYgKG5hbWUgPT09ICdpbnB1dCcgJiYgdGhpcy5pbnB1dCAhPT0gb2xkVmFsdWUpIHtcbiAgICAgIHRoaXMuX2lucHV0QWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgICAgdGhpcy5faW5wdXREaXNhYmxlZCA9IHRydWU7XG4gICAgICBpZiAodGhpcy5pbnB1dCkge1xuICAgICAgICB0aGlzLl9pbnB1dEFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgICAgICAgdGhpcy5zbG90ID0gdGhpcy5fZmluZFNsb3RQb3NpdGlvbigpO1xuICAgICAgICAvLyBUaGUgc2JiLWRhdGUtaW5wdXQgaW5zdGFuY2UgbXVzdCBiZSB1cGdyYWRlZCBpbiBvcmRlclxuICAgICAgICAvLyBmb3IgcHJvcGVydGllcyB0byBiZSBhY2Nlc3NpYmxlLlxuICAgICAgICBjdXN0b21FbGVtZW50cy51cGdyYWRlPy4odGhpcy5pbnB1dCk7XG4gICAgICAgIHRoaXMuX3N5bmMoKTtcbiAgICAgICAgdGhpcy5pbnB1dC5hZGRFdmVudExpc3RlbmVyKCfJtWNoYW5nZScsICgpID0+IHRoaXMuX3N5bmMoKSk7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5oYXNVcGRhdGVkKSB7XG4gICAgICAgIHRoaXMudG9nZ2xlQXR0cmlidXRlKCdkaXNhYmxlZCcsIHRoaXMuZGlzYWJsZWQpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoIW5hbWUgJiYgdGhpcy5oYXNVcGRhdGVkICYmIHRoaXMuaW5wdXQpIHtcbiAgICAgIC8vIElmIGxhbmd1YWdlIGNoYW5nZXMsIHdlIG5lZWQgdG8gdXBkYXRlIHJlbGF0ZWQgYXJpYSBwcm9wZXJ0aWVzLlxuICAgICAgdGhpcy5fc3luYygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2ZpbmRTbG90UG9zaXRpb24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gIXRoaXMuaW5wdXQgfHxcbiAgICAgIHRoaXMuY29tcGFyZURvY3VtZW50UG9zaXRpb24odGhpcy5pbnB1dCkgJiBOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0ZPTExPV0lOR1xuICAgICAgPyAncHJlZml4J1xuICAgICAgOiAnc3VmZml4JztcbiAgfVxuXG4gIHByaXZhdGUgX3N5bmMoKTogdm9pZCB7XG4gICAgdGhpcy5zeW5jRGF0ZUlucHV0U3RhdGUoKTtcbiAgICB0aGlzLnRvZ2dsZUF0dHJpYnV0ZSgnZGlzYWJsZWQnLCB0aGlzLmRpc2FibGVkKTtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5yZW1vdmVBdHRyaWJ1dGUoJ3RhYmluZGV4Jyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCd0YWJpbmRleCcsICcwJyk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIHN5bmNEYXRlSW5wdXRTdGF0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9pbnB1dERpc2FibGVkID0gdGhpcy5pbnB1dCEuZGlzYWJsZWQgfHwgdGhpcy5pbnB1dCEucmVhZE9ubHk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYDxzYmItaWNvbiBuYW1lPSR7dGhpcy5pY29uTmFtZX0+PC9zYmItaWNvbj5gO1xuICB9XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTYmJEYXRlcGlja2VyQnV0dG9uPFQgPSBEYXRlPiBleHRlbmRzIFNiYkRhdGVwaWNrZXJCdXR0b25CYXNlPFQ+IHtcbiAgLyoqIFdoZXRoZXIgdGhlIGNvbXBvbmVudCBpcyBkaXNhYmxlZCBkdWUgZGF0ZSBlcXVhbHMgdG8gYm91bmRhcnkgZGF0ZS4gKi9cbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSB0cnVlO1xuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBpMThuT2ZmQm91bmRhcnlEYXk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBpMThuU2VsZWN0T2ZmQm91bmRhcnlEYXk6IChfY3VycmVudERhdGU6IHN0cmluZykgPT4gUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZCB8fCBzdXBlci5kaXNhYmxlZDtcbiAgfVxuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdjbGljaycsICgpID0+IHRoaXMuX2hhbmRsZUNsaWNrKCkpO1xuICB9XG5cbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBgZ2V0Rm9sbG93aW5nRGF0ZShkYXRlOiBUKWAgaW5zdGVhZC4gKi9cbiAgcHJvdGVjdGVkIGZpbmRBdmFpbGFibGVEYXRlKF9kYXRlOiBUKTogVCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmdldEZvbGxvd2luZ0RhdGUoX2RhdGUpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGdldEZvbGxvd2luZ0RhdGUoX2RhdGU6IFQpOiBUIHwgbnVsbDtcblxuICBwcml2YXRlIF9oYW5kbGVDbGljaygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaW5wdXQgfHwgdGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBzdGFydGluZ0RhdGU6IFQgPSB0aGlzLmlucHV0LnZhbHVlQXNEYXRlID8/IHRoaXMuZGF0ZUFkYXB0ZXIudG9kYXkoKTtcbiAgICBjb25zdCBkYXRlID0gdGhpcy5nZXRGb2xsb3dpbmdEYXRlKHN0YXJ0aW5nRGF0ZSk7XG4gICAgaWYgKHRoaXMuZGF0ZUFkYXB0ZXIuaXNWYWxpZChkYXRlKSAmJiB0aGlzLmRhdGVBZGFwdGVyLmNvbXBhcmVEYXRlKGRhdGUsIHN0YXJ0aW5nRGF0ZSkgIT09IDApIHtcbiAgICAgIHRoaXMuaW5wdXQudmFsdWVBc0RhdGUgPSBkYXRlO1xuICAgICAgdGhpcy5pbnB1dC5kaXNwYXRjaEV2ZW50KG5ldyBJbnB1dEV2ZW50KCdpbnB1dCcsIHsgYnViYmxlczogdHJ1ZSwgY29tcG9zZWQ6IHRydWUgfSkpO1xuICAgICAgdGhpcy5pbnB1dC5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnY2hhbmdlJywgeyBidWJibGVzOiB0cnVlLCBjb21wb3NlZDogdHJ1ZSB9KSk7XG4gICAgICAvLyBFbWl0IGJsdXIgZXZlbnQgd2hlbiB2YWx1ZSBpcyBjaGFuZ2VkIHByb2dyYW1tYXRpY2FsbHkgdG8gbm90aWZ5XG4gICAgICAvLyBmcmFtZXdvcmtzIHRoYXQgcmVseSBvbiB0aGF0IGV2ZW50IHRvIHVwZGF0ZSBmb3JtIHN0YXR1cy5cbiAgICAgIHRoaXMuaW5wdXQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2JsdXInLCB7IGNvbXBvc2VkOiB0cnVlIH0pKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgc3luY0RhdGVJbnB1dFN0YXRlKCk6IHZvaWQge1xuICAgIHN1cGVyLnN5bmNEYXRlSW5wdXRTdGF0ZSgpO1xuICAgIGlmICghdGhpcy5kYXRlQWRhcHRlci5pc1ZhbGlkKHRoaXMuaW5wdXQhLnZhbHVlQXNEYXRlKSkge1xuICAgICAgdGhpcy5fZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYUxhYmVsID0gdGhpcy5pMThuT2ZmQm91bmRhcnlEYXlbdGhpcy5sYW5ndWFnZS5jdXJyZW50XTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBkYXRlID0gdGhpcy5nZXRGb2xsb3dpbmdEYXRlKHRoaXMuaW5wdXQhLnZhbHVlQXNEYXRlKTtcbiAgICB0aGlzLl9kaXNhYmxlZCA9XG4gICAgICAhdGhpcy5kYXRlQWRhcHRlci5pc1ZhbGlkKGRhdGUpIHx8XG4gICAgICB0aGlzLmRhdGVBZGFwdGVyLmNvbXBhcmVEYXRlKGRhdGUsIHRoaXMuaW5wdXQhLnZhbHVlQXNEYXRlKSA9PT0gMDtcbiAgICBjb25zdCBjdXJyZW50RGF0ZVN0cmluZyA9XG4gICAgICB0aGlzLmRhdGVBZGFwdGVyLmNvbXBhcmVEYXRlKHRoaXMuZGF0ZUFkYXB0ZXIudG9kYXkoKSwgdGhpcy5pbnB1dCEudmFsdWVBc0RhdGUpID09PSAwXG4gICAgICAgID8gaTE4blRvZGF5W3RoaXMubGFuZ3VhZ2UuY3VycmVudF0udG9Mb3dlckNhc2UoKVxuICAgICAgICA6IHRoaXMuZGF0ZUFkYXB0ZXIuZ2V0QWNjZXNzaWJpbGl0eUZvcm1hdERhdGUodGhpcy5pbnB1dCEudmFsdWVBc0RhdGUpO1xuICAgIHRoaXMuaW50ZXJuYWxzLmFyaWFMYWJlbCA9XG4gICAgICB0aGlzLmkxOG5TZWxlY3RPZmZCb3VuZGFyeURheShjdXJyZW50RGF0ZVN0cmluZylbdGhpcy5sYW5ndWFnZS5jdXJyZW50XTtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQ2dCQSxJQUFhLHdCQUF3QixnR0FBc0M7SUFFckQsaUNBQXVCO21CQUNuQyxpQkFBaUIscUJBQXFCOzs7O2NBRDFCLGdDQUNaLFlBQXNDOzs7QUFZOUIsU0FBQSx5QkFBQSxrQkFBQSxNQUFBLHFCQUF1QyxLQUFJOztBQVFuRCxRQUFBLGtCQUFjLGtCQUFBLE1BQUEseUJBQUEsRUFBRztBQUlmLFFBQUEsY0FBOEIsWUFBWSxDQUFDLFVBQVUsZUFBZTtBQUNwRSxRQUFBLFdBQVcsSUFBSSxzQkFBc0IsS0FBSzs7Ozt3QkFmbkQsYUFBYSxFQUNiLFVBQVUsQ0FBQTtBQUNYLGdCQUFBLE1BQUEsTUFBQSxtQkFBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLFdBQUE7S0FBQSxNQUFBLFFBQUEsSUFBZ0I7S0FBSyxNQUFBLEtBQUEsVUFBQTtBQUFBLFVBQUwsUUFBSzs7S0FBQTtJQUFBLFVBQUE7SUFBQSxFQUFBLHFCQUFBLHlCQUFBOzs7Ozs7Ozs7QUFURSxRQUFBLHlCQUF5Qjs7RUFTaEQ7Ozs7OztFQUFBLElBQWdCLFFBQUs7QUFBQSxVQUFBLE1BQUE7O0VBQXJCLElBQWdCLE1BQUssT0FBQTtBQUFBLFNBQUEseUJBQUE7OztFQUdyQixJQUFXLFdBQVE7QUFDakIsVUFBTyxDQUFDLENBQUMsS0FBSzs7RUFZQSxvQkFBaUI7QUFDL0IsU0FBTSxtQkFBbUI7QUFDekIsUUFBSyxnQkFBZ0IsWUFBWSxLQUFLLFNBQVM7R0FDL0MsTUFBTSxZQUFZLEtBQUssVUFBVSxpQkFBaUI7QUFDbEQsT0FBSSxXQUFXO0FBQ2IsbUJBQWUsVUFBVSxVQUFVO0FBQ25DLFNBQUssV0FBVyxVQUFVO0FBQzFCLHdCQUFvQixtQkFBbUIsS0FBSztBQUM1QyxTQUFLLFNBQVMsS0FBSyxtQkFBbUI7OztFQUkxQixjQUNkLE1BQ0EsVUFDQSxTQUE2QjtBQUU3QixTQUFNLGNBQWMsTUFBTSxVQUFVLFFBQVE7QUFDNUMsT0FBSSxTQUFTLFdBQVcsS0FBSyxVQUFVLFVBQVU7QUFDL0MsU0FBSyx1QkFBdUIsT0FBTztBQUNuQyxTQUFLLGlCQUFpQjtBQUN0QixRQUFJLEtBQUssT0FBTztBQUNkLFVBQUssd0JBQXdCLElBQUksaUJBQWlCO0FBQ2xELFVBQUssT0FBTyxLQUFLLG1CQUFtQjtBQUdwQyxvQkFBZSxVQUFVLEtBQUssTUFBTTtBQUNwQyxVQUFLLE9BQU87QUFDWixVQUFLLE1BQU0saUJBQWlCLGlCQUFpQixLQUFLLE9BQU8sQ0FBQzs7QUFFNUQsUUFBSSxLQUFLLFdBQ1AsTUFBSyxnQkFBZ0IsWUFBWSxLQUFLLFNBQVM7Y0FFeEMsQ0FBQyxRQUFRLEtBQUssY0FBYyxLQUFLLE1BRTFDLE1BQUssT0FBTzs7RUFJUixvQkFBaUI7QUFDdkIsVUFBTyxDQUFDLEtBQUssU0FDWCxLQUFLLHdCQUF3QixLQUFLLE1BQU0sR0FBRyxLQUFLLDhCQUM5QyxXQUNBOztFQUdFLFFBQUs7QUFDWCxRQUFLLG9CQUFvQjtBQUN6QixRQUFLLGdCQUFnQixZQUFZLEtBQUssU0FBUztBQUMvQyxPQUFJLEtBQUssU0FDUCxNQUFLLGdCQUFnQixXQUFXO09BRWhDLE1BQUssYUFBYSxZQUFZLElBQUk7O0VBSTVCLHFCQUFrQjtBQUMxQixRQUFLLGlCQUFpQixLQUFLLE1BQU8sWUFBWSxLQUFLLE1BQU87O0VBR3pDLGlCQUFjO0FBQy9CLFVBQU8sSUFBSSxrQkFBa0IsS0FBSyxTQUFROzs7O0FBSTlDLElBQXNCLHNCQUF0QixjQUE0RCx3QkFBMEI7Q0FPcEYsSUFBb0IsV0FBUTtBQUMxQixTQUFPLEtBQUssYUFBYSxNQUFNOztDQUdqQyxjQUFBO0FBQ0UsU0FBTzs7QUFWRCxPQUFBLFlBQVk7QUFXbEIsT0FBSyxtQkFBbUIsZUFBZSxLQUFLLGNBQWMsQ0FBQzs7O0NBSW5ELGtCQUFrQixPQUFRO0FBQ2xDLFNBQU8sS0FBSyxpQkFBaUIsTUFBTTs7Q0FLN0IsZUFBWTtBQUNsQixNQUFJLENBQUMsS0FBSyxTQUFTLEtBQUssU0FDdEI7RUFFRixNQUFNLGVBQWtCLEtBQUssTUFBTSxlQUFlLEtBQUssWUFBWSxPQUFPO0VBQzFFLE1BQU0sT0FBTyxLQUFLLGlCQUFpQixhQUFhO0FBQ2hELE1BQUksS0FBSyxZQUFZLFFBQVEsS0FBSyxJQUFJLEtBQUssWUFBWSxZQUFZLE1BQU0sYUFBYSxLQUFLLEdBQUc7QUFDNUYsUUFBSyxNQUFNLGNBQWM7QUFDekIsUUFBSyxNQUFNLGNBQWMsSUFBSSxXQUFXLFNBQVM7SUFBRSxTQUFTO0lBQU0sVUFBVTtJQUFNLENBQUMsQ0FBQztBQUNwRixRQUFLLE1BQU0sY0FBYyxJQUFJLE1BQU0sVUFBVTtJQUFFLFNBQVM7SUFBTSxVQUFVO0lBQU0sQ0FBQyxDQUFDO0FBR2hGLFFBQUssTUFBTSxjQUFjLElBQUksTUFBTSxRQUFRLEVBQUUsVUFBVSxNQUFNLENBQUMsQ0FBQzs7O0NBSWhELHFCQUFrQjtBQUNuQyxRQUFNLG9CQUFvQjtBQUMxQixNQUFJLENBQUMsS0FBSyxZQUFZLFFBQVEsS0FBSyxNQUFPLFlBQVksRUFBRTtBQUN0RCxRQUFLLFlBQVk7QUFDakIsUUFBSyxVQUFVLFlBQVksS0FBSyxtQkFBbUIsS0FBSyxTQUFTO0FBQ2pFOztFQUdGLE1BQU0sT0FBTyxLQUFLLGlCQUFpQixLQUFLLE1BQU8sWUFBWTtBQUMzRCxPQUFLLFlBQ0gsQ0FBQyxLQUFLLFlBQVksUUFBUSxLQUFLLElBQy9CLEtBQUssWUFBWSxZQUFZLE1BQU0sS0FBSyxNQUFPLFlBQVksS0FBSztFQUNsRSxNQUFNLG9CQUNKLEtBQUssWUFBWSxZQUFZLEtBQUssWUFBWSxPQUFPLEVBQUUsS0FBSyxNQUFPLFlBQVksS0FBSyxJQUNoRixVQUFVLEtBQUssU0FBUyxTQUFTLGFBQWEsR0FDOUMsS0FBSyxZQUFZLDJCQUEyQixLQUFLLE1BQU8sWUFBWTtBQUMxRSxPQUFLLFVBQVUsWUFDYixLQUFLLHlCQUF5QixrQkFBa0IsQ0FBQyxLQUFLLFNBQVMifQ==
|
|
@@ -1,213 +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 { forceType, idReference } from "./core/decorators.js";
|
|
5
|
-
import { SbbUpdateSchedulerMixin } from "./core/mixins.js";
|
|
6
|
-
import { SbbLanguageController } from "./core/controllers.js";
|
|
7
|
-
import { i18nDateChangedTo } from "./core/i18n.js";
|
|
8
|
-
import { readConfig } from "./core/config.js";
|
|
9
|
-
import { defaultDateAdapter } from "./core/datetime.js";
|
|
10
|
-
import { SbbDateInputElement } from "./date-input.js";
|
|
11
|
-
import { SbbPopoverBaseElement } from "./popover.js";
|
|
12
|
-
import "./calendar.js";
|
|
13
|
-
//#region src/elements/datepicker/datepicker/datepicker.scss?inline
|
|
14
|
-
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}";
|
|
15
|
-
//#endregion
|
|
16
|
-
//#region src/elements/datepicker/datepicker/datepicker.component.ts
|
|
17
|
-
var nextId = 0;
|
|
18
|
-
/**
|
|
19
|
-
* A datepicker component that allows users to select a date from a calendar view.
|
|
20
|
-
* @event {CustomEvent<T>} dateselected - Event emitted on date selection.
|
|
21
|
-
*/
|
|
22
|
-
var SbbDatepickerElement = (() => {
|
|
23
|
-
let _classSuper = SbbUpdateSchedulerMixin(SbbPopoverBaseElement);
|
|
24
|
-
let _wide_decorators;
|
|
25
|
-
let _wide_initializers = [];
|
|
26
|
-
let _wide_extraInitializers = [];
|
|
27
|
-
let _input_decorators;
|
|
28
|
-
let _input_initializers = [];
|
|
29
|
-
let _input_extraInitializers = [];
|
|
30
|
-
let _view_decorators;
|
|
31
|
-
let _view_initializers = [];
|
|
32
|
-
let _view_extraInitializers = [];
|
|
33
|
-
return class SbbDatepickerElement extends _classSuper {
|
|
34
|
-
static {
|
|
35
|
-
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
36
|
-
_wide_decorators = [forceType(), property({ type: Boolean })];
|
|
37
|
-
_input_decorators = [idReference(), property()];
|
|
38
|
-
_view_decorators = [property()];
|
|
39
|
-
__esDecorate(this, null, _wide_decorators, {
|
|
40
|
-
kind: "accessor",
|
|
41
|
-
name: "wide",
|
|
42
|
-
static: false,
|
|
43
|
-
private: false,
|
|
44
|
-
access: {
|
|
45
|
-
has: (obj) => "wide" in obj,
|
|
46
|
-
get: (obj) => obj.wide,
|
|
47
|
-
set: (obj, value) => {
|
|
48
|
-
obj.wide = value;
|
|
49
|
-
}
|
|
50
|
-
},
|
|
51
|
-
metadata: _metadata
|
|
52
|
-
}, _wide_initializers, _wide_extraInitializers);
|
|
53
|
-
__esDecorate(this, null, _input_decorators, {
|
|
54
|
-
kind: "accessor",
|
|
55
|
-
name: "input",
|
|
56
|
-
static: false,
|
|
57
|
-
private: false,
|
|
58
|
-
access: {
|
|
59
|
-
has: (obj) => "input" in obj,
|
|
60
|
-
get: (obj) => obj.input,
|
|
61
|
-
set: (obj, value) => {
|
|
62
|
-
obj.input = value;
|
|
63
|
-
}
|
|
64
|
-
},
|
|
65
|
-
metadata: _metadata
|
|
66
|
-
}, _input_initializers, _input_extraInitializers);
|
|
67
|
-
__esDecorate(this, null, _view_decorators, {
|
|
68
|
-
kind: "accessor",
|
|
69
|
-
name: "view",
|
|
70
|
-
static: false,
|
|
71
|
-
private: false,
|
|
72
|
-
access: {
|
|
73
|
-
has: (obj) => "view" in obj,
|
|
74
|
-
get: (obj) => obj.view,
|
|
75
|
-
set: (obj, value) => {
|
|
76
|
-
obj.view = value;
|
|
77
|
-
}
|
|
78
|
-
},
|
|
79
|
-
metadata: _metadata
|
|
80
|
-
}, _view_initializers, _view_extraInitializers);
|
|
81
|
-
if (_metadata) Object.defineProperty(this, Symbol.metadata, {
|
|
82
|
-
enumerable: true,
|
|
83
|
-
configurable: true,
|
|
84
|
-
writable: true,
|
|
85
|
-
value: _metadata
|
|
86
|
-
});
|
|
87
|
-
}
|
|
88
|
-
static {
|
|
89
|
-
this.elementName = "sbb-datepicker";
|
|
90
|
-
}
|
|
91
|
-
static {
|
|
92
|
-
this.styles = [SbbPopoverBaseElement.styles, unsafeCSS(datepicker_default)];
|
|
93
|
-
}
|
|
94
|
-
static {
|
|
95
|
-
this.sbbDateInputAssociated = true;
|
|
96
|
-
}
|
|
97
|
-
#wide_accessor_storage;
|
|
98
|
-
/** If set to true, two months are displayed. */
|
|
99
|
-
get wide() {
|
|
100
|
-
return this.#wide_accessor_storage;
|
|
101
|
-
}
|
|
102
|
-
set wide(value) {
|
|
103
|
-
this.#wide_accessor_storage = value;
|
|
104
|
-
}
|
|
105
|
-
#input_accessor_storage;
|
|
106
|
-
/**
|
|
107
|
-
* Reference to the sbb-date-input instance or the native input connected to the datepicker.
|
|
108
|
-
*
|
|
109
|
-
* For attribute usage, provide an id reference.
|
|
110
|
-
*/
|
|
111
|
-
get input() {
|
|
112
|
-
return this.#input_accessor_storage;
|
|
113
|
-
}
|
|
114
|
-
set input(value) {
|
|
115
|
-
this.#input_accessor_storage = value;
|
|
116
|
-
}
|
|
117
|
-
#view_accessor_storage;
|
|
118
|
-
/** The initial view of calendar which should be displayed on opening. */
|
|
119
|
-
get view() {
|
|
120
|
-
return this.#view_accessor_storage;
|
|
121
|
-
}
|
|
122
|
-
set view(value) {
|
|
123
|
-
this.#view_accessor_storage = value;
|
|
124
|
-
}
|
|
125
|
-
constructor() {
|
|
126
|
-
super();
|
|
127
|
-
this.#wide_accessor_storage = __runInitializers(this, _wide_initializers, false);
|
|
128
|
-
this.#input_accessor_storage = (__runInitializers(this, _wide_extraInitializers), __runInitializers(this, _input_initializers, null));
|
|
129
|
-
this.#view_accessor_storage = (__runInitializers(this, _input_extraInitializers), __runInitializers(this, _view_initializers, "day"));
|
|
130
|
-
this._inputAbortController = __runInitializers(this, _view_extraInitializers);
|
|
131
|
-
this._dateAdapter = readConfig().datetime?.dateAdapter ?? defaultDateAdapter;
|
|
132
|
-
this._language = new SbbLanguageController(this);
|
|
133
|
-
this._ready = false;
|
|
134
|
-
this.startUpdate();
|
|
135
|
-
this.addEventListener(SbbPopoverBaseElement.events.beforeopen, () => {
|
|
136
|
-
this.shadowRoot?.querySelector("sbb-calendar")?.resetPosition?.();
|
|
137
|
-
});
|
|
138
|
-
if (!isServer && this.hydrationRequired) this.hydrationComplete.then(() => this.requestUpdate());
|
|
139
|
-
}
|
|
140
|
-
connectedCallback() {
|
|
141
|
-
this.id ||= `sbb-datepicker-${++nextId}`;
|
|
142
|
-
super.connectedCallback();
|
|
143
|
-
const formField = this.closest?.("sbb-form-field");
|
|
144
|
-
if (formField) {
|
|
145
|
-
SbbDateInputElement.resolveAssociation(this);
|
|
146
|
-
const toggle = formField.querySelector("sbb-datepicker-toggle");
|
|
147
|
-
if (toggle && !toggle.hasAttribute("datepicker")) toggle.datepicker ??= this;
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
requestUpdate(name, oldValue, options) {
|
|
151
|
-
super.requestUpdate(name, oldValue, options);
|
|
152
|
-
if (name === "input" && this.input !== oldValue) {
|
|
153
|
-
this._inputAbortController?.abort();
|
|
154
|
-
if (this.input) {
|
|
155
|
-
const { signal } = this._inputAbortController = new AbortController();
|
|
156
|
-
this.input?.addEventListener("ɵchange", () => {
|
|
157
|
-
super.requestUpdate();
|
|
158
|
-
this._updateStatus();
|
|
159
|
-
}, { signal });
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
firstUpdated(changedProperties) {
|
|
164
|
-
super.firstUpdated(changedProperties);
|
|
165
|
-
setTimeout(() => {
|
|
166
|
-
this._ready = true;
|
|
167
|
-
this.requestUpdate();
|
|
168
|
-
this.completeUpdate();
|
|
169
|
-
});
|
|
170
|
-
}
|
|
171
|
-
_updateStatus() {
|
|
172
|
-
const status = this.shadowRoot?.getElementById("status-container");
|
|
173
|
-
if (!status) return;
|
|
174
|
-
const text = this._dateAdapter.isValid(this.input?.valueAsDate) ? `${i18nDateChangedTo[this._language.current]} ${this._dateAdapter.format(this.input.valueAsDate, { weekdayStyle: "long" })}` : "";
|
|
175
|
-
if (status.textContent !== text) status.textContent = text;
|
|
176
|
-
}
|
|
177
|
-
renderContent() {
|
|
178
|
-
return html`
|
|
179
|
-
<p id="status-container" role="status"></p>
|
|
180
|
-
<sbb-calendar
|
|
181
|
-
.view=${this.view}
|
|
182
|
-
.min=${this.input?.min ?? null}
|
|
183
|
-
.max=${this.input?.max ?? null}
|
|
184
|
-
.dateFilter=${this.input?.dateFilter ?? null}
|
|
185
|
-
.selected=${this.input?.valueAsDate ?? null}
|
|
186
|
-
?wide=${this.wide}
|
|
187
|
-
@dateselected=${(d) => {
|
|
188
|
-
if (this.input) {
|
|
189
|
-
this.input.valueAsDate = d.detail;
|
|
190
|
-
this.input.dispatchEvent(new InputEvent("input", {
|
|
191
|
-
bubbles: true,
|
|
192
|
-
composed: true
|
|
193
|
-
}));
|
|
194
|
-
this.input.dispatchEvent(new Event("change", {
|
|
195
|
-
bubbles: true,
|
|
196
|
-
composed: true
|
|
197
|
-
}));
|
|
198
|
-
this.input.dispatchEvent(new Event("blur", { composed: true }));
|
|
199
|
-
this.close();
|
|
200
|
-
}
|
|
201
|
-
}}
|
|
202
|
-
></sbb-calendar>
|
|
203
|
-
`;
|
|
204
|
-
}
|
|
205
|
-
render() {
|
|
206
|
-
return isServer || this.hydrationRequired || !this._ready ? html`${nothing}` : super.render();
|
|
207
|
-
}
|
|
208
|
-
};
|
|
209
|
-
})();
|
|
210
|
-
//#endregion
|
|
211
|
-
export { SbbDatepickerElement as t };
|
|
212
|
-
|
|
213
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci5jb21wb25lbnQtQzhYUVZvNDUuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci9kYXRlcGlja2VyLnNjc3M/aW5saW5lIiwiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci9kYXRlcGlja2VyLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlICcuLi8uLi9jb3JlL3N0eWxlcycgYXMgc2JiO1xuXG4jc3RhdHVzLWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIHNiYi5zY3JlZW4tcmVhZGVyLW9ubHk7XG59XG4iLCJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBpc1NlcnZlcixcbiAgbm90aGluZyxcbiAgdHlwZSBQcm9wZXJ0eURlY2xhcmF0aW9uLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxuICB1bnNhZmVDU1MsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBDYWxlbmRhclZpZXcgfSBmcm9tICcuLi8uLi9jYWxlbmRhci50cyc7XG5pbXBvcnQgeyByZWFkQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29yZS9jb25maWcudHMnO1xuaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy50cyc7XG5pbXBvcnQgeyB0eXBlIERhdGVBZGFwdGVyLCBkZWZhdWx0RGF0ZUFkYXB0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RhdGV0aW1lLnRzJztcbmltcG9ydCB7IGZvcmNlVHlwZSwgaWRSZWZlcmVuY2UgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMudHMnO1xuaW1wb3J0IHsgaTE4bkRhdGVDaGFuZ2VkVG8gfSBmcm9tICcuLi8uLi9jb3JlL2kxOG4udHMnO1xuaW1wb3J0IHsgU2JiVXBkYXRlU2NoZWR1bGVyTWl4aW4gfSBmcm9tICcuLi8uLi9jb3JlL21peGlucy50cyc7XG5pbXBvcnQgeyB0eXBlIFNiYkRhdGVJbnB1dEFzc29jaWF0ZWQsIFNiYkRhdGVJbnB1dEVsZW1lbnQgfSBmcm9tICcuLi8uLi9kYXRlLWlucHV0LnRzJztcbmltcG9ydCB7IFNiYlBvcG92ZXJCYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL3BvcG92ZXIudHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJEYXRlcGlja2VyVG9nZ2xlRWxlbWVudCB9IGZyb20gJy4uL2RhdGVwaWNrZXItdG9nZ2xlL2RhdGVwaWNrZXItdG9nZ2xlLmNvbXBvbmVudC50cyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2RhdGVwaWNrZXIuc2Nzcz9pbmxpbmUnO1xuXG5pbXBvcnQgJy4uLy4uL2NhbGVuZGFyLnRzJztcblxubGV0IG5leHRJZCA9IDA7XG5cbi8qKlxuICogQSBkYXRlcGlja2VyIGNvbXBvbmVudCB0aGF0IGFsbG93cyB1c2VycyB0byBzZWxlY3QgYSBkYXRlIGZyb20gYSBjYWxlbmRhciB2aWV3LlxuICogQGV2ZW50IHtDdXN0b21FdmVudDxUPn0gZGF0ZXNlbGVjdGVkIC0gRXZlbnQgZW1pdHRlZCBvbiBkYXRlIHNlbGVjdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIFNiYkRhdGVwaWNrZXJFbGVtZW50PFQgPSBEYXRlPlxuICBleHRlbmRzIFNiYlVwZGF0ZVNjaGVkdWxlck1peGluKFNiYlBvcG92ZXJCYXNlRWxlbWVudClcbiAgaW1wbGVtZW50cyBTYmJEYXRlSW5wdXRBc3NvY2lhdGVkPFQ+XG57XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItZGF0ZXBpY2tlcic7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtTYmJQb3BvdmVyQmFzZUVsZW1lbnQuc3R5bGVzLCB1bnNhZmVDU1Moc3R5bGUpXTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBzYmJEYXRlSW5wdXRBc3NvY2lhdGVkID0gdHJ1ZTtcblxuICAvKiogSWYgc2V0IHRvIHRydWUsIHR3byBtb250aHMgYXJlIGRpc3BsYXllZC4gKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIHdpZGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogUmVmZXJlbmNlIHRvIHRoZSBzYmItZGF0ZS1pbnB1dCBpbnN0YW5jZSBvciB0aGUgbmF0aXZlIGlucHV0IGNvbm5lY3RlZCB0byB0aGUgZGF0ZXBpY2tlci5cbiAgICpcbiAgICogRm9yIGF0dHJpYnV0ZSB1c2FnZSwgcHJvdmlkZSBhbiBpZCByZWZlcmVuY2UuXG4gICAqL1xuICBAaWRSZWZlcmVuY2UoKVxuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgYWNjZXNzb3IgaW5wdXQ6IFNiYkRhdGVJbnB1dEVsZW1lbnQ8VD4gfCBudWxsID0gbnVsbDtcblxuICAvKiogVGhlIGluaXRpYWwgdmlldyBvZiBjYWxlbmRhciB3aGljaCBzaG91bGQgYmUgZGlzcGxheWVkIG9uIG9wZW5pbmcuICovXG4gIEBwcm9wZXJ0eSgpIHB1YmxpYyBhY2Nlc3NvciB2aWV3OiBDYWxlbmRhclZpZXcgPSAnZGF5JztcblxuICBwcml2YXRlIF9pbnB1dEFib3J0Q29udHJvbGxlcj86IEFib3J0Q29udHJvbGxlcjtcbiAgcHJpdmF0ZSBfZGF0ZUFkYXB0ZXI6IERhdGVBZGFwdGVyPFQ+ID0gcmVhZENvbmZpZygpLmRhdGV0aW1lPy5kYXRlQWRhcHRlciA/PyBkZWZhdWx0RGF0ZUFkYXB0ZXI7XG4gIHByaXZhdGUgX2xhbmd1YWdlID0gbmV3IFNiYkxhbmd1YWdlQ29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfcmVhZHkgPSBmYWxzZTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnN0YXJ0VXBkYXRlKCk7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKFNiYlBvcG92ZXJCYXNlRWxlbWVudC5ldmVudHMuYmVmb3Jlb3BlbiwgKCkgPT4ge1xuICAgICAgdGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCdzYmItY2FsZW5kYXInKT8ucmVzZXRQb3NpdGlvbj8uKCk7XG4gICAgfSk7XG4gICAgaWYgKCFpc1NlcnZlciAmJiB0aGlzLmh5ZHJhdGlvblJlcXVpcmVkKSB7XG4gICAgICB0aGlzLmh5ZHJhdGlvbkNvbXBsZXRlLnRoZW4oKCkgPT4gdGhpcy5yZXF1ZXN0VXBkYXRlKCkpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLmlkIHx8PSBgc2JiLWRhdGVwaWNrZXItJHsrK25leHRJZH1gO1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG5cbiAgICBjb25zdCBmb3JtRmllbGQgPSB0aGlzLmNsb3Nlc3Q/Lignc2JiLWZvcm0tZmllbGQnKTtcbiAgICBpZiAoZm9ybUZpZWxkKSB7XG4gICAgICBTYmJEYXRlSW5wdXRFbGVtZW50LnJlc29sdmVBc3NvY2lhdGlvbih0aGlzKTtcbiAgICAgIGNvbnN0IHRvZ2dsZSA9XG4gICAgICAgIGZvcm1GaWVsZC5xdWVyeVNlbGVjdG9yPFNiYkRhdGVwaWNrZXJUb2dnbGVFbGVtZW50PFQ+Pignc2JiLWRhdGVwaWNrZXItdG9nZ2xlJyk7XG4gICAgICBpZiAodG9nZ2xlICYmICF0b2dnbGUuaGFzQXR0cmlidXRlKCdkYXRlcGlja2VyJykpIHtcbiAgICAgICAgdG9nZ2xlLmRhdGVwaWNrZXIgPz89IHRoaXM7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHJlcXVlc3RVcGRhdGUoXG4gICAgbmFtZT86IFByb3BlcnR5S2V5LFxuICAgIG9sZFZhbHVlPzogdW5rbm93bixcbiAgICBvcHRpb25zPzogUHJvcGVydHlEZWNsYXJhdGlvbixcbiAgKTogdm9pZCB7XG4gICAgc3VwZXIucmVxdWVzdFVwZGF0ZShuYW1lLCBvbGRWYWx1ZSwgb3B0aW9ucyk7XG4gICAgaWYgKG5hbWUgPT09ICdpbnB1dCcgJiYgdGhpcy5pbnB1dCAhPT0gb2xkVmFsdWUpIHtcbiAgICAgIHRoaXMuX2lucHV0QWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgICAgaWYgKHRoaXMuaW5wdXQpIHtcbiAgICAgICAgY29uc3QgeyBzaWduYWwgfSA9ICh0aGlzLl9pbnB1dEFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKSk7XG4gICAgICAgIHRoaXMuaW5wdXQ/LmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAgICAgJ8m1Y2hhbmdlJyxcbiAgICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgICBzdXBlci5yZXF1ZXN0VXBkYXRlKCk7XG4gICAgICAgICAgICB0aGlzLl91cGRhdGVTdGF0dXMoKTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIHsgc2lnbmFsIH0sXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci5maXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgLy8gV2Ugd2FudCB0byBkZWxheSB0aGUgcmVuZGVyaW5nIG9mIHRoZSBjYWxlbmRhciB0byBhdm9pZCBhIHNsb3cgaW5pdGlhbCByZW5kZXIuXG4gICAgICAvLyBUaGUgc2xvdyByZW5kZXIgY2FuIGJlIGEgcHJvYmxlbSBpZiBhIGxhcmdlIGFtb3VudCBvZiBkYXRlcGlja2VycyBhcmUgcmVuZGVyZWQgYXQgb25jZS5cbiAgICAgIHRoaXMuX3JlYWR5ID0gdHJ1ZTtcbiAgICAgIHRoaXMucmVxdWVzdFVwZGF0ZSgpO1xuICAgICAgdGhpcy5jb21wbGV0ZVVwZGF0ZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlU3RhdHVzKCk6IHZvaWQge1xuICAgIGNvbnN0IHN0YXR1cyA9IHRoaXMuc2hhZG93Um9vdD8uZ2V0RWxlbWVudEJ5SWQoJ3N0YXR1cy1jb250YWluZXInKTtcbiAgICBpZiAoIXN0YXR1cykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHRleHQgPSB0aGlzLl9kYXRlQWRhcHRlci5pc1ZhbGlkKHRoaXMuaW5wdXQ/LnZhbHVlQXNEYXRlKVxuICAgICAgPyBgJHtpMThuRGF0ZUNoYW5nZWRUb1t0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX0gJHt0aGlzLl9kYXRlQWRhcHRlci5mb3JtYXQoXG4gICAgICAgICAgdGhpcy5pbnB1dCEudmFsdWVBc0RhdGUsXG4gICAgICAgICAge1xuICAgICAgICAgICAgd2Vla2RheVN0eWxlOiAnbG9uZycsXG4gICAgICAgICAgfSxcbiAgICAgICAgKX1gXG4gICAgICA6ICcnO1xuICAgIGlmIChzdGF0dXMudGV4dENvbnRlbnQgIT09IHRleHQpIHtcbiAgICAgIHN0YXR1cy50ZXh0Q29udGVudCA9IHRleHQ7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlckNvbnRlbnQoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPHAgaWQ9XCJzdGF0dXMtY29udGFpbmVyXCIgcm9sZT1cInN0YXR1c1wiPjwvcD5cbiAgICAgIDxzYmItY2FsZW5kYXJcbiAgICAgICAgLnZpZXc9JHt0aGlzLnZpZXd9XG4gICAgICAgIC5taW49JHt0aGlzLmlucHV0Py5taW4gPz8gbnVsbH1cbiAgICAgICAgLm1heD0ke3RoaXMuaW5wdXQ/Lm1heCA/PyBudWxsfVxuICAgICAgICAuZGF0ZUZpbHRlcj0ke3RoaXMuaW5wdXQ/LmRhdGVGaWx0ZXIgPz8gbnVsbH1cbiAgICAgICAgLnNlbGVjdGVkPSR7dGhpcy5pbnB1dD8udmFsdWVBc0RhdGUgPz8gbnVsbH1cbiAgICAgICAgP3dpZGU9JHt0aGlzLndpZGV9XG4gICAgICAgIEBkYXRlc2VsZWN0ZWQ9JHsoZDogQ3VzdG9tRXZlbnQ8VD4pID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5pbnB1dCkge1xuICAgICAgICAgICAgdGhpcy5pbnB1dC52YWx1ZUFzRGF0ZSA9IGQuZGV0YWlsO1xuICAgICAgICAgICAgdGhpcy5pbnB1dC5kaXNwYXRjaEV2ZW50KG5ldyBJbnB1dEV2ZW50KCdpbnB1dCcsIHsgYnViYmxlczogdHJ1ZSwgY29tcG9zZWQ6IHRydWUgfSkpO1xuICAgICAgICAgICAgdGhpcy5pbnB1dC5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnY2hhbmdlJywgeyBidWJibGVzOiB0cnVlLCBjb21wb3NlZDogdHJ1ZSB9KSk7XG4gICAgICAgICAgICAvLyBFbWl0IGJsdXIgZXZlbnQgd2hlbiB2YWx1ZSBpcyBjaGFuZ2VkIHByb2dyYW1tYXRpY2FsbHkgdG8gbm90aWZ5XG4gICAgICAgICAgICAvLyBmcmFtZXdvcmtzIHRoYXQgcmVseSBvbiB0aGF0IGV2ZW50IHRvIHVwZGF0ZSBmb3JtIHN0YXR1cy5cbiAgICAgICAgICAgIHRoaXMuaW5wdXQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2JsdXInLCB7IGNvbXBvc2VkOiB0cnVlIH0pKTtcbiAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH19XG4gICAgICA+PC9zYmItY2FsZW5kYXI+XG4gICAgYDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBpc1NlcnZlciB8fCB0aGlzLmh5ZHJhdGlvblJlcXVpcmVkIHx8ICF0aGlzLl9yZWFkeSA/IGh0bWxgJHtub3RoaW5nfWAgOiBzdXBlci5yZW5kZXIoKTtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWRhdGVwaWNrZXInOiBTYmJEYXRlcGlja2VyRWxlbWVudDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FDMkJBLElBQUksU0FBUzs7Ozs7SUFNQSw4QkFBb0I7bUJBQ3ZCLHdCQUF3QixzQkFBc0I7Ozs7Ozs7Ozs7Y0FEM0MsNkJBQ0gsWUFBOEM7Ozt1QkFRckQsV0FBVyxFQUNYLFNBQVMsRUFBRSxNQUFNLFNBQVMsQ0FBQyxDQUFBO3dCQVEzQixhQUFhLEVBQ2IsVUFBVSxDQUFBO3VCQUlWLFVBQVUsQ0FBQTtBQVpYLGdCQUFBLE1BQUEsTUFBQSxrQkFBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLFVBQUE7S0FBQSxNQUFBLFFBQUEsSUFBZ0I7S0FBSSxNQUFBLEtBQUEsVUFBQTtBQUFBLFVBQUosT0FBSTs7S0FBQTtJQUFBLFVBQUE7SUFBQSxFQUFBLG9CQUFBLHdCQUFBO0FBU3BCLGdCQUFBLE1BQUEsTUFBQSxtQkFBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLFdBQUE7S0FBQSxNQUFBLFFBQUEsSUFBZ0I7S0FBSyxNQUFBLEtBQUEsVUFBQTtBQUFBLFVBQUwsUUFBSzs7S0FBQTtJQUFBLFVBQUE7SUFBQSxFQUFBLHFCQUFBLHlCQUFBO0FBR1QsZ0JBQUEsTUFBQSxNQUFBLGtCQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsVUFBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFJLE1BQUEs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
|