@sbb-esta/lyne-elements 3.9.0 → 3.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +1 -1
  2. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +1 -1
  3. package/calendar/calendar.component.d.ts +2 -1
  4. package/calendar/calendar.component.d.ts.map +1 -1
  5. package/calendar/calendar.component.js +211 -225
  6. package/carousel/carousel/carousel.component.d.ts.map +1 -1
  7. package/carousel/carousel/carousel.component.js +5 -5
  8. package/core/controllers/escapable-overlay-controller.d.ts +3 -0
  9. package/core/controllers/escapable-overlay-controller.d.ts.map +1 -1
  10. package/core/controllers/overlay-position-controller.d.ts +60 -0
  11. package/core/controllers/overlay-position-controller.d.ts.map +1 -0
  12. package/core/controllers/overlay-position-controller.js +224 -0
  13. package/core/controllers.d.ts +1 -0
  14. package/core/controllers.d.ts.map +1 -1
  15. package/core/controllers.js +12 -10
  16. package/core/styles/core.scss +27 -2
  17. package/core.css +21 -2
  18. package/custom-elements.json +2238 -769
  19. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +7 -1
  20. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +2 -1
  21. package/development/calendar/calendar.component.d.ts +2 -1
  22. package/development/calendar/calendar.component.d.ts.map +1 -1
  23. package/development/calendar/calendar.component.js +20 -36
  24. package/development/carousel/carousel/carousel.component.d.ts.map +1 -1
  25. package/development/carousel/carousel/carousel.component.js +2 -2
  26. package/development/core/controllers/escapable-overlay-controller.d.ts +3 -0
  27. package/development/core/controllers/escapable-overlay-controller.d.ts.map +1 -1
  28. package/development/core/controllers/escapable-overlay-controller.js +1 -1
  29. package/development/core/controllers/overlay-position-controller.d.ts +60 -0
  30. package/development/core/controllers/overlay-position-controller.d.ts.map +1 -0
  31. package/development/core/controllers/overlay-position-controller.js +306 -0
  32. package/development/core/controllers.d.ts +1 -0
  33. package/development/core/controllers.d.ts.map +1 -1
  34. package/development/core/controllers.js +3 -1
  35. package/development/mini-calendar/mini-calendar/mini-calendar.component.d.ts +35 -0
  36. package/development/mini-calendar/mini-calendar/mini-calendar.component.d.ts.map +1 -0
  37. package/development/mini-calendar/mini-calendar/mini-calendar.component.js +201 -0
  38. package/development/mini-calendar/mini-calendar-day/mini-calendar-day.component.d.ts +23 -0
  39. package/development/mini-calendar/mini-calendar-day/mini-calendar-day.component.d.ts.map +1 -0
  40. package/development/mini-calendar/mini-calendar-day/mini-calendar-day.component.js +181 -0
  41. package/development/mini-calendar/mini-calendar-day.d.ts +5 -0
  42. package/development/mini-calendar/mini-calendar-day.d.ts.map +1 -0
  43. package/development/mini-calendar/mini-calendar-day.js +5 -0
  44. package/development/mini-calendar/mini-calendar-month/mini-calendar-month.component.d.ts +25 -0
  45. package/development/mini-calendar/mini-calendar-month/mini-calendar-month.component.d.ts.map +1 -0
  46. package/development/mini-calendar/mini-calendar-month/mini-calendar-month.component.js +123 -0
  47. package/development/mini-calendar/mini-calendar-month.d.ts +5 -0
  48. package/development/mini-calendar/mini-calendar-month.d.ts.map +1 -0
  49. package/development/mini-calendar/mini-calendar-month.js +5 -0
  50. package/development/mini-calendar/mini-calendar.d.ts +5 -0
  51. package/development/mini-calendar/mini-calendar.d.ts.map +1 -0
  52. package/development/mini-calendar/mini-calendar.js +5 -0
  53. package/development/mini-calendar.d.ts +7 -0
  54. package/development/mini-calendar.d.ts.map +1 -0
  55. package/development/mini-calendar.js +9 -0
  56. package/development/paginator/common/paginator-common.d.ts.map +1 -1
  57. package/development/paginator/common/paginator-common.js +14 -3
  58. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts +4 -1
  59. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts.map +1 -1
  60. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.js +5 -1
  61. package/development/sidebar/icon-sidebar-link/icon-sidebar-link.component.d.ts +4 -1
  62. package/development/sidebar/icon-sidebar-link/icon-sidebar-link.component.d.ts.map +1 -1
  63. package/development/sidebar/icon-sidebar-link/icon-sidebar-link.component.js +5 -1
  64. package/development/tabs/tab/tab.component.d.ts +9 -0
  65. package/development/tabs/tab/tab.component.d.ts.map +1 -1
  66. package/development/tabs/tab/tab.component.js +48 -7
  67. package/development/tabs/tab-group/tab-group.component.d.ts +7 -3
  68. package/development/tabs/tab-group/tab-group.component.d.ts.map +1 -1
  69. package/development/tabs/tab-group/tab-group.component.js +19 -39
  70. package/development/tabs/tab-label/tab-label.component.d.ts.map +1 -1
  71. package/development/tabs/tab-label/tab-label.component.js +4 -3
  72. package/development/tooltip/tooltip.component.d.ts +11 -4
  73. package/development/tooltip/tooltip.component.d.ts.map +1 -1
  74. package/development/tooltip/tooltip.component.js +57 -78
  75. package/index.d.ts +6 -0
  76. package/index.js +6 -0
  77. package/mini-calendar/mini-calendar/mini-calendar.component.d.ts +35 -0
  78. package/mini-calendar/mini-calendar/mini-calendar.component.d.ts.map +1 -0
  79. package/mini-calendar/mini-calendar/mini-calendar.component.js +133 -0
  80. package/mini-calendar/mini-calendar-day/mini-calendar-day.component.d.ts +23 -0
  81. package/mini-calendar/mini-calendar-day/mini-calendar-day.component.d.ts.map +1 -0
  82. package/mini-calendar/mini-calendar-day/mini-calendar-day.component.js +66 -0
  83. package/mini-calendar/mini-calendar-day.d.ts +5 -0
  84. package/mini-calendar/mini-calendar-day.d.ts.map +1 -0
  85. package/mini-calendar/mini-calendar-day.js +4 -0
  86. package/mini-calendar/mini-calendar-month/mini-calendar-month.component.d.ts +25 -0
  87. package/mini-calendar/mini-calendar-month/mini-calendar-month.component.d.ts.map +1 -0
  88. package/mini-calendar/mini-calendar-month/mini-calendar-month.component.js +59 -0
  89. package/mini-calendar/mini-calendar-month.d.ts +5 -0
  90. package/mini-calendar/mini-calendar-month.d.ts.map +1 -0
  91. package/mini-calendar/mini-calendar-month.js +4 -0
  92. package/mini-calendar/mini-calendar.d.ts +5 -0
  93. package/mini-calendar/mini-calendar.d.ts.map +1 -0
  94. package/mini-calendar/mini-calendar.js +4 -0
  95. package/mini-calendar.d.ts +7 -0
  96. package/mini-calendar.d.ts.map +1 -0
  97. package/mini-calendar.js +8 -0
  98. package/off-brand-theme.css +21 -2
  99. package/package.json +21 -1
  100. package/paginator/common/paginator-common.d.ts.map +1 -1
  101. package/paginator/common/paginator-common.js +30 -25
  102. package/safety-theme.css +21 -2
  103. package/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts +4 -1
  104. package/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts.map +1 -1
  105. package/sidebar/icon-sidebar-button/icon-sidebar-button.component.js +9 -6
  106. package/sidebar/icon-sidebar-link/icon-sidebar-link.component.d.ts +4 -1
  107. package/sidebar/icon-sidebar-link/icon-sidebar-link.component.d.ts.map +1 -1
  108. package/sidebar/icon-sidebar-link/icon-sidebar-link.component.js +13 -10
  109. package/standard-theme.css +21 -2
  110. package/tabs/tab/tab.component.d.ts +9 -0
  111. package/tabs/tab/tab.component.d.ts.map +1 -1
  112. package/tabs/tab/tab.component.js +37 -18
  113. package/tabs/tab-group/tab-group.component.d.ts +7 -3
  114. package/tabs/tab-group/tab-group.component.d.ts.map +1 -1
  115. package/tabs/tab-group/tab-group.component.js +51 -52
  116. package/tabs/tab-label/tab-label.component.d.ts.map +1 -1
  117. package/tabs/tab-label/tab-label.component.js +12 -12
  118. package/tooltip/tooltip.component.d.ts +11 -4
  119. package/tooltip/tooltip.component.d.ts.map +1 -1
  120. package/tooltip/tooltip.component.js +60 -84
