@sbb-esta/lyne-elements 3.10.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 (107) hide show
  1. package/calendar/calendar.component.d.ts +2 -1
  2. package/calendar/calendar.component.d.ts.map +1 -1
  3. package/core/controllers/escapable-overlay-controller.d.ts +3 -0
  4. package/core/controllers/escapable-overlay-controller.d.ts.map +1 -1
  5. package/core/controllers/overlay-position-controller.d.ts +60 -0
  6. package/core/controllers/overlay-position-controller.d.ts.map +1 -0
  7. package/core/controllers/overlay-position-controller.js +224 -0
  8. package/core/controllers.d.ts +1 -0
  9. package/core/controllers.d.ts.map +1 -1
  10. package/core/controllers.js +12 -10
  11. package/core/styles/core.scss +27 -2
  12. package/core.css +21 -2
  13. package/custom-elements.json +1996 -544
  14. package/development/calendar/calendar.component.d.ts +2 -1
  15. package/development/calendar/calendar.component.d.ts.map +1 -1
  16. package/development/calendar/calendar.component.js +1 -1
  17. package/development/core/controllers/escapable-overlay-controller.d.ts +3 -0
  18. package/development/core/controllers/escapable-overlay-controller.d.ts.map +1 -1
  19. package/development/core/controllers/escapable-overlay-controller.js +1 -1
  20. package/development/core/controllers/overlay-position-controller.d.ts +60 -0
  21. package/development/core/controllers/overlay-position-controller.d.ts.map +1 -0
  22. package/development/core/controllers/overlay-position-controller.js +306 -0
  23. package/development/core/controllers.d.ts +1 -0
  24. package/development/core/controllers.d.ts.map +1 -1
  25. package/development/core/controllers.js +3 -1
  26. package/development/mini-calendar/mini-calendar/mini-calendar.component.d.ts +35 -0
  27. package/development/mini-calendar/mini-calendar/mini-calendar.component.d.ts.map +1 -0
  28. package/development/mini-calendar/mini-calendar/mini-calendar.component.js +201 -0
  29. package/development/mini-calendar/mini-calendar-day/mini-calendar-day.component.d.ts +23 -0
  30. package/development/mini-calendar/mini-calendar-day/mini-calendar-day.component.d.ts.map +1 -0
  31. package/development/mini-calendar/mini-calendar-day/mini-calendar-day.component.js +181 -0
  32. package/development/mini-calendar/mini-calendar-day.d.ts +5 -0
  33. package/development/mini-calendar/mini-calendar-day.d.ts.map +1 -0
  34. package/development/mini-calendar/mini-calendar-day.js +5 -0
  35. package/development/mini-calendar/mini-calendar-month/mini-calendar-month.component.d.ts +25 -0
  36. package/development/mini-calendar/mini-calendar-month/mini-calendar-month.component.d.ts.map +1 -0
  37. package/development/mini-calendar/mini-calendar-month/mini-calendar-month.component.js +123 -0
  38. package/development/mini-calendar/mini-calendar-month.d.ts +5 -0
  39. package/development/mini-calendar/mini-calendar-month.d.ts.map +1 -0
  40. package/development/mini-calendar/mini-calendar-month.js +5 -0
  41. package/development/mini-calendar/mini-calendar.d.ts +5 -0
  42. package/development/mini-calendar/mini-calendar.d.ts.map +1 -0
  43. package/development/mini-calendar/mini-calendar.js +5 -0
  44. package/development/mini-calendar.d.ts +7 -0
  45. package/development/mini-calendar.d.ts.map +1 -0
  46. package/development/mini-calendar.js +9 -0
  47. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts +4 -1
  48. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts.map +1 -1
  49. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.js +5 -1
  50. package/development/sidebar/icon-sidebar-link/icon-sidebar-link.component.d.ts +4 -1
  51. package/development/sidebar/icon-sidebar-link/icon-sidebar-link.component.d.ts.map +1 -1
  52. package/development/sidebar/icon-sidebar-link/icon-sidebar-link.component.js +5 -1
  53. package/development/tabs/tab/tab.component.d.ts +9 -0
  54. package/development/tabs/tab/tab.component.d.ts.map +1 -1
  55. package/development/tabs/tab/tab.component.js +48 -7
  56. package/development/tabs/tab-group/tab-group.component.d.ts +7 -3
  57. package/development/tabs/tab-group/tab-group.component.d.ts.map +1 -1
  58. package/development/tabs/tab-group/tab-group.component.js +19 -39
  59. package/development/tabs/tab-label/tab-label.component.d.ts.map +1 -1
  60. package/development/tabs/tab-label/tab-label.component.js +4 -3
  61. package/development/tooltip/tooltip.component.d.ts +11 -4
  62. package/development/tooltip/tooltip.component.d.ts.map +1 -1
  63. package/development/tooltip/tooltip.component.js +57 -78
  64. package/index.d.ts +6 -0
  65. package/index.js +6 -0
  66. package/mini-calendar/mini-calendar/mini-calendar.component.d.ts +35 -0
  67. package/mini-calendar/mini-calendar/mini-calendar.component.d.ts.map +1 -0
  68. package/mini-calendar/mini-calendar/mini-calendar.component.js +133 -0
  69. package/mini-calendar/mini-calendar-day/mini-calendar-day.component.d.ts +23 -0
  70. package/mini-calendar/mini-calendar-day/mini-calendar-day.component.d.ts.map +1 -0
  71. package/mini-calendar/mini-calendar-day/mini-calendar-day.component.js +66 -0
  72. package/mini-calendar/mini-calendar-day.d.ts +5 -0
  73. package/mini-calendar/mini-calendar-day.d.ts.map +1 -0
  74. package/mini-calendar/mini-calendar-day.js +4 -0
  75. package/mini-calendar/mini-calendar-month/mini-calendar-month.component.d.ts +25 -0
  76. package/mini-calendar/mini-calendar-month/mini-calendar-month.component.d.ts.map +1 -0
  77. package/mini-calendar/mini-calendar-month/mini-calendar-month.component.js +59 -0
  78. package/mini-calendar/mini-calendar-month.d.ts +5 -0
  79. package/mini-calendar/mini-calendar-month.d.ts.map +1 -0
  80. package/mini-calendar/mini-calendar-month.js +4 -0
  81. package/mini-calendar/mini-calendar.d.ts +5 -0
  82. package/mini-calendar/mini-calendar.d.ts.map +1 -0
  83. package/mini-calendar/mini-calendar.js +4 -0
  84. package/mini-calendar.d.ts +7 -0
  85. package/mini-calendar.d.ts.map +1 -0
  86. package/mini-calendar.js +8 -0
  87. package/off-brand-theme.css +21 -2
  88. package/package.json +21 -1
  89. package/safety-theme.css +21 -2
  90. package/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts +4 -1
  91. package/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts.map +1 -1
  92. package/sidebar/icon-sidebar-button/icon-sidebar-button.component.js +9 -6
  93. package/sidebar/icon-sidebar-link/icon-sidebar-link.component.d.ts +4 -1
  94. package/sidebar/icon-sidebar-link/icon-sidebar-link.component.d.ts.map +1 -1
  95. package/sidebar/icon-sidebar-link/icon-sidebar-link.component.js +13 -10
  96. package/standard-theme.css +21 -2
  97. package/tabs/tab/tab.component.d.ts +9 -0
  98. package/tabs/tab/tab.component.d.ts.map +1 -1
  99. package/tabs/tab/tab.component.js +37 -18
  100. package/tabs/tab-group/tab-group.component.d.ts +7 -3
  101. package/tabs/tab-group/tab-group.component.d.ts.map +1 -1
  102. package/tabs/tab-group/tab-group.component.js +51 -52
  103. package/tabs/tab-label/tab-label.component.d.ts.map +1 -1
  104. package/tabs/tab-label/tab-label.component.js +12 -12
  105. package/tooltip/tooltip.component.d.ts +11 -4
  106. package/tooltip/tooltip.component.d.ts.map +1 -1
  107. package/tooltip/tooltip.component.js +60 -84
