@sbb-esta/lyne-elements-dev 4.7.0-dev.1773737228 → 4.7.0-dev.1773741165
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/calendar/calendar/calendar.component.js +1 -1
- package/calendar/calendar-day/calendar-day.component.js +1 -1
- package/calendar/calendar-day.js +1 -1
- package/calendar/calendar-month/calendar-month.component.js +84 -0
- package/calendar/calendar-month.js +4 -0
- package/calendar/calendar-weekday/calendar-weekday.component.js +54 -0
- package/calendar/calendar-weekday.js +4 -0
- package/calendar/calendar-weeknumber/calendar-weeknumber.component.js +56 -0
- package/calendar/calendar-weeknumber.js +4 -0
- package/calendar/calendar-year/calendar-year.component.js +80 -0
- package/calendar/calendar-year.js +4 -0
- package/calendar/calendar.js +1 -1
- package/calendar/common/calendar-cell-base-element.js +23 -0
- package/calendar/common.js +6 -0
- package/calendar-day.component-Iewo-vBR.js +109 -0
- package/{calendar.component-BgZDy-rX.js → calendar.component-Cz-OGQu6.js} +140 -224
- package/calendar.js +8 -4
- package/calendar.pure.js +7 -3
- package/carousel/carousel/carousel.component.js +1 -1
- package/carousel/carousel.js +1 -1
- package/carousel.js +1 -1
- package/carousel.pure.js +1 -1
- package/core/styles/core.scss +8 -0
- package/core.css +40 -0
- package/custom-elements.json +4273 -375
- package/development/calendar/calendar/calendar.component.d.ts +7 -9
- package/development/calendar/calendar/calendar.component.d.ts.map +1 -1
- package/development/calendar/calendar/calendar.component.js +1 -1
- package/development/calendar/calendar-day/calendar-day.component.d.ts +7 -21
- package/development/calendar/calendar-day/calendar-day.component.d.ts.map +1 -1
- package/development/calendar/calendar-day/calendar-day.component.js +1 -1
- package/development/calendar/calendar-day.js +1 -1
- package/development/calendar/calendar-month/calendar-month.component.d.ts +33 -0
- package/development/calendar/calendar-month/calendar-month.component.d.ts.map +1 -0
- package/development/calendar/calendar-month/calendar-month.component.js +112 -0
- package/development/calendar/calendar-month.d.ts +2 -0
- package/development/calendar/calendar-month.d.ts.map +1 -0
- package/development/calendar/calendar-month.js +10 -0
- package/development/calendar/calendar-weekday/calendar-weekday.component.d.ts +23 -0
- package/development/calendar/calendar-weekday/calendar-weekday.component.d.ts.map +1 -0
- package/development/calendar/calendar-weekday/calendar-weekday.component.js +67 -0
- package/development/calendar/calendar-weekday.d.ts +2 -0
- package/development/calendar/calendar-weekday.d.ts.map +1 -0
- package/development/calendar/calendar-weekday.js +10 -0
- package/development/calendar/calendar-weeknumber/calendar-weeknumber.component.d.ts +23 -0
- package/development/calendar/calendar-weeknumber/calendar-weeknumber.component.d.ts.map +1 -0
- package/development/calendar/calendar-weeknumber/calendar-weeknumber.component.js +70 -0
- package/development/calendar/calendar-weeknumber.d.ts +2 -0
- package/development/calendar/calendar-weeknumber.d.ts.map +1 -0
- package/development/calendar/calendar-weeknumber.js +10 -0
- package/development/calendar/calendar-year/calendar-year.component.d.ts +28 -0
- package/development/calendar/calendar-year/calendar-year.component.d.ts.map +1 -0
- package/development/calendar/calendar-year/calendar-year.component.js +103 -0
- package/development/calendar/calendar-year.d.ts +2 -0
- package/development/calendar/calendar-year.d.ts.map +1 -0
- package/development/calendar/calendar-year.js +10 -0
- package/development/calendar/calendar.js +1 -1
- package/development/calendar/common/calendar-cell-base-element.d.ts +24 -0
- package/development/calendar/common/calendar-cell-base-element.d.ts.map +1 -0
- package/development/calendar/common/calendar-cell-base-element.js +35 -0
- package/development/calendar/common.d.ts +3 -0
- package/development/calendar/common.d.ts.map +1 -0
- package/development/calendar/common.js +120 -0
- package/development/calendar-day.component-Brz0Wyai.js +178 -0
- package/development/calendar.component-0Pl7qEXL.js +2222 -0
- package/development/calendar.d.ts.map +1 -1
- package/development/calendar.js +12 -4
- package/development/calendar.pure.d.ts +4 -0
- package/development/calendar.pure.d.ts.map +1 -1
- package/development/calendar.pure.js +7 -3
- package/development/carousel/carousel/carousel.component.js +1 -1
- package/development/carousel/carousel.js +1 -1
- package/development/{carousel.component-b4C-hxkj.js → carousel.component-Cs0gWroH.js} +2 -2
- package/development/carousel.js +1 -1
- package/development/carousel.pure.js +1 -1
- package/development/mini-calendar/mini-calendar/mini-calendar.component.js +1 -1
- package/development/mini-calendar/mini-calendar-day/mini-calendar-day.component.js +1 -1
- package/development/mini-calendar/mini-calendar-day.js +1 -1
- package/development/mini-calendar/mini-calendar-month/mini-calendar-month.component.js +1 -1
- package/development/mini-calendar/mini-calendar-month.js +1 -1
- package/development/mini-calendar/mini-calendar.js +1 -1
- package/development/{mini-calendar-day.component-DLP7Pa6R.js → mini-calendar-day.component-DdjlUG0k.js} +2 -2
- package/development/{mini-calendar-month.component-C1jsGlJ2.js → mini-calendar-month.component-BjxmoYz6.js} +2 -2
- package/development/{mini-calendar.component-BzqjMchx.js → mini-calendar.component-B38J84Gg.js} +2 -2
- package/development/mini-calendar.js +3 -3
- package/development/mini-calendar.pure.js +3 -3
- package/development/popover/popover.component.d.ts.map +1 -1
- package/development/popover/popover.component.js +1 -1
- package/development/{popover.component-BTfbUEzF.js → popover.component-BpYi6btR.js} +2 -2
- package/development/popover.js +1 -1
- package/development/popover.pure.js +1 -1
- package/index.d.ts +5 -1
- package/index.js +5 -1
- package/mini-calendar/mini-calendar/mini-calendar.component.js +1 -1
- package/mini-calendar/mini-calendar-day/mini-calendar-day.component.js +1 -1
- package/mini-calendar/mini-calendar-day.js +1 -1
- package/mini-calendar/mini-calendar-month/mini-calendar-month.component.js +1 -1
- package/mini-calendar/mini-calendar-month.js +1 -1
- package/mini-calendar/mini-calendar.js +1 -1
- package/{mini-calendar.component-DpPMb47Y.js → mini-calendar.component-_YJbFi4P.js} +4 -4
- package/mini-calendar.js +3 -3
- package/mini-calendar.pure.js +3 -3
- package/off-brand-theme.css +40 -0
- package/package.json +27 -2
- package/popover/popover.component.js +1 -1
- package/{popover.component-Dh9vbuDG.js → popover.component-D_nJwaqJ.js} +1 -1
- package/popover.js +1 -1
- package/popover.pure.js +1 -1
- package/safety-theme.css +40 -0
- package/standard-theme.css +40 -0
- package/calendar-day.component-DqAXvoP3.js +0 -113
- package/development/calendar-day.component-De9Xn3-q.js +0 -283
- package/development/calendar.component-PHpgLc0z.js +0 -2458
- package/{carousel.component-Bd0iGUbf.js → carousel.component-BA0V2JHI.js} +1 -1
- package/{mini-calendar-day.component-cAawa9Gr.js → mini-calendar-day.component-D5HlCTH0.js} +1 -1
- package/{mini-calendar-month.component-DiYSVb-Y.js → mini-calendar-month.component-CGAOxDtz.js} +1 -1
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { CSSResultGroup, TemplateResult } from 'lit';
|
|
2
|
+
import { SbbCalendarElement } from '../calendar/calendar.component.ts';
|
|
3
|
+
import { SbbCalendarCellBaseElement } from '../common.ts';
|
|
4
|
+
/**
|
|
5
|
+
* It displays a single year cell in the `sbb-calendar` years view.
|
|
6
|
+
*/
|
|
7
|
+
export declare class SbbCalendarYearElement<T = Date> extends SbbCalendarCellBaseElement<T> {
|
|
8
|
+
static readonly elementName: string;
|
|
9
|
+
static styles: CSSResultGroup;
|
|
10
|
+
/**
|
|
11
|
+
* Value of the calendar-year element.
|
|
12
|
+
*/
|
|
13
|
+
set value(value: string | null);
|
|
14
|
+
get value(): string | null;
|
|
15
|
+
private _value;
|
|
16
|
+
connectedCallback(): void;
|
|
17
|
+
protected setSelectedState(parent: SbbCalendarElement<T>): void;
|
|
18
|
+
protected setDisabledFilteredState(parent: SbbCalendarElement<T>): void;
|
|
19
|
+
private _isActiveYear;
|
|
20
|
+
private _isYearInRange;
|
|
21
|
+
protected renderTemplate(): TemplateResult;
|
|
22
|
+
}
|
|
23
|
+
declare global {
|
|
24
|
+
interface HTMLElementTagNameMap {
|
|
25
|
+
'sbb-calendar-year': SbbCalendarYearElement;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=calendar-year.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calendar-year.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/calendar/calendar-year/calendar-year.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAQ,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAIrE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAyB,MAAM,cAAc,CAAC;AAEjF;;GAEG;AACH,qBAAa,sBAAsB,CAAC,CAAC,GAAG,IAAI,CAAE,SAAQ,0BAA0B,CAAC,CAAC,CAAC;IACjF,gBAAgC,WAAW,EAAE,MAAM,CAAuB;IAC1E,OAAuB,MAAM,EAAE,cAAc,CAA4C;IAEzF;;OAEG;IACH,IACW,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAepC;IACD,IAAW,KAAK,IAAI,MAAM,GAAG,IAAI,CAEhC;IACD,OAAO,CAAC,MAAM,CAAuB;IAErB,iBAAiB,IAAI,IAAI;cAKtB,gBAAgB,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,IAAI;cAUrD,wBAAwB,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,IAAI;IAShF,OAAO,CAAC,aAAa;IAmBrB,OAAO,CAAC,cAAc;cAWH,cAAc,IAAI,cAAc;CAGpD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,mBAAmB,EAAE,sBAAsB,CAAC;KAC7C;CACF"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
+
import { html } from "lit";
|
|
3
|
+
import { state } from "lit/decorators.js";
|
|
4
|
+
import { boxSizingStyles } from "../../core/styles.js";
|
|
5
|
+
import { SbbCalendarCellBaseElement, calendarCellBaseStyle } from "../common.js";
|
|
6
|
+
//#region src/elements/calendar/calendar-year/calendar-year.component.ts
|
|
7
|
+
/**
|
|
8
|
+
* It displays a single year cell in the `sbb-calendar` years view.
|
|
9
|
+
*/
|
|
10
|
+
var SbbCalendarYearElement = (() => {
|
|
11
|
+
let _classSuper = SbbCalendarCellBaseElement;
|
|
12
|
+
let _instanceExtraInitializers = [];
|
|
13
|
+
let _set_value_decorators;
|
|
14
|
+
return class SbbCalendarYearElement extends _classSuper {
|
|
15
|
+
constructor() {
|
|
16
|
+
super(...arguments);
|
|
17
|
+
this._value = (__runInitializers(this, _instanceExtraInitializers), null);
|
|
18
|
+
}
|
|
19
|
+
static {
|
|
20
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
21
|
+
_set_value_decorators = [state()];
|
|
22
|
+
__esDecorate(this, null, _set_value_decorators, {
|
|
23
|
+
kind: "setter",
|
|
24
|
+
name: "value",
|
|
25
|
+
static: false,
|
|
26
|
+
private: false,
|
|
27
|
+
access: {
|
|
28
|
+
has: (obj) => "value" in obj,
|
|
29
|
+
set: (obj, value) => {
|
|
30
|
+
obj.value = value;
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
metadata: _metadata
|
|
34
|
+
}, null, _instanceExtraInitializers);
|
|
35
|
+
if (_metadata) Object.defineProperty(this, Symbol.metadata, {
|
|
36
|
+
enumerable: true,
|
|
37
|
+
configurable: true,
|
|
38
|
+
writable: true,
|
|
39
|
+
value: _metadata
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
static {
|
|
43
|
+
this.elementName = "sbb-calendar-year";
|
|
44
|
+
}
|
|
45
|
+
static {
|
|
46
|
+
this.styles = [boxSizingStyles, calendarCellBaseStyle];
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Value of the calendar-year element.
|
|
50
|
+
*/
|
|
51
|
+
set value(value) {
|
|
52
|
+
const year = Number(value);
|
|
53
|
+
if (isNaN(year)) return;
|
|
54
|
+
this._value = value;
|
|
55
|
+
const isToday = this.dateAdapter.getYear(this.dateAdapter.today()) === year;
|
|
56
|
+
this.toggleState("current", isToday);
|
|
57
|
+
this.internals.ariaLabel = String(year);
|
|
58
|
+
const parent = this.getParent();
|
|
59
|
+
if (parent) {
|
|
60
|
+
this.setDisabledFilteredState(parent);
|
|
61
|
+
this.setSelectedState(parent);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
get value() {
|
|
65
|
+
return this._value;
|
|
66
|
+
}
|
|
67
|
+
connectedCallback() {
|
|
68
|
+
super.connectedCallback();
|
|
69
|
+
this.tabIndex = -1;
|
|
70
|
+
}
|
|
71
|
+
setSelectedState(parent) {
|
|
72
|
+
const selected = parent.multiple ? parent.selected?.some((date) => Number(this.value) === this.dateAdapter.getYear(date)) ?? false : !!parent.selected && this.dateAdapter.getYear(parent.selected) === Number(this.value);
|
|
73
|
+
this.toggleState("selected", selected);
|
|
74
|
+
this.internals.ariaPressed = String(selected);
|
|
75
|
+
}
|
|
76
|
+
setDisabledFilteredState(parent) {
|
|
77
|
+
const isFilteredOut = !this._isActiveYear(parent);
|
|
78
|
+
const isOutOfRange = !this._isYearInRange(parent.min, parent.max);
|
|
79
|
+
this.disabled = isFilteredOut || isOutOfRange;
|
|
80
|
+
this.internals.ariaDisabled = String(this.disabled);
|
|
81
|
+
this.toggleState("crossed-out", isFilteredOut && !isOutOfRange);
|
|
82
|
+
}
|
|
83
|
+
_isActiveYear(parent) {
|
|
84
|
+
if (!parent.dateFilter || !this.value) return true;
|
|
85
|
+
const firstOfYear = this.dateAdapter.createDate(Number(this.value), 1, 1);
|
|
86
|
+
for (let date = firstOfYear; this.dateAdapter.getYear(date) == Number(this.value); date = this.dateAdapter.addCalendarDays(date, 1)) if (parent.dateFilter(date)) return true;
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
_isYearInRange(min, max) {
|
|
90
|
+
if (!min && !max || !this.value) return true;
|
|
91
|
+
const isBeforeMin = this.dateAdapter.isValid(min) && this.dateAdapter.getYear(min) > Number(this.value);
|
|
92
|
+
const isAfterMax = this.dateAdapter.isValid(max) && this.dateAdapter.getYear(max) < Number(this.value);
|
|
93
|
+
return !(isBeforeMin || isAfterMax);
|
|
94
|
+
}
|
|
95
|
+
renderTemplate() {
|
|
96
|
+
return html`${this.value}`;
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
})();
|
|
100
|
+
//#endregion
|
|
101
|
+
export { SbbCalendarYearElement };
|
|
102
|
+
|
|
103
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIteWVhci5jb21wb25lbnQuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NhbGVuZGFyL2NhbGVuZGFyLXllYXIvY2FsZW5kYXIteWVhci5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBDU1NSZXN1bHRHcm91cCwgaHRtbCwgdHlwZSBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBzdGF0ZSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgYm94U2l6aW5nU3R5bGVzIH0gZnJvbSAnLi4vLi4vY29yZS9zdHlsZXMudHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJDYWxlbmRhckVsZW1lbnQgfSBmcm9tICcuLi9jYWxlbmRhci9jYWxlbmRhci5jb21wb25lbnQudHMnO1xuaW1wb3J0IHsgU2JiQ2FsZW5kYXJDZWxsQmFzZUVsZW1lbnQsIGNhbGVuZGFyQ2VsbEJhc2VTdHlsZSB9IGZyb20gJy4uL2NvbW1vbi50cyc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBzaW5nbGUgeWVhciBjZWxsIGluIHRoZSBgc2JiLWNhbGVuZGFyYCB5ZWFycyB2aWV3LlxuICovXG5leHBvcnQgY2xhc3MgU2JiQ2FsZW5kYXJZZWFyRWxlbWVudDxUID0gRGF0ZT4gZXh0ZW5kcyBTYmJDYWxlbmRhckNlbGxCYXNlRWxlbWVudDxUPiB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItY2FsZW5kYXIteWVhcic7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtib3hTaXppbmdTdHlsZXMsIGNhbGVuZGFyQ2VsbEJhc2VTdHlsZV07XG5cbiAgLyoqXG4gICAqIFZhbHVlIG9mIHRoZSBjYWxlbmRhci15ZWFyIGVsZW1lbnQuXG4gICAqL1xuICBAc3RhdGUoKVxuICBwdWJsaWMgc2V0IHZhbHVlKHZhbHVlOiBzdHJpbmcgfCBudWxsKSB7XG4gICAgY29uc3QgeWVhciA9IE51bWJlcih2YWx1ZSk7XG4gICAgaWYgKGlzTmFOKHllYXIpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICBjb25zdCBpc1RvZGF5ID0gdGhpcy5kYXRlQWRhcHRlci5nZXRZZWFyKHRoaXMuZGF0ZUFkYXB0ZXIudG9kYXkoKSkgPT09IHllYXI7XG4gICAgdGhpcy50b2dnbGVTdGF0ZSgnY3VycmVudCcsIGlzVG9kYXkpO1xuICAgIHRoaXMuaW50ZXJuYWxzLmFyaWFMYWJlbCA9IFN0cmluZyh5ZWFyKTtcbiAgICBjb25zdCBwYXJlbnQgPSB0aGlzLmdldFBhcmVudCgpO1xuICAgIGlmIChwYXJlbnQpIHtcbiAgICAgIHRoaXMuc2V0RGlzYWJsZWRGaWx0ZXJlZFN0YXRlKHBhcmVudCk7XG4gICAgICB0aGlzLnNldFNlbGVjdGVkU3RhdGUocGFyZW50KTtcbiAgICB9XG4gIH1cbiAgcHVibGljIGdldCB2YWx1ZSgpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gIH1cbiAgcHJpdmF0ZSBfdmFsdWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMudGFiSW5kZXggPSAtMTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBzZXRTZWxlY3RlZFN0YXRlKHBhcmVudDogU2JiQ2FsZW5kYXJFbGVtZW50PFQ+KTogdm9pZCB7XG4gICAgY29uc3Qgc2VsZWN0ZWQgPSBwYXJlbnQubXVsdGlwbGVcbiAgICAgID8gKChwYXJlbnQuc2VsZWN0ZWQgYXMgRGF0ZVtdKT8uc29tZShcbiAgICAgICAgICAoZGF0ZTogRGF0ZSkgPT4gTnVtYmVyKHRoaXMudmFsdWUpID09PSB0aGlzLmRhdGVBZGFwdGVyLmdldFllYXIoZGF0ZSksXG4gICAgICAgICkgPz8gZmFsc2UpXG4gICAgICA6ICEhcGFyZW50LnNlbGVjdGVkICYmIHRoaXMuZGF0ZUFkYXB0ZXIuZ2V0WWVhcihwYXJlbnQuc2VsZWN0ZWQpID09PSBOdW1iZXIodGhpcy52YWx1ZSk7XG4gICAgdGhpcy50b2dnbGVTdGF0ZSgnc2VsZWN0ZWQnLCBzZWxlY3RlZCk7XG4gICAgdGhpcy5pbnRlcm5hbHMuYXJpYVByZXNzZWQgPSBTdHJpbmcoc2VsZWN0ZWQpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHNldERpc2FibGVkRmlsdGVyZWRTdGF0ZShwYXJlbnQ6IFNiYkNhbGVuZGFyRWxlbWVudDxUPik6IHZvaWQge1xuICAgIGNvbnN0IGlzRmlsdGVyZWRPdXQgPSAhdGhpcy5faXNBY3RpdmVZZWFyKHBhcmVudCk7XG4gICAgY29uc3QgaXNPdXRPZlJhbmdlID0gIXRoaXMuX2lzWWVhckluUmFuZ2UocGFyZW50Lm1pbiwgcGFyZW50Lm1heCk7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRmlsdGVyZWRPdXQgfHwgaXNPdXRPZlJhbmdlO1xuICAgIHRoaXMuaW50ZXJuYWxzLmFyaWFEaXNhYmxlZCA9IFN0cmluZyh0aGlzLmRpc2FibGVkKTtcbiAgICB0aGlzLnRvZ2dsZVN0YXRlKCdjcm9zc2VkLW91dCcsIGlzRmlsdGVyZWRPdXQgJiYgIWlzT3V0T2ZSYW5nZSk7XG4gIH1cblxuICAvLyBJbXBsZW1lbnRhdGlvbiBhZGFwdGVkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9ibG9iL21haW4vc3JjL21hdGVyaWFsL2RhdGVwaWNrZXIvbXVsdGkteWVhci12aWV3LnRzI0wzNTFcbiAgcHJpdmF0ZSBfaXNBY3RpdmVZZWFyKHBhcmVudDogU2JiQ2FsZW5kYXJFbGVtZW50PFQ+KTogYm9vbGVhbiB7XG4gICAgaWYgKCFwYXJlbnQuZGF0ZUZpbHRlciB8fCAhdGhpcy52YWx1ZSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgY29uc3QgZmlyc3RPZlllYXIgPSB0aGlzLmRhdGVBZGFwdGVyLmNyZWF0ZURhdGUoTnVtYmVyKHRoaXMudmFsdWUpLCAxLCAxKSE7XG4gICAgZm9yIChcbiAgICAgIGxldCBkYXRlID0gZmlyc3RPZlllYXI7XG4gICAgICB0aGlzLmRhdGVBZGFwdGVyLmdldFllYXIoZGF0ZSkgPT0gTnVtYmVyKHRoaXMudmFsdWUpO1xuICAgICAgZGF0ZSA9IHRoaXMuZGF0ZUFkYXB0ZXIuYWRkQ2FsZW5kYXJEYXlzKGRhdGUsIDEpXG4gICAgKSB7XG4gICAgICBpZiAocGFyZW50LmRhdGVGaWx0ZXIoZGF0ZSkpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNZZWFySW5SYW5nZShtaW46IFQgfCBudWxsLCBtYXg6IFQgfCBudWxsKTogYm9vbGVhbiB7XG4gICAgaWYgKCghbWluICYmICFtYXgpIHx8ICF0aGlzLnZhbHVlKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgY29uc3QgaXNCZWZvcmVNaW46IGJvb2xlYW4gPVxuICAgICAgdGhpcy5kYXRlQWRhcHRlci5pc1ZhbGlkKG1pbikgJiYgdGhpcy5kYXRlQWRhcHRlci5nZXRZZWFyKG1pbikgPiBOdW1iZXIodGhpcy52YWx1ZSk7XG4gICAgY29uc3QgaXNBZnRlck1heDogYm9vbGVhbiA9XG4gICAgICB0aGlzLmRhdGVBZGFwdGVyLmlzVmFsaWQobWF4KSAmJiB0aGlzLmRhdGVBZGFwdGVyLmdldFllYXIobWF4KSA8IE51bWJlcih0aGlzLnZhbHVlKTtcbiAgICByZXR1cm4gIShpc0JlZm9yZU1pbiB8fCBpc0FmdGVyTWF4KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXJUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgJHt0aGlzLnZhbHVlfWA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1jYWxlbmRhci15ZWFyJzogU2JiQ2FsZW5kYXJZZWFyRWxlbWVudDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7SUFVYSxnQ0FBc0I7bUJBQW1COzs7Y0FBekMsK0JBQXlDLFlBQTZCOzs7QUEyQnpFLFFBQUEsVUEzQkcsa0JBQUEsTUFBQSwyQkFBc0IsRUEyQkQ7Ozs7NEJBcEIvQixPQUFPLENBQUE7QUFDUixnQkFBQSxNQUFBLE1BQUEsdUJBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSxXQUFBO0tBQUEsTUFBQSxLQUFBLFVBQUE7QUFBQSxVQUFXLFFBQUs7O0tBQUE7SUFBQSxVQUFBO0lBQUEsRUFBQSxNQUFBLDJCQUFBOzs7Ozs7Ozs7QUFQZ0IsUUFBQSxjQUFzQjs7O0FBQy9CLFFBQUEsU0FBeUIsQ0FBQyxpQkFBaUIsc0JBQXNCOzs7OztFQU14RixJQUFXLE1BQU0sT0FBb0I7R0FDbkMsTUFBTSxPQUFPLE9BQU8sTUFBTTtBQUMxQixPQUFJLE1BQU0sS0FBSyxDQUNiO0FBR0YsUUFBSyxTQUFTO0dBQ2QsTUFBTSxVQUFVLEtBQUssWUFBWSxRQUFRLEtBQUssWUFBWSxPQUFPLENBQUMsS0FBSztBQUN2RSxRQUFLLFlBQVksV0FBVyxRQUFRO0FBQ3BDLFFBQUssVUFBVSxZQUFZLE9BQU8sS0FBSztHQUN2QyxNQUFNLFNBQVMsS0FBSyxXQUFXO0FBQy9CLE9BQUksUUFBUTtBQUNWLFNBQUsseUJBQXlCLE9BQU87QUFDckMsU0FBSyxpQkFBaUIsT0FBTzs7O0VBR2pDLElBQVcsUUFBSztBQUNkLFVBQU8sS0FBSzs7RUFJRSxvQkFBaUI7QUFDL0IsU0FBTSxtQkFBbUI7QUFDekIsUUFBSyxXQUFXOztFQUdDLGlCQUFpQixRQUE2QjtHQUMvRCxNQUFNLFdBQVcsT0FBTyxXQUNsQixPQUFPLFVBQXFCLE1BQzNCLFNBQWUsT0FBTyxLQUFLLE1BQU0sS0FBSyxLQUFLLFlBQVksUUFBUSxLQUFLLENBQ3RFLElBQUksUUFDTCxDQUFDLENBQUMsT0FBTyxZQUFZLEtBQUssWUFBWSxRQUFRLE9BQU8sU0FBUyxLQUFLLE9BQU8sS0FBSyxNQUFNO0FBQ3pGLFFBQUssWUFBWSxZQUFZLFNBQVM7QUFDdEMsUUFBSyxVQUFVLGNBQWMsT0FBTyxTQUFTOztFQUc1Qix5QkFBeUIsUUFBNkI7R0FDdkUsTUFBTSxnQkFBZ0IsQ0FBQyxLQUFLLGNBQWMsT0FBTztHQUNqRCxNQUFNLGVBQWUsQ0FBQyxLQUFLLGVBQWUsT0FBTyxLQUFLLE9BQU8sSUFBSTtBQUNqRSxRQUFLLFdBQVcsaUJBQWlCO0FBQ2pDLFFBQUssVUFBVSxlQUFlLE9BQU8sS0FBSyxTQUFTO0FBQ25ELFFBQUssWUFBWSxlQUFlLGlCQUFpQixDQUFDLGFBQWE7O0VBSXpELGNBQWMsUUFBNkI7QUFDakQsT0FBSSxDQUFDLE9BQU8sY0FBYyxDQUFDLEtBQUssTUFDOUIsUUFBTztHQUdULE1BQU0sY0FBYyxLQUFLLFlBQVksV0FBVyxPQUFPLEtBQUssTUFBTSxFQUFFLEdBQUcsRUFBRztBQUMxRSxRQUNFLElBQUksT0FBTyxhQUNYLEtBQUssWUFBWSxRQUFRLEtBQUssSUFBSSxPQUFPLEtBQUssTUFBTSxFQUNwRCxPQUFPLEtBQUssWUFBWSxnQkFBZ0IsTUFBTSxFQUFFLENBRWhELEtBQUksT0FBTyxXQUFXLEtBQUssQ0FDekIsUUFBTztBQUlYLFVBQU87O0VBR0QsZUFBZSxLQUFlLEtBQWE7QUFDakQsT0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFRLENBQUMsS0FBSyxNQUMxQixRQUFPO0dBRVQsTUFBTSxjQUNKLEtBQUssWUFBWSxRQUFRLElBQUksSUFBSSxLQUFLLFlBQVksUUFBUSxJQUFJLEdBQUcsT0FBTyxLQUFLLE1BQU07R0FDckYsTUFBTSxhQUNKLEtBQUssWUFBWSxRQUFRLElBQUksSUFBSSxLQUFLLFlBQVksUUFBUSxJQUFJLEdBQUcsT0FBTyxLQUFLLE1BQU07QUFDckYsVUFBTyxFQUFFLGVBQWU7O0VBR1AsaUJBQWM7QUFDL0IsVUFBTyxJQUFJLEdBQUcsS0FBSyJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calendar-year.d.ts","sourceRoot":"","sources":["../../../../src/elements/calendar/calendar-year.ts"],"names":[],"mappings":"AAGA,cAAc,4CAA4C,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { SbbCalendarYearElement } from "./calendar-year/calendar-year.component.js";
|
|
2
|
+
//#region src/elements/calendar/calendar-year.ts
|
|
3
|
+
/** @entrypoint */
|
|
4
|
+
SbbCalendarYearElement.define();
|
|
5
|
+
console.warn(`The entrypoint '@sbb-esta/elements/calendar/calendar-year.js' has been deprecated.
|
|
6
|
+
Use either '@sbb-esta/elements/calendar.js' or '@sbb-esta/elements/calendar.pure.js' instead.`);
|
|
7
|
+
//#endregion
|
|
8
|
+
export { SbbCalendarYearElement };
|
|
9
|
+
|
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIteWVhci5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY2FsZW5kYXIvY2FsZW5kYXIteWVhci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiogQGVudHJ5cG9pbnQgKi9cbmltcG9ydCB7IFNiYkNhbGVuZGFyWWVhckVsZW1lbnQgfSBmcm9tICcuL2NhbGVuZGFyLXllYXIvY2FsZW5kYXIteWVhci5jb21wb25lbnQudHMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NhbGVuZGFyLXllYXIvY2FsZW5kYXIteWVhci5jb21wb25lbnQudHMnO1xuXG5TYmJDYWxlbmRhclllYXJFbGVtZW50LmRlZmluZSgpO1xuXG5jb25zb2xlLndhcm4oYFRoZSBlbnRyeXBvaW50ICdAc2JiLWVzdGEvZWxlbWVudHMvY2FsZW5kYXIvY2FsZW5kYXIteWVhci5qcycgaGFzIGJlZW4gZGVwcmVjYXRlZC5cblVzZSBlaXRoZXIgJ0BzYmItZXN0YS9lbGVtZW50cy9jYWxlbmRhci5qcycgb3IgJ0BzYmItZXN0YS9lbGVtZW50cy9jYWxlbmRhci5wdXJlLmpzJyBpbnN0ZWFkLmApO1xuIl0sIm1hcHBpbmdzIjoiOzs7QUFLQSx1QkFBdUIsUUFBUTtBQUUvQixRQUFRLEtBQUs7K0ZBQ2tGIn0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as SbbMonthChangeEvent, t as SbbCalendarElement } from "../calendar.component-
|
|
1
|
+
import { n as SbbMonthChangeEvent, t as SbbCalendarElement } from "../calendar.component-0Pl7qEXL.js";
|
|
2
2
|
//#region src/elements/calendar/calendar.ts
|
|
3
3
|
/** @entrypoint */
|
|
4
4
|
SbbCalendarElement.define();
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { SbbButtonLikeBaseElement } from '../../core/base-elements/button-base-element.ts';
|
|
2
|
+
import { DateAdapter } from '../../core/datetime/date-adapter.ts';
|
|
3
|
+
import { FormRestoreReason, FormRestoreState } from '../../core/mixins/form-associated-mixin.ts';
|
|
4
|
+
import { SbbCalendarElement } from '../calendar/calendar.component.ts';
|
|
5
|
+
declare const SbbCalendarCellBaseElement_base: import('../../core/mixins.ts').AbstractConstructor<import('../../core/mixins/disabled-mixin.ts').SbbDisabledMixinType> & typeof SbbButtonLikeBaseElement;
|
|
6
|
+
export declare abstract class SbbCalendarCellBaseElement<T = Date> extends SbbCalendarCellBaseElement_base {
|
|
7
|
+
protected dateAdapter: DateAdapter;
|
|
8
|
+
constructor();
|
|
9
|
+
protected abstract setDisabledFilteredState(parent: SbbCalendarElement<T>): void;
|
|
10
|
+
protected abstract setSelectedState(parent: SbbCalendarElement<T>): void;
|
|
11
|
+
protected getParent(): SbbCalendarElement<T> | null;
|
|
12
|
+
/**
|
|
13
|
+
* Intentionally empty, as buttons are not targeted by form reset.
|
|
14
|
+
* @internal
|
|
15
|
+
*/
|
|
16
|
+
formResetCallback(): void;
|
|
17
|
+
/**
|
|
18
|
+
* Intentionally empty, as buttons are not targeted by form restore.
|
|
19
|
+
* @internal
|
|
20
|
+
*/
|
|
21
|
+
formStateRestoreCallback(_state: FormRestoreState | null, _reason: FormRestoreReason): void;
|
|
22
|
+
}
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=calendar-cell-base-element.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calendar-cell-base-element.d.ts","sourceRoot":"","sources":["../../../../../src/elements/calendar/common/calendar-cell-base-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,iDAAiD,CAAC;AAG3F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAGvE,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,4CAA4C,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;;AAE5E,8BAAsB,0BAA0B,CAAC,CAAC,GAAG,IAAI,CAAE,SAAQ,+BAElE;IACC,SAAS,CAAC,WAAW,EAAE,WAAW,CAA4D;;IAc9F,SAAS,CAAC,QAAQ,CAAC,wBAAwB,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,IAAI;IAChF,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,IAAI;IAExE,SAAS,CAAC,SAAS,IAAI,kBAAkB,CAAC,CAAC,CAAC,GAAG,IAAI;IAMnD;;;OAGG;IACa,iBAAiB,IAAI,IAAI;IAEzC;;;OAGG;IACa,wBAAwB,CACtC,MAAM,EAAE,gBAAgB,GAAG,IAAI,EAC/B,OAAO,EAAE,iBAAiB,GACzB,IAAI;CACR"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { readConfig } from "../../core/config/config.js";
|
|
2
|
+
import { defaultDateAdapter } from "../../core/datetime/native-date-adapter.js";
|
|
3
|
+
import { SbbButtonLikeBaseElement } from "../../core/base-elements/button-base-element.js";
|
|
4
|
+
import { SbbPropertyWatcherController } from "../../core/controllers/property-watcher-controller.js";
|
|
5
|
+
import { SbbDisabledMixin } from "../../core/mixins/disabled-mixin.js";
|
|
6
|
+
//#region src/elements/calendar/common/calendar-cell-base-element.ts
|
|
7
|
+
var SbbCalendarCellBaseElement = class extends SbbDisabledMixin(SbbButtonLikeBaseElement) {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
this.dateAdapter = readConfig().datetime?.dateAdapter ?? defaultDateAdapter;
|
|
11
|
+
this.addController(new SbbPropertyWatcherController(this, () => this.getParent(), {
|
|
12
|
+
dateFilter: (component) => this.setDisabledFilteredState(component),
|
|
13
|
+
min: (component) => this.setDisabledFilteredState(component),
|
|
14
|
+
max: (component) => this.setDisabledFilteredState(component),
|
|
15
|
+
selected: (component) => this.setSelectedState(component)
|
|
16
|
+
}));
|
|
17
|
+
}
|
|
18
|
+
getParent() {
|
|
19
|
+
return this.getRootNode?.()?.host?.closest("sbb-calendar");
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Intentionally empty, as buttons are not targeted by form reset.
|
|
23
|
+
* @internal
|
|
24
|
+
*/
|
|
25
|
+
formResetCallback() {}
|
|
26
|
+
/**
|
|
27
|
+
* Intentionally empty, as buttons are not targeted by form restore.
|
|
28
|
+
* @internal
|
|
29
|
+
*/
|
|
30
|
+
formStateRestoreCallback(_state, _reason) {}
|
|
31
|
+
};
|
|
32
|
+
//#endregion
|
|
33
|
+
export { SbbCalendarCellBaseElement };
|
|
34
|
+
|
|
35
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItY2VsbC1iYXNlLWVsZW1lbnQuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NhbGVuZGFyL2NvbW1vbi9jYWxlbmRhci1jZWxsLWJhc2UtZWxlbWVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTYmJCdXR0b25MaWtlQmFzZUVsZW1lbnQgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UtZWxlbWVudHMvYnV0dG9uLWJhc2UtZWxlbWVudC50cyc7XG5pbXBvcnQgeyByZWFkQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29yZS9jb25maWcvY29uZmlnLnRzJztcbmltcG9ydCB7IFNiYlByb3BlcnR5V2F0Y2hlckNvbnRyb2xsZXIgfSBmcm9tICcuLi8uLi9jb3JlL2NvbnRyb2xsZXJzL3Byb3BlcnR5LXdhdGNoZXItY29udHJvbGxlci50cyc7XG5pbXBvcnQgdHlwZSB7IERhdGVBZGFwdGVyIH0gZnJvbSAnLi4vLi4vY29yZS9kYXRldGltZS9kYXRlLWFkYXB0ZXIudHMnO1xuaW1wb3J0IHsgZGVmYXVsdERhdGVBZGFwdGVyIH0gZnJvbSAnLi4vLi4vY29yZS9kYXRldGltZS9uYXRpdmUtZGF0ZS1hZGFwdGVyLnRzJztcbmltcG9ydCB7IFNiYkRpc2FibGVkTWl4aW4gfSBmcm9tICcuLi8uLi9jb3JlL21peGlucy9kaXNhYmxlZC1taXhpbi50cyc7XG5pbXBvcnQgdHlwZSB7XG4gIEZvcm1SZXN0b3JlUmVhc29uLFxuICBGb3JtUmVzdG9yZVN0YXRlLFxufSBmcm9tICcuLi8uLi9jb3JlL21peGlucy9mb3JtLWFzc29jaWF0ZWQtbWl4aW4udHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJDYWxlbmRhckVsZW1lbnQgfSBmcm9tICcuLi9jYWxlbmRhci9jYWxlbmRhci5jb21wb25lbnQudHMnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU2JiQ2FsZW5kYXJDZWxsQmFzZUVsZW1lbnQ8VCA9IERhdGU+IGV4dGVuZHMgU2JiRGlzYWJsZWRNaXhpbihcbiAgU2JiQnV0dG9uTGlrZUJhc2VFbGVtZW50LFxuKSB7XG4gIHByb3RlY3RlZCBkYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXIgPSByZWFkQ29uZmlnKCkuZGF0ZXRpbWU/LmRhdGVBZGFwdGVyID8/IGRlZmF1bHREYXRlQWRhcHRlcjtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkZENvbnRyb2xsZXIoXG4gICAgICBuZXcgU2JiUHJvcGVydHlXYXRjaGVyQ29udHJvbGxlcih0aGlzLCAoKSA9PiB0aGlzLmdldFBhcmVudCgpLCB7XG4gICAgICAgIGRhdGVGaWx0ZXI6IChjb21wb25lbnQpID0+IHRoaXMuc2V0RGlzYWJsZWRGaWx0ZXJlZFN0YXRlKGNvbXBvbmVudCksXG4gICAgICAgIG1pbjogKGNvbXBvbmVudCkgPT4gdGhpcy5zZXREaXNhYmxlZEZpbHRlcmVkU3RhdGUoY29tcG9uZW50KSxcbiAgICAgICAgbWF4OiAoY29tcG9uZW50KSA9PiB0aGlzLnNldERpc2FibGVkRmlsdGVyZWRTdGF0ZShjb21wb25lbnQpLFxuICAgICAgICBzZWxlY3RlZDogKGNvbXBvbmVudCkgPT4gdGhpcy5zZXRTZWxlY3RlZFN0YXRlKGNvbXBvbmVudCksXG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IHNldERpc2FibGVkRmlsdGVyZWRTdGF0ZShwYXJlbnQ6IFNiYkNhbGVuZGFyRWxlbWVudDxUPik6IHZvaWQ7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBzZXRTZWxlY3RlZFN0YXRlKHBhcmVudDogU2JiQ2FsZW5kYXJFbGVtZW50PFQ+KTogdm9pZDtcblxuICBwcm90ZWN0ZWQgZ2V0UGFyZW50KCk6IFNiYkNhbGVuZGFyRWxlbWVudDxUPiB8IG51bGwge1xuICAgIHJldHVybiAodGhpcy5nZXRSb290Tm9kZT8uKCkgYXMgU2hhZG93Um9vdCk/Lmhvc3Q/LmNsb3Nlc3Q8U2JiQ2FsZW5kYXJFbGVtZW50PFQ+PihcbiAgICAgICdzYmItY2FsZW5kYXInLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogSW50ZW50aW9uYWxseSBlbXB0eSwgYXMgYnV0dG9ucyBhcmUgbm90IHRhcmdldGVkIGJ5IGZvcm0gcmVzZXQuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGZvcm1SZXNldENhbGxiYWNrKCk6IHZvaWQge31cblxuICAvKipcbiAgICogSW50ZW50aW9uYWxseSBlbXB0eSwgYXMgYnV0dG9ucyBhcmUgbm90IHRhcmdldGVkIGJ5IGZvcm0gcmVzdG9yZS5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZm9ybVN0YXRlUmVzdG9yZUNhbGxiYWNrKFxuICAgIF9zdGF0ZTogRm9ybVJlc3RvcmVTdGF0ZSB8IG51bGwsXG4gICAgX3JlYXNvbjogRm9ybVJlc3RvcmVSZWFzb24sXG4gICk6IHZvaWQge31cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBWUEsSUFBc0IsNkJBQXRCLGNBQW1FLGlCQUNqRSx5QkFDRCxDQUFBO0NBR0MsY0FBQTtBQUNFLFNBQU87QUFIQyxPQUFBLGNBQTJCLFlBQVksQ0FBQyxVQUFVLGVBQWU7QUFJekUsT0FBSyxjQUNILElBQUksNkJBQTZCLFlBQVksS0FBSyxXQUFXLEVBQUU7R0FDN0QsYUFBYSxjQUFjLEtBQUsseUJBQXlCLFVBQVU7R0FDbkUsTUFBTSxjQUFjLEtBQUsseUJBQXlCLFVBQVU7R0FDNUQsTUFBTSxjQUFjLEtBQUsseUJBQXlCLFVBQVU7R0FDNUQsV0FBVyxjQUFjLEtBQUssaUJBQWlCLFVBQUE7R0FDaEQsQ0FBQyxDQUNIOztDQU1PLFlBQVM7QUFDakIsU0FBUSxLQUFLLGVBQThCLEVBQUUsTUFBTSxRQUNqRCxlQUNEOzs7Ozs7Q0FPYSxvQkFBaUI7Ozs7O0NBTWpCLHlCQUNkLFFBQ0EsU0FBMEIifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../src/elements/calendar/common.ts"],"names":[],"mappings":"AAAA,kBAAkB;AAClB,cAAc,wCAAwC,CAAC;AAEvD,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,qDAAqD,CAAC"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { SbbCalendarCellBaseElement } from "./common/calendar-cell-base-element.js";
|
|
2
|
+
import { css } from "lit";
|
|
3
|
+
//#region src/elements/calendar/common/calendar-cell-base-element.scss?lit&inline
|
|
4
|
+
var calendar_cell_base_element_default = css`:host {
|
|
5
|
+
display: block;
|
|
6
|
+
--sbb-calendar-cell-transition-duration: var(
|
|
7
|
+
--sbb-disable-animation-duration,
|
|
8
|
+
var(--sbb-animation-duration-2x)
|
|
9
|
+
);
|
|
10
|
+
--sbb-calendar-cell-border-radius: calc(
|
|
11
|
+
var(--sbb-border-radius-4x) + var(--sbb-calendar-cell-border-width)
|
|
12
|
+
);
|
|
13
|
+
}
|
|
14
|
+
@media (forced-colors: active) {
|
|
15
|
+
:host {
|
|
16
|
+
--sbb-calendar-cell-border: transparent;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
:host(:is(:state(current),[state--current])) {
|
|
21
|
+
--sbb-calendar-cell-font-weight: bold;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
:host(:is(:state(selected),[state--selected])) {
|
|
25
|
+
--sbb-calendar-cell-border: var(--sbb-calendar-cell-border-width) solid var(--sbb-border-color-2);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
:host(:disabled) {
|
|
29
|
+
--sbb-calendar-cell-color: var(--sbb-calendar-cell-disabled-color);
|
|
30
|
+
--sbb-calendar-cell-cursor: unset;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
:host(:focus-visible) {
|
|
34
|
+
outline: 0;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
:host(:not(:disabled):active) {
|
|
38
|
+
--sbb-calendar-cell-background-color: var(--sbb-calendar-cell-background-color-active);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.sbb-action-base {
|
|
42
|
+
display: inline-flex;
|
|
43
|
+
justify-content: center;
|
|
44
|
+
align-items: center;
|
|
45
|
+
position: relative;
|
|
46
|
+
font-size: var(--sbb-calendar-cell-font-size);
|
|
47
|
+
font-weight: var(--sbb-calendar-cell-font-weight);
|
|
48
|
+
letter-spacing: var(--sbb-typo-letter-spacing-text);
|
|
49
|
+
cursor: var(--sbb-calendar-cell-cursor);
|
|
50
|
+
color: var(--sbb-calendar-cell-color);
|
|
51
|
+
border-radius: var(--sbb-calendar-cell-border-radius);
|
|
52
|
+
}
|
|
53
|
+
:host(:focus-visible) .sbb-action-base {
|
|
54
|
+
outline-offset: var(--sbb-focus-outline-offset);
|
|
55
|
+
outline: var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width);
|
|
56
|
+
--sbb-focus-outline-offset: 0.0625rem;
|
|
57
|
+
}
|
|
58
|
+
.sbb-action-base::before {
|
|
59
|
+
content: "";
|
|
60
|
+
position: absolute;
|
|
61
|
+
background-color: var(--sbb-calendar-cell-background-color);
|
|
62
|
+
inset: var(--sbb-calendar-cell-inset);
|
|
63
|
+
border: var(--sbb-calendar-cell-border);
|
|
64
|
+
border-radius: var(--sbb-calendar-cell-border-radius);
|
|
65
|
+
transition-duration: var(--sbb-calendar-cell-transition-duration);
|
|
66
|
+
transition-timing-function: var(--sbb-calendar-cell-transition-easing-function);
|
|
67
|
+
transition-property: background-color;
|
|
68
|
+
z-index: -1;
|
|
69
|
+
}
|
|
70
|
+
@media (forced-colors: active) {
|
|
71
|
+
:host(:not(:disabled):active) .sbb-action-base::before {
|
|
72
|
+
outline-offset: var(--sbb-focus-outline-offset);
|
|
73
|
+
outline: var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width);
|
|
74
|
+
--sbb-focus-outline-style: initial;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
@media (any-hover: hover) {
|
|
78
|
+
:host(:not(:active, :disabled):hover) .sbb-action-base {
|
|
79
|
+
--sbb-calendar-cell-background-color: var(--sbb-calendar-cell-background-color-hover);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
@media (any-hover: hover) and (forced-colors: active) {
|
|
83
|
+
:host(:not(:active, :disabled):hover) .sbb-action-base::before {
|
|
84
|
+
outline-offset: var(--sbb-focus-outline-offset);
|
|
85
|
+
outline: var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width);
|
|
86
|
+
--sbb-focus-outline-offset: 0.0625rem;
|
|
87
|
+
--sbb-focus-outline-style: initial;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
.sbb-calendar-year,
|
|
92
|
+
.sbb-calendar-month {
|
|
93
|
+
height: var(--sbb-calendar-cell-year-month-height);
|
|
94
|
+
width: var(--sbb-calendar-cell-year-month-width);
|
|
95
|
+
padding-block-end: var(--sbb-calendar-cell-padding);
|
|
96
|
+
}
|
|
97
|
+
:host(:is(:state(crossed-out),[state--crossed-out])) .sbb-calendar-year::after,
|
|
98
|
+
:host(:is(:state(crossed-out),[state--crossed-out])) .sbb-calendar-month::after {
|
|
99
|
+
content: "";
|
|
100
|
+
height: var(--sbb-calendar-cell-disabled-height);
|
|
101
|
+
width: var(--sbb-calendar-cell-disabled-width);
|
|
102
|
+
position: absolute;
|
|
103
|
+
background-color: var(--sbb-calendar-cell-disabled-color);
|
|
104
|
+
top: 50%;
|
|
105
|
+
left: 50%;
|
|
106
|
+
transform: translate(-50%, -50%) rotate(-45deg);
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.sbb-calendar-weekday,
|
|
110
|
+
.sbb-calendar-weeknumber {
|
|
111
|
+
--sbb-calendar-cell-font-size: var(--sbb-text-font-size-xs);
|
|
112
|
+
--sbb-calendar-cell-font-weight: normal;
|
|
113
|
+
height: var(--sbb-calendar-day-width);
|
|
114
|
+
width: var(--sbb-calendar-day-width);
|
|
115
|
+
color: var(--sbb-calendar-header-color);
|
|
116
|
+
}`;
|
|
117
|
+
//#endregion
|
|
118
|
+
export { SbbCalendarCellBaseElement, calendar_cell_base_element_default as calendarCellBaseStyle };
|
|
119
|
+
|
|
120
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jYWxlbmRhci9jb21tb24vY2FsZW5kYXItY2VsbC1iYXNlLWVsZW1lbnQuc2Nzcz9saXQmaW5saW5lIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbjpob3N0IHtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgLS1zYmItY2FsZW5kYXItY2VsbC10cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoXG4gICAgLS1zYmItZGlzYWJsZS1hbmltYXRpb24tZHVyYXRpb24sXG4gICAgdmFyKC0tc2JiLWFuaW1hdGlvbi1kdXJhdGlvbi0yeClcbiAgKTtcbiAgLS1zYmItY2FsZW5kYXItY2VsbC1ib3JkZXItcmFkaXVzOiBjYWxjKFxuICAgIHZhcigtLXNiYi1ib3JkZXItcmFkaXVzLTR4KSArIHZhcigtLXNiYi1jYWxlbmRhci1jZWxsLWJvcmRlci13aWR0aClcbiAgKTtcblxuICBAaW5jbHVkZSBzYmIuaWYtZm9yY2VkLWNvbG9ycyB7XG4gICAgLS1zYmItY2FsZW5kYXItY2VsbC1ib3JkZXI6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbjpob3N0KDpzdGF0ZShjdXJyZW50KSkge1xuICAtLXNiYi1jYWxlbmRhci1jZWxsLWZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG46aG9zdCg6c3RhdGUoc2VsZWN0ZWQpKSB7XG4gIC0tc2JiLWNhbGVuZGFyLWNlbGwtYm9yZGVyOiB2YXIoLS1zYmItY2FsZW5kYXItY2VsbC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLXNiYi1ib3JkZXItY29sb3ItMik7XG59XG5cbjpob3N0KDpkaXNhYmxlZCkge1xuICAtLXNiYi1jYWxlbmRhci1jZWxsLWNvbG9yOiB2YXIoLS1zYmItY2FsZW5kYXItY2VsbC1kaXNhYmxlZC1jb2xvcik7XG4gIC0tc2JiLWNhbGVuZGFyLWNlbGwtY3Vyc29yOiB1bnNldDtcbn1cblxuOmhvc3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMDtcbn1cblxuOmhvc3QoOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSkge1xuICAtLXNiYi1jYWxlbmRhci1jZWxsLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1jYWxlbmRhci1jZWxsLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTtcbn1cblxuLnNiYi1hY3Rpb24tYmFzZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IHZhcigtLXNiYi1jYWxlbmRhci1jZWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1zYmItY2FsZW5kYXItY2VsbC1mb250LXdlaWdodCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1zYmItdHlwby1sZXR0ZXItc3BhY2luZy10ZXh0KTtcbiAgY3Vyc29yOiB2YXIoLS1zYmItY2FsZW5kYXItY2VsbC1jdXJzb3IpO1xuICBjb2xvcjogdmFyKC0tc2JiLWNhbGVuZGFyLWNlbGwtY29sb3IpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItY2FsZW5kYXItY2VsbC1ib3JkZXItcmFkaXVzKTtcblxuICA6aG9zdCg6Zm9jdXMtdmlzaWJsZSkgJiB7XG4gICAgQGluY2x1ZGUgc2JiLmZvY3VzLW91dGxpbmU7XG5cbiAgICAtLXNiYi1mb2N1cy1vdXRsaW5lLW9mZnNldDogI3tzYmIucHgtdG8tcmVtLWJ1aWxkKDEpfTtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1jYWxlbmRhci1jZWxsLWJhY2tncm91bmQtY29sb3IpO1xuICAgIGluc2V0OiB2YXIoLS1zYmItY2FsZW5kYXItY2VsbC1pbnNldCk7XG4gICAgYm9yZGVyOiB2YXIoLS1zYmItY2FsZW5kYXItY2VsbC1ib3JkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXNiYi1jYWxlbmRhci1jZWxsLWJvcmRlci1yYWRpdXMpO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IHZhcigtLXNiYi1jYWxlbmRhci1jZWxsLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYmItY2FsZW5kYXItY2VsbC10cmFuc2l0aW9uLWVhc2luZy1mdW5jdGlvbik7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvcjtcbiAgICB6LWluZGV4OiAtMTtcblxuICAgIDpob3N0KDpub3QoOmRpc2FibGVkKTphY3RpdmUpICYge1xuICAgICAgQGluY2x1ZGUgc2JiLmlmLWZvcmNlZC1jb2xvcnMge1xuICAgICAgICBAaW5jbHVkZSBzYmIuZm9jdXMtb3V0bGluZTtcblxuICAgICAgICAvLyBCYXNpY2FsbHkgdGhlIGZvY3VzLW91dGxpbmUgbWl4aW4gaXMgbWFkZSBmb3IgdXNlIHdpdGggZm9jdXMtdmlzaWJsZS5cbiAgICAgICAgLy8gQXMgd2UgdXNlIGl0IGhlcmUgd2l0aCA6YWN0aXZlLCB3ZSBoYXZlIHRvIGVuc3VyZSB0aGF0IHRoZSBvdXRsaW5lIGlzIG5vdCBvdmVycmlkZGVuIHdoZW4gbW91c2Ugb3IgdG91Y2ggaXMgaW4gdXNlLlxuICAgICAgICAtLXNiYi1mb2N1cy1vdXRsaW5lLXN0eWxlOiBpbml0aWFsO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIDpob3N0KDpub3QoOmFjdGl2ZSwgOmRpc2FibGVkKTpob3ZlcikgJiB7XG4gICAgQGluY2x1ZGUgc2JiLmhvdmVyLW1xKCRob3ZlcjogdHJ1ZSkge1xuICAgICAgLS1zYmItY2FsZW5kYXItY2VsbC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItY2FsZW5kYXItY2VsbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgc2JiLmlmLWZvcmNlZC1jb2xvcnMge1xuICAgICAgICAgIEBpbmNsdWRlIHNiYi5mb2N1cy1vdXRsaW5lO1xuXG4gICAgICAgICAgLS1zYmItZm9jdXMtb3V0bGluZS1vZmZzZXQ6ICN7c2JiLnB4LXRvLXJlbS1idWlsZCgxKX07XG5cbiAgICAgICAgICAvLyBCYXNpY2FsbHkgdGhlIGZvY3VzLW91dGxpbmUgbWl4aW4gaXMgbWFkZSBmb3IgdXNlIHdpdGggZm9jdXMtdmlzaWJsZS5cbiAgICAgICAgICAvLyBBcyB3ZSB1c2UgaXQgaGVyZSB3aXRoIGhvdmVyLCB3ZSBoYXZlIHRvIGVuc3VyZSB0aGF0IHRoZSBvdXRsaW5lIGlzIG5vdCBvdmVycmlkZGVuIHdoZW4gbW91c2Ugb3IgdG91Y2ggaXMgaW4gdXNlLlxuICAgICAgICAgIC0tc2JiLWZvY3VzLW91dGxpbmUtc3R5bGU6IGluaXRpYWw7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNiYi1jYWxlbmRhci15ZWFyLFxuLnNiYi1jYWxlbmRhci1tb250aCB7XG4gIGhlaWdodDogdmFyKC0tc2JiLWNhbGVuZGFyLWNlbGwteWVhci1tb250aC1oZWlnaHQpO1xuICB3aWR0aDogdmFyKC0tc2JiLWNhbGVuZGFyLWNlbGwteWVhci1tb250aC13aWR0aCk7XG4gIHBhZGRpbmctYmxvY2stZW5kOiB2YXIoLS1zYmItY2FsZW5kYXItY2VsbC1wYWRkaW5nKTtcblxuICA6aG9zdCg6c3RhdGUoY3Jvc3NlZC1vdXQpKSAmIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogdmFyKC0tc2JiLWNhbGVuZGFyLWNlbGwtZGlzYWJsZWQtaGVpZ2h0KTtcbiAgICAgIHdpZHRoOiB2YXIoLS1zYmItY2FsZW5kYXItY2VsbC1kaXNhYmxlZC13aWR0aCk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItY2FsZW5kYXItY2VsbC1kaXNhYmxlZC1jb2xvcik7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICAgIH1cbiAgfVxufVxuXG4uc2JiLWNhbGVuZGFyLXdlZWtkYXksXG4uc2JiLWNhbGVuZGFyLXdlZWtudW1iZXIge1xuICAtLXNiYi1jYWxlbmRhci1jZWxsLWZvbnQtc2l6ZTogdmFyKC0tc2JiLXRleHQtZm9udC1zaXplLXhzKTtcbiAgLS1zYmItY2FsZW5kYXItY2VsbC1mb250LXdlaWdodDogbm9ybWFsO1xuXG4gIGhlaWdodDogdmFyKC0tc2JiLWNhbGVuZGFyLWRheS13aWR0aCk7XG4gIHdpZHRoOiB2YXIoLS1zYmItY2FsZW5kYXItZGF5LXdpZHRoKTtcbiAgY29sb3I6IHZhcigtLXNiYi1jYWxlbmRhci1oZWFkZXItY29sb3IpO1xufVxuIl0sIm1hcHBpbmdzIjoiIn0=
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
+
import { css, html } from "lit";
|
|
3
|
+
import { property, state } from "lit/decorators.js";
|
|
4
|
+
import { boxSizingStyles } from "./core/styles.js";
|
|
5
|
+
import { SbbCalendarCellBaseElement, calendarCellBaseStyle } from "./calendar/common.js";
|
|
6
|
+
//#region src/elements/calendar/calendar-day/calendar-day.scss?lit&inline
|
|
7
|
+
var calendar_day_default = css`:host {
|
|
8
|
+
--sbb-calendar-day-value-height: var(--sbb-spacing-fixed-6x);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.sbb-calendar-day {
|
|
12
|
+
flex-direction: column;
|
|
13
|
+
justify-content: var(--sbb-calendar-cell-justify-content);
|
|
14
|
+
height: var(--sbb-calendar-day-height);
|
|
15
|
+
width: var(--sbb-calendar-day-width);
|
|
16
|
+
padding: var(--sbb-calendar-cell-padding);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.sbb-calendar-day__value {
|
|
20
|
+
height: var(--sbb-calendar-day-value-height);
|
|
21
|
+
}
|
|
22
|
+
:host(:is(:state(crossed-out),[state--crossed-out])) .sbb-calendar-day__value::after {
|
|
23
|
+
content: "";
|
|
24
|
+
height: var(--sbb-calendar-cell-disabled-height);
|
|
25
|
+
width: var(--sbb-calendar-cell-disabled-width);
|
|
26
|
+
position: absolute;
|
|
27
|
+
background-color: var(--sbb-calendar-cell-disabled-color);
|
|
28
|
+
inset-block-start: var(--sbb-calendar-day-crossed-out-top);
|
|
29
|
+
inset-inline-start: 50%;
|
|
30
|
+
transform: var(--sbb-calendar-day-crossed-out-translate);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.sbb-calendar-day__extra {
|
|
34
|
+
display: var(--sbb-calendar-day-extra-display);
|
|
35
|
+
height: var(--sbb-calendar-day-extra-height);
|
|
36
|
+
padding: var(--sbb-calendar-cell-padding);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
::slotted(*) {
|
|
40
|
+
height: var(--sbb-calendar-day-extra-height);
|
|
41
|
+
}`;
|
|
42
|
+
//#endregion
|
|
43
|
+
//#region src/elements/calendar/calendar-day/calendar-day.component.ts
|
|
44
|
+
/**
|
|
45
|
+
* It displays a single day cell in the `sbb-calendar` component.
|
|
46
|
+
*
|
|
47
|
+
* @slot - Use the unnamed slot to add some custom content to the day.
|
|
48
|
+
*/
|
|
49
|
+
var SbbCalendarDayElement = (() => {
|
|
50
|
+
let _classSuper = SbbCalendarCellBaseElement;
|
|
51
|
+
let _instanceExtraInitializers = [];
|
|
52
|
+
let _set_slot_decorators;
|
|
53
|
+
let _set_value_decorators;
|
|
54
|
+
return class SbbCalendarDayElement extends _classSuper {
|
|
55
|
+
constructor() {
|
|
56
|
+
super(...arguments);
|
|
57
|
+
this._value = (__runInitializers(this, _instanceExtraInitializers), null);
|
|
58
|
+
}
|
|
59
|
+
static {
|
|
60
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
61
|
+
_set_slot_decorators = [property()];
|
|
62
|
+
_set_value_decorators = [state()];
|
|
63
|
+
__esDecorate(this, null, _set_slot_decorators, {
|
|
64
|
+
kind: "setter",
|
|
65
|
+
name: "slot",
|
|
66
|
+
static: false,
|
|
67
|
+
private: false,
|
|
68
|
+
access: {
|
|
69
|
+
has: (obj) => "slot" in obj,
|
|
70
|
+
set: (obj, value) => {
|
|
71
|
+
obj.slot = value;
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
metadata: _metadata
|
|
75
|
+
}, null, _instanceExtraInitializers);
|
|
76
|
+
__esDecorate(this, null, _set_value_decorators, {
|
|
77
|
+
kind: "setter",
|
|
78
|
+
name: "value",
|
|
79
|
+
static: false,
|
|
80
|
+
private: false,
|
|
81
|
+
access: {
|
|
82
|
+
has: (obj) => "value" in obj,
|
|
83
|
+
set: (obj, value) => {
|
|
84
|
+
obj.value = value;
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
metadata: _metadata
|
|
88
|
+
}, null, _instanceExtraInitializers);
|
|
89
|
+
if (_metadata) Object.defineProperty(this, Symbol.metadata, {
|
|
90
|
+
enumerable: true,
|
|
91
|
+
configurable: true,
|
|
92
|
+
writable: true,
|
|
93
|
+
value: _metadata
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
static {
|
|
97
|
+
this.elementName = "sbb-calendar-day";
|
|
98
|
+
}
|
|
99
|
+
static {
|
|
100
|
+
this.styles = [
|
|
101
|
+
boxSizingStyles,
|
|
102
|
+
calendarCellBaseStyle,
|
|
103
|
+
calendar_day_default
|
|
104
|
+
];
|
|
105
|
+
}
|
|
106
|
+
set slot(value) {
|
|
107
|
+
super.slot = value;
|
|
108
|
+
this.value = this.dateAdapter.deserialize(value);
|
|
109
|
+
}
|
|
110
|
+
get slot() {
|
|
111
|
+
return super.slot;
|
|
112
|
+
}
|
|
113
|
+
/** Value of the calendar-day element. */
|
|
114
|
+
set value(value) {
|
|
115
|
+
const date = this.dateAdapter.getValidDateOrNull(this.dateAdapter.deserialize(value));
|
|
116
|
+
if (date) {
|
|
117
|
+
this._value = date;
|
|
118
|
+
const isToday = this.dateAdapter.sameDate(date, this.dateAdapter.today());
|
|
119
|
+
this.toggleState("current", isToday);
|
|
120
|
+
this.internals.ariaCurrent = isToday ? "date" : null;
|
|
121
|
+
this.internals.ariaLabel = this.dateAdapter.getAccessibilityFormatDate(date);
|
|
122
|
+
const parent = this.getParent();
|
|
123
|
+
if (parent) {
|
|
124
|
+
this.setDisabledFilteredState(parent);
|
|
125
|
+
this.setSelectedState(parent);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
get value() {
|
|
130
|
+
return this._value;
|
|
131
|
+
}
|
|
132
|
+
connectedCallback() {
|
|
133
|
+
super.connectedCallback();
|
|
134
|
+
this.tabIndex = -1;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* The component is used as the default day cell within the `sbb-calendar`,
|
|
138
|
+
* or, if extra content is needed, it can be slotted.
|
|
139
|
+
*/
|
|
140
|
+
getParent() {
|
|
141
|
+
return this.closest?.("sbb-calendar") ?? this.getRootNode?.()?.host?.closest("sbb-calendar");
|
|
142
|
+
}
|
|
143
|
+
setSelectedState(parent) {
|
|
144
|
+
const selected = parent.multiple ? parent.selected.some((selDay) => this.dateAdapter.sameDate(this.value, selDay)) : !!parent.selected && this.dateAdapter.compareDate(this.value, parent.selected) === 0;
|
|
145
|
+
this.toggleState("selected", selected);
|
|
146
|
+
this.internals.ariaPressed = String(selected);
|
|
147
|
+
}
|
|
148
|
+
setDisabledFilteredState(parent) {
|
|
149
|
+
const isFilteredOut = !this._isActiveDate(parent.dateFilter);
|
|
150
|
+
const isOutOfRange = !this._isDayInRange(parent.min, parent.max);
|
|
151
|
+
this.disabled = isFilteredOut || isOutOfRange;
|
|
152
|
+
this.internals.ariaDisabled = String(this.disabled);
|
|
153
|
+
this.toggleState("crossed-out", isFilteredOut && !isOutOfRange);
|
|
154
|
+
}
|
|
155
|
+
_isActiveDate(dateFilter) {
|
|
156
|
+
return dateFilter?.(this.value) ?? true;
|
|
157
|
+
}
|
|
158
|
+
_isDayInRange(min, max) {
|
|
159
|
+
if (!min && !max) return true;
|
|
160
|
+
return this.dateAdapter.sameDate(this.value, this.dateAdapter.clampDate(this.value, min, max));
|
|
161
|
+
}
|
|
162
|
+
_handleSlotchange(e) {
|
|
163
|
+
this.internals.ariaDescribedByElements = e.target.assignedElements();
|
|
164
|
+
}
|
|
165
|
+
renderTemplate() {
|
|
166
|
+
return html` <span class="sbb-calendar-day__value" aria-hidden="true">
|
|
167
|
+
${this.dateAdapter.getDate(this.value)}
|
|
168
|
+
</span>
|
|
169
|
+
<span class="sbb-calendar-day__extra">
|
|
170
|
+
<slot @slotchange=${(event) => this._handleSlotchange(event)}></slot>
|
|
171
|
+
</span>`;
|
|
172
|
+
}
|
|
173
|
+
};
|
|
174
|
+
})();
|
|
175
|
+
//#endregion
|
|
176
|
+
export { SbbCalendarDayElement as t };
|
|
177
|
+
|
|
178
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItZGF5LmNvbXBvbmVudC1CcnowV3lhaS5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvY2FsZW5kYXIvY2FsZW5kYXItZGF5L2NhbGVuZGFyLWRheS5zY3NzP2xpdCZpbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvY2FsZW5kYXIvY2FsZW5kYXItZGF5L2NhbGVuZGFyLWRheS5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnLi4vLi4vY29yZS9zdHlsZXMnIGFzIHNiYjtcblxuOmhvc3Qge1xuICAtLXNiYi1jYWxlbmRhci1kYXktdmFsdWUtaGVpZ2h0OiB2YXIoLS1zYmItc3BhY2luZy1maXhlZC02eCk7XG59XG5cbi5zYmItY2FsZW5kYXItZGF5IHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiB2YXIoLS1zYmItY2FsZW5kYXItY2VsbC1qdXN0aWZ5LWNvbnRlbnQpO1xuICBoZWlnaHQ6IHZhcigtLXNiYi1jYWxlbmRhci1kYXktaGVpZ2h0KTtcbiAgd2lkdGg6IHZhcigtLXNiYi1jYWxlbmRhci1kYXktd2lkdGgpO1xuICBwYWRkaW5nOiB2YXIoLS1zYmItY2FsZW5kYXItY2VsbC1wYWRkaW5nKTtcbn1cblxuLnNiYi1jYWxlbmRhci1kYXlfX3ZhbHVlIHtcbiAgaGVpZ2h0OiB2YXIoLS1zYmItY2FsZW5kYXItZGF5LXZhbHVlLWhlaWdodCk7XG5cbiAgOmhvc3QoOnN0YXRlKGNyb3NzZWQtb3V0KSkgJiB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IHZhcigtLXNiYi1jYWxlbmRhci1jZWxsLWRpc2FibGVkLWhlaWdodCk7XG4gICAgICB3aWR0aDogdmFyKC0tc2JiLWNhbGVuZGFyLWNlbGwtZGlzYWJsZWQtd2lkdGgpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLWNhbGVuZGFyLWNlbGwtZGlzYWJsZWQtY29sb3IpO1xuICAgICAgaW5zZXQtYmxvY2stc3RhcnQ6IHZhcigtLXNiYi1jYWxlbmRhci1kYXktY3Jvc3NlZC1vdXQtdG9wKTtcbiAgICAgIGluc2V0LWlubGluZS1zdGFydDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB2YXIoLS1zYmItY2FsZW5kYXItZGF5LWNyb3NzZWQtb3V0LXRyYW5zbGF0ZSk7XG4gICAgfVxuICB9XG59XG5cbi5zYmItY2FsZW5kYXItZGF5X19leHRyYSB7XG4gIGRpc3BsYXk6IHZhcigtLXNiYi1jYWxlbmRhci1kYXktZXh0cmEtZGlzcGxheSk7XG4gIGhlaWdodDogdmFyKC0tc2JiLWNhbGVuZGFyLWRheS1leHRyYS1oZWlnaHQpO1xuICBwYWRkaW5nOiB2YXIoLS1zYmItY2FsZW5kYXItY2VsbC1wYWRkaW5nKTtcbn1cblxuOjpzbG90dGVkKCopIHtcbiAgaGVpZ2h0OiB2YXIoLS1zYmItY2FsZW5kYXItZGF5LWV4dHJhLWhlaWdodCk7XG59XG4iLCJpbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5LCBzdGF0ZSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgYm94U2l6aW5nU3R5bGVzIH0gZnJvbSAnLi4vLi4vY29yZS9zdHlsZXMudHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJDYWxlbmRhckVsZW1lbnQgfSBmcm9tICcuLi9jYWxlbmRhci9jYWxlbmRhci5jb21wb25lbnQudHMnO1xuaW1wb3J0IHsgU2JiQ2FsZW5kYXJDZWxsQmFzZUVsZW1lbnQsIGNhbGVuZGFyQ2VsbEJhc2VTdHlsZSB9IGZyb20gJy4uL2NvbW1vbi50cyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2NhbGVuZGFyLWRheS5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgc2luZ2xlIGRheSBjZWxsIGluIHRoZSBgc2JiLWNhbGVuZGFyYCBjb21wb25lbnQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgc29tZSBjdXN0b20gY29udGVudCB0byB0aGUgZGF5LlxuICovXG5leHBvcnQgY2xhc3MgU2JiQ2FsZW5kYXJEYXlFbGVtZW50PFQgPSBEYXRlPiBleHRlbmRzIFNiYkNhbGVuZGFyQ2VsbEJhc2VFbGVtZW50PFQ+IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSBlbGVtZW50TmFtZTogc3RyaW5nID0gJ3NiYi1jYWxlbmRhci1kYXknO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbYm94U2l6aW5nU3R5bGVzLCBjYWxlbmRhckNlbGxCYXNlU3R5bGUsIHN0eWxlXTtcblxuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgb3ZlcnJpZGUgc2V0IHNsb3QodmFsdWU6IHN0cmluZykge1xuICAgIHN1cGVyLnNsb3QgPSB2YWx1ZTtcbiAgICB0aGlzLnZhbHVlID0gdGhpcy5kYXRlQWRhcHRlci5kZXNlcmlhbGl6ZSh2YWx1ZSk7XG4gIH1cbiAgcHVibGljIG92ZXJyaWRlIGdldCBzbG90KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHN1cGVyLnNsb3Q7XG4gIH1cblxuICAvKiogVmFsdWUgb2YgdGhlIGNhbGVuZGFyLWRheSBlbGVtZW50LiAqL1xuICBAc3RhdGUoKVxuICBwdWJsaWMgc2V0IHZhbHVlKHZhbHVlOiBUIHwgbnVsbCkge1xuICAgIGNvbnN0IGRhdGUgPSB0aGlzLmRhdGVBZGFwdGVyLmdldFZhbGlkRGF0ZU9yTnVsbCh0aGlzLmRhdGVBZGFwdGVyLmRlc2VyaWFsaXplKHZhbHVlKSk7XG4gICAgaWYgKGRhdGUpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gZGF0ZTtcbiAgICAgIGNvbnN0IGlzVG9kYXkgPSB0aGlzLmRhdGVBZGFwdGVyLnNhbWVEYXRlKGRhdGUsIHRoaXMuZGF0ZUFkYXB0ZXIudG9kYXkoKSk7XG4gICAgICB0aGlzLnRvZ2dsZVN0YXRlKCdjdXJyZW50JywgaXNUb2RheSk7XG4gICAgICB0aGlzLmludGVybmFscy5hcmlhQ3VycmVudCA9IGlzVG9kYXkgPyAnZGF0ZScgOiBudWxsO1xuICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYUxhYmVsID0gdGhpcy5kYXRlQWRhcHRlci5nZXRBY2Nlc3NpYmlsaXR5Rm9ybWF0RGF0ZShkYXRlKTtcbiAgICAgIGNvbnN0IHBhcmVudCA9IHRoaXMuZ2V0UGFyZW50KCk7XG4gICAgICBpZiAocGFyZW50KSB7XG4gICAgICAgIHRoaXMuc2V0RGlzYWJsZWRGaWx0ZXJlZFN0YXRlKHBhcmVudCk7XG4gICAgICAgIHRoaXMuc2V0U2VsZWN0ZWRTdGF0ZShwYXJlbnQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBwdWJsaWMgZ2V0IHZhbHVlKCk6IFQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gIH1cbiAgcHJpdmF0ZSBfdmFsdWU6IFQgfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLnRhYkluZGV4ID0gLTE7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGNvbXBvbmVudCBpcyB1c2VkIGFzIHRoZSBkZWZhdWx0IGRheSBjZWxsIHdpdGhpbiB0aGUgYHNiYi1jYWxlbmRhcmAsXG4gICAqIG9yLCBpZiBleHRyYSBjb250ZW50IGlzIG5lZWRlZCwgaXQgY2FuIGJlIHNsb3R0ZWQuXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZ2V0UGFyZW50KCk6IFNiYkNhbGVuZGFyRWxlbWVudDxUPiB8IG51bGwge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmNsb3Nlc3Q/LjxTYmJDYWxlbmRhckVsZW1lbnQ8VD4+KCdzYmItY2FsZW5kYXInKSA/P1xuICAgICAgKHRoaXMuZ2V0Um9vdE5vZGU/LigpIGFzIFNoYWRvd1Jvb3QpPy5ob3N0Py5jbG9zZXN0PFNiYkNhbGVuZGFyRWxlbWVudDxUPj4oJ3NiYi1jYWxlbmRhcicpXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRTZWxlY3RlZFN0YXRlKHBhcmVudDogU2JiQ2FsZW5kYXJFbGVtZW50PFQ+KTogdm9pZCB7XG4gICAgY29uc3Qgc2VsZWN0ZWQgPSBwYXJlbnQubXVsdGlwbGVcbiAgICAgID8gKHBhcmVudC5zZWxlY3RlZCBhcyBEYXRlW10pLnNvbWUoKHNlbERheSkgPT4gdGhpcy5kYXRlQWRhcHRlci5zYW1lRGF0ZSh0aGlzLnZhbHVlLCBzZWxEYXkpKVxuICAgICAgOiAhIXBhcmVudC5zZWxlY3RlZCAmJiB0aGlzLmRhdGVBZGFwdGVyLmNvbXBhcmVEYXRlKHRoaXMudmFsdWUsIHBhcmVudC5zZWxlY3RlZCkgPT09IDA7XG4gICAgdGhpcy50b2dnbGVTdGF0ZSgnc2VsZWN0ZWQnLCBzZWxlY3RlZCk7XG4gICAgdGhpcy5pbnRlcm5hbHMuYXJpYVByZXNzZWQgPSBTdHJpbmcoc2VsZWN0ZWQpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNldERpc2FibGVkRmlsdGVyZWRTdGF0ZShwYXJlbnQ6IFNiYkNhbGVuZGFyRWxlbWVudDxUPik6IHZvaWQge1xuICAgIGNvbnN0IGlzRmlsdGVyZWRPdXQgPSAhdGhpcy5faXNBY3RpdmVEYXRlKHBhcmVudC5kYXRlRmlsdGVyKTtcbiAgICBjb25zdCBpc091dE9mUmFuZ2UgPSAhdGhpcy5faXNEYXlJblJhbmdlKHBhcmVudC5taW4sIHBhcmVudC5tYXgpO1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0ZpbHRlcmVkT3V0IHx8IGlzT3V0T2ZSYW5nZTtcbiAgICB0aGlzLmludGVybmFscy5hcmlhRGlzYWJsZWQgPSBTdHJpbmcodGhpcy5kaXNhYmxlZCk7XG4gICAgdGhpcy50b2dnbGVTdGF0ZSgnY3Jvc3NlZC1vdXQnLCBpc0ZpbHRlcmVkT3V0ICYmICFpc091dE9mUmFuZ2UpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNBY3RpdmVEYXRlKGRhdGVGaWx0ZXI6ICgoZGF0ZTogVCB8IG51bGwpID0+IGJvb2xlYW4pIHwgbnVsbCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBkYXRlRmlsdGVyPy4odGhpcy52YWx1ZSkgPz8gdHJ1ZTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzRGF5SW5SYW5nZShtaW46IFQgfCBudWxsLCBtYXg6IFQgfCBudWxsKTogYm9vbGVhbiB7XG4gICAgaWYgKCFtaW4gJiYgIW1heCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmRhdGVBZGFwdGVyLnNhbWVEYXRlKHRoaXMudmFsdWUsIHRoaXMuZGF0ZUFkYXB0ZXIuY2xhbXBEYXRlKHRoaXMudmFsdWUsIG1pbiwgbWF4KSk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVTbG90Y2hhbmdlKGU6IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5pbnRlcm5hbHMuYXJpYURlc2NyaWJlZEJ5RWxlbWVudHMgPSAoZS50YXJnZXQgYXMgSFRNTFNsb3RFbGVtZW50KS5hc3NpZ25lZEVsZW1lbnRzKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYCA8c3BhbiBjbGFzcz1cInNiYi1jYWxlbmRhci1kYXlfX3ZhbHVlXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XG4gICAgICAgICR7dGhpcy5kYXRlQWRhcHRlci5nZXREYXRlKHRoaXMudmFsdWUpfVxuICAgICAgPC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItY2FsZW5kYXItZGF5X19leHRyYVwiPlxuICAgICAgICA8c2xvdCBAc2xvdGNoYW5nZT0keyhldmVudDogRXZlbnQpID0+IHRoaXMuX2hhbmRsZVNsb3RjaGFuZ2UoZXZlbnQpfT48L3Nsb3Q+XG4gICAgICA8L3NwYW4+YDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWNhbGVuZGFyLWRheSc6IFNiYkNhbGVuZGFyRGF5RWxlbWVudDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNlYSwrQkFBcUI7bUJBQW1COzs7O2NBQXhDLDhCQUF3QyxZQUE2Qjs7O0FBaUN4RSxRQUFBLFVBakNHLGtCQUFBLE1BQUEsMkJBQXFCLEVBaUNMOzs7OzJCQTdCMUIsVUFBVSxDQUFBOzRCQVVWLE9BQU8sQ0FBQTtBQVRSLGdCQUFBLE1BQUEsTUFBQSxzQkFBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLFVBQUE7S0FBQSxNQUFBLEtBQUEsVUFBQTtBQUFBLFVBQW9CLE9BQUk7O0tBQUE7SUFBQSxVQUFBO0lBQUEsRUFBQSxNQUFBLDJCQUFBO0FBVXhCLGdCQUFBLE1BQUEsTUFBQSx1QkFBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLFdBQUE7S0FBQSxNQUFBLEtBQUEsVUFBQTtBQUFBLFVBQVcsUUFBSzs7S0FBQTtJQUFBLFVBQUE7SUFBQSxFQUFBLE1BQUEsMkJBQUE7Ozs7Ozs7OztBQWRnQixRQUFBLGNBQXNCOzs7QUFDL0IsUUFBQSxTQUF5QjtJQUFDO0lBQWlCO0lBQXVCO0lBQU07O0VBRy9GLElBQW9CLEtBQUssT0FBYTtBQUNwQyxTQUFNLE9BQU87QUFDYixRQUFLLFFBQVEsS0FBSyxZQUFZLFlBQVksTUFBTTs7RUFFbEQsSUFBb0IsT0FBSTtBQUN0QixVQUFPLE1BQU07OztFQUtmLElBQVcsTUFBTSxPQUFlO0dBQzlCLE1BQU0sT0FBTyxLQUFLLFlBQVksbUJBQW1CLEtBQUssWUFBWSxZQUFZLE1BQU0sQ0FBQztBQUNyRixPQUFJLE1BQU07QUFDUixTQUFLLFNBQVM7SUFDZCxNQUFNLFVBQVUsS0FBSyxZQUFZLFNBQVMsTUFBTSxLQUFLLFlBQVksT0FBTyxDQUFDO0FBQ3pFLFNBQUssWUFBWSxXQUFXLFFBQVE7QUFDcEMsU0FBSyxVQUFVLGNBQWMsVUFBVSxTQUFTO0FBQ2hELFNBQUssVUFBVSxZQUFZLEtBQUssWUFBWSwyQkFBMkIsS0FBSztJQUM1RSxNQUFNLFNBQVMsS0FBSyxXQUFXO0FBQy9CLFFBQUksUUFBUTtBQUNWLFVBQUsseUJBQXlCLE9BQU87QUFDckMsVUFBSyxpQkFBaUIsT0FBTzs7OztFQUluQyxJQUFXLFFBQUs7QUFDZCxVQUFPLEtBQUs7O0VBSUUsb0JBQWlCO0FBQy9CLFNBQU0sbUJBQW1CO0FBQ3pCLFFBQUssV0FBVzs7Ozs7O0VBT0MsWUFBUztBQUMxQixVQUNFLEtBQUssVUFBaUMsZUFBZSxJQUNwRCxLQUFLLGVBQThCLEVBQUUsTUFBTSxRQUErQixlQUFlOztFQUlwRixpQkFBaUIsUUFBNkI7R0FDdEQsTUFBTSxXQUFXLE9BQU8sV0FDbkIsT0FBTyxTQUFvQixNQUFNLFdBQVcsS0FBSyxZQUFZLFNBQVMsS0FBSyxPQUFPLE9BQU8sQ0FBQyxHQUMzRixDQUFDLENBQUMsT0FBTyxZQUFZLEtBQUssWUFBWSxZQUFZLEtBQUssT0FBTyxPQUFPLFNBQVMsS0FBSztBQUN2RixRQUFLLFlBQVksWUFBWSxTQUFTO0FBQ3RDLFFBQUssVUFBVSxjQUFjLE9BQU8sU0FBUzs7RUFHckMseUJBQXlCLFFBQTZCO0dBQzlELE1BQU0sZ0JBQWdCLENBQUMsS0FBSyxjQUFjLE9BQU8sV0FBVztHQUM1RCxNQUFNLGVBQWUsQ0FBQyxLQUFLLGNBQWMsT0FBTyxLQUFLLE9BQU8sSUFBSTtBQUNoRSxRQUFLLFdBQVcsaUJBQWlCO0FBQ2pDLFFBQUssVUFBVSxlQUFlLE9BQU8sS0FBSyxTQUFTO0FBQ25ELFFBQUssWUFBWSxlQUFlLGlCQUFpQixDQUFDLGFBQWE7O0VBR3pELGNBQWMsWUFBZ0Q7QUFDcEUsVUFBTyxhQUFhLEtBQUssTUFBTSxJQUFJOztFQUc3QixjQUFjLEtBQWUsS0FBYTtBQUNoRCxPQUFJLENBQUMsT0FBTyxDQUFDLElBQ1gsUUFBTztBQUVULFVBQU8sS0FBSyxZQUFZLFNBQVMsS0FBSyxPQUFPLEtBQUssWUFBWSxVQUFVLEtBQUssT0FBTyxLQUFLLElBQUksQ0FBQzs7RUFHeEYsa0JBQWtCLEdBQVE7QUFDaEMsUUFBSyxVQUFVLDBCQUEyQixFQUFFLE9BQTJCLGtCQUFrQjs7RUFHeEUsaUJBQWM7QUFDL0IsVUFBTyxJQUFJO1VBQ0wsS0FBSyxZQUFZLFFBQVEsS0FBSyxNQUFNLENBQUE7Ozs2QkFHakIsVUFBaUIsS0FBSyxrQkFBa0IsTUFBTSxDQUFBIn0=
|