@sbb-esta/lyne-elements 2.7.0 → 2.7.1

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 (44) hide show
  1. package/breadcrumb/breadcrumb/breadcrumb.d.ts +0 -2
  2. package/breadcrumb/breadcrumb/breadcrumb.d.ts.map +1 -1
  3. package/breadcrumb/breadcrumb/breadcrumb.js +21 -44
  4. package/core/controllers/{id-observer-controller.d.ts → id-reference-controller.d.ts} +1 -1
  5. package/core/controllers/id-reference-controller.d.ts.map +1 -0
  6. package/core/controllers/slot-state-controller.d.ts +2 -0
  7. package/core/controllers/slot-state-controller.d.ts.map +1 -1
  8. package/core/controllers/slot-state-controller.js +30 -19
  9. package/core/controllers.d.ts +1 -1
  10. package/core/controllers.d.ts.map +1 -1
  11. package/core/controllers.js +1 -1
  12. package/core/styles/core.scss +14 -0
  13. package/core.css +5 -0
  14. package/custom-elements.json +18 -22
  15. package/date-input/date-input.js +5 -5
  16. package/development/breadcrumb/breadcrumb/breadcrumb.d.ts +0 -2
  17. package/development/breadcrumb/breadcrumb/breadcrumb.d.ts.map +1 -1
  18. package/development/breadcrumb/breadcrumb/breadcrumb.js +11 -38
  19. package/development/core/controllers/{id-observer-controller.d.ts → id-reference-controller.d.ts} +1 -1
  20. package/development/core/controllers/id-reference-controller.d.ts.map +1 -0
  21. package/development/core/controllers/id-reference-controller.js +84 -0
  22. package/development/core/controllers/slot-state-controller.d.ts +2 -0
  23. package/development/core/controllers/slot-state-controller.d.ts.map +1 -1
  24. package/development/core/controllers/slot-state-controller.js +24 -4
  25. package/development/core/controllers.d.ts +1 -1
  26. package/development/core/controllers.d.ts.map +1 -1
  27. package/development/core/controllers.js +1 -1
  28. package/development/date-input/date-input.js +3 -2
  29. package/development/form-field/form-field/form-field.js +3 -2
  30. package/development/option/option/option-base-element.d.ts.map +1 -1
  31. package/development/option/option/option-base-element.js +8 -4
  32. package/development/teaser-hero/teaser-hero.d.ts.map +1 -1
  33. package/development/teaser-hero/teaser-hero.js +15 -11
  34. package/form-field/form-field/form-field.js +1 -1
  35. package/option/option/option-base-element.d.ts.map +1 -1
  36. package/option/option/option-base-element.js +9 -14
  37. package/package.json +1 -1
  38. package/standard-theme.css +5 -0
  39. package/teaser-hero/teaser-hero.d.ts.map +1 -1
  40. package/teaser-hero/teaser-hero.js +25 -25
  41. package/core/controllers/id-observer-controller.d.ts.map +0 -1
  42. package/development/core/controllers/id-observer-controller.d.ts.map +0 -1
  43. package/development/core/controllers/id-observer-controller.js +0 -84
  44. /package/core/controllers/{id-observer-controller.js → id-reference-controller.js} +0 -0
@@ -9,8 +9,6 @@ declare const SbbBreadcrumbElement_base: import('../../core/mixins.js').Abstract
9
9
  */
10
10
  export declare class SbbBreadcrumbElement extends SbbBreadcrumbElement_base {
11
11
  static styles: CSSResultGroup;
12
- private accessor _hasText;
13
- private _handleSlotchange;
14
12
  protected renderTemplate(): TemplateResult;
15
13
  }