@@ -0,0 +1,35 @@
1
+ import { CSSResultGroup, TemplateResult, LitElement } from 'lit';
2
+ import { SbbOrientation } from '../../core/interfaces.js';
3
+ /**
4
+ * It displays a minimal calendar, together with the `sbb-mini-calendar-month` and `sbb-mini-calendar-day`.
5
+ *
6
+ * @slot - Use the unnamed slot to add `sbb-mini-calendar-month` elements.
7
+ */
8
+ export declare class SbbMiniCalendarElement<T = Date> extends LitElement {
9
+ static styles: CSSResultGroup;
10
+ /** The orientation of days in the calendar. */
11
+ accessor orientation: SbbOrientation;
12
+ private _keydownAbortController;
13
+ private _dateAdapter;
14
+ constructor();
15
+ private _getMiniCalendarMonths;
16
+ private _getMiniCalendarDays;
17
+ private _setMonthsShowYear;
18
+ private _handleKeydownCalendarDay;
19
+ private _navigateByKeyboardDayView;
20
+ private _findDayArrowKeys;
21
+ private _findDaySpecialKeys;
22
+ private _handleSlotchange;
23
+ private _setupKeydownListener;
24
+ /** @internal */
25
+ focus(): void;
26
+ connectedCallback(): void;
27
+ disconnectedCallback(): void;
28
+ protected render(): TemplateResult;
29
+ }
30
+ declare global {
31
+ interface HTMLElementTagNameMap {
32
+ 'sbb-mini-calendar': SbbMiniCalendarElement;
33
+ }
34
+ }
35
+ //# sourceMappingURL=mini-calendar.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mini-calendar.component.d.ts","sourceRoot":"","sources":["../../../../src/elements/mini-calendar/mini-calendar/mini-calendar.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1D,OAAO,EAAQ,UAAU,EAAE,MAAM,KAAK,CAAC;AAOvC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAM/D;;;;GAIG;AACH,qBAEM,sBAAsB,CAAC,CAAC,GAAG,IAAI,CAAE,SAAQ,UAAU;IACvD,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,+CAA+C;IAC/C,SACgB,WAAW,EAAE,cAAc,CAAgB;IAE3D,OAAO,CAAC,uBAAuB,CAAgC;IAC/D,OAAO,CAAC,YAAY,CAA4E;;IAahG,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,oBAAoB;IAQ5B,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,yBAAyB;IAgBjC,OAAO,CAAC,0BAA0B;IAwDlC,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,mBAAmB;IAkB3B,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,qBAAqB;IAa7B,gBAAgB;IACA,KAAK,IAAI,IAAI;IAMb,iBAAiB,IAAI,IAAI;IAKzB,oBAAoB,IAAI,IAAI;cAKzB,MAAM,IAAI,cAAc;CAO5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,mBAAmB,EAAE,sBAAsB,CAAC;KAC7C;CACF"}
@@ -0,0 +1,133 @@
1
+ var A = (a) => {
2
+ throw TypeError(a);
3
+ };
4
+ var C = (a, i, o) => i.has(a) || A("Cannot " + o);
5
+ var k = (a, i, o) => (C(a, i, "read from private field"), o ? o.call(a) : i.get(a)), S = (a, i, o) => i.has(a) ? A("Cannot add the same private member more than once") : i instanceof WeakSet ? i.add(a) : i.set(a, o), y = (a, i, o, d) => (C(a, i, "write to private field"), d ? d.call(a, o) : i.set(a, o), o);
6
+ import { __esDecorate as K, __runInitializers as w } from "tslib";
7
+ import { MutationController as M } from "@lit-labs/observers/mutation-controller.js";
8
+ import { css as x, LitElement as z, html as I } from "lit";
9
+ import { customElement as v, property as E } from "lit/decorators.js";
10
+ import { isArrowKeyOrPageKeysPressed as O } from "../../core/a11y.js";
11
+ import { readConfig as L } from "../../core/config/config.js";
12
+ import { defaultDateAdapter as N } from "../../core/datetime/native-date-adapter.js";
13
+ const P = x`*,:before,:after{box-sizing:border-box}:host{display:block}`;
14
+ let H = (() => {
15
+ var u, f;
16
+ let a = [v("sbb-mini-calendar")], i, o = [], d, D = z, b, m = [], g = [];
17
+ return f = class extends D {
18
+ constructor() {
19
+ super();
20
+ S(this, u);
21
+ y(this, u, w(this, m, "horizontal")), this._keydownAbortController = (w(this, g), null), this._dateAdapter = L().datetime?.dateAdapter ?? N, this.addController(new M(this, {
22
+ config: { childList: !0, subtree: !0 },
23
+ callback: () => this._setMonthsShowYear()
24
+ }));
25
+ }
26
+ /** The orientation of days in the calendar. */
27
+ get orientation() {
28
+ return k(this, u);
29
+ }
30
+ set orientation(t) {
31
+ y(this, u, t);
32
+ }
33
+ _getMiniCalendarMonths() {
34
+ return Array.from(this.querySelectorAll?.("sbb-mini-calendar-month") ?? []);
35
+ }
36
+ _getMiniCalendarDays() {
37
+ return Array.from(this._getMiniCalendarMonths().flatMap((t) => Array.from(t.querySelectorAll?.("sbb-mini-calendar-day") ?? [])));
38
+ }
39
+ _setMonthsShowYear() {
40
+ this._getMiniCalendarMonths().forEach((t, e) => {
41
+ const s = t.date.split("-");
42
+ s.length > 0 && (e === 0 || +s[1] == 1 ? t.toggleState("show-year", !0) : t.toggleState("show-year", !1));
43
+ });
44
+ }
45
+ _handleKeydownCalendarDay(t) {
46
+ O(t) && t.preventDefault();
47
+ const e = this._getMiniCalendarDays(), s = e.find((n) => n === t.target), r = this._navigateByKeyboardDayView(e, s, t), c = document.activeElement;
48
+ r !== c && (r.tabIndex = 0, r?.focus(), c.tabIndex = -1);
49
+ }
50
+ _navigateByKeyboardDayView(t, e, s) {
51
+ const r = this.orientation === "horizontal" ? { leftRight: 1, upDown: 7 } : { leftRight: 7, upDown: 1 }, c = this._dateAdapter.parse(e.date), n = this._dateAdapter.getDate(c), h = this._dateAdapter.getFirstWeekOffset(c);
52
+ switch (s.key) {
53
+ case "ArrowUp":
54
+ return this._findDayArrowKeys(t, e, -r.upDown);
55
+ case "ArrowDown":
56
+ return this._findDayArrowKeys(t, e, r.upDown);
57
+ case "ArrowLeft":
58
+ return this._findDayArrowKeys(t, e, -r.leftRight);
59
+ case "ArrowRight":
60
+ return this._findDayArrowKeys(t, e, r.leftRight);
61
+ case "PageUp":
62
+ if (this.orientation === "horizontal") {
63
+ const l = n - (n % 7 || 7);
64
+ return this._findDaySpecialKeys(t, e, -l, r.upDown);
65
+ } else {
66
+ const p = (Math.ceil((n + h) / 7) - 1) * 7 - h + 1 - n;
67
+ return this._findDaySpecialKeys(t, e, p, r.upDown);
68
+ }
69
+ case "PageDown":
70
+ if (this.orientation === "horizontal") {
71
+ const l = this._dateAdapter.getNumDaysInMonth(c), _ = l - n - (l - n) % 7;
72
+ return this._findDaySpecialKeys(t, e, _, -r.upDown);
73
+ } else {
74
+ const p = Math.ceil((n + h) / 7) * 7 - h - n;
75
+ return this._findDaySpecialKeys(t, e, p, -r.upDown);
76
+ }
77
+ case "Home": {
78
+ const l = n - 1;
79
+ return this._findDaySpecialKeys(t, e, -l, 1);
80
+ }
81
+ case "End": {
82
+ const l = this._dateAdapter.getNumDaysInMonth(c);
83
+ return this._findDaySpecialKeys(t, e, l - n, -1);
84
+ }
85
+ default:
86
+ return e;
87
+ }
88
+ }
89
+ _findDayArrowKeys(t, e, s) {
90
+ const r = this._dateAdapter.addCalendarDays(this._dateAdapter.deserialize(e.date), s), c = this._dateAdapter.toIso8601(r), n = t.find((h) => h.date === c);
91
+ return n || e;
92
+ }
93
+ _findDaySpecialKeys(t, e, s, r) {
94
+ const c = this._dateAdapter.addCalendarDays(this._dateAdapter.deserialize(e.date), s), n = this._dateAdapter.toIso8601(c), h = t.find((l) => l.date === n);
95
+ return h || this._findDaySpecialKeys(t, e, s + r, r);
96
+ }
97
+ _handleSlotchange() {
98
+ this._setupKeydownListener();
99
+ }
100
+ _setupKeydownListener() {
101
+ this._keydownAbortController?.abort(), this._keydownAbortController = new AbortController(), this._getMiniCalendarDays().forEach((t, e) => {
102
+ t.addEventListener("keydown", (s) => this._handleKeydownCalendarDay(s), {
103
+ signal: this._keydownAbortController.signal
104
+ }), e !== 0 && (t.tabIndex = -1);
105
+ });
106
+ }
107
+ /** @internal */
108
+ focus() {
109
+ this._getMiniCalendarDays()?.find((t) => t.tabIndex === 0)?.focus();
110
+ }
111
+ connectedCallback() {
112
+ super.connectedCallback(), this._setupKeydownListener();
113
+ }
114
+ disconnectedCallback() {
115
+ super.disconnectedCallback(), this._keydownAbortController?.abort();
116
+ }
117
+ render() {
118
+ return I`
119
+ <div class="sbb-mini-calendar">
120
+ <slot @slotchange=${this._handleSlotchange}></slot>
121
+ </div>
122
+ `;
123
+ }
124
+ }, u = new WeakMap(), d = f, (() => {
125
+ const t = typeof Symbol == "function" && Symbol.metadata ? Object.create(D[Symbol.metadata] ?? null) : void 0;
126
+ b = [E({ reflect: !0 })], K(f, null, b, { kind: "accessor", name: "orientation", static: !1, private: !1, access: { has: (e) => "orientation" in e, get: (e) => e.orientation, set: (e, s) => {
127
+ e.orientation = s;
128
+ } }, metadata: t }, m, g), K(null, i = { value: d }, a, { kind: "class", name: d.name, metadata: t }, null, o), d = i.value, t && Object.defineProperty(d, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: t });
129
+ })(), f.styles = P, w(d, o), d;
130
+ })();
131
+ export {
132
+ H as SbbMiniCalendarElement
133
+ };
@@ -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,66 @@
1
+ var E = (r) => {
2
+ throw TypeError(r);
3
+ };
4
+ var I = (r, t, o) => t.has(r) || E("Cannot " + o);
5
+ var u = (r, t, o) => (I(r, t, "read from private field"), o ? o.call(r) : t.get(r)), h = (r, t, o) => t.has(r) ? E("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(r) : t.set(r, o), l = (r, t, o, s) => (I(r, t, "write to private field"), s ? s.call(r, o) : t.set(r, o), o);
6
+ import { __esDecorate as v, __runInitializers as n } from "tslib";
7
+ import { css as T, html as j } from "lit";
8
+ import { customElement as B, property as f } from "lit/decorators.js";
9
+ import { SbbButtonBaseElement as O } from "../../core/base-elements.js";
10
+ import { readConfig as U } from "../../core/config/config.js";
11
+ import "../../core/datetime/date-adapter.js";
12
+ import { defaultDateAdapter as F } from "../../core/datetime/native-date-adapter.js";
13
+ import { forceType as g, omitEmptyConverter as C } from "../../core/decorators.js";
14
+ const L = T`*,:before,:after{box-sizing:border-box}:host{--sbb-mini-calendar-day-scale: 1.333;--sbb-mini-calendar-day-animation-easing: var(--sbb-animation-easing);--sbb-mini-calendar-day-animation-duration: var( --sbb-disable-animation-duration, var(--sbb-animation-duration-2x) );display:block;height:.375rem;width:.375rem;margin:.0625rem;border-radius:var(--sbb-border-radius-infinity);color:var(--sbb-color-storm);color:light-dark(var(--sbb-color-storm),var(--sbb-color-smoke));background-color:currentcolor}@media (any-hover: hover){:host(:hover){scale:var(--sbb-mini-calendar-day-scale);transition:scale var(--sbb-mini-calendar-day-animation-easing) var(--sbb-mini-calendar-day-animation-duration)}}:host(:focus-visible){outline-offset:var(--sbb-focus-outline-offset);outline:var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width);outline-offset:.125rem}:host([color=charcoal]){color:var(--sbb-background-color-2-inverted)}:host([color=cloud]){color:var(--sbb-background-color-4-inverted)}:host([color=orange]){color:var(--sbb-color-orange-light)}:host([color=red]){color:var(--sbb-color-error)}:host([color=sky]){color:var(--sbb-color-sky-light)}:host([marker=circle]){background-color:var(--sbb-color-1-inverted);border:.0625rem solid currentcolor}:host([marker=target]){background:radial-gradient(circle,currentcolor 0%,currentcolor 25%,var(--sbb-color-1-inverted) 25%,var(--sbb-color-1-inverted) 50%,currentcolor 50%,currentcolor 100%)}:host([marker=slash]){position:relative}:host([marker=slash]):before{content:"";position:absolute;inset:0;background-image:linear-gradient(-45deg,transparent 45%,var(--sbb-color-1-inverted) 45%,var(--sbb-color-1-inverted) 55%,transparent 55%)}:host([marker=cross]){position:relative}:host([marker=cross]):before{content:"";position:absolute;inset:0;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%)}`;
15
+ let V = (() => {
16
+ var c, d, b, i;
17
+ let r = [B("sbb-mini-calendar-day")], t, o = [], s, p = O, _, k = [], y = [], x, z = [], S = [], D, w = [], A = [];
18
+ return i = class extends p {
19
+ constructor() {
20
+ super(...arguments);
21
+ h(this, c);
22
+ h(this, d);
23
+ h(this, b);
24
+ this._dateAdapter = U().datetime?.dateAdapter ?? F, l(this, c, n(this, k, "")), l(this, d, (n(this, y), n(this, z, ""))), l(this, b, (n(this, S), n(this, w, ""))), n(this, A);
25
+ }
26
+ /** Date as ISO string (YYYY-MM-DD) */
27
+ get date() {
28
+ return u(this, c);
29
+ }
30
+ set date(a) {
31
+ l(this, c, a);
32
+ }
33
+ /** The type of the marker. */
34
+ get marker() {
35
+ return u(this, d);
36
+ }
37
+ set marker(a) {
38
+ l(this, d, a);
39
+ }
40
+ /** The color of the marker. */
41
+ get color() {
42
+ return u(this, b);
43
+ }
44
+ set color(a) {
45
+ l(this, b, a);
46
+ }
47
+ willUpdate(a) {
48
+ super.willUpdate(a), a.has("date") && this.date && (this.internals.ariaLabel = this._dateAdapter.getAccessibilityFormatDate(this.date));
49
+ }
50
+ renderTemplate() {
51
+ return j``;
52
+ }
53
+ }, c = new WeakMap(), d = new WeakMap(), b = new WeakMap(), s = i, (() => {
54
+ const a = typeof Symbol == "function" && Symbol.metadata ? Object.create(p[Symbol.metadata] ?? null) : void 0;
55
+ _ = [g(), f()], x = [g(), f({ reflect: !0, converter: C })], D = [g(), f({ reflect: !0, converter: C })], v(i, null, _, { kind: "accessor", name: "date", static: !1, private: !1, access: { has: (e) => "date" in e, get: (e) => e.date, set: (e, m) => {
56
+ e.date = m;
57
+ } }, metadata: a }, k, y), v(i, null, x, { kind: "accessor", name: "marker", static: !1, private: !1, access: { has: (e) => "marker" in e, get: (e) => e.marker, set: (e, m) => {
58
+ e.marker = m;
59
+ } }, metadata: a }, z, S), v(i, null, D, { kind: "accessor", name: "color", static: !1, private: !1, access: { has: (e) => "color" in e, get: (e) => e.color, set: (e, m) => {
60
+ e.color = m;
61
+ } }, metadata: a }, w, A), v(null, t = { value: s }, r, { kind: "class", name: s.name, metadata: a }, null, o), s = t.value, a && Object.defineProperty(s, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: a });
62
+ })(), i.styles = L, n(s, o), s;
63
+ })();
64
+ export {
65
+ V as SbbMiniCalendarDayElement
66
+ };
@@ -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,4 @@
1
+ import { SbbMiniCalendarDayElement as n } from "./mini-calendar-day/mini-calendar-day.component.js";
2
+ export {
3
+ n as SbbMiniCalendarDayElement
4
+ };
@@ -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,59 @@
1
+ var f = (t) => {
2
+ throw TypeError(t);
3
+ };
4
+ var y = (t, e, a) => e.has(t) || f("Cannot " + a);
5
+ var u = (t, e, a) => (y(t, e, "read from private field"), a ? a.call(t) : e.get(t)), _ = (t, e, a) => e.has(t) ? f("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(t) : e.set(t, a), d = (t, e, a, i) => (y(t, e, "write to private field"), i ? i.call(t, a) : e.set(t, a), a);
6
+ import { __runInitializers as m, __esDecorate as g } from "tslib";
7
+ import { css as x, LitElement as w, html as z } from "lit";
8
+ import { customElement as S, property as A } from "lit/decorators.js";
9
+ import { readConfig as L } from "../../core/config/config.js";
10
+ import "../../core/datetime/date-adapter.js";
11
+ import { defaultDateAdapter as k } from "../../core/datetime/native-date-adapter.js";
12
+ import { forceType as D } from "../../core/decorators.js";
13
+ import { SbbElementInternalsMixin as E } from "../../core/mixins.js";
14
+ const $ = x`*,:before,:after{box-sizing:border-box}:host{--sbb-mini-calendar-month-offset: 0;--sbb-mini-calendar-month-display-year: none;display:inline-block}:host(:is(:state(show-year),[state--show-year])){--sbb-mini-calendar-month-display-year: block}.sbb-mini-calendar-month-wrapper{display:grid;height:var(--sbb-mini-calendar-month-height);grid-auto-flow:var(--sbb-mini-calendar-grid-auto-flow);grid-auto-rows:.5rem;grid-template-columns:var(--sbb-mini-calendar-month-grid-template-columns);grid-template-rows:var(--sbb-mini-calendar-month-grid-template-rows)}.sbb-mini-calendar-month-label-year,.sbb-mini-calendar-month-label-month{--sbb-text-font-size: var(--sbb-font-size-text-xxs);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-body-text);letter-spacing:var(--sbb-typo-letter-spacing-body-text);font-size:var(--sbb-text-font-size);color:var(--sbb-color-granite);color:light-dark(var(--sbb-color-granite),var(--sbb-color-silver))}.sbb-mini-calendar-month-label-year{display:var(--sbb-mini-calendar-month-display-year)}`;
15
+ let W = (() => {
16
+ var n, l;
17
+ let t = [S("sbb-mini-calendar-month")], e, a = [], i, b = E(w), c, h = [], p = [];
18
+ return l = class extends b {
19
+ constructor() {
20
+ super(...arguments);
21
+ _(this, n);
22
+ d(this, n, m(this, h, "")), this._dateAdapter = (m(this, p), L().datetime?.dateAdapter ?? k), this._monthNames = this._dateAdapter.getMonthNames("short"), this._monthLabel = null, this._yearLabel = null;
23
+ }
24
+ /** Date as ISO string (YYYY-MM-DD) */
25
+ get date() {
26
+ return u(this, n);
27
+ }
28
+ set date(s) {
29
+ d(this, n, s);
30
+ }
31
+ willUpdate(s) {
32
+ if (super.willUpdate(s), s.has("date") && this.date) {
33
+ if (!this.date.match(/^\d{4}-(0[1-9]|1[0-2])$/))
34
+ return;
35
+ const r = this.date.split("-"), o = this._dateAdapter.createDate(+r[0], +r[1], 1), v = this._dateAdapter.getFirstWeekOffset(o);
36
+ this.style?.setProperty("--sbb-mini-calendar-month-offset", `${v + 1}`), this._monthLabel = `${this._monthNames[+r[1] - 1]}.`, this._yearLabel = String(this._dateAdapter.getYear(o));
37
+ }
38
+ }
39
+ render() {
40
+ return z`
41
+ <div class="sbb-mini-calendar-month">
42
+ <div class="sbb-mini-calendar-month-label-year">${this._yearLabel}</div>
43
+ <div class="sbb-mini-calendar-month-wrapper">
44
+ <slot></slot>
45
+ </div>
46
+ <div class="sbb-mini-calendar-month-label-month">${this._monthLabel}</div>
47
+ </div>
48
+ `;
49
+ }
50
+ }, n = new WeakMap(), i = l, (() => {
51
+ const s = typeof Symbol == "function" && Symbol.metadata ? Object.create(b[Symbol.metadata] ?? null) : void 0;
52
+ c = [D(), A()], g(l, null, c, { kind: "accessor", name: "date", static: !1, private: !1, access: { has: (r) => "date" in r, get: (r) => r.date, set: (r, o) => {
53
+ r.date = o;
54
+ } }, metadata: s }, h, p), g(null, e = { value: i }, t, { kind: "class", name: i.name, metadata: s }, null, a), i = e.value, s && Object.defineProperty(i, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: s });
55
+ })(), l.styles = $, m(i, a), i;
56
+ })();
57
+ export {
58
+ W as SbbMiniCalendarMonthElement
59
+ };
@@ -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,4 @@
1
+ import { SbbMiniCalendarMonthElement as o } from "./mini-calendar-month/mini-calendar-month.component.js";
2
+ export {
3
+ o as SbbMiniCalendarMonthElement
4
+ };
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @entrypoint
3
+ */
4
+ export * from './mini-calendar/mini-calendar.component.js';
5
+ //# sourceMappingURL=mini-calendar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mini-calendar.d.ts","sourceRoot":"","sources":["../../../src/elements/mini-calendar/mini-calendar.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,4CAA4C,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { SbbMiniCalendarElement as r } from "./mini-calendar/mini-calendar.component.js";
2
+ export {
3
+ r as SbbMiniCalendarElement
4
+ };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @entrypoint
3
+ */
4
+ export * from './mini-calendar/mini-calendar.js';
5
+ export * from './mini-calendar/mini-calendar-day.js';
6
+ export * from './mini-calendar/mini-calendar-month.js';
7
+ //# sourceMappingURL=mini-calendar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mini-calendar.d.ts","sourceRoot":"","sources":["../../src/elements/mini-calendar.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,kCAAkC,CAAC;AACjD,cAAc,sCAAsC,CAAC;AACrD,cAAc,wCAAwC,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { SbbMiniCalendarElement as r } from "./mini-calendar/mini-calendar/mini-calendar.component.js";
2
+ import { SbbMiniCalendarDayElement as o } from "./mini-calendar/mini-calendar-day/mini-calendar-day.component.js";
3
+ import { SbbMiniCalendarMonthElement as b } from "./mini-calendar/mini-calendar-month/mini-calendar-month.component.js";
4
+ export {
5
+ o as SbbMiniCalendarDayElement,
6
+ r as SbbMiniCalendarElement,
7
+ b as SbbMiniCalendarMonthElement
8
+ };
@@ -1731,8 +1731,7 @@ sbb-menu,
1731
1731
  sbb-navigation,