@@ -0,0 +1,201 @@
1
+ var __typeError = (msg) => {
2
+ throw TypeError(msg);
3
+ };
4
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
5
+ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
6
+ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
7
+ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
8
+ import { __esDecorate, __runInitializers } from "tslib";
9
+ import { MutationController } from "@lit-labs/observers/mutation-controller.js";
10
+ import { css, LitElement, html } from "lit";
11
+ import { customElement, property } from "lit/decorators.js";
12
+ import { isArrowKeyOrPageKeysPressed } from "../../core/a11y.js";
13
+ import { readConfig } from "../../core/config/config.js";
14
+ import { defaultDateAdapter } from "../../core/datetime/native-date-adapter.js";
15
+ const style = css`*,
16
+ ::before,
17
+ ::after {
18
+ box-sizing: border-box;
19
+ }
20
+
21
+ :host {
22
+ display: block;
23
+ }`;
24
+ let SbbMiniCalendarElement = (() => {
25
+ var _orientation_accessor_storage, _a;
26
+ let _classDecorators = [customElement("sbb-mini-calendar")];
27
+ let _classDescriptor;
28
+ let _classExtraInitializers = [];
29
+ let _classThis;
30
+ let _classSuper = LitElement;
31
+ let _orientation_decorators;
32
+ let _orientation_initializers = [];
33
+ let _orientation_extraInitializers = [];
34
+ _a = class extends _classSuper {
35
+ constructor() {
36
+ super();
37
+ __privateAdd(this, _orientation_accessor_storage);
38
+ __privateSet(this, _orientation_accessor_storage, __runInitializers(this, _orientation_initializers, "horizontal"));
39
+ this._keydownAbortController = (__runInitializers(this, _orientation_extraInitializers), null);
40
+ this._dateAdapter = readConfig().datetime?.dateAdapter ?? defaultDateAdapter;
41
+ this.addController(new MutationController(this, {
42
+ config: { childList: true, subtree: true },
43
+ callback: () => this._setMonthsShowYear()
44
+ }));
45
+ }
46
+ /** The orientation of days in the calendar. */
47
+ get orientation() {
48
+ return __privateGet(this, _orientation_accessor_storage);
49
+ }
50
+ set orientation(value) {
51
+ __privateSet(this, _orientation_accessor_storage, value);
52
+ }
53
+ _getMiniCalendarMonths() {
54
+ return Array.from(this.querySelectorAll?.("sbb-mini-calendar-month") ?? []);
55
+ }
56
+ _getMiniCalendarDays() {
57
+ return Array.from(this._getMiniCalendarMonths().flatMap((month) => Array.from(month.querySelectorAll?.("sbb-mini-calendar-day") ?? [])));
58
+ }
59
+ _setMonthsShowYear() {
60
+ this._getMiniCalendarMonths().forEach((monthElement, index) => {
61
+ const splittedDate = monthElement.date.split("-");
62
+ if (splittedDate.length > 0) {
63
+ if (index === 0 || +splittedDate[1] === 1) {
64
+ monthElement["toggleState"]("show-year", true);
65
+ } else {
66
+ monthElement["toggleState"]("show-year", false);
67
+ }
68
+ }
69
+ });
70
+ }
71
+ _handleKeydownCalendarDay(event) {
72
+ if (isArrowKeyOrPageKeysPressed(event)) {
73
+ event.preventDefault();
74
+ }
75
+ const days = this._getMiniCalendarDays();
76
+ const day = days.find((e) => e === event.target);
77
+ const nextEl = this._navigateByKeyboardDayView(days, day, event);
78
+ const activeEl = document.activeElement;
79
+ if (nextEl !== activeEl) {
80
+ nextEl.tabIndex = 0;
81
+ nextEl?.focus();
82
+ activeEl.tabIndex = -1;
83
+ }
84
+ }
85
+ _navigateByKeyboardDayView(days, day, event) {
86
+ const arrowsOffset = this.orientation === "horizontal" ? { leftRight: 1, upDown: 7 } : { leftRight: 7, upDown: 1 };
87
+ const fullDate = this._dateAdapter.parse(day.date);
88
+ const dayDate = this._dateAdapter.getDate(fullDate);
89
+ const offsetForVertical = this._dateAdapter.getFirstWeekOffset(fullDate);
90
+ switch (event.key) {
91
+ case "ArrowUp":
92
+ return this._findDayArrowKeys(days, day, -arrowsOffset.upDown);
93
+ case "ArrowDown":
94
+ return this._findDayArrowKeys(days, day, arrowsOffset.upDown);
95
+ case "ArrowLeft":
96
+ return this._findDayArrowKeys(days, day, -arrowsOffset.leftRight);
97
+ case "ArrowRight":
98
+ return this._findDayArrowKeys(days, day, arrowsOffset.leftRight);
99
+ case "PageUp": {
100
+ if (this.orientation === "horizontal") {
101
+ const delta = dayDate - (dayDate % 7 || 7);
102
+ return this._findDaySpecialKeys(days, day, -delta, arrowsOffset.upDown);
103
+ } else {
104
+ const weekNumber = Math.ceil((dayDate + offsetForVertical) / 7);
105
+ const firstOfWeek = (weekNumber - 1) * 7 - offsetForVertical + 1;
106
+ const delta = firstOfWeek - dayDate;
107
+ return this._findDaySpecialKeys(days, day, delta, arrowsOffset.upDown);
108
+ }
109
+ }
110
+ case "PageDown": {
111
+ if (this.orientation === "horizontal") {
112
+ const lastDayMonth = this._dateAdapter.getNumDaysInMonth(fullDate);
113
+ const delta = lastDayMonth - dayDate - (lastDayMonth - dayDate) % 7;
114
+ return this._findDaySpecialKeys(days, day, delta, -arrowsOffset.upDown);
115
+ } else {
116
+ const weekNumber = Math.ceil((dayDate + offsetForVertical) / 7);
117
+ const lastOfWeek = weekNumber * 7 - offsetForVertical;
118
+ const delta = lastOfWeek - dayDate;
119
+ return this._findDaySpecialKeys(days, day, delta, -arrowsOffset.upDown);
120
+ }
121
+ }
122
+ case "Home": {
123
+ const date = dayDate - 1;
124
+ return this._findDaySpecialKeys(days, day, -date, 1);
125
+ }
126
+ case "End": {
127
+ const lastDayMonth = this._dateAdapter.getNumDaysInMonth(fullDate);
128
+ return this._findDaySpecialKeys(days, day, lastDayMonth - dayDate, -1);
129
+ }
130
+ default:
131
+ return day;
132
+ }
133
+ }
134
+ _findDayArrowKeys(days, day, delta) {
135
+ const newDate = this._dateAdapter.addCalendarDays(this._dateAdapter.deserialize(day.date), delta);
136
+ const newDateString = this._dateAdapter.toIso8601(newDate);
137
+ const newDay = days.find((d) => d.date === newDateString);
138
+ if (!newDay) {
139
+ return day;
140
+ }
141
+ return newDay;
142
+ }
143
+ _findDaySpecialKeys(days, day, delta, recursiveDelta) {
144
+ const newDate = this._dateAdapter.addCalendarDays(this._dateAdapter.deserialize(day.date), delta);
145
+ const newDateString = this._dateAdapter.toIso8601(newDate);
146
+ const newDay = days.find((d) => d.date === newDateString);
147
+ if (!newDay) {
148
+ return this._findDaySpecialKeys(days, day, delta + recursiveDelta, recursiveDelta);
149
+ }
150
+ return newDay;
151
+ }
152
+ _handleSlotchange() {
153
+ this._setupKeydownListener();
154
+ }
155
+ _setupKeydownListener() {
156
+ this._keydownAbortController?.abort();
157
+ this._keydownAbortController = new AbortController();
158
+ this._getMiniCalendarDays().forEach((day, index) => {
159
+ day.addEventListener("keydown", (e) => this._handleKeydownCalendarDay(e), {
160
+ signal: this._keydownAbortController.signal
161
+ });
162
+ if (index !== 0) {
163
+ day.tabIndex = -1;
164
+ }
165
+ });
166
+ }
167
+ /** @internal */
168
+ focus() {
169
+ this._getMiniCalendarDays()?.find((e) => e.tabIndex === 0)?.focus();
170
+ }
171
+ connectedCallback() {
172
+ super.connectedCallback();
173
+ this._setupKeydownListener();
174
+ }
175
+ disconnectedCallback() {
176
+ super.disconnectedCallback();
177
+ this._keydownAbortController?.abort();
178
+ }
179
+ render() {
180
+ return html`
181
+ <div class="sbb-mini-calendar">
182
+ <slot @slotchange=${this._handleSlotchange}></slot>
183
+ </div>
184
+ `;
185
+ }
186
+ }, _orientation_accessor_storage = new WeakMap(), _classThis = _a, (() => {
187
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
188
+ _orientation_decorators = [property({ reflect: true })];
189
+ __esDecorate(_a, null, _orientation_decorators, { kind: "accessor", name: "orientation", static: false, private: false, access: { has: (obj) => "orientation" in obj, get: (obj) => obj.orientation, set: (obj, value) => {
190
+ obj.orientation = value;
191
+ } }, metadata: _metadata }, _orientation_initializers, _orientation_extraInitializers);
192
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
193
+ _classThis = _classDescriptor.value;
194
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
195
+ })(), _a.styles = style, __runInitializers(_classThis, _classExtraInitializers), _a;
196
+ return _classThis;
197
+ })();
198
+ export {
199
+ SbbMiniCalendarElement
200
+ };
201
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS1jYWxlbmRhci5jb21wb25lbnQuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9taW5pLWNhbGVuZGFyL21pbmktY2FsZW5kYXIvbWluaS1jYWxlbmRhci5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTXV0YXRpb25Db250cm9sbGVyIH0gZnJvbSAnQGxpdC1sYWJzL29ic2VydmVycy9tdXRhdGlvbi1jb250cm9sbGVyLmpzJztcbmltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IGlzQXJyb3dLZXlPclBhZ2VLZXlzUHJlc3NlZCB9IGZyb20gJy4uLy4uL2NvcmUvYTExeS5qcyc7XG5pbXBvcnQgeyByZWFkQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29yZS9jb25maWcvY29uZmlnLmpzJztcbmltcG9ydCB0eXBlIHsgRGF0ZUFkYXB0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RhdGV0aW1lL2RhdGUtYWRhcHRlci5qcyc7XG5pbXBvcnQgeyBkZWZhdWx0RGF0ZUFkYXB0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RhdGV0aW1lL25hdGl2ZS1kYXRlLWFkYXB0ZXIuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJPcmllbnRhdGlvbiB9IGZyb20gJy4uLy4uL2NvcmUvaW50ZXJmYWNlcy5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnQgfSBmcm9tICcuLi9taW5pLWNhbGVuZGFyLWRheS5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYk1pbmlDYWxlbmRhck1vbnRoRWxlbWVudCB9IGZyb20gJy4uL21pbmktY2FsZW5kYXItbW9udGguanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9taW5pLWNhbGVuZGFyLnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBtaW5pbWFsIGNhbGVuZGFyLCB0b2dldGhlciB3aXRoIHRoZSBgc2JiLW1pbmktY2FsZW5kYXItbW9udGhgIGFuZCBgc2JiLW1pbmktY2FsZW5kYXItZGF5YC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBgc2JiLW1pbmktY2FsZW5kYXItbW9udGhgIGVsZW1lbnRzLlxuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItbWluaS1jYWxlbmRhcicpXG5jbGFzcyBTYmJNaW5pQ2FsZW5kYXJFbGVtZW50PFQgPSBEYXRlPiBleHRlbmRzIExpdEVsZW1lbnQge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICAvKiogVGhlIG9yaWVudGF0aW9uIG9mIGRheXMgaW4gdGhlIGNhbGVuZGFyLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBvcmllbnRhdGlvbjogU2JiT3JpZW50YXRpb24gPSAnaG9yaXpvbnRhbCc7XG5cbiAgcHJpdmF0ZSBfa2V5ZG93bkFib3J0Q29udHJvbGxlcjogQWJvcnRDb250cm9sbGVyIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX2RhdGVBZGFwdGVyOiBEYXRlQWRhcHRlcjxUPiA9IHJlYWRDb25maWcoKS5kYXRldGltZT8uZGF0ZUFkYXB0ZXIgPz8gZGVmYXVsdERhdGVBZGFwdGVyO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuXG4gICAgdGhpcy5hZGRDb250cm9sbGVyKFxuICAgICAgbmV3IE11dGF0aW9uQ29udHJvbGxlcih0aGlzLCB7XG4gICAgICAgIGNvbmZpZzogeyBjaGlsZExpc3Q6IHRydWUsIHN1YnRyZWU6IHRydWUgfSxcbiAgICAgICAgY2FsbGJhY2s6ICgpID0+IHRoaXMuX3NldE1vbnRoc1Nob3dZZWFyKCksXG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0TWluaUNhbGVuZGFyTW9udGhzKCk6IFNiYk1pbmlDYWxlbmRhck1vbnRoRWxlbWVudFtdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLnF1ZXJ5U2VsZWN0b3JBbGw/Lignc2JiLW1pbmktY2FsZW5kYXItbW9udGgnKSA/PyBbXSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRNaW5pQ2FsZW5kYXJEYXlzKCk6IFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20oXG4gICAgICB0aGlzLl9nZXRNaW5pQ2FsZW5kYXJNb250aHMoKS5mbGF0TWFwKChtb250aCkgPT5cbiAgICAgICAgQXJyYXkuZnJvbShtb250aC5xdWVyeVNlbGVjdG9yQWxsPy4oJ3NiYi1taW5pLWNhbGVuZGFyLWRheScpID8/IFtdKSxcbiAgICAgICksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldE1vbnRoc1Nob3dZZWFyKCk6IHZvaWQge1xuICAgIHRoaXMuX2dldE1pbmlDYWxlbmRhck1vbnRocygpLmZvckVhY2goXG4gICAgICAobW9udGhFbGVtZW50OiBTYmJNaW5pQ2FsZW5kYXJNb250aEVsZW1lbnQsIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgY29uc3Qgc3BsaXR0ZWREYXRlID0gbW9udGhFbGVtZW50LmRhdGUuc3BsaXQoJy0nKTtcbiAgICAgICAgaWYgKHNwbGl0dGVkRGF0ZS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgaWYgKGluZGV4ID09PSAwIHx8ICtzcGxpdHRlZERhdGVbMV0gPT09IDEpIHtcbiAgICAgICAgICAgIG1vbnRoRWxlbWVudFsndG9nZ2xlU3RhdGUnXSgnc2hvdy15ZWFyJywgdHJ1ZSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG1vbnRoRWxlbWVudFsndG9nZ2xlU3RhdGUnXSgnc2hvdy15ZWFyJywgZmFsc2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlS2V5ZG93bkNhbGVuZGFyRGF5KGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGlzQXJyb3dLZXlPclBhZ2VLZXlzUHJlc3NlZChldmVudCkpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuXG4gICAgY29uc3QgZGF5czogU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudFtdID0gdGhpcy5fZ2V0TWluaUNhbGVuZGFyRGF5cygpO1xuICAgIGNvbnN0IGRheSA9IGRheXMuZmluZCgoZSkgPT4gZSA9PT0gZXZlbnQudGFyZ2V0KSE7XG4gICAgY29uc3QgbmV4dEVsOiBTYmJNaW5pQ2FsZW5kYXJEYXlFbGVtZW50ID0gdGhpcy5fbmF2aWdhdGVCeUtleWJvYXJkRGF5VmlldyhkYXlzLCBkYXksIGV2ZW50KTtcbiAgICBjb25zdCBhY3RpdmVFbDogU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgYXMgU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudDtcbiAgICBpZiAobmV4dEVsICE9PSBhY3RpdmVFbCkge1xuICAgICAgbmV4dEVsLnRhYkluZGV4ID0gMDtcbiAgICAgIG5leHRFbD8uZm9jdXMoKTtcbiAgICAgIGFjdGl2ZUVsLnRhYkluZGV4ID0gLTE7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfbmF2aWdhdGVCeUtleWJvYXJkRGF5VmlldyhcbiAgICBkYXlzOiBTYmJNaW5pQ2FsZW5kYXJEYXlFbGVtZW50W10sXG4gICAgZGF5OiBTYmJNaW5pQ2FsZW5kYXJEYXlFbGVtZW50LFxuICAgIGV2ZW50OiBLZXlib2FyZEV2ZW50LFxuICApOiBTYmJNaW5pQ2FsZW5kYXJEYXlFbGVtZW50IHtcbiAgICBjb25zdCBhcnJvd3NPZmZzZXQgPVxuICAgICAgdGhpcy5vcmllbnRhdGlvbiA9PT0gJ2hvcml6b250YWwnID8geyBsZWZ0UmlnaHQ6IDEsIHVwRG93bjogNyB9IDogeyBsZWZ0UmlnaHQ6IDcsIHVwRG93bjogMSB9O1xuICAgIGNvbnN0IGZ1bGxEYXRlID0gdGhpcy5fZGF0ZUFkYXB0ZXIucGFyc2UoZGF5LmRhdGUpITtcbiAgICBjb25zdCBkYXlEYXRlID0gdGhpcy5fZGF0ZUFkYXB0ZXIuZ2V0RGF0ZShmdWxsRGF0ZSk7XG4gICAgY29uc3Qgb2Zmc2V0Rm9yVmVydGljYWwgPSB0aGlzLl9kYXRlQWRhcHRlci5nZXRGaXJzdFdlZWtPZmZzZXQoZnVsbERhdGUpO1xuXG4gICAgc3dpdGNoIChldmVudC5rZXkpIHtcbiAgICAgIGNhc2UgJ0Fycm93VXAnOlxuICAgICAgICByZXR1cm4gdGhpcy5fZmluZERheUFycm93S2V5cyhkYXlzLCBkYXksIC1hcnJvd3NPZmZzZXQudXBEb3duKTtcbiAgICAgIGNhc2UgJ0Fycm93RG93bic6XG4gICAgICAgIHJldHVybiB0aGlzLl9maW5kRGF5QXJyb3dLZXlzKGRheXMsIGRheSwgYXJyb3dzT2Zmc2V0LnVwRG93bik7XG4gICAgICBjYXNlICdBcnJvd0xlZnQnOlxuICAgICAgICByZXR1cm4gdGhpcy5fZmluZERheUFycm93S2V5cyhkYXlzLCBkYXksIC1hcnJvd3NPZmZzZXQubGVmdFJpZ2h0KTtcbiAgICAgIGNhc2UgJ0Fycm93UmlnaHQnOlxuICAgICAgICByZXR1cm4gdGhpcy5fZmluZERheUFycm93S2V5cyhkYXlzLCBkYXksIGFycm93c09mZnNldC5sZWZ0UmlnaHQpO1xuICAgICAgY2FzZSAnUGFnZVVwJzoge1xuICAgICAgICBpZiAodGhpcy5vcmllbnRhdGlvbiA9PT0gJ2hvcml6b250YWwnKSB7XG4gICAgICAgICAgY29uc3QgZGVsdGEgPSBkYXlEYXRlIC0gKGRheURhdGUgJSA3IHx8IDcpO1xuICAgICAgICAgIHJldHVybiB0aGlzLl9maW5kRGF5U3BlY2lhbEtleXMoZGF5cywgZGF5LCAtZGVsdGEsIGFycm93c09mZnNldC51cERvd24pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IHdlZWtOdW1iZXI6IG51bWJlciA9IE1hdGguY2VpbCgoZGF5RGF0ZSArIG9mZnNldEZvclZlcnRpY2FsKSAvIDcpO1xuICAgICAgICAgIGNvbnN0IGZpcnN0T2ZXZWVrOiBudW1iZXIgPSAod2Vla051bWJlciAtIDEpICogNyAtIG9mZnNldEZvclZlcnRpY2FsICsgMTtcbiAgICAgICAgICBjb25zdCBkZWx0YTogbnVtYmVyID0gZmlyc3RPZldlZWsgLSBkYXlEYXRlO1xuICAgICAgICAgIHJldHVybiB0aGlzLl9maW5kRGF5U3BlY2lhbEtleXMoZGF5cywgZGF5LCBkZWx0YSwgYXJyb3dzT2Zmc2V0LnVwRG93bik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGNhc2UgJ1BhZ2VEb3duJzoge1xuICAgICAgICBpZiAodGhpcy5vcmllbnRhdGlvbiA9PT0gJ2hvcml6b250YWwnKSB7XG4gICAgICAgICAgY29uc3QgbGFzdERheU1vbnRoID0gdGhpcy5fZGF0ZUFkYXB0ZXIuZ2V0TnVtRGF5c0luTW9udGgoZnVsbERhdGUpO1xuICAgICAgICAgIGNvbnN0IGRlbHRhID0gbGFzdERheU1vbnRoIC0gZGF5RGF0ZSAtICgobGFzdERheU1vbnRoIC0gZGF5RGF0ZSkgJSA3KTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5fZmluZERheVNwZWNpYWxLZXlzKGRheXMsIGRheSwgZGVsdGEsIC1hcnJvd3NPZmZzZXQudXBEb3duKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCB3ZWVrTnVtYmVyOiBudW1iZXIgPSBNYXRoLmNlaWwoKGRheURhdGUgKyBvZmZzZXRGb3JWZXJ0aWNhbCkgLyA3KTtcbiAgICAgICAgICBjb25zdCBsYXN0T2ZXZWVrOiBudW1iZXIgPSB3ZWVrTnVtYmVyICogNyAtIG9mZnNldEZvclZlcnRpY2FsO1xuICAgICAgICAgIGNvbnN0IGRlbHRhOiBudW1iZXIgPSBsYXN0T2ZXZWVrIC0gZGF5RGF0ZTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5fZmluZERheVNwZWNpYWxLZXlzKGRheXMsIGRheSwgZGVsdGEsIC1hcnJvd3NPZmZzZXQudXBEb3duKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY2FzZSAnSG9tZSc6IHtcbiAgICAgICAgY29uc3QgZGF0ZSA9IGRheURhdGUgLSAxO1xuICAgICAgICByZXR1cm4gdGhpcy5fZmluZERheVNwZWNpYWxLZXlzKGRheXMsIGRheSwgLWRhdGUsICsxKTtcbiAgICAgIH1cbiAgICAgIGNhc2UgJ0VuZCc6IHtcbiAgICAgICAgY29uc3QgbGFzdERheU1vbnRoID0gdGhpcy5fZGF0ZUFkYXB0ZXIuZ2V0TnVtRGF5c0luTW9udGgoZnVsbERhdGUpO1xuICAgICAgICByZXR1cm4gdGhpcy5fZmluZERheVNwZWNpYWxLZXlzKGRheXMsIGRheSwgbGFzdERheU1vbnRoIC0gZGF5RGF0ZSwgLTEpO1xuICAgICAgfVxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIGRheTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9maW5kRGF5QXJyb3dLZXlzKFxuICAgIGRheXM6IFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnRbXSxcbiAgICBkYXk6IFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnQsXG4gICAgZGVsdGE6IG51bWJlcixcbiAgKTogU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudCB7XG4gICAgY29uc3QgbmV3RGF0ZSA9IHRoaXMuX2RhdGVBZGFwdGVyLmFkZENhbGVuZGFyRGF5cyhcbiAgICAgIHRoaXMuX2RhdGVBZGFwdGVyLmRlc2VyaWFsaXplKGRheS5kYXRlKSEsXG4gICAgICBkZWx0YSxcbiAgICApO1xuICAgIGNvbnN0IG5ld0RhdGVTdHJpbmcgPSB0aGlzLl9kYXRlQWRhcHRlci50b0lzbzg2MDEobmV3RGF0ZSk7XG4gICAgY29uc3QgbmV3RGF5ID0gZGF5cy5maW5kKChkKSA9PiBkLmRhdGUgPT09IG5ld0RhdGVTdHJpbmcpO1xuICAgIGlmICghbmV3RGF5KSB7XG4gICAgICByZXR1cm4gZGF5O1xuICAgIH1cbiAgICByZXR1cm4gbmV3RGF5O1xuICB9XG5cbiAgcHJpdmF0ZSBfZmluZERheVNwZWNpYWxLZXlzKFxuICAgIGRheXM6IFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnRbXSxcbiAgICBkYXk6IFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnQsXG4gICAgZGVsdGE6IG51bWJlcixcbiAgICByZWN1cnNpdmVEZWx0YTogbnVtYmVyLFxuICApOiBTYmJNaW5pQ2FsZW5kYXJEYXlFbGVtZW50IHtcbiAgICBjb25zdCBuZXdEYXRlID0gdGhpcy5fZGF0ZUFkYXB0ZXIuYWRkQ2FsZW5kYXJEYXlzKFxuICAgICAgdGhpcy5fZGF0ZUFkYXB0ZXIuZGVzZXJpYWxpemUoZGF5LmRhdGUpISxcbiAgICAgIGRlbHRhLFxuICAgICk7XG4gICAgY29uc3QgbmV3RGF0ZVN0cmluZyA9IHRoaXMuX2RhdGVBZGFwdGVyLnRvSXNvODYwMShuZXdEYXRlKTtcbiAgICBjb25zdCBuZXdEYXkgPSBkYXlzLmZpbmQoKGQpID0+IGQuZGF0ZSA9PT0gbmV3RGF0ZVN0cmluZyk7XG4gICAgaWYgKCFuZXdEYXkpIHtcbiAgICAgIHJldHVybiB0aGlzLl9maW5kRGF5U3BlY2lhbEtleXMoZGF5cywgZGF5LCBkZWx0YSArIHJlY3Vyc2l2ZURlbHRhLCByZWN1cnNpdmVEZWx0YSk7XG4gICAgfVxuICAgIHJldHVybiBuZXdEYXkhO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlU2xvdGNoYW5nZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9zZXR1cEtleWRvd25MaXN0ZW5lcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0dXBLZXlkb3duTGlzdGVuZXIoKTogdm9pZCB7XG4gICAgdGhpcy5fa2V5ZG93bkFib3J0Q29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICB0aGlzLl9rZXlkb3duQWJvcnRDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICAgIHRoaXMuX2dldE1pbmlDYWxlbmRhckRheXMoKS5mb3JFYWNoKChkYXksIGluZGV4KSA9PiB7XG4gICAgICBkYXkuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIChlKSA9PiB0aGlzLl9oYW5kbGVLZXlkb3duQ2FsZW5kYXJEYXkoZSksIHtcbiAgICAgICAgc2lnbmFsOiB0aGlzLl9rZXlkb3duQWJvcnRDb250cm9sbGVyIS5zaWduYWwsXG4gICAgICB9KTtcbiAgICAgIGlmIChpbmRleCAhPT0gMCkge1xuICAgICAgICBkYXkudGFiSW5kZXggPSAtMTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgcHVibGljIG92ZXJyaWRlIGZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuX2dldE1pbmlDYWxlbmRhckRheXMoKVxuICAgICAgPy5maW5kKChlKSA9PiBlLnRhYkluZGV4ID09PSAwKVxuICAgICAgPy5mb2N1cygpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fc2V0dXBLZXlkb3duTGlzdGVuZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBkaXNjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuX2tleWRvd25BYm9ydENvbnRyb2xsZXI/LmFib3J0KCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItbWluaS1jYWxlbmRhclwiPlxuICAgICAgICA8c2xvdCBAc2xvdGNoYW5nZT0ke3RoaXMuX2hhbmRsZVNsb3RjaGFuZ2V9Pjwvc2xvdD5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1taW5pLWNhbGVuZGFyJzogU2JiTWluaUNhbGVuZGFyRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBc0JNLDBCQUFzQixNQUFBOzswQkFEM0IsY0FBYyxtQkFBbUIsQ0FBQzs7OztvQkFDWTs7OztBQUFSLEVBQUEsbUJBQVEsWUFBVTtBQUFBLElBVXZELGNBQUE7QUFDRSxZQUFBO0FBTkY7QUFBZ0IseUJBQUEsK0JBQUEsa0JBQUEsTUFBQSwyQkFBOEIsWUFBWTtBQUVsRCxXQUFBLDJCQUF1QixrQkFBQSxNQUFBLDhCQUFBLEdBQTJCO0FBQ2xELFdBQUEsZUFBK0IsV0FBQSxFQUFhLFVBQVUsZUFBZTtBQUszRSxXQUFLLGNBQ0gsSUFBSSxtQkFBbUIsTUFBTTtBQUFBLFFBQzNCLFFBQVEsRUFBRSxXQUFXLE1BQU0sU0FBUyxLQUFBO0FBQUEsUUFDcEMsVUFBVSxNQUFNLEtBQUssbUJBQUE7QUFBQSxNQUFrQixDQUN4QyxDQUFDO0FBQUEsSUFFTjtBQUFBO0FBQUEsSUFkQSxJQUFnQixjQUFXO0FBQUEsYUFBQSxtQkFBQTtBQUFBLElBQUE7QUFBQSxJQUEzQixJQUFnQixZQUFXLE9BQUE7QUFBQSx5QkFBQSwrQkFBQTtBQUFBLElBQUE7QUFBQSxJQWdCbkIseUJBQXNCO0FBQzVCLGFBQU8sTUFBTSxLQUFLLEtBQUssbUJBQW1CLHlCQUF5QixLQUFLLEVBQUU7QUFBQSxJQUM1RTtBQUFBLElBRVEsdUJBQW9CO0FBQzFCLGFBQU8sTUFBTSxLQUNYLEtBQUssdUJBQUEsRUFBeUIsUUFBUSxDQUFDLFVBQ3JDLE1BQU0sS0FBSyxNQUFNLG1CQUFt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
@@ -0,0 +1,23 @@
1
+ import { CSSResultGroup, PropertyValues, TemplateResult } from 'lit';
2
+ import { SbbButtonBaseElement } from '../../core/base-elements.js';
3
+ /**
4
+ * It displays a day in the `sbb-mini-calendar-month`.
5
+ */
6
+ export declare class SbbMiniCalendarDayElement<T = Date> extends SbbButtonBaseElement {
7
+ static styles: CSSResultGroup;
8
+ private _dateAdapter;
9
+ /** Date as ISO string (YYYY-MM-DD) */
10
+ accessor date: string;
11
+ /** The type of the marker. */
12
+ accessor marker: 'target' | 'circle' | 'slash' | 'cross' | string;
13
+ /** The color of the marker. */
14
+ accessor color: 'charcoal' | 'cloud' | 'orange' | 'red' | 'sky' | string;
15
+ protected willUpdate(changedProperties: PropertyValues<this>): void;
16
+ protected renderTemplate(): TemplateResult;
17
+ }
18
+ declare global {
19
+ interface HTMLElementTagNameMap {
20
+ 'sbb-mini-calendar-day': SbbMiniCalendarDayElement;
21
+ }
22
+ }
23
+ //# sourceMappingURL=mini-calendar-day.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mini-calendar-day.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/mini-calendar/mini-calendar-day/mini-calendar-day.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAQ,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAG1F,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAQnE;;GAEG;AACH,qBAEM,yBAAyB,CAAC,CAAC,GAAG,IAAI,CAAE,SAAQ,oBAAoB;IACpE,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,OAAO,CAAC,YAAY,CAA4E;IAEhG,sCAAsC;IACtC,SAEgB,IAAI,EAAE,MAAM,CAAM;IAElC,8BAA8B;IAC9B,SAEgB,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAM;IAE9E,+BAA+B;IAC/B,SAEgB,KAAK,EAAE,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,CAAM;cAElE,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;cAQzD,cAAc,IAAI,cAAc;CAGpD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,uBAAuB,EAAE,yBAAyB,CAAC;KACpD;CACF"}
@@ -0,0 +1,181 @@
1
+ var __typeError = (msg) => {
2
+ throw TypeError(msg);
3
+ };
4
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
5
+ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
6
+ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
7
+ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
8
+ import { __esDecorate, __runInitializers } from "tslib";
9
+ import { css, html } from "lit";
10
+ import { customElement, property } from "lit/decorators.js";
11
+ import { SbbButtonBaseElement } from "../../core/base-elements.js";
12
+ import { readConfig } from "../../core/config/config.js";
13
+ import "../../core/datetime/date-adapter.js";
14
+ import { defaultDateAdapter } from "../../core/datetime/native-date-adapter.js";
15
+ import { forceType, omitEmptyConverter } from "../../core/decorators.js";
16
+ const style = css`*,
17
+ ::before,
18
+ ::after {
19
+ box-sizing: border-box;
20
+ }
21
+
22
+ :host {
23
+ --sbb-mini-calendar-day-scale: 1.333;
24
+ --sbb-mini-calendar-day-animation-easing: var(--sbb-animation-easing);
25
+ --sbb-mini-calendar-day-animation-duration: var(
26
+ --sbb-disable-animation-duration,
27
+ var(--sbb-animation-duration-2x)
28
+ );
29
+ display: block;
30
+ height: 0.375rem;
31
+ width: 0.375rem;
32
+ margin: 0.0625rem;
33
+ border-radius: var(--sbb-border-radius-infinity);
34
+ color: var(--sbb-color-storm);
35
+ color: light-dark(var(--sbb-color-storm), var(--sbb-color-smoke));
36
+ background-color: currentcolor;
37
+ }
38
+
39
+ @media (any-hover: hover) {
40
+ :host(:hover) {
41
+ scale: var(--sbb-mini-calendar-day-scale);
42
+ transition: scale var(--sbb-mini-calendar-day-animation-easing) var(--sbb-mini-calendar-day-animation-duration);
43
+ }
44
+ }
45
+
46
+ :host(:focus-visible) {
47
+ outline-offset: var(--sbb-focus-outline-offset);
48
+ outline: var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width);
49
+ outline-offset: 0.125rem;
50
+ }
51
+
52
+ :host([color=charcoal]) {
53
+ color: var(--sbb-background-color-2-inverted);
54
+ }
55
+
56
+ :host([color=cloud]) {
57
+ color: var(--sbb-background-color-4-inverted);
58
+ }
59
+
60
+ :host([color=orange]) {
61
+ color: var(--sbb-color-orange-light);
62
+ }
63
+
64
+ :host([color=red]) {
65
+ color: var(--sbb-color-error);
66
+ }
67
+
68
+ :host([color=sky]) {
69
+ color: var(--sbb-color-sky-light);
70
+ }
71
+
72
+ :host([marker=circle]) {
73
+ background-color: var(--sbb-color-1-inverted);
74
+ border: 0.0625rem solid currentcolor;
75
+ }
76
+
77
+ :host([marker=target]) {
78
+ background: radial-gradient(circle, currentcolor 0%, currentcolor 25%, var(--sbb-color-1-inverted) 25%, var(--sbb-color-1-inverted) 50%, currentcolor 50%, currentcolor 100%);
79
+ }
80
+
81
+ :host([marker=slash]) {
82
+ position: relative;
83
+ }
84
+ :host([marker=slash])::before {
85
+ content: "";
86
+ position: absolute;
87
+ inset: 0;
88
+ background-image: linear-gradient(-45deg, transparent 45%, var(--sbb-color-1-inverted) 45%, var(--sbb-color-1-inverted) 55%, transparent 55%);
89
+ }
90
+
91
+ :host([marker=cross]) {
92
+ position: relative;
93
+ }
94
+ :host([marker=cross])::before {
95
+ content: "";
96
+ position: absolute;
97
+ inset: 0;
98
+ background-image: linear-gradient(-45deg, transparent 45%, var(--sbb-color-1-inverted) 45%, var(--sbb-color-1-inverted) 55%, transparent 55%), linear-gradient(45deg, transparent 45%, var(--sbb-color-1-inverted) 45%, var(--sbb-color-1-inverted) 55%, transparent 55%);
99
+ }`;
100
+ let SbbMiniCalendarDayElement = (() => {
101
+ var _date_accessor_storage, _marker_accessor_storage, _color_accessor_storage, _a;
102
+ let _classDecorators = [customElement("sbb-mini-calendar-day")];
103
+ let _classDescriptor;
104
+ let _classExtraInitializers = [];
105
+ let _classThis;
106
+ let _classSuper = SbbButtonBaseElement;
107
+ let _date_decorators;
108
+ let _date_initializers = [];
109
+ let _date_extraInitializers = [];
110
+ let _marker_decorators;
111
+ let _marker_initializers = [];
112
+ let _marker_extraInitializers = [];
113
+ let _color_decorators;
114
+ let _color_initializers = [];
115
+ let _color_extraInitializers = [];
116
+ _a = class extends _classSuper {
117
+ constructor() {
118
+ super(...arguments);
119
+ __privateAdd(this, _date_accessor_storage);
120
+ __privateAdd(this, _marker_accessor_storage);
121
+ __privateAdd(this, _color_accessor_storage);
122
+ this._dateAdapter = readConfig().datetime?.dateAdapter ?? defaultDateAdapter;
123
+ __privateSet(this, _date_accessor_storage, __runInitializers(this, _date_initializers, ""));
124
+ __privateSet(this, _marker_accessor_storage, (__runInitializers(this, _date_extraInitializers), __runInitializers(this, _marker_initializers, "")));
125
+ __privateSet(this, _color_accessor_storage, (__runInitializers(this, _marker_extraInitializers), __runInitializers(this, _color_initializers, "")));
126
+ __runInitializers(this, _color_extraInitializers);
127
+ }
128
+ /** Date as ISO string (YYYY-MM-DD) */
129
+ get date() {
130
+ return __privateGet(this, _date_accessor_storage);
131
+ }
132
+ set date(value) {
133
+ __privateSet(this, _date_accessor_storage, value);
134
+ }
135
+ /** The type of the marker. */
136
+ get marker() {
137
+ return __privateGet(this, _marker_accessor_storage);
138
+ }
139
+ set marker(value) {
140
+ __privateSet(this, _marker_accessor_storage, value);
141
+ }
142
+ /** The color of the marker. */
143
+ get color() {
144
+ return __privateGet(this, _color_accessor_storage);
145
+ }
146
+ set color(value) {
147
+ __privateSet(this, _color_accessor_storage, value);
148
+ }
149
+ willUpdate(changedProperties) {
150
+ super.willUpdate(changedProperties);
151
+ if (changedProperties.has("date") && this.date) {
152
+ this.internals.ariaLabel = this._dateAdapter.getAccessibilityFormatDate(this.date);
153
+ }
154
+ }
155
+ renderTemplate() {
156
+ return html``;
157
+ }
158
+ }, _date_accessor_storage = new WeakMap(), _marker_accessor_storage = new WeakMap(), _color_accessor_storage = new WeakMap(), _classThis = _a, (() => {
159
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
160
+ _date_decorators = [forceType(), property()];
161
+ _marker_decorators = [forceType(), property({ reflect: true, converter: omitEmptyConverter })];
162
+ _color_decorators = [forceType(), property({ reflect: true, converter: omitEmptyConverter })];
163
+ __esDecorate(_a, null, _date_decorators, { kind: "accessor", name: "date", static: false, private: false, access: { has: (obj) => "date" in obj, get: (obj) => obj.date, set: (obj, value) => {
164
+ obj.date = value;
165
+ } }, metadata: _metadata }, _date_initializers, _date_extraInitializers);
166
+ __esDecorate(_a, null, _marker_decorators, { kind: "accessor", name: "marker", static: false, private: false, access: { has: (obj) => "marker" in obj, get: (obj) => obj.marker, set: (obj, value) => {
167
+ obj.marker = value;
168
+ } }, metadata: _metadata }, _marker_initializers, _marker_extraInitializers);
169
+ __esDecorate(_a, null, _color_decorators, { kind: "accessor", name: "color", static: false, private: false, access: { has: (obj) => "color" in obj, get: (obj) => obj.color, set: (obj, value) => {
170
+ obj.color = value;
171
+ } }, metadata: _metadata }, _color_initializers, _color_extraInitializers);
172
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
173
+ _classThis = _classDescriptor.value;
174
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
175
+ })(), _a.styles = style, __runInitializers(_classThis, _classExtraInitializers), _a;
176
+ return _classThis;
177
+ })();
178
+ export {
179
+ SbbMiniCalendarDayElement
180
+ };
181
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS1jYWxlbmRhci1kYXkuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvbWluaS1jYWxlbmRhci9taW5pLWNhbGVuZGFyLWRheS9taW5pLWNhbGVuZGFyLWRheS5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBDU1NSZXN1bHRHcm91cCwgaHRtbCwgdHlwZSBQcm9wZXJ0eVZhbHVlcywgdHlwZSBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgU2JiQnV0dG9uQmFzZUVsZW1lbnQgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UtZWxlbWVudHMuanMnO1xuaW1wb3J0IHsgcmVhZENvbmZpZyB9IGZyb20gJy4uLy4uL2NvcmUvY29uZmlnL2NvbmZpZy5qcyc7XG5pbXBvcnQgeyB0eXBlIERhdGVBZGFwdGVyIH0gZnJvbSAnLi4vLi4vY29yZS9kYXRldGltZS9kYXRlLWFkYXB0ZXIuanMnO1xuaW1wb3J0IHsgZGVmYXVsdERhdGVBZGFwdGVyIH0gZnJvbSAnLi4vLi4vY29yZS9kYXRldGltZS9uYXRpdmUtZGF0ZS1hZGFwdGVyLmpzJztcbmltcG9ydCB7IGZvcmNlVHlwZSwgb21pdEVtcHR5Q29udmVydGVyIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vbWluaS1jYWxlbmRhci1kYXkuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhIGRheSBpbiB0aGUgYHNiYi1taW5pLWNhbGVuZGFyLW1vbnRoYC5cbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLW1pbmktY2FsZW5kYXItZGF5JylcbmNsYXNzIFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnQ8VCA9IERhdGU+IGV4dGVuZHMgU2JiQnV0dG9uQmFzZUVsZW1lbnQge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICBwcml2YXRlIF9kYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXI8VD4gPSByZWFkQ29uZmlnKCkuZGF0ZXRpbWU/LmRhdGVBZGFwdGVyID8/IGRlZmF1bHREYXRlQWRhcHRlcjtcblxuICAvKiogRGF0ZSBhcyBJU08gc3RyaW5nIChZWVlZLU1NLUREKSAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KClcbiAgcHVibGljIGFjY2Vzc29yIGRhdGU6IHN0cmluZyA9ICcnO1xuXG4gIC8qKiBUaGUgdHlwZSBvZiB0aGUgbWFya2VyLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgY29udmVydGVyOiBvbWl0RW1wdHlDb252ZXJ0ZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIG1hcmtlcjogJ3RhcmdldCcgfCAnY2lyY2xlJyB8ICdzbGFzaCcgfCAnY3Jvc3MnIHwgc3RyaW5nID0gJyc7XG5cbiAgLyoqIFRoZSBjb2xvciBvZiB0aGUgbWFya2VyLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgY29udmVydGVyOiBvbWl0RW1wdHlDb252ZXJ0ZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIGNvbG9yOiAnY2hhcmNvYWwnIHwgJ2Nsb3VkJyB8ICdvcmFuZ2UnIHwgJ3JlZCcgfCAnc2t5JyB8IHN0cmluZyA9ICcnO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnZGF0ZScpICYmIHRoaXMuZGF0ZSkge1xuICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYUxhYmVsID0gdGhpcy5fZGF0ZUFkYXB0ZXIuZ2V0QWNjZXNzaWJpbGl0eUZvcm1hdERhdGUodGhpcy5kYXRlKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1taW5pLWNhbGVuZGFyLWRheSc6IFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFnQk0sNkJBQXlCLE1BQUE7OzBCQUQ5QixjQUFjLHVCQUF1QixDQUFDOzs7O29CQUNXOzs7Ozs7Ozs7O0FBQVIsRUFBQSxtQkFBUSxZQUFvQjtBQUFBOztBQVFwRTtBQUtBO0FBS0E7QUFmUSxXQUFBLGVBQStCLFdBQUEsRUFBYSxVQUFVLGVBQWU7QUFLN0QseUJBQUEsd0JBQUEsa0JBQUEsTUFBQSxvQkFBZSxFQUFFO0FBS2pCLHlCQUFBLDJCQUFBLGtCQUFBLE1BQUEsdUJBQUEsR0FBQSxrQkFBQSxNQUFBLHNCQUEyRCxFQUFFO0FBSzdELHlCQUFBLDBCQUFBLGtCQUFBLE1BQUEseUJBQUEsR0FBQSxrQkFBQSxNQUFBLHFCQUFrRSxFQUFFOzs7O0lBVnBGLElBQWdCLE9BQUk7QUFBQSxhQUFBLG1CQUFBO0FBQUEsSUFBQTtBQUFBLElBQXBCLElBQWdCLEtBQUksT0FBQTtBQUFBLHlCQUFBLHdCQUFBO0FBQUEsSUFBQTtBQUFBO0FBQUEsSUFLcEIsSUFBZ0IsU0FBTTtBQUFBLGFBQUEsbUJBQUE7QUFBQSxJQUFBO0FBQUEsSUFBdEIsSUFBZ0IsT0FBTSxPQUFBO0FBQUEseUJBQUEsMEJBQUE7QUFBQSxJQUFBO0FBQUE7QUFBQSxJQUt0QixJQUFnQixRQUFLO0FBQUEsYUFBQSxtQkFBQTtBQUFBLElBQUE7QUFBQSxJQUFyQixJQUFnQixNQUFLLE9BQUE7QUFBQSx5QkFBQSx5QkFBQTtBQUFBLElBQUE7QUFBQSxJQUVGLFdBQVcsbUJBQXVDO0FBQ25FLFlBQU0sV0FBVyxpQkFBaUI7QUFFbEMsVUFBSSxrQkFBa0IsSUFBSSxNQUFNLEtBQUssS0FBSyxNQUFNO0FBQzlDLGFBQUssVUFBVSxZQUFZLEtBQUssYUFBYSwyQkFBMkIsS0FBSyxJQUFJO0FBQUEsTUFDbkY7QUFBQSxJQUNGO0FBQUEsSUFFbUIsaUJBQWM7QUFDL0IsYUFBTztBQUFBLElBQ1Q7QUFBQSxLQXRCQSx3Q0FLQSwwQ0FLQTs7d0JBWkMsYUFDQSxVQUFVO0FBSVYseUJBQUEsQ0FBQSxVQUFBLEdBQ0EsU0FBUyxFQUFFLFNBQVMsTUFBTSxXQUFXLG1CQUFBLENBQW9CLENBQUM7QUFJMUQsd0JBQUEsQ0FBQSxVQUFBLEdBQ0EsU0FBUyxFQUFFLFNBQVMsTUFBTSxXQUFXLG1CQUFBLENBQW9CLENBQUM7QUFUM0QsaUJBQUEsSUFBQSxNQUFBLGtCQUFBLEVBQUEsTUFBQSxZQUFBLE1BQUEsUUFBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSxVQUFBLEtBQUEsS0FBQSxDQUFBLFFBQUEsSUFBZ0IsTUFBSSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBSixPQUFJO0FBQUEsSUFBQSxLQUFBLFVBQUEsVUFBQSxHQUFBLG9CQUFBLHVCQUFBO0FBS3BCLGlCQUFBLElBQUEsTUFBQSxvQkFBQSxFQUFBLE1BQUEsWUFBQSxNQUFBLFVBQUEsUUFBQSxPQUFBLFNBQUEsT0FBQSxRQUFBLEVBQUEsS0FBQSxDQUFBLFFBQUEsWUFBQSxLQUFBLEtBQUEsQ0FBQSxRQUFBLElBQWdCLFFBQU0sS0FBQSxDQUFBLEtBQUEsVUFBQTtBQUFBLFVBQU4sU0FBTTtBQUFBLElBQUEsS0FBQSxVQUFBLFVBQUEsR0FBQSxzQkFBQSx5QkFBQTtBQUt0QixpQkFBQSxJQUFBLE1BQUEsbUJBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxTQUFBLFFBQUEsT0FBQSxTQUFBLE9BQUEsUUFBQSxFQUFBLEtBQUEsQ0FBQSxRQUFBLFdBQUEsS0FBQSxLQUFBLENBQUEsUUFBQSxJQUFnQixPQUFLLEtBQUEsQ0FBQSxLQUFBLFVBQUE7QUFBQSxVQUFMLFFBQUs7QUFBQSxJQUFBLEtBQUEsVUFBQSxVQUFBLEdBQUEscUJBQUEsd0JBQUE7QUFsQnZCLGlCQUFBLE1BQUEsbUJBQUEsRUFBQSxPQUFBLFdBQUEsR0FBQSxrQkFBQSxFQUFBLE1BQUEsU0FBQSxNQUFBLFdBQUEsTUFBQSxVQUFBLFVBQUEsR0FBQSxNQUFBLHVCQUFBOzs7UUFDeUIsR0FBQSxTQUF5QixPQUQ1QyxrQkFBQSxZQUFBLHVCQUFBLEdBQW9DOzs7In0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @entrypoint
3
+ */
4
+ export * from './mini-calendar-day/mini-calendar-day.component.js';
5
+ //# sourceMappingURL=mini-calendar-day.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mini-calendar-day.d.ts","sourceRoot":"","sources":["../../../../src/elements/mini-calendar/mini-calendar-day.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,oDAAoD,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { SbbMiniCalendarDayElement } from "./mini-calendar-day/mini-calendar-day.component.js";
2
+ export {
3
+ SbbMiniCalendarDayElement
4
+ };
5
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS1jYWxlbmRhci1kYXkuanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOyJ9
@@ -0,0 +1,25 @@
1
+ import { CSSResultGroup, PropertyValues, TemplateResult, LitElement } from 'lit';
2
+ declare const SbbMiniCalendarMonthElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbElementInternalsMixinType> & typeof LitElement & import('../../core/mixins.js').SbbElementInternalsConstructor;
3
+ /**
4
+ * It displays a month in the `sbb-mini-calendar`.
5
+ *
6
+ * @slot - Use the unnamed slot to add `sbb-mini-calendar-day` elements.
7
+ */
8
+ export declare class SbbMiniCalendarMonthElement<T = Date> extends SbbMiniCalendarMonthElement_base {
9
+ static styles: CSSResultGroup;
10
+ /** Date as ISO string (YYYY-MM-DD) */
11
+ accessor date: string;
12
+ private _dateAdapter;
13
+ private _monthNames;
14
+ private _monthLabel;
15
+ private _yearLabel;
16
+ protected willUpdate(changedProperties: PropertyValues<this>): void;
17
+ protected render(): TemplateResult;
18
+ }
19
+ declare global {
20
+ interface HTMLElementTagNameMap {
21
+ 'sbb-mini-calendar-month': SbbMiniCalendarMonthElement;
22
+ }
23
+ }
24
+ export {};
25
+ //# sourceMappingURL=mini-calendar-month.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mini-calendar-month.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/mini-calendar/mini-calendar-month/mini-calendar-month.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AACpF,OAAO,EAAQ,UAAU,EAAE,MAAM,KAAK,CAAC;;AAWvC;;;;GAIG;AACH,qBAEM,2BAA2B,CAAC,CAAC,GAAG,IAAI,CAAE,SAAQ,gCAAoC;IACtF,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,sCAAsC;IACtC,SAEgB,IAAI,EAAE,MAAM,CAAM;IAElC,OAAO,CAAC,YAAY,CAA4E;IAChG,OAAO,CAAC,WAAW,CAA4C;IAC/D,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,UAAU,CAAuB;cAEtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;cAgBzD,MAAM,IAAI,cAAc;CAW5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,yBAAyB,EAAE,2BAA2B,CAAC;KACxD;CACF"}
@@ -0,0 +1,123 @@
1
+ var __typeError = (msg) => {
2
+ throw TypeError(msg);
3
+ };
4
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
5
+ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
6
+ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
7
+ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
8
+ import { __runInitializers, __esDecorate } from "tslib";
9
+ import { css, LitElement, html } from "lit";
10
+ import { customElement, property } from "lit/decorators.js";
11
+ import { readConfig } from "../../core/config/config.js";
12
+ import "../../core/datetime/date-adapter.js";
13
+ import { defaultDateAdapter } from "../../core/datetime/native-date-adapter.js";
14
+ import { forceType } from "../../core/decorators.js";
15
+ import { SbbElementInternalsMixin } from "../../core/mixins.js";
16
+ const style = css`*,
17
+ ::before,
18
+ ::after {
19
+ box-sizing: border-box;
20
+ }
21
+
22
+ :host {
23
+ --sbb-mini-calendar-month-offset: 0;
24
+ --sbb-mini-calendar-month-display-year: none;
25
+ display: inline-block;
26
+ }
27
+
28
+ :host(:is(:state(show-year),[state--show-year])) {
29
+ --sbb-mini-calendar-month-display-year: block;
30
+ }
31
+
32
+ .sbb-mini-calendar-month-wrapper {
33
+ display: grid;
34
+ height: var(--sbb-mini-calendar-month-height);
35
+ grid-auto-flow: var(--sbb-mini-calendar-grid-auto-flow);
36
+ grid-auto-rows: 0.5rem;
37
+ grid-template-columns: var(--sbb-mini-calendar-month-grid-template-columns);
38
+ grid-template-rows: var(--sbb-mini-calendar-month-grid-template-rows);
39
+ }
40
+
41
+ .sbb-mini-calendar-month-label-year,
42
+ .sbb-mini-calendar-month-label-month {
43
+ --sbb-text-font-size: var(--sbb-font-size-text-xxs);
44
+ font-family: var(--sbb-typo-font-family);
45
+ font-weight: normal;
46
+ line-height: var(--sbb-typo-line-height-body-text);
47
+ letter-spacing: var(--sbb-typo-letter-spacing-body-text);
48
+ font-size: var(--sbb-text-font-size);
49
+ color: var(--sbb-color-granite);
50
+ color: light-dark(var(--sbb-color-granite), var(--sbb-color-silver));
51
+ }
52
+
53
+ .sbb-mini-calendar-month-label-year {
54
+ display: var(--sbb-mini-calendar-month-display-year);
55
+ }`;
56
+ let SbbMiniCalendarMonthElement = (() => {
57
+ var _date_accessor_storage, _a;
58
+ let _classDecorators = [customElement("sbb-mini-calendar-month")];
59
+ let _classDescriptor;
60
+ let _classExtraInitializers = [];
61
+ let _classThis;
62
+ let _classSuper = SbbElementInternalsMixin(LitElement);
63
+ let _date_decorators;
64
+ let _date_initializers = [];
65
+ let _date_extraInitializers = [];
66
+ _a = class extends _classSuper {
67
+ constructor() {
68
+ super(...arguments);
69
+ __privateAdd(this, _date_accessor_storage);
70
+ __privateSet(this, _date_accessor_storage, __runInitializers(this, _date_initializers, ""));
71
+ this._dateAdapter = (__runInitializers(this, _date_extraInitializers), readConfig().datetime?.dateAdapter ?? defaultDateAdapter);
72
+ this._monthNames = this._dateAdapter.getMonthNames("short");
73
+ this._monthLabel = null;
74
+ this._yearLabel = null;
75
+ }
76
+ /** Date as ISO string (YYYY-MM-DD) */
77
+ get date() {
78
+ return __privateGet(this, _date_accessor_storage);
79
+ }
80
+ set date(value) {
81
+ __privateSet(this, _date_accessor_storage, value);
82
+ }
83
+ willUpdate(changedProperties) {
84
+ super.willUpdate(changedProperties);
85
+ if (changedProperties.has("date") && this.date) {
86
+ if (!this.date.match(/^\d{4}-(0[1-9]|1[0-2])$/)) {
87
+ return;
88
+ }
89
+ const splittedDate = this.date.split("-");
90
+ const date = this._dateAdapter.createDate(+splittedDate[0], +splittedDate[1], 1);
91
+ const offset = this._dateAdapter.getFirstWeekOffset(date);
92
+ this.style?.setProperty("--sbb-mini-calendar-month-offset", `${offset + 1}`);
93
+ this._monthLabel = `${this._monthNames[+splittedDate[1] - 1]}.`;
94
+ this._yearLabel = String(this._dateAdapter.getYear(date));
95
+ }
96
+ }
97
+ render() {
98
+ return html`
99
+ <div class="sbb-mini-calendar-month">
100
+ <div class="sbb-mini-calendar-month-label-year">${this._yearLabel}</div>
101
+ <div class="sbb-mini-calendar-month-wrapper">
102
+ <slot></slot>
103
+ </div>
104
+ <div class="sbb-mini-calendar-month-label-month">${this._monthLabel}</div>
105
+ </div>
106
+ `;
107
+ }
108
+ }, _date_accessor_storage = new WeakMap(), _classThis = _a, (() => {
109
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
110
+ _date_decorators = [forceType(), property()];
111
+ __esDecorate(_a, null, _date_decorators, { kind: "accessor", name: "date", static: false, private: false, access: { has: (obj) => "date" in obj, get: (obj) => obj.date, set: (obj, value) => {
112
+ obj.date = value;
113
+ } }, metadata: _metadata }, _date_initializers, _date_extraInitializers);
114
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
115
+ _classThis = _classDescriptor.value;
116
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
117
+ })(), _a.styles = style, __runInitializers(_classThis, _classExtraInitializers), _a;
118
+ return _classThis;
119
+ })();
120
+ export {
121
+ SbbMiniCalendarMonthElement
122
+ };
123
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS1jYWxlbmRhci1tb250aC5jb21wb25lbnQuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9taW5pLWNhbGVuZGFyL21pbmktY2FsZW5kYXItbW9udGgvbWluaS1jYWxlbmRhci1tb250aC5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBDU1NSZXN1bHRHcm91cCwgdHlwZSBQcm9wZXJ0eVZhbHVlcywgdHlwZSBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sLCBMaXRFbGVtZW50IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyByZWFkQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29yZS9jb25maWcvY29uZmlnLmpzJztcbmltcG9ydCB7IHR5cGUgRGF0ZUFkYXB0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RhdGV0aW1lL2RhdGUtYWRhcHRlci5qcyc7XG5pbXBvcnQgeyBkZWZhdWx0RGF0ZUFkYXB0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RhdGV0aW1lL25hdGl2ZS1kYXRlLWFkYXB0ZXIuanMnO1xuaW1wb3J0IHsgZm9yY2VUeXBlIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vbWluaS1jYWxlbmRhci1tb250aC5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgbW9udGggaW4gdGhlIGBzYmItbWluaS1jYWxlbmRhcmAuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYHNiYi1taW5pLWNhbGVuZGFyLWRheWAgZWxlbWVudHMuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi1taW5pLWNhbGVuZGFyLW1vbnRoJylcbmNsYXNzIFNiYk1pbmlDYWxlbmRhck1vbnRoRWxlbWVudDxUID0gRGF0ZT4gZXh0ZW5kcyBTYmJFbGVtZW50SW50ZXJuYWxzTWl4aW4oTGl0RWxlbWVudCkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICAvKiogRGF0ZSBhcyBJU08gc3RyaW5nIChZWVlZLU1NLUREKSAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KClcbiAgcHVibGljIGFjY2Vzc29yIGRhdGU6IHN0cmluZyA9ICcnO1xuXG4gIHByaXZhdGUgX2RhdGVBZGFwdGVyOiBEYXRlQWRhcHRlcjxUPiA9IHJlYWRDb25maWcoKS5kYXRldGltZT8uZGF0ZUFkYXB0ZXIgPz8gZGVmYXVsdERhdGVBZGFwdGVyO1xuICBwcml2YXRlIF9tb250aE5hbWVzID0gdGhpcy5fZGF0ZUFkYXB0ZXIuZ2V0TW9udGhOYW1lcygnc2hvcnQnKTtcbiAgcHJpdmF0ZSBfbW9udGhMYWJlbDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3llYXJMYWJlbDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnZGF0ZScpICYmIHRoaXMuZGF0ZSkge1xuICAgICAgaWYgKCF0aGlzLmRhdGUubWF0Y2goL15cXGR7NH0tKDBbMS05XXwxWzAtMl0pJC8pKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHNwbGl0dGVkRGF0ZSA9IHRoaXMuZGF0ZS5zcGxpdCgnLScpO1xuICAgICAgY29uc3QgZGF0ZSA9IHRoaXMuX2RhdGVBZGFwdGVyLmNyZWF0ZURhdGUoK3NwbGl0dGVkRGF0ZVswXSwgK3NwbGl0dGVkRGF0ZVsxXSwgMSk7XG4gICAgICBjb25zdCBvZmZzZXQgPSB0aGlzLl9kYXRlQWRhcHRlci5nZXRGaXJzdFdlZWtPZmZzZXQoZGF0ZSk7XG4gICAgICB0aGlzLnN0eWxlPy5zZXRQcm9wZXJ0eSgnLS1zYmItbWluaS1jYWxlbmRhci1tb250aC1vZmZzZXQnLCBgJHtvZmZzZXQgKyAxfWApO1xuXG4gICAgICB0aGlzLl9tb250aExhYmVsID0gYCR7dGhpcy5fbW9udGhOYW1lc1src3BsaXR0ZWREYXRlWzFdIC0gMV19LmA7XG4gICAgICB0aGlzLl95ZWFyTGFiZWwgPSBTdHJpbmcodGhpcy5fZGF0ZUFkYXB0ZXIuZ2V0WWVhcihkYXRlKSk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLW1pbmktY2FsZW5kYXItbW9udGhcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLWxhYmVsLXllYXJcIj4ke3RoaXMuX3llYXJMYWJlbH08L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLXdyYXBwZXJcIj5cbiAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLW1pbmktY2FsZW5kYXItbW9udGgtbGFiZWwtbW9udGhcIj4ke3RoaXMuX21vbnRoTGFiZWx9PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItbWluaS1jYWxlbmRhci1tb250aCc6IFNiYk1pbmlDYWxlbmRhck1vbnRoRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFtQk0sK0JBQTJCLE1BQUE7OzBCQURoQyxjQUFjLHlCQUF5QixDQUFDOzs7O29CQUNXLHlCQUF5QixVQUFVOzs7O0FBQTNDLEVBQUEsbUJBQVEsWUFBb0M7QUFBQTs7QUFNdEY7QUFBZ0IseUJBQUEsd0JBQUEsa0JBQUEsTUFBQSxvQkFBZSxFQUFFO0FBRXpCLFdBQUEsZ0JBQVksa0JBQUEsTUFBQSx1QkFBQSxHQUFtQixhQUFhLFVBQVUsZUFBZTtBQUNyRSxXQUFBLGNBQWMsS0FBSyxhQUFhLGNBQWMsT0FBTztBQUNyRCxXQUFBLGNBQTZCO0FBQzdCLFdBQUEsYUFBNEI7QUFBQSxJQTZCdEM7QUFBQTtBQUFBLElBbENFLElBQWdCLE9BQUk7QUFBQSxhQUFBLG1CQUFBO0FBQUEsSUFBQTtBQUFBLElBQXBCLElBQWdCLEtBQUksT0FBQTtBQUFBLHlCQUFBLHdCQUFBO0FBQUEsSUFBQTtBQUFBLElBT0QsV0FBVyxtQkFBdUM7QUFDbkUsWUFBTSxXQUFXLGlCQUFpQjtBQUNsQyxVQUFJLGtCQUFrQixJQUFJLE1BQU0sS0FBSyxLQUFLLE1BQU07QUFDOUMsWUFBSSxDQUFDLEtBQUssS0FBSyxNQUFNLHlCQUF5QixHQUFHO0FBQy9DO0FBQUEsUUFDRjtBQUNBLGNBQU0sZUFBZSxLQUFLLEtBQUssTUFBTSxHQUFHO0FBQ3hDLGNBQU0sT0FBTyxLQUFLLGFBQWEsV0FBVyxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQztBQUMvRSxjQUFNLFNBQVMsS0FBSyxhQUFhLG1CQUFtQixJQUFJO0FBQ3hELGFBQUssT0FBTyxZQUFZLG9DQUFvQyxHQUFHLFNBQVMsQ0FBQyxFQUFFO0FBRTNFLGFBQUssY0FBYyxHQUFHLEtBQUssWUFBWSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUM1RCxhQUFLLGFBQWEsT0FBTyxLQUFLLGFBQWEsUUFBUSxJQUFJLENBQUM7QUFBQSxNQUMxRDtBQUFBLElBQ0Y7QUFBQSxJQUVtQixTQUFNO0FBQ3ZCLGFBQU87QUFBQTtBQUFBLDBEQUUrQyxLQUFLLFVBQVU7QUFBQTtBQUFBO0FBQUE7QUFBQSwyREFJZCxLQUFLLFdBQVc7QUFBQTtBQUFBO0FBQUEsSUFHekU7QUFBQSxLQWpDQTs7d0JBRkMsYUFDQSxVQUFVO0FBQ1gsaUJBQUEsSUFBQSxNQUFBLGtCQUFBLEVBQUEsTUFBQSxZQUFBLE1BQUEsUUFBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSxVQUFBLEtBQUEsS0FBQSxDQUFBLFFBQUEsSUFBZ0IsTUFBSSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBSixPQUFJO0FBQUEsSUFBQSxLQUFBLFVBQUEsVUFBQSxHQUFBLG9CQUFBLHVCQUFBO0FBTnRCLGlCQUFBLE1BQUEsbUJBQUEsRUFBQSxPQUFBLFdBQUEsR0FBQSxrQkFBQSxFQUFBLE1BQUEsU0FBQSxNQUFBLFdBQUEsTUFBQSxVQUFBLFVBQUEsR0FBQSxNQUFBLHVCQUFBOzs7UUFDeUIsR0FBQSxTQUF5QixPQUQ1QyxrQkFBQSxZQUFBLHVCQUFBLEdBQXNDOzs7In0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @entrypoint
3
+ */
4
+ export * from './mini-calendar-month/mini-calendar-month.component.js';
5
+ //# sourceMappingURL=mini-calendar-month.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mini-calendar-month.d.ts","sourceRoot":"","sources":["../../../../src/elements/mini-calendar/mini-calendar-month.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,wDAAwD,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { SbbMiniCalendarMonthElement } from "./mini-calendar-month/mini-calendar-month.component.js";
2
+ export {
3
+ SbbMiniCalendarMonthElement
4
+ };
5
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS1jYWxlbmRhci1tb250aC5qcyIsInNvdXJjZXMiOltdLCJzb3VyY2VzQ29udGVudCI6W10sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7In0=