16
14
  declare global {
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumb.d.ts","sourceRoot":"","sources":["../../../../src/elements/breadcrumb/breadcrumb/breadcrumb.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAI1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;;AAMjE;;;;;GAKG;AACH,qBAEM,oBAAqB,SAAQ,yBAAuD;IACxF,OAAuB,MAAM,EAAE,cAAc,CAAS;IAE7C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAE3C,OAAO,CAAC,iBAAiB;cAMN,cAAc,IAAI,cAAc;CAQpD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,gBAAgB,EAAE,oBAAoB,CAAC;KACxC;CACF"}
1
+ {"version":3,"file":"breadcrumb.d.ts","sourceRoot":"","sources":["../../../../src/elements/breadcrumb/breadcrumb/breadcrumb.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAI1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;;AAOjE;;;;;GAKG;AACH,qBAGM,oBAAqB,SAAQ,yBAAuD;IACxF,OAAuB,MAAM,EAAE,cAAc,CAAS;cAEnC,cAAc,IAAI,cAAc;CAQpD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,gBAAgB,EAAE,oBAAoB,CAAC;KACxC;CACF"}
@@ -1,52 +1,29 @@
1
- var u = (e) => {
2
- throw TypeError(e);
3
- };
4
- var h = (e, t, r) => t.has(e) || u("Cannot " + r);
5
- var f = (e, t, r) => (h(e, t, "read from private field"), r ? r.call(e) : t.get(e)), x = (e, t, r) => t.has(e) ? u("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, r), _ = (e, t, r, s) => (h(e, t, "write to private field"), s ? s.call(e, r) : t.set(e, r), r);
6
- import { __esDecorate as v, __runInitializers as l } from "tslib";
7
- import { customElement as y, state as g } from "lit/decorators.js";
8
- import { html as T } from "lit/static-html.js";
9
- import { SbbLinkBaseElement as S } from "../../core/base-elements.js";
10
- import { SbbHydrationMixin as k } from "../../core/mixins.js";
11
- import { SbbIconNameMixin as w } from "../../icon.js";
12
- import { css as z } from "lit";
13
- const I = z`*,:before,:after{box-sizing:border-box}:host{display:flex;--sbb-breadcrumb-color: var(--sbb-color-granite)}@media (any-hover: hover){:host(:hover){--sbb-breadcrumb-color: var(--sbb-color-charcoal)}}:host(:is(:active,[data-active])){--sbb-breadcrumb-color: var(--sbb-color-anthracite)}.sbb-breadcrumb{--sbb-link-text-decoration: none;--sbb-text-font-size: var(--sbb-font-size-text-xs);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-link-color-normal);text-decoration-line:var(--sbb-link-text-decoration, underline);text-decoration-color:var(--sbb-link-text-decoration-color);text-decoration-thickness:.0625rem;text-underline-offset:.3125em;-webkit-user-select:none;user-select:none}@media (forced-colors: active){.sbb-breadcrumb{text-decoration:underline}}.sbb-breadcrumb{display:flex;cursor:pointer;gap:var(--sbb-spacing-fixed-2x);color:var(--sbb-breadcrumb-color);align-items:center;overflow:hidden;outline:none}@media (forced-colors: active){.sbb-breadcrumb{--sbb-breadcrumb-color: ButtonText}}.sbb-breadcrumb: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);border-radius:var(--sbb-border-radius-2x)}.sbb-breadcrumb__label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}slot[name=icon] .sbb-breadcrumb__icon,slot[name=icon] ::slotted(*){flex-shrink:0}`;
14
- let C = (() => {
15
- var b, a;
16
- let e = [y("sbb-breadcrumb")], t, r = [], s, n = w(k(S)), c, d = [], m = [];
17
- return a = class extends n {
18
- constructor() {
19
- super(...arguments);
20
- x(this, b, l(this, d, !1));
21
- l(this, m);
22
- }
23
- get _hasText() {
24
- return f(this, b);
25
- }
26
- set _hasText(o) {
27
- _(this, b, o);
28
- }
29
- _handleSlotchange() {
30
- this._hasText = Array.from(this.childNodes ?? []).some((o) => {
31
- var i;
32
- return !o.slot && ((i = o.textContent) == null ? void 0 : i.trim());
33
- });
34
- }
1
+ import { __esDecorate as i, __runInitializers as l } from "tslib";
2
+ import { customElement as n } from "lit/decorators.js";
3
+ import { html as c } from "lit/static-html.js";
4
+ import { SbbLinkBaseElement as d } from "../../core/base-elements.js";
5
+ import { slotState as m } from "../../core/decorators.js";
6
+ import { SbbHydrationMixin as u } from "../../core/mixins.js";
7
+ import { SbbIconNameMixin as f } from "../../icon.js";
8
+ import { css as v } from "lit";
9
+ const p = v`*,:before,:after{box-sizing:border-box}:host{display:flex;--sbb-breadcrumb-color: var(--sbb-color-granite)}@media (any-hover: hover){:host(:hover){--sbb-breadcrumb-color: var(--sbb-color-charcoal)}}:host(:is(:active,[data-active])){--sbb-breadcrumb-color: var(--sbb-color-anthracite)}.sbb-breadcrumb{--sbb-link-text-decoration: none;--sbb-text-font-size: var(--sbb-font-size-text-xs);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-link-color-normal);text-decoration-line:var(--sbb-link-text-decoration, underline);text-decoration-color:var(--sbb-link-text-decoration-color);text-decoration-thickness:.0625rem;text-underline-offset:.3125em;-webkit-user-select:none;user-select:none}@media (forced-colors: active){.sbb-breadcrumb{text-decoration:underline}}.sbb-breadcrumb{display:flex;cursor:pointer;gap:var(--sbb-spacing-fixed-2x);color:var(--sbb-breadcrumb-color);align-items:center;overflow:hidden;outline:none}@media (forced-colors: active){.sbb-breadcrumb{--sbb-breadcrumb-color: ButtonText}}.sbb-breadcrumb: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);border-radius:var(--sbb-border-radius-2x)}.sbb-breadcrumb__label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host(:not([data-slot-names~=unnamed])) .sbb-breadcrumb__label{display:none}slot[name=icon] .sbb-breadcrumb__icon,slot[name=icon] ::slotted(*){flex-shrink:0}`;
10
+ let z = (() => {
11
+ var t;
12
+ let s = [n("sbb-breadcrumb"), m()], o, b = [], e, a = f(u(d));
13
+ return t = class extends a {
35
14
  renderTemplate() {
36
- return T`
15
+ return c`
37
16
  ${this.renderIconSlot("sbb-breadcrumb__icon")}
38
- <span class="sbb-breadcrumb__label" ?hidden=${!this._hasText}>
39
- <slot @slotchange=${this._handleSlotchange}></slot>
17
+ <span class="sbb-breadcrumb__label">
18
+ <slot></slot>
40
19
  </span>
41
20
  `;
42
21
  }
43
- }, b = new WeakMap(), s = a, (() => {
44
- const o = typeof Symbol == "function" && Symbol.metadata ? Object.create(n[Symbol.metadata] ?? null) : void 0;
45
- c = [g()], v(a, null, c, { kind: "accessor", name: "_hasText", static: !1, private: !1, access: { has: (i) => "_hasText" in i, get: (i) => i._hasText, set: (i, p) => {
46
- i._hasText = p;
47
- } }, metadata: o }, d, m), v(null, t = { value: s }, e, { kind: "class", name: s.name, metadata: o }, null, r), s = t.value, o && Object.defineProperty(s, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: o });
48
- })(), a.styles = I, l(s, r), s;
22
+ }, e = t, (() => {
23
+ const r = typeof Symbol == "function" && Symbol.metadata ? Object.create(a[Symbol.metadata] ?? null) : void 0;
24
+ i(null, o = { value: e }, s, { kind: "class", name: e.name, metadata: r }, null, b), e = o.value, r && Object.defineProperty(e, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: r });
25
+ })(), t.styles = p, l(e, b), e;
49
26
  })();
50
27
  export {
51
- C as SbbBreadcrumbElement
28
+ z as SbbBreadcrumbElement
52
29
  };
@@ -18,4 +18,4 @@ export declare class SbbIdReferenceController<T extends LitElement> implements R
18
18
  */
19
19
  find(): HTMLElement | null;
20
20
  }
21
- //# sourceMappingURL=id-observer-controller.d.ts.map
21
+ //# sourceMappingURL=id-reference-controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"id-reference-controller.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/controllers/id-reference-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,UAAU,EAAE,KAAK,kBAAkB,EAAE,MAAM,KAAK,CAAC;AAOzE;;GAEG;AACH,qBAAa,wBAAwB,CAAC,CAAC,SAAS,UAAU,CAAE,YAAW,kBAAkB;IAIrF,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,UAAU;IALpB,OAAO,CAAC,SAAS,CAAsC;gBAG7C,KAAK,EAAE,CAAC,EACR,MAAM,EAAE,MAAM,CAAC,EACf,UAAU;kBAZR,gBAAgB;qBAAe,GAAG,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC;MAY7C;IAKzB,aAAa,IAAI,IAAI;IAgDrB,gBAAgB,IAAI,IAAI;IAoB/B;;OAEG;IACI,IAAI,IAAI,WAAW,GAAG,IAAI;CAQlC"}
@@ -22,10 +22,12 @@ export declare class SbbSlotStateController implements ReactiveController {
22
22
  private _host;
23
23
  private _onChangeCallback;
24
24
  readonly slots: Set<string>;
25
+ private _textObserver;
25
26
  constructor(_host: ReactiveControllerHost & HTMLElement, _onChangeCallback?: (() => void) | null);
26
27
  hostConnected(): void;
27
28
  hostDisconnected(): void;
28
29
  private _slotchangeHandler;
29
30
  private _syncSlots;
31
+ private _updateSlotNameAttribute;
30
32
  }
31
33
  //# sourceMappingURL=slot-state-controller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"slot-state-controller.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/controllers/slot-state-controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAEtE;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,sBAAuB,YAAW,kBAAkB;IAI7D,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,iBAAiB;IAJ3B,SAAgB,KAAK,cAAqB;gBAGhC,KAAK,EAAE,sBAAsB,GAAG,WAAW,EAC3C,iBAAiB,GAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAW;IAKhD,aAAa,IAAI,IAAI;IAMrB,gBAAgB,IAAI,IAAI;IAM/B,OAAO,CAAC,kBAAkB,CAExB;IAEF,OAAO,CAAC,UAAU;CAuBnB"}
1
+ {"version":3,"file":"slot-state-controller.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/controllers/slot-state-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,kBAAkB,EAAE,KAAK,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAErF;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,sBAAuB,YAAW,kBAAkB;IAmB7D,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,iBAAiB;IAnB3B,SAAgB,KAAK,cAAqB;IAE1C,OAAO,CAAC,aAAa,CAahB;gBAGK,KAAK,EAAE,sBAAsB,GAAG,WAAW,EAC3C,iBAAiB,GAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAW;IAKhD,aAAa,IAAI,IAAI;IAKrB,gBAAgB,IAAI,IAAI;IAO/B,OAAO,CAAC,kBAAkB,CAExB;IAEF,OAAO,CAAC,UAAU;IA2BlB,OAAO,CAAC,wBAAwB;CAajC"}
@@ -1,30 +1,41 @@
1
- class r {
2
- constructor(t, o = null) {
3
- this._host = t, this._onChangeCallback = o, this.slots = /* @__PURE__ */ new Set(), this._slotchangeHandler = (s) => {
4
- this._syncSlots(s.target);
1
+ import { isServer as i } from "lit";
2
+ class l {
3
+ constructor(e, s = null) {
4
+ this._host = e, this._onChangeCallback = s, this.slots = /* @__PURE__ */ new Set(), this._textObserver = !i && new MutationObserver(() => {
5
+ Array.from(this._host.childNodes).filter((o) => o.nodeType === o.TEXT_NODE).some((o) => {
6
+ var n;
7
+ return (n = o.textContent) == null ? void 0 : n.trim();
8
+ }) ? this.slots.add("unnamed") : Array.from(this._host.children).every((o) => o.slot) && this.slots.delete("unnamed"), this._updateSlotNameAttribute();
9
+ }), this._slotchangeHandler = (t) => {
10
+ this._syncSlots(t.target);
5
11
  }, this._host.addController(this);
6
12
  }
7
13
  hostConnected() {
8
- var t;
9
- this._syncSlots(...this._host.querySelectorAll("slot")), (t = this._host.shadowRoot) == null || t.addEventListener("slotchange", this._slotchangeHandler);
14
+ var e, s, t;
15
+ this._syncSlots(...((s = (e = this._host.shadowRoot) == null ? void 0 : e.querySelectorAll) == null ? void 0 : s.call(e, "slot")) ?? []), (t = this._host.shadowRoot) == null || t.addEventListener("slotchange", this._slotchangeHandler);
10
16
  }
11
17
  hostDisconnected() {
12
- var t;
13
- (t = this._host.shadowRoot) == null || t.removeEventListener("slotchange", this._slotchangeHandler);
14
- }
15
- _syncSlots(...t) {
16
18
  var e;
17
- for (const n of t) {
18
- const l = n.name || "unnamed";
19
- n.assignedNodes().some((a) => {
20
- var h;
21
- return "tagName" in a || ((h = a.textContent) == null ? void 0 : h.trim());
22
- }) ? this.slots.add(l) : this.slots.delete(l);
19
+ (e = this._host.shadowRoot) == null || e.removeEventListener("slotchange", this._slotchangeHandler), this._textObserver.disconnect();
20
+ }
21
+ _syncSlots(...e) {
22
+ var s;
23
+ this._textObserver.disconnect();
24
+ for (const t of e) {
25
+ const o = t.name || "unnamed";
26
+ t.assignedNodes().some((n) => {
27
+ var a;
28
+ return "tagName" in n || ((a = n.textContent) == null ? void 0 : a.trim());
29
+ }) ? this.slots.add(o) : this.slots.delete(o), this._updateSlotNameAttribute();
23
30
  }
24
- const o = this._host.getAttribute("data-slot-names"), s = [...this.slots].sort().join(" ");
25
- s ? this._host.getAttribute("data-slot-names") !== s && this._host.setAttribute("data-slot-names", s) : this._host.removeAttribute("data-slot-names"), s !== o && ((e = this._onChangeCallback) == null || e.call(this));
31
+ (s = e.find((t) => !t.name)) == null || s.assignedNodes().filter((t) => t.nodeType === t.TEXT_NODE).forEach((t) => this._textObserver.observe(t, { characterData: !0 }));
32
+ }
33
+ _updateSlotNameAttribute() {
34
+ var t;
35
+ const e = this._host.getAttribute("data-slot-names"), s = [...this.slots].sort().join(" ");
36
+ s ? this._host.getAttribute("data-slot-names") !== s && this._host.setAttribute("data-slot-names", s) : this._host.removeAttribute("data-slot-names"), s !== e && ((t = this._onChangeCallback) == null || t.call(this));
26
37
  }
27
38
  }
28
39
  export {
29
- r as SbbSlotStateController
40
+ l as SbbSlotStateController
30
41
  };
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export * from './controllers/connected-abort-controller.js';
5
5
  export * from './controllers/escapable-overlay-controller.js';
6
- export * from './controllers/id-observer-controller.js';
6
+ export * from './controllers/id-reference-controller.js';
7
7
  export * from './controllers/inert-controller.js';
8
8
  export * from './controllers/language-controller.js';
9
9
  export * from './controllers/media-matchers-controller.js';
@@ -1 +1 @@
1
- {"version":3,"file":"controllers.d.ts","sourceRoot":"","sources":["../../../src/elements/core/controllers.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,6CAA6C,CAAC;AAC5D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,yCAAyC,CAAC;AACxD,cAAc,mCAAmC,CAAC;AAClD,cAAc,sCAAsC,CAAC;AACrD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,wCAAwC,CAAC"}
1
+ {"version":3,"file":"controllers.d.ts","sourceRoot":"","sources":["../../../src/elements/core/controllers.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,6CAA6C,CAAC;AAC5D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,0CAA0C,CAAC;AACzD,cAAc,mCAAmC,CAAC;AAClD,cAAc,sCAAsC,CAAC;AACrD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,wCAAwC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { SbbConnectedAbortController as o } from "./controllers/connected-abort-controller.js";
2
2
  import { SbbEscapableOverlayController as t } from "./controllers/escapable-overlay-controller.js";
3
- import { SbbIdReferenceController as a } from "./controllers/id-observer-controller.js";
3
+ import { SbbIdReferenceController as a } from "./controllers/id-reference-controller.js";
4
4
  import { SbbInertController as S } from "./controllers/inert-controller.js";
5
5
  import { SbbLanguageController as i } from "./controllers/language-controller.js";
6
6
  import { SbbMediaMatcherController as m, SbbMediaQueryBreakpointMediumAndAbove as C, SbbMediaQueryBreakpointMediumAndBelow as M, SbbMediaQueryBreakpointSmallAndBelow as u, SbbMediaQueryForcedColors as f, SbbMediaQueryHover as x, SbbMediaQueryPointerCoarse as y } from "./controllers/media-matchers-controller.js";
@@ -134,6 +134,20 @@ sbb-form-field {
134
134
  padding-inline-end: var(--sbb-form-field-select-inline-padding-end);
135
135
  }
136
136
 
137
+ &[size='s'] :where(input, sbb-date-input) {
138
+ // We shrink the input's height to support all types of inputs (especially type=number).
139
+ // Factor 1.25 ensures, letters are not cut.
140
+ height: calc(var(--sbb-form-field-input-text-size) * 1.25);
141
+
142
+ // Avoids Safari bug, where text gets misaligned with type=number
143
+ line-height: 1 !important;
144
+
145
+ // We add the missing block spacing to fit the line-height
146
+ margin-block: calc(
147
+ 0.5 * (var(--sbb-form-field-input-text-size) * (var(--sbb-typo-line-height-body-text) - 1.25))
148
+ );
149
+ }
150
+
137
151
  :where(textarea) {
138
152
  @include scrollbar.scrollbar;
139
153
 
package/core.css CHANGED
@@ -1217,6 +1217,11 @@ sbb-form-field :where(select) {
1217
1217
  sbb-form-field :where(select, sbb-select) {
1218
1218
  padding-inline-end: var(--sbb-form-field-select-inline-padding-end);
1219
1219
  }
1220
+ sbb-form-field[size=s] :where(input, sbb-date-input) {
1221
+ height: calc(var(--sbb-form-field-input-text-size) * 1.25);
1222
+ line-height: 1 !important;
1223
+ margin-block: calc(0.5 * var(--sbb-form-field-input-text-size) * (var(--sbb-typo-line-height-body-text) - 1.25));
1224
+ }
1220
1225
  sbb-form-field :where(textarea) {
1221
1226
  --sbb-scrollbar-thumb-width: 0.125rem;
1222
1227
  --sbb-scrollbar-thumb-width-hover: 0.25rem;
@@ -6987,7 +6987,7 @@
6987
6987
  "name": "*",
6988
6988
  "declaration": {
6989
6989
  "name": "*",
6990
- "package": "./controllers/id-observer-controller.js"
6990
+ "package": "./controllers/id-reference-controller.js"
6991
6991
  }
6992
6992
  },
6993
6993
  {
@@ -23162,25 +23162,6 @@
23162
23162
  }
23163
23163
  ],
23164
23164
  "members": [
23165
- {
23166
- "kind": "field",
23167
- "name": "_hasText",
23168
- "type": {
23169
- "text": "boolean"
23170
- },
23171
- "privacy": "private",
23172
- "default": "false"
23173
- },
23174
- {
23175
- "kind": "method",
23176
- "name": "_handleSlotchange",
23177
- "privacy": "private",
23178
- "return": {
23179
- "type": {
23180
- "text": "void"
23181
- }
23182
- }
23183
- },
23184
23165
  {
23185
23166
  "kind": "method",
23186
23167
  "name": "renderTemplate",
@@ -39433,7 +39414,7 @@
39433
39414
  },
39434
39415
  {
39435
39416
  "kind": "javascript-module",
39436
- "path": "core/controllers/id-observer-controller.js",
39417
+ "path": "core/controllers/id-reference-controller.js",
39437
39418
  "declarations": [
39438
39419
  {
39439
39420
  "kind": "class",
@@ -39490,7 +39471,7 @@
39490
39471
  "name": "SbbIdReferenceController",
39491
39472
  "declaration": {
39492
39473
  "name": "SbbIdReferenceController",
39493
- "module": "core/controllers/id-observer-controller.js"
39474
+ "module": "core/controllers/id-reference-controller.js"
39494
39475
  }
39495
39476
  }
39496
39477
  ]
@@ -39933,6 +39914,11 @@
39933
39914
  "readonly": true,
39934
39915
  "default": "new Set<string>()"
39935
39916
  },
39917
+ {
39918
+ "kind": "field",
39919
+ "name": "_textObserver",
39920
+ "privacy": "private"
39921
+ },
39936
39922
  {
39937
39923
  "kind": "method",
39938
39924
  "name": "hostConnected",
@@ -39975,6 +39961,16 @@
39975
39961
  }
39976
39962
  }
39977
39963
  ]
39964
+ },
39965
+ {
39966
+ "kind": "method",
39967
+ "name": "_updateSlotNameAttribute",
39968
+ "privacy": "private",
39969
+ "return": {
39970
+ "type": {
39971
+ "text": "void"
39972
+ }
39973
+ }
39978
39974
  }
39979
39975
  ]
39980
39976
  }
@@ -11,7 +11,7 @@ import { defaultDateAdapter as R } from "../core/datetime.js";
11
11
  import { forceType as v, DateOnlyType as D, dateConverter as O } from "../core/decorators.js";
12
12
  import { i18nDatePickerPlaceholder as P, i18nDateInvalid as U, i18nDateMin as B, i18nDateMax as H } from "../core/i18n.js";
13
13
  import { SbbFormAssociatedInputMixin as J } from "../core/mixins.js";
14
- const K = T`:host{display:inline-block;min-width:9.375rem;max-width:100%;cursor:text}@media (forced-colors: active){:host{color:FieldText}}:host(:disabled){cursor:default}:host(:focus){text-overflow:initial!important}:host(:empty):after{content:attr(placeholder);color:var(--sbb-color-metal);-webkit-text-fill-color:var(--sbb-color-metal);opacity:1}@media (forced-colors: active){:host(:empty):after{color:GrayText}}`;
14
+ const K = T`:host{display:inline-flex;min-width:9.375rem;max-width:100%;cursor:text;align-items:center}@media (forced-colors: active){:host{color:FieldText}}:host(:disabled){cursor:default}:host(:focus){text-overflow:initial!important}:host(:empty):after{content:attr(placeholder);color:var(--sbb-color-metal);-webkit-text-fill-color:var(--sbb-color-metal);opacity:1}@media (forced-colors: active){:host(:empty):after{color:GrayText}}`;
15
15
  Object.assign(ValidityState.prototype, {
16
16
  get sbbDateFilter() {
17
17
  return !1;
@@ -19,8 +19,8 @@ Object.assign(ValidityState.prototype, {
19
19
  });
20
20
  let se = (() => {
21
21
  var h, u, c, l;
22
- let a = [L("sbb-date-input")], s, i = [], n, b = J(j), y = [], g, A, k = [], x = [], F, w = [], S = [], V, E, I = [], C = [];
23
- return l = class extends b {
22
+ let a = [L("sbb-date-input")], s, i = [], n, g = J(j), y = [], b, A, k = [], x = [], F, w = [], S = [], V, E, I = [], C = [];
23
+ return l = class extends g {
24
24
  constructor() {
25
25
  var e, t;
26
26
  super();
@@ -136,8 +136,8 @@ let se = (() => {
136
136
  ["badInput", "rangeUnderflow", "rangeOverflow", "sbbDateFilter"].forEach((e) => this.removeValidityFlag(e));
137
137
  }
138
138
  }, h = new WeakMap(), u = new WeakMap(), c = new WeakMap(), n = l, (() => {
139
- const e = typeof Symbol == "function" && Symbol.metadata ? Object.create(b[Symbol.metadata] ?? null) : void 0;
140
- g = [v(), _({ attribute: !1, type: D })], A = [v(), _({ converter: O, reflect: !0, type: D })], F = [v(), _({ converter: O, reflect: !0, type: D })], V = [_({ attribute: !1 })], E = [_({ attribute: "weekday-style" })], m(l, null, g, { kind: "setter", name: "valueAsDate", static: !1, private: !1, access: { has: (t) => "valueAsDate" in t, set: (t, r) => {
139
+ const e = typeof Symbol == "function" && Symbol.metadata ? Object.create(g[Symbol.metadata] ?? null) : void 0;
140
+ b = [v(), _({ attribute: !1, type: D })], A = [v(), _({ converter: O, reflect: !0, type: D })], F = [v(), _({ converter: O, reflect: !0, type: D })], V = [_({ attribute: !1 })], E = [_({ attribute: "weekday-style" })], m(l, null, b, { kind: "setter", name: "valueAsDate", static: !1, private: !1, access: { has: (t) => "valueAsDate" in t, set: (t, r) => {
141
141
  t.valueAsDate = r;
142
142
  } }, metadata: e }, null, y), m(l, null, A, { kind: "accessor", name: "min", static: !1, private: !1, access: { has: (t) => "min" in t, get: (t) => t.min, set: (t, r) => {
143
143
  t.min = r;
@@ -9,8 +9,6 @@ declare const SbbBreadcrumbElement_base: import('../../core/mixins.js').Abstract
9
9
  */
10
10
  export declare class SbbBreadcrumbElement extends SbbBreadcrumbElement_base {
11
11
  static styles: CSSResultGroup;
12
- private accessor _hasText;
13
- private _handleSlotchange;
14
12
  protected renderTemplate(): TemplateResult;
15
13
  }
16
14
  declare global {
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumb.d.ts","sourceRoot":"","sources":["../../../../../src/elements/breadcrumb/breadcrumb/breadcrumb.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAI1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;;AAMjE;;;;;GAKG;AACH,qBAEM,oBAAqB,SAAQ,yBAAuD;IACxF,OAAuB,MAAM,EAAE,cAAc,CAAS;IAE7C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAE3C,OAAO,CAAC,iBAAiB;cAMN,cAAc,IAAI,cAAc;CAQpD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,gBAAgB,EAAE,oBAAoB,CAAC;KACxC;CACF"}
1
+ {"version":3,"file":"breadcrumb.d.ts","sourceRoot":"","sources":["../../../../../src/elements/breadcrumb/breadcrumb/breadcrumb.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAI1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;;AAOjE;;;;;GAKG;AACH,qBAGM,oBAAqB,SAAQ,yBAAuD;IACxF,OAAuB,MAAM,EAAE,cAAc,CAAS;cAEnC,cAAc,IAAI,cAAc;CAQpD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,gBAAgB,EAAE,oBAAoB,CAAC;KACxC;CACF"}
@@ -1,14 +1,8 @@
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
1
  import { __esDecorate, __runInitializers } from "tslib";
9
- import { customElement, state } from "lit/decorators.js";
2
+ import { customElement } from "lit/decorators.js";
10
3
  import { html } from "lit/static-html.js";
11
4
  import { SbbLinkBaseElement } from "../../core/base-elements.js";
5
+ import { slotState } from "../../core/decorators.js";
12
6
  import { SbbHydrationMixin } from "../../core/mixins.js";
13
7
  import { SbbIconNameMixin } from "../../icon.js";
14
8
  import { css } from "lit";
@@ -77,53 +71,32 @@ const style = css`*,
77
71
  white-space: nowrap;
78
72
  text-overflow: ellipsis;
79
73
  }
74
+ :host(:not([data-slot-names~=unnamed])) .sbb-breadcrumb__label {
75
+ display: none;
76
+ }
80
77
 
81
78
  slot[name=icon] .sbb-breadcrumb__icon,
82
79
  slot[name=icon] ::slotted(*) {
83
80
  flex-shrink: 0;
84
81
  }`;
85
82
  let SbbBreadcrumbElement = (() => {
86
- var __hasText_accessor_storage, _a;
87
- let _classDecorators = [customElement("sbb-breadcrumb")];
83
+ var _a;
84
+ let _classDecorators = [customElement("sbb-breadcrumb"), slotState()];
88
85
  let _classDescriptor;
89
86
  let _classExtraInitializers = [];
90
87
  let _classThis;
91
88
  let _classSuper = SbbIconNameMixin(SbbHydrationMixin(SbbLinkBaseElement));
92
- let __hasText_decorators;
93
- let __hasText_initializers = [];
94
- let __hasText_extraInitializers = [];
95
89
  _a = class extends _classSuper {
96
- constructor() {
97
- super(...arguments);
98
- __privateAdd(this, __hasText_accessor_storage, __runInitializers(this, __hasText_initializers, false));
99
- __runInitializers(this, __hasText_extraInitializers);
100
- }
101
- get _hasText() {
102
- return __privateGet(this, __hasText_accessor_storage);
103
- }
104
- set _hasText(value) {
105
- __privateSet(this, __hasText_accessor_storage, value);
106
- }
107
- _handleSlotchange() {
108
- this._hasText = Array.from(this.childNodes ?? []).some((n) => {
109
- var _a2;
110
- return !n.slot && ((_a2 = n.textContent) == null ? void 0 : _a2.trim());
111
- });
112
- }
113
90
  renderTemplate() {
114
91
  return html`
115
92
  ${this.renderIconSlot("sbb-breadcrumb__icon")}
116
- <span class="sbb-breadcrumb__label" ?hidden=${!this._hasText}>
117
- <slot @slotchange=${this._handleSlotchange}></slot>
93
+ <span class="sbb-breadcrumb__label">
94
+ <slot></slot>
118
95
  </span>
119
96
  `;
120
97
  }
121
- }, __hasText_accessor_storage = new WeakMap(), _classThis = _a, (() => {
98
+ }, _classThis = _a, (() => {
122
99
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
123
- __hasText_decorators = [state()];
124
- __esDecorate(_a, null, __hasText_decorators, { kind: "accessor", name: "_hasText", static: false, private: false, access: { has: (obj) => "_hasText" in obj, get: (obj) => obj._hasText, set: (obj, value) => {
125
- obj._hasText = value;
126
- } }, metadata: _metadata }, __hasText_initializers, __hasText_extraInitializers);
127
100
  __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
128
101
  _classThis = _classDescriptor.value;
129
102
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
@@ -133,4 +106,4 @@ let SbbBreadcrumbElement = (() => {
133
106
  export {
134
107
  SbbBreadcrumbElement
135
108
  };
136
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi9icmVhZGNydW1iLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHN0YXRlIH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgaHRtbCB9IGZyb20gJ2xpdC9zdGF0aWMtaHRtbC5qcyc7XG5cbmltcG9ydCB7IFNiYkxpbmtCYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy5qcyc7XG5pbXBvcnQgeyBTYmJIeWRyYXRpb25NaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IFNiYkljb25OYW1lTWl4aW4gfSBmcm9tICcuLi8uLi9pY29uLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vYnJlYWRjcnVtYi5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgbGluayB0byBhIHBhZ2U7IHVzZWQgd2l0aGluIGEgYHNiYi1icmVhZGNydW1iLWdyb3VwYCBpdCBjYW4gZGlzcGxheSB0aGUgcGF0aCB0byB0aGUgY3VycmVudCBwYWdlLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIGJyZWFkY3J1bWIuXG4gKiBAc2xvdCBpY29uIC0gVXNlIHRoaXMgdG8gZGlzcGxheSBhbiBpY29uIGFzIGJyZWFkY3J1bWIuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi1icmVhZGNydW1iJylcbmNsYXNzIFNiYkJyZWFkY3J1bWJFbGVtZW50IGV4dGVuZHMgU2JiSWNvbk5hbWVNaXhpbihTYmJIeWRyYXRpb25NaXhpbihTYmJMaW5rQmFzZUVsZW1lbnQpKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIEBzdGF0ZSgpIHByaXZhdGUgYWNjZXNzb3IgX2hhc1RleHQgPSBmYWxzZTtcblxuICBwcml2YXRlIF9oYW5kbGVTbG90Y2hhbmdlKCk6IHZvaWQge1xuICAgIHRoaXMuX2hhc1RleHQgPSBBcnJheS5mcm9tKHRoaXMuY2hpbGROb2RlcyA/PyBbXSkuc29tZShcbiAgICAgIChuKSA9PiAhKG4gYXMgRWxlbWVudCkuc2xvdCAmJiBuLnRleHRDb250ZW50Py50cmltKCksXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXJUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICAke3RoaXMucmVuZGVySWNvblNsb3QoJ3NiYi1icmVhZGNydW1iX19pY29uJyl9XG4gICAgICA8c3BhbiBjbGFzcz1cInNiYi1icmVhZGNydW1iX19sYWJlbFwiID9oaWRkZW49JHshdGhpcy5faGFzVGV4dH0+XG4gICAgICAgIDxzbG90IEBzbG90Y2hhbmdlPSR7dGhpcy5faGFuZGxlU2xvdGNoYW5nZX0+PC9zbG90PlxuICAgICAgPC9zcGFuPlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1icmVhZGNydW1iJzogU2JiQnJlYWRjcnVtYkVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJfYSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBa0JNLHdCQUFvQixNQUFBOzswQkFEekIsY0FBYyxnQkFBZ0IsQ0FBQzs7OztBQUNHLE1BQUEsY0FBQSxpQkFBaUIsa0JBQWtCLGtCQUFrQixDQUFDOzs7O0FBQTlELEVBQUEsbUJBQVEsWUFBdUQ7QUFBQTs7QUFHL0UscURBQUEsa0JBQUEsTUFBQSx3QkFBNEIsS0FBSzs7O0lBQWpDLElBQWlCLFdBQWlCO0FBQUEsYUFBQSxtQkFBQTtBQUFBLElBQUE7QUFBQSxJQUFsQyxJQUFpQixTQUFpQixPQUFBO0FBQUEseUJBQUEsNEJBQUE7QUFBQSxJQUFBO0FBQUEsSUFFbkMsb0JBQWlCO0FBQ3ZCLFdBQUssV0FBVyxNQUFNLEtBQUssS0FBSyxjQUFjLEVBQUUsRUFBRSxLQUNoRCxDQUFDLE1BQU07O0FBQUEsZ0JBQUUsRUFBYyxVQUFRQSxNQUFBLEVBQUUsZ0JBQUYsZ0JBQUFBLElBQWU7QUFBQSxPQUFNO0FBQUEsSUFBQTtBQUFBLElBSXJDLGlCQUFjO0FBQ3hCLGFBQUE7QUFBQSxRQUNILEtBQUssZUFBZSxzQkFBc0IsQ0FBQztBQUFBLG9EQUNDLENBQUMsS0FBSyxRQUFRO0FBQUEsNEJBQ3RDLEtBQUssaUJBQWlCO0FBQUE7QUFBQTtBQUFBLElBQUE7QUFBQSxLQVp2Qzs7QUFBUiwyQkFBQSxDQUFBLE9BQU87QUFBa0IsaUJBQUEsSUFBQSxNQUFBLHNCQUFBLEVBQUEsTUFBQSxZQUFBLE1BQUEsWUFBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSxjQUFBLEtBQUEsS0FBQSxDQUFBLFFBQUEsSUFBQSxVQUFBLEtBQUEsQ0FBQSxLQUFBLFVBQUE7QUFBQSxVQUFBLFdBQWlCO0FBQUEsU0FBQSxVQUFBLGFBQUEsd0JBQUEsMkJBQUE7QUFIN0MsaUJBbUJDLE1BQUEsbUJBQUEsRUFBQSxPQUFBLFdBQUEsR0FBQSxrQkFBQSxFQUFBLE1BQUEsU0FBQSxNQUFBLFdBQUEsTUFBQSxVQUFBLFVBQUEsR0FBQSxNQUFBLHVCQUFBOzs7UUFsQndCLEdBQU0sU0FBbUIsT0FENUMsa0JBQW9CLFlBQUEsdUJBQUEsR0FBQzs7OyJ9
109
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi9icmVhZGNydW1iLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBodG1sIH0gZnJvbSAnbGl0L3N0YXRpYy1odG1sLmpzJztcblxuaW1wb3J0IHsgU2JiTGlua0Jhc2VFbGVtZW50IH0gZnJvbSAnLi4vLi4vY29yZS9iYXNlLWVsZW1lbnRzLmpzJztcbmltcG9ydCB7IHNsb3RTdGF0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBTYmJIeWRyYXRpb25NaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IFNiYkljb25OYW1lTWl4aW4gfSBmcm9tICcuLi8uLi9pY29uLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vYnJlYWRjcnVtYi5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgbGluayB0byBhIHBhZ2U7IHVzZWQgd2l0aGluIGEgYHNiYi1icmVhZGNydW1iLWdyb3VwYCBpdCBjYW4gZGlzcGxheSB0aGUgcGF0aCB0byB0aGUgY3VycmVudCBwYWdlLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIGJyZWFkY3J1bWIuXG4gKiBAc2xvdCBpY29uIC0gVXNlIHRoaXMgdG8gZGlzcGxheSBhbiBpY29uIGFzIGJyZWFkY3J1bWIuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi1icmVhZGNydW1iJylcbkBzbG90U3RhdGUoKVxuY2xhc3MgU2JiQnJlYWRjcnVtYkVsZW1lbnQgZXh0ZW5kcyBTYmJJY29uTmFtZU1peGluKFNiYkh5ZHJhdGlvbk1peGluKFNiYkxpbmtCYXNlRWxlbWVudCkpIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlclRlbXBsYXRlKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgICR7dGhpcy5yZW5kZXJJY29uU2xvdCgnc2JiLWJyZWFkY3J1bWJfX2ljb24nKX1cbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWJyZWFkY3J1bWJfX2xhYmVsXCI+XG4gICAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgIDwvc3Bhbj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItYnJlYWRjcnVtYic6IFNiYkJyZWFkY3J1bWJFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBb0JNLHdCQUFvQixNQUFBOztBQUZ6QixNQUFBLG1CQUFBLENBQUEsY0FBYyxnQkFBZ0IsR0FDOUIsV0FBVzs7OztBQUN1QixNQUFBLGNBQUEsaUJBQWlCLGtCQUFrQixrQkFBa0IsQ0FBQztBQUE5RCxFQUFBLG1CQUFRLFlBQXVEO0FBQUEsSUFHckUsaUJBQWM7QUFDeEIsYUFBQTtBQUFBLFFBQ0gsS0FBSyxlQUFlLHNCQUFzQixDQUFDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQUFBO0FBQUE7O0FBTG5ELGlCQVdDLE1BQUEsbUJBQUEsRUFBQSxPQUFBLFdBQUEsR0FBQSxrQkFBQSxFQUFBLE1BQUEsU0FBQSxNQUFBLFdBQUEsTUFBQSxVQUFBLFVBQUEsR0FBQSxNQUFBLHVCQUFBOzs7UUFWd0IsR0FBTSxTQUFtQixPQUQ1QyxrQkFBb0IsWUFBQSx1QkFBQSxHQUFDOzs7In0=
@@ -18,4 +18,4 @@ export declare class SbbIdReferenceController<T extends LitElement> implements R
18
18
  */
19
19
  find(): HTMLElement | null;
20
20
  }
21
- //# sourceMappingURL=id-observer-controller.d.ts.map
21
+ //# sourceMappingURL=id-reference-controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"id-reference-controller.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/controllers/id-reference-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,UAAU,EAAE,KAAK,kBAAkB,EAAE,MAAM,KAAK,CAAC;AAOzE;;GAEG;AACH,qBAAa,wBAAwB,CAAC,CAAC,SAAS,UAAU,CAAE,YAAW,kBAAkB;IAIrF,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,UAAU;IALpB,OAAO,CAAC,SAAS,CAAsC;gBAG7C,KAAK,EAAE,CAAC,EACR,MAAM,EAAE,MAAM,CAAC,EACf,UAAU;kBAZR,gBAAgB;qBAAe,GAAG,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC;MAY7C;IAKzB,aAAa,IAAI,IAAI;IAgDrB,gBAAgB,IAAI,IAAI;IAoB/B;;OAEG;IACI,IAAI,IAAI,WAAW,GAAG,IAAI;CAQlC"}
@@ -0,0 +1,84 @@
1
+ import { isServer } from "lit";
2
+ const observers = /* @__PURE__ */ new WeakMap();
3
+ class SbbIdReferenceController {
4
+ constructor(_host, _idRef, _observers = observers) {
5
+ this._host = _host;
6
+ this._idRef = _idRef;
7
+ this._observers = _observers;
8
+ this._rootNode = null;
9
+ this._host.addController(this);
10
+ }
11
+ hostConnected() {
12
+ if (isServer) {
13
+ return;
14
+ }
15
+ this._rootNode = this._host.getRootNode();
16
+ const observerContext = this._observers.get(this._rootNode);
17
+ if (observerContext) {
18
+ observerContext.controllers.add(this);
19
+ } else {
20
+ const controllers = /* @__PURE__ */ new Set([this]);
21
+ const observer = new MutationObserver((mutations) => {
22
+ const mutatedIds = /* @__PURE__ */ new Set();
23
+ for (const mutation of mutations) {
24
+ if (mutation.type === "attributes") {
25
+ mutatedIds.add(mutation.oldValue);
26
+ mutatedIds.add(mutation.target.id);
27
+ } else if (mutation.type === "childList") {
28
+ for (const node of [...mutation.addedNodes, ...mutation.removedNodes]) {
29
+ if (node instanceof HTMLElement) {
30
+ mutatedIds.add(node.id);
31
+ node.querySelectorAll("[id]").forEach((e) => mutatedIds.add(e.id));
32
+ }
33
+ }
34
+ }
35
+ }
36
+ for (const controller of controllers) {
37
+ const id = controller._host[controller._idRef];
38
+ if (id && typeof id === "string" && mutatedIds.has(id)) {
39
+ controller._host.requestUpdate();
40
+ }
41
+ }
42
+ });
43
+ observer.observe(this._rootNode, {
44
+ attributeFilter: ["id"],
45
+ childList: true,
46
+ subtree: true,
47
+ attributeOldValue: true
48
+ });
49
+ this._observers.set(this._rootNode, { observer, controllers });
50
+ }
51
+ }
52
+ hostDisconnected() {
53
+ if (isServer || !this._rootNode) {
54
+ return;
55
+ }
56
+ const observerContext = this._observers.get(this._rootNode);
57
+ if (!observerContext) {
58
+ this._rootNode = null;
59
+ return;
60
+ }
61
+ observerContext.controllers.delete(this);
62
+ if (observerContext.controllers.size === 0) {
63
+ observerContext.observer.disconnect();
64
+ this._observers.delete(this._rootNode);
65
+ }
66
+ this._rootNode = null;
67
+ }
68
+ /**
69
+ * Find the element by id in the current document fragment
70
+ */
71
+ find() {
72
+ var _a;
73
+ if (isServer || !this._rootNode) {
74
+ return null;
75
+ } else {
76
+ const id = this._host[this._idRef];
77
+ return typeof id == "string" ? (_a = this._rootNode) == null ? void 0 : _a.querySelector(`#${id}`) : null;
78
+ }
79
+ }
80
+ }
81
+ export {
82
+ SbbIdReferenceController
83
+ };
84
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQtcmVmZXJlbmNlLWNvbnRyb2xsZXIuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb3JlL2NvbnRyb2xsZXJzL2lkLXJlZmVyZW5jZS1jb250cm9sbGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzU2VydmVyLCB0eXBlIExpdEVsZW1lbnQsIHR5cGUgUmVhY3RpdmVDb250cm9sbGVyIH0gZnJvbSAnbGl0JztcblxuY29uc3Qgb2JzZXJ2ZXJzID0gbmV3IFdlYWtNYXA8XG4gIE5vZGUsXG4gIHsgb2JzZXJ2ZXI6IE11dGF0aW9uT2JzZXJ2ZXI7IGNvbnRyb2xsZXJzOiBTZXQ8U2JiSWRSZWZlcmVuY2VDb250cm9sbGVyPGFueT4+IH1cbj4oKTtcblxuLyoqXG4gKiBUcmFja3MgaWQgY2hhbmdlcyBpbiB0aGUgRE9NIGFuZCBjYWxscyBjb21wb25lbnQgd2hlbiBtYXRjaGluZyB3aXRoIHJlcXVlc3RVcGRhdGUoKS5cbiAqL1xuZXhwb3J0IGNsYXNzIFNiYklkUmVmZXJlbmNlQ29udHJvbGxlcjxUIGV4dGVuZHMgTGl0RWxlbWVudD4gaW1wbGVtZW50cyBSZWFjdGl2ZUNvbnRyb2xsZXIge1xuICBwcml2YXRlIF9yb290Tm9kZTogRG9jdW1lbnQgfCBTaGFkb3dSb290IHwgbnVsbCA9IG51bGw7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2hvc3Q6IFQsXG4gICAgcHJpdmF0ZSBfaWRSZWY6IGtleW9mIFQsXG4gICAgcHJpdmF0ZSBfb2JzZXJ2ZXJzID0gb2JzZXJ2ZXJzLFxuICApIHtcbiAgICB0aGlzLl9ob3N0LmFkZENvbnRyb2xsZXIodGhpcyk7XG4gIH1cblxuICBwdWJsaWMgaG9zdENvbm5lY3RlZCgpOiB2b2lkIHtcbiAgICBpZiAoaXNTZXJ2ZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9yb290Tm9kZSA9IHRoaXMuX2hvc3QuZ2V0Um9vdE5vZGUoKSBhcyBEb2N1bWVudCB8IFNoYWRvd1Jvb3Q7XG4gICAgY29uc3Qgb2JzZXJ2ZXJDb250ZXh0ID0gdGhpcy5fb2JzZXJ2ZXJzLmdldCh0aGlzLl9yb290Tm9kZSk7XG5cbiAgICBpZiAob2JzZXJ2ZXJDb250ZXh0KSB7XG4gICAgICBvYnNlcnZlckNvbnRleHQuY29udHJvbGxlcnMuYWRkKHRoaXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBjb250cm9sbGVycyA9IG5ldyBTZXQoW3RoaXNdKTtcbiAgICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IE11dGF0aW9uT2JzZXJ2ZXIoKG11dGF0aW9ucykgPT4ge1xuICAgICAgICBjb25zdCBtdXRhdGVkSWRzID0gbmV3IFNldDxzdHJpbmc+KCk7XG5cbiAgICAgICAgZm9yIChjb25zdCBtdXRhdGlvbiBvZiBtdXRhdGlvbnMpIHtcbiAgICAgICAgICBpZiAobXV0YXRpb24udHlwZSA9PT0gJ2F0dHJpYnV0ZXMnKSB7XG4gICAgICAgICAgICBtdXRhdGVkSWRzLmFkZChtdXRhdGlvbi5vbGRWYWx1ZSEpO1xuICAgICAgICAgICAgbXV0YXRlZElkcy5hZGQoKG11dGF0aW9uLnRhcmdldCBhcyBIVE1MRWxlbWVudCkuaWQpO1xuICAgICAgICAgIH0gZWxzZSBpZiAobXV0YXRpb24udHlwZSA9PT0gJ2NoaWxkTGlzdCcpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3Qgbm9kZSBvZiBbLi4ubXV0YXRpb24uYWRkZWROb2RlcywgLi4ubXV0YXRpb24ucmVtb3ZlZE5vZGVzXSkge1xuICAgICAgICAgICAgICBpZiAobm9kZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgbXV0YXRlZElkcy5hZGQobm9kZS5pZCk7XG4gICAgICAgICAgICAgICAgbm9kZS5xdWVyeVNlbGVjdG9yQWxsKCdbaWRdJykuZm9yRWFjaCgoZSkgPT4gbXV0YXRlZElkcy5hZGQoZS5pZCkpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChjb25zdCBjb250cm9sbGVyIG9mIGNvbnRyb2xsZXJzKSB7XG4gICAgICAgICAgY29uc3QgaWQgPSBjb250cm9sbGVyLl9ob3N0W2NvbnRyb2xsZXIuX2lkUmVmXTtcbiAgICAgICAgICBpZiAoaWQgJiYgdHlwZW9mIGlkID09PSAnc3RyaW5nJyAmJiBtdXRhdGVkSWRzLmhhcyhpZCkpIHtcbiAgICAgICAgICAgIGNvbnRyb2xsZXIuX2hvc3QucmVxdWVzdFVwZGF0ZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIG9ic2VydmVyLm9ic2VydmUodGhpcy5fcm9vdE5vZGUsIHtcbiAgICAgICAgYXR0cmlidXRlRmlsdGVyOiBbJ2lkJ10sXG4gICAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgICAgc3VidHJlZTogdHJ1ZSxcbiAgICAgICAgYXR0cmlidXRlT2xkVmFsdWU6IHRydWUsXG4gICAgICB9KTtcblxuICAgICAgdGhpcy5fb2JzZXJ2ZXJzLnNldCh0aGlzLl9yb290Tm9kZSwgeyBvYnNlcnZlciwgY29udHJvbGxlcnMgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGhvc3REaXNjb25uZWN0ZWQoKTogdm9pZCB7XG4gICAgaWYgKGlzU2VydmVyIHx8ICF0aGlzLl9yb290Tm9kZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG9ic2VydmVyQ29udGV4dCA9IHRoaXMuX29ic2VydmVycy5nZXQodGhpcy5fcm9vdE5vZGUpO1xuICAgIGlmICghb2JzZXJ2ZXJDb250ZXh0KSB7XG4gICAgICB0aGlzLl9yb290Tm9kZSA9IG51bGw7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgb2JzZXJ2ZXJDb250ZXh0LmNvbnRyb2xsZXJzLmRlbGV0ZSh0aGlzKTtcbiAgICBpZiAob2JzZXJ2ZXJDb250ZXh0LmNvbnRyb2xsZXJzLnNpemUgPT09IDApIHtcbiAgICAgIG9ic2VydmVyQ29udGV4dC5vYnNlcnZlci5kaXNjb25uZWN0KCk7XG4gICAgICB0aGlzLl9vYnNlcnZlcnMuZGVsZXRlKHRoaXMuX3Jvb3ROb2RlKTtcbiAgICB9XG5cbiAgICB0aGlzLl9yb290Tm9kZSA9IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogRmluZCB0aGUgZWxlbWVudCBieSBpZCBpbiB0aGUgY3VycmVudCBkb2N1bWVudCBmcmFnbWVudFxuICAgKi9cbiAgcHVibGljIGZpbmQoKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICBpZiAoaXNTZXJ2ZXIgfHwgIXRoaXMuX3Jvb3ROb2RlKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgaWQgPSB0aGlzLl9ob3N0W3RoaXMuX2lkUmVmXTtcbiAgICAgIHJldHVybiB0eXBlb2YgaWQgPT0gJ3N0cmluZycgPyB0aGlzLl9yb290Tm9kZT8ucXVlcnlTZWxlY3RvcihgIyR7aWR9YCkgOiBudWxsO1xuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFFQSxNQUFNLGdDQUFnQjtNQVFULHlCQUF3QjtBQUFBLEVBR25DLFlBQ1UsT0FDQSxRQUNBLGFBQWEsV0FBUztBQUZ0QixTQUFLLFFBQUw7QUFDQSxTQUFNLFNBQU47QUFDQSxTQUFVLGFBQVY7QUFMRixTQUFTLFlBQWlDO0FBTzNDLFNBQUEsTUFBTSxjQUFjLElBQUk7QUFBQSxFQUFBO0FBQUEsRUFHeEIsZ0JBQWE7QUFDbEIsUUFBSSxVQUFVO0FBQ1o7QUFBQSxJQUFBO0FBR0csU0FBQSxZQUFZLEtBQUssTUFBTSxZQUFXO0FBQ3ZDLFVBQU0sa0JBQWtCLEtBQUssV0FBVyxJQUFJLEtBQUssU0FBUztBQUUxRCxRQUFJLGlCQUFpQjtBQUNILHNCQUFBLFlBQVksSUFBSSxJQUFJO0FBQUEsSUFBQSxPQUMvQjtBQUNMLFlBQU0sY0FBYyxvQkFBSSxJQUFJLENBQUMsSUFBSSxDQUFDO0FBQ2xDLFlBQU0sV0FBVyxJQUFJLGlCQUFpQixDQUFDLGNBQWE7QUFDNUMsY0FBQSxpQ0FBaUI7QUFFdkIsbUJBQVcsWUFBWSxXQUFXO0FBQzVCLGNBQUEsU0FBUyxTQUFTLGNBQWM7QUFDdkIsdUJBQUEsSUFBSSxTQUFTLFFBQVM7QUFDdEIsdUJBQUEsSUFBSyxTQUFTLE9BQXVCLEVBQUU7QUFBQSxVQUFBLFdBQ3pDLFNBQVMsU0FBUyxhQUFhO0FBQzdCLHVCQUFBLFFBQVEsQ0FBQyxHQUFHLFNBQVMsWUFBWSxHQUFHLFNBQVMsWUFBWSxHQUFHO0FBQ3JFLGtCQUFJLGdCQUFnQixhQUFhO0FBQ3BCLDJCQUFBLElBQUksS0FBSyxFQUFFO0FBQ2pCLHFCQUFBLGlCQUFpQixNQUFNLEVBQUUsUUFBUSxDQUFDLE1BQU0sV0FBVyxJQUFJLEVBQUUsRUFBRSxDQUFDO0FBQUEsY0FBQTtBQUFBLFlBQ25FO0FBQUEsVUFDRjtBQUFBLFFBQ0Y7QUFHRixtQkFBVyxjQUFjLGFBQWE7QUFDcEMsZ0JBQU0sS0FBSyxXQUFXLE1BQU0sV0FBVyxNQUFNO0FBQzdDLGNBQUksTUFBTSxPQUFPLE9BQU8sWUFBWSxXQUFXLElBQUksRUFBRSxHQUFHO0FBQ3RELHVCQUFXLE1BQU07O1FBQ25CO0FBQUEsTUFDRixDQUNEO0FBRVEsZUFBQSxRQUFRLEtBQUssV0FBVztBQUFBLFFBQy9CLGlCQUFpQixDQUFDLElBQUk7QUFBQSxRQUN0QixXQUFXO0FBQUEsUUFDWCxTQUFTO0FBQUEsUUFDVCxtQkFBbUI7QUFBQSxNQUFBLENBQ3BCO0FBRUQsV0FBSyxXQUFXLElBQUksS0FBSyxXQUFXLEVBQUUsVUFBVSxhQUFhO0FBQUEsSUFBQTtBQUFBLEVBQy9EO0FBQUEsRUFHSyxtQkFBZ0I7QUFDakIsUUFBQSxZQUFZLENBQUMsS0FBSyxXQUFXO0FBQy9CO0FBQUEsSUFBQTtBQUdGLFVBQU0sa0JBQWtCLEtBQUssV0FBVyxJQUFJLEtBQUssU0FBUztBQUMxRCxRQUFJLENBQUMsaUJBQWlCO0FBQ3BCLFdBQUssWUFBWTtBQUNqQjtBQUFBLElBQUE7QUFHYyxvQkFBQSxZQUFZLE9BQU8sSUFBSTtBQUNuQyxRQUFBLGdCQUFnQixZQUFZLFNBQVMsR0FBRztBQUMxQyxzQkFBZ0IsU0FBUztBQUNwQixXQUFBLFdBQVcsT0FBTyxLQUFLLFNBQVM7QUFBQSxJQUFBO0FBR3ZDLFNBQUssWUFBWTtBQUFBLEVBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1aLE9BQUk7O0FBQ0wsUUFBQSxZQUFZLENBQUMsS0FBSyxXQUFXO0FBQ3hCLGFBQUE7QUFBQSxJQUFBLE9BQ0Y7QUFDTCxZQUFNLEtBQUssS0FBSyxNQUFNLEtBQUssTUFBTTtBQUMxQixhQUFBLE9BQU8sTUFBTSxZQUFXLFVBQUssY0FBTCxtQkFBZ0IsY0FBYyxJQUFJLEVBQUUsTUFBTTtBQUFBLElBQUE7QUFBQSxFQUMzRTtBQUVIOyJ9
@@ -22,10 +22,12 @@ export declare class SbbSlotStateController implements ReactiveController {
22
22
  private _host;
23
23
  private _onChangeCallback;
24
24
  readonly slots: Set<string>;
25
+ private _textObserver;
25
26
  constructor(_host: ReactiveControllerHost & HTMLElement, _onChangeCallback?: (() => void) | null);
26
27
  hostConnected(): void;
27
28
  hostDisconnected(): void;
28
29
  private _slotchangeHandler;
29
30
  private _syncSlots;
31
+ private _updateSlotNameAttribute;
30
32
  }
31
33
  //# sourceMappingURL=slot-state-controller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"slot-state-controller.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/controllers/slot-state-controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAEtE;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,sBAAuB,YAAW,kBAAkB;IAI7D,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,iBAAiB;IAJ3B,SAAgB,KAAK,cAAqB;gBAGhC,KAAK,EAAE,sBAAsB,GAAG,WAAW,EAC3C,iBAAiB,GAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAW;IAKhD,aAAa,IAAI,IAAI;IAMrB,gBAAgB,IAAI,IAAI;IAM/B,OAAO,CAAC,kBAAkB,CAExB;IAEF,OAAO,CAAC,UAAU;CAuBnB"}
1
+ {"version":3,"file":"slot-state-controller.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/controllers/slot-state-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,kBAAkB,EAAE,KAAK,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAErF;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,sBAAuB,YAAW,kBAAkB;IAmB7D,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,iBAAiB;IAnB3B,SAAgB,KAAK,cAAqB;IAE1C,OAAO,CAAC,aAAa,CAahB;gBAGK,KAAK,EAAE,sBAAsB,GAAG,WAAW,EAC3C,iBAAiB,GAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAW;IAKhD,aAAa,IAAI,IAAI;IAKrB,gBAAgB,IAAI,IAAI;IAO/B,OAAO,CAAC,kBAAkB,CAExB;IAEF,OAAO,CAAC,UAAU;IA2BlB,OAAO,CAAC,wBAAwB;CAajC"}