1732
1732
  sbb-overlay,
1733
1733
  sbb-popover,
1734
- sbb-toast,
1735
- sbb-tooltip) {
1734
+ sbb-toast) {
1736
1735
  margin: 0;
1737
1736
  padding: 0;
1738
1737
  border: none;
@@ -2021,6 +2020,26 @@ sbb-status:has(sbb-title) {
2021
2020
  --sbb-option-white-space: nowrap;
2022
2021
  }
2023
2022
 
2023
+ sbb-mini-calendar[orientation=horizontal] sbb-mini-calendar-month {
2024
+ --sbb-mini-calendar-grid-auto-flow: row;
2025
+ --sbb-mini-calendar-month-height: 3rem;
2026
+ --sbb-mini-calendar-month-grid-template-rows: none;
2027
+ --sbb-mini-calendar-month-grid-template-columns: repeat(7, 1fr);
2028
+ }
2029
+ sbb-mini-calendar[orientation=horizontal] sbb-mini-calendar-month sbb-mini-calendar-day:first-child {
2030
+ grid-column-start: var(--sbb-mini-calendar-month-offset);
2031
+ }
2032
+
2033
+ sbb-mini-calendar[orientation=vertical] sbb-mini-calendar-month {
2034
+ --sbb-mini-calendar-grid-auto-flow: column;
2035
+ --sbb-mini-calendar-month-height: auto;
2036
+ --sbb-mini-calendar-month-grid-template-rows: repeat(7, 1fr);
2037
+ --sbb-mini-calendar-month-grid-template-columns: none;
2038
+ }
2039
+ sbb-mini-calendar[orientation=vertical] sbb-mini-calendar-month sbb-mini-calendar-day:first-child {
2040
+ grid-row-start: var(--sbb-mini-calendar-month-offset);
2041
+ }
2042
+
2024
2043
  sub {
2025
2044
  bottom: -0.36em;
2026
2045
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sbb-esta/lyne-elements",
3
- "version": "3.10.0",
3
+ "version": "3.11.0",
4
4
  "description": "Lyne Design System",
5
5
  "keywords": [
6
6
  "design system",
@@ -764,6 +764,26 @@
764
764
  "development": "./development/message.js",
765
765
  "default": "./message.js"
766
766
  },
767
+ "./mini-calendar.js": {
768
+ "types": "./development/mini-calendar.d.ts",
769
+ "development": "./development/mini-calendar.js",
770
+ "default": "./mini-calendar.js"
771
+ },
772
+ "./mini-calendar/mini-calendar.js": {
773
+ "types": "./development/mini-calendar/mini-calendar.d.ts",
774
+ "development": "./development/mini-calendar/mini-calendar.js",
775
+ "default": "./mini-calendar/mini-calendar.js"
776
+ },
777
+ "./mini-calendar/mini-calendar-day.js": {
778
+ "types": "./development/mini-calendar/mini-calendar-day.d.ts",
779
+ "development": "./development/mini-calendar/mini-calendar-day.js",
780
+ "default": "./mini-calendar/mini-calendar-day.js"
781
+ },
782
+ "./mini-calendar/mini-calendar-month.js": {
783
+ "types": "./development/mini-calendar/mini-calendar-month.d.ts",
784
+ "development": "./development/mini-calendar/mini-calendar-month.js",
785
+ "default": "./mini-calendar/mini-calendar-month.js"
786
+ },
767
787
  "./navigation.js": {
768
788
  "types": "./development/navigation.d.ts",
769
789
  "development": "./development/navigation.js",
package/safety-theme.css CHANGED
@@ -1731,8 +1731,7 @@ sbb-menu,
1731
1731
  sbb-navigation,
1732
1732
  sbb-overlay,
1733
1733
  sbb-popover,
1734
- sbb-toast,
1735
- sbb-tooltip) {
1734
+ sbb-toast) {
1736
1735
  margin: 0;
1737
1736
  padding: 0;
1738
1737
  border: none;
@@ -2021,6 +2020,26 @@ sbb-status:has(sbb-title) {
2021
2020
  --sbb-option-white-space: nowrap;
2022
2021
  }
2023
2022
 
2023
+ sbb-mini-calendar[orientation=horizontal] sbb-mini-calendar-month {
2024
+ --sbb-mini-calendar-grid-auto-flow: row;
2025
+ --sbb-mini-calendar-month-height: 3rem;
2026
+ --sbb-mini-calendar-month-grid-template-rows: none;
2027
+ --sbb-mini-calendar-month-grid-template-columns: repeat(7, 1fr);
2028
+ }
2029
+ sbb-mini-calendar[orientation=horizontal] sbb-mini-calendar-month sbb-mini-calendar-day:first-child {
2030
+ grid-column-start: var(--sbb-mini-calendar-month-offset);
2031
+ }
2032
+
2033
+ sbb-mini-calendar[orientation=vertical] sbb-mini-calendar-month {
2034
+ --sbb-mini-calendar-grid-auto-flow: column;
2035
+ --sbb-mini-calendar-month-height: auto;
2036
+ --sbb-mini-calendar-month-grid-template-rows: repeat(7, 1fr);
2037
+ --sbb-mini-calendar-month-grid-template-columns: none;
2038
+ }
2039
+ sbb-mini-calendar[orientation=vertical] sbb-mini-calendar-month sbb-mini-calendar-day:first-child {
2040
+ grid-row-start: var(--sbb-mini-calendar-month-offset);
2041
+ }
2042
+
2024
2043
  sub {
2025
2044
  bottom: -0.36em;
2026
2045
  }
@@ -1,13 +1,16 @@
1
1
  import { CSSResultGroup, TemplateResult } from 'lit';
2
2
  import { SbbButtonBaseElement } from '../../core/base-elements.js';
3
+ import { SbbTooltipDefaultPositions } from '../../tooltip.js';
3
4
  declare const SbbIconSidebarButtonElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../icon.js').SbbIconNameMixinType> & typeof SbbButtonBaseElement;
4
5
  /**
5
6
  * Button to be placed inside `sbb-icon-sidebar`.
6
7
  *
7
8
  * @slot icon - Slot used to display the icon.
8
9
  */
9
- export declare class SbbIconSidebarButtonElement extends SbbIconSidebarButtonElement_base {
10
+ export declare class SbbIconSidebarButtonElement extends SbbIconSidebarButtonElement_base implements SbbTooltipDefaultPositions {
10
11
  static styles: CSSResultGroup;
12
+ /** @internal */
13
+ readonly tooltipPositions: string[];
11
14
  protected renderTemplate(): TemplateResult;
12
15
  }
13
16
  declare global {
@@ -1 +1 @@
1
- {"version":3,"file":"icon-sidebar-button.component.d.ts","sourceRoot":"","sources":["../../../../src/elements/sidebar/icon-sidebar-button/icon-sidebar-button.component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAG1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;;AAInE;;;;GAIG;AACH,qBAEM,2BAA4B,SAAQ,gCAAsC;IAC9E,OAAuB,MAAM,EAAE,cAAc,CAAgC;cAE1D,cAAc,IAAI,cAAc;CAGpD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,yBAAyB,EAAE,2BAA2B,CAAC;KACxD;CACF"}
1
+ {"version":3,"file":"icon-sidebar-button.component.d.ts","sourceRoot":"","sources":["../../../../src/elements/sidebar/icon-sidebar-button/icon-sidebar-button.component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAG1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;;AAGnE;;;;GAIG;AACH,qBAEM,2BACJ,SAAQ,gCACR,YAAW,0BAA0B;IAErC,OAAuB,MAAM,EAAE,cAAc,CAAgC;IAC7E,gBAAgB;IAChB,SAAgB,gBAAgB,WAAkC;cAE/C,cAAc,IAAI,cAAc;CAGpD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,yBAAyB,EAAE,2BAA2B,CAAC;KACxD;CACF"}
@@ -1,19 +1,22 @@
1
- import { __esDecorate as n, __runInitializers as i } from "tslib";
1
+ import { __esDecorate as i, __runInitializers as l } from "tslib";
2
2
  import { customElement as m } from "lit/decorators.js";
3
3
  import { SbbButtonBaseElement as c } from "../../core/base-elements.js";
4
4
  import { SbbIconNameMixin as u } from "../../icon.js";
5
5
  import { iconSidebarButtonCommonStyle as b } from "../common.js";
6
6
  let y = (() => {
7
7
  var e;
8
- let s = [m("sbb-icon-sidebar-button")], r, l = [], t, o = u(c);
9
- return e = class extends o {
8
+ let s = [m("sbb-icon-sidebar-button")], r, o = [], t, n = u(c);
9
+ return e = class extends n {
10
+ constructor() {
11
+ super(...arguments), this.tooltipPositions = ["inline-end", "inline-start"];
12
+ }
10
13
  renderTemplate() {
11
14
  return super.renderIconSlot();
12
15
  }
13
16
  }, t = e, (() => {
14
- const a = typeof Symbol == "function" && Symbol.metadata ? Object.create(o[Symbol.metadata] ?? null) : void 0;
15
- n(null, r = { value: t }, s, { kind: "class", name: t.name, metadata: a }, null, l), t = r.value, a && Object.defineProperty(t, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: a });
16
- })(), e.styles = b, i(t, l), t;
17
+ const a = typeof Symbol == "function" && Symbol.metadata ? Object.create(n[Symbol.metadata] ?? null) : void 0;
18
+ i(null, r = { value: t }, s, { kind: "class", name: t.name, metadata: a }, null, o), t = r.value, a && Object.defineProperty(t, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: a });
19
+ })(), e.styles = b, l(t, o), t;
17
20
  })();
18
21
  export {
19
22
  y as SbbIconSidebarButtonElement
@@ -1,13 +1,16 @@
1
1
  import { CSSResultGroup, TemplateResult } from 'lit';
2
2
  import { SbbLinkBaseElement } from '../../core/base-elements.js';
3
+ import { SbbTooltipDefaultPositions } from '../../tooltip.js';
3
4
  declare const SbbIconSidebarLinkElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../icon.js').SbbIconNameMixinType> & typeof SbbLinkBaseElement;
4
5
  /**
5
6
  * Link to be placed inside `sbb-icon-sidebar`.
6
7
  *
7
8
  * @slot icon - Slot used to display the icon.
8
9
  */
9
- export declare class SbbIconSidebarLinkElement extends SbbIconSidebarLinkElement_base {
10
+ export declare class SbbIconSidebarLinkElement extends SbbIconSidebarLinkElement_base implements SbbTooltipDefaultPositions {
10
11
  static styles: CSSResultGroup;
12
+ /** @internal */
13
+ readonly tooltipPositions: string[];
11
14
  protected renderTemplate(): TemplateResult;
12
15
  }
13
16
  declare global {
@@ -1 +1 @@
1
- {"version":3,"file":"icon-sidebar-link.component.d.ts","sourceRoot":"","sources":["../../../../src/elements/sidebar/icon-sidebar-link/icon-sidebar-link.component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAG1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;;AAIjE;;;;GAIG;AACH,qBAEM,yBAA0B,SAAQ,8BAAoC;IAC1E,OAAuB,MAAM,EAAE,cAAc,CAAgC;cAE1D,cAAc,IAAI,cAAc;CAGpD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,uBAAuB,EAAE,yBAAyB,CAAC;KACpD;CACF"}
1
+ {"version":3,"file":"icon-sidebar-link.component.d.ts","sourceRoot":"","sources":["../../../../src/elements/sidebar/icon-sidebar-link/icon-sidebar-link.component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAG1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;;AAGnE;;;;GAIG;AACH,qBAEM,yBACJ,SAAQ,8BACR,YAAW,0BAA0B;IAErC,OAAuB,MAAM,EAAE,cAAc,CAAgC;IAC7E,gBAAgB;IAChB,SAAgB,gBAAgB,WAAkC;cAE/C,cAAc,IAAI,cAAc;CAGpD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,uBAAuB,EAAE,yBAAyB,CAAC;KACpD;CACF"}