@sbb-esta/lyne-elements 2.7.1 → 2.8.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.
- package/core/styles/core.scss +7 -1
- package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +2 -0
- package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +5 -1
- package/core.css +12 -2
- package/custom-elements.json +447 -42
- package/development/icon/icon-base.js +5 -1
- package/development/paginator/common/paginator-common.d.ts +11 -1
- package/development/paginator/common/paginator-common.d.ts.map +1 -1
- package/development/paginator/common/paginator-common.js +37 -9
- package/development/paginator/paginator/paginator.js +2 -2
- package/development/sbb-tokens-CVLcOi-S.js +1 -1
- package/development/table/table-wrapper/table-wrapper.d.ts +7 -4
- package/development/table/table-wrapper/table-wrapper.d.ts.map +1 -1
- package/development/table/table-wrapper/table-wrapper.js +80 -69
- package/development/toggle/toggle/toggle.d.ts +0 -1
- package/development/toggle/toggle/toggle.d.ts.map +1 -1
- package/development/toggle/toggle/toggle.js +51 -47
- package/development/toggle/toggle-option/toggle-option.d.ts +2 -1
- package/development/toggle/toggle-option/toggle-option.d.ts.map +1 -1
- package/development/toggle/toggle-option/toggle-option.js +15 -29
- package/icon/icon-base.js +21 -21
- package/package.json +1 -1
- package/paginator/common/paginator-common.d.ts +11 -1
- package/paginator/common/paginator-common.d.ts.map +1 -1
- package/paginator/common/paginator-common.js +61 -31
- package/paginator/paginator/paginator.js +3 -3
- package/standard-theme.css +12 -2
- package/table/table-wrapper/table-wrapper.d.ts +7 -4
- package/table/table-wrapper/table-wrapper.d.ts.map +1 -1
- package/table/table-wrapper/table-wrapper.js +53 -31
- package/toggle/toggle/toggle.d.ts +0 -1
- package/toggle/toggle/toggle.d.ts.map +1 -1
- package/toggle/toggle/toggle.js +43 -48
- package/toggle/toggle-option/toggle-option.d.ts +2 -1
- package/toggle/toggle-option/toggle-option.d.ts.map +1 -1
- package/toggle/toggle-option/toggle-option.js +40 -30
|
@@ -1,50 +1,72 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
var h = (t) => {
|
|
2
|
+
throw TypeError(t);
|
|
3
|
+
};
|
|
4
|
+
var d = (t, s, l) => s.has(t) || h("Cannot " + l);
|
|
5
|
+
var p = (t, s, l) => (d(t, s, "read from private field"), l ? l.call(t) : s.get(t)), m = (t, s, l) => s.has(t) ? h("Cannot add the same private member more than once") : s instanceof WeakSet ? s.add(t) : s.set(t, l), v = (t, s, l, i) => (d(t, s, "write to private field"), i ? i.call(t, l) : s.set(t, l), l);
|
|
6
|
+
import { __esDecorate as _, __runInitializers as c } from "tslib";
|
|
7
|
+
import { ResizeController as S } from "@lit-labs/observers/resize-controller.js";
|
|
8
|
+
import { css as w, LitElement as y, isServer as g, html as x } from "lit";
|
|
9
|
+
import { customElement as L, property as z } from "lit/decorators.js";
|
|
10
|
+
import { forceType as C } from "../../core/decorators.js";
|
|
11
|
+
import { SbbNegativeMixin as O } from "../../core/mixins.js";
|
|
12
|
+
const E = w`*,:before,:after{box-sizing:border-box}:host{display:block;overflow:auto}:host(:not(.sbb-table-wrapper-offset-none)){padding-bottom:var(--sbb-spacing-fixed-1x)}: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)}::slotted(.sbb-table){width:100%}`;
|
|
13
|
+
let B = (() => {
|
|
14
|
+
var o, r;
|
|
15
|
+
let t = [L("sbb-table-wrapper")], s, l = [], i, b = O(y), n, f = [], u = [];
|
|
16
|
+
return r = class extends b {
|
|
11
17
|
constructor() {
|
|
12
|
-
|
|
13
|
-
|
|
18
|
+
var a;
|
|
19
|
+
super();
|
|
20
|
+
m(this, o, c(this, f, !1));
|
|
21
|
+
c(this, u);
|
|
22
|
+
const e = this.attachInternals();
|
|
23
|
+
e.role = "section", this.addController(new S(this, {
|
|
14
24
|
skipInitial: !0,
|
|
15
25
|
callback: () => this._checkHorizontalScrollbarOffset()
|
|
26
|
+
})), (a = this.addEventListener) == null || a.call(this, "scroll", () => this._checkHorizontalScrollbarOffset(), {
|
|
27
|
+
passive: !0
|
|
16
28
|
});
|
|
17
29
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
30
|
+
/** Whether the table wrapper is focusable. */
|
|
31
|
+
get focusable() {
|
|
32
|
+
return p(this, o);
|
|
33
|
+
}
|
|
34
|
+
set focusable(e) {
|
|
35
|
+
v(this, o, e);
|
|
36
|
+
}
|
|
37
|
+
connectedCallback() {
|
|
38
|
+
super.connectedCallback(), this._updateScrollbarClass();
|
|
39
|
+
}
|
|
40
|
+
willUpdate(e) {
|
|
41
|
+
super.willUpdate(e), e.has("focusable") && (this.focusable ? this.hasAttribute("tabindex") || this.setAttribute("tabindex", "0") : this.removeAttribute("tabindex")), e.has("negative") && this._updateScrollbarClass();
|
|
42
|
+
}
|
|
43
|
+
_updateScrollbarClass() {
|
|
44
|
+
g || (this.negative ? (this.classList.remove("sbb-scrollbar-thick-track-visible"), this.classList.add("sbb-scrollbar-thick-negative-track-visible")) : (this.classList.remove("sbb-scrollbar-thick-negative-track-visible"), this.classList.add("sbb-scrollbar-thick-track-visible")));
|
|
22
45
|
}
|
|
23
46
|
/**
|
|
24
47
|
* Calculates whether the table is horizontally scrolled and adds the
|
|
25
48
|
* corresponding class `sbb-table-wrapper-offset-${none | left | right | both}`
|
|
26
49
|
*/
|
|
27
50
|
_checkHorizontalScrollbarOffset() {
|
|
28
|
-
const
|
|
29
|
-
this.classList.remove("sbb-table-wrapper-offset-none", "sbb-table-wrapper-offset-left", "sbb-table-wrapper-offset-right", "sbb-table-wrapper-offset-both"), this.classList.add(`sbb-table-wrapper-offset-${
|
|
51
|
+
const e = this._calculateScrollOffset();
|
|
52
|
+
this.classList.remove("sbb-table-wrapper-offset-none", "sbb-table-wrapper-offset-left", "sbb-table-wrapper-offset-right", "sbb-table-wrapper-offset-both"), this.classList.add(`sbb-table-wrapper-offset-${e}`);
|
|
30
53
|
}
|
|
31
54
|
_calculateScrollOffset() {
|
|
32
|
-
|
|
33
|
-
if (r.scrollWidth === r.offsetWidth)
|
|
55
|
+
if (this.scrollWidth === this.offsetWidth)
|
|
34
56
|
return "none";
|
|
35
|
-
const
|
|
36
|
-
return
|
|
57
|
+
const e = this.scrollLeft === 0, a = this.scrollWidth - this.scrollLeft - this.offsetWidth <= 1;
|
|
58
|
+
return e ? a ? "none" : "right" : a ? "left" : "both";
|
|
37
59
|
}
|
|
38
60
|
render() {
|
|
39
|
-
return
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
})(),
|
|
61
|
+
return x`<slot></slot>`;
|
|
62
|
+
}
|
|
63
|
+
}, o = new WeakMap(), i = r, (() => {
|
|
64
|
+
const e = typeof Symbol == "function" && Symbol.metadata ? Object.create(b[Symbol.metadata] ?? null) : void 0;
|
|
65
|
+
n = [C(), z({ reflect: !0, type: Boolean })], _(r, null, n, { kind: "accessor", name: "focusable", static: !1, private: !1, access: { has: (a) => "focusable" in a, get: (a) => a.focusable, set: (a, k) => {
|
|
66
|
+
a.focusable = k;
|
|
67
|
+
} }, metadata: e }, f, u), _(null, s = { value: i }, t, { kind: "class", name: i.name, metadata: e }, null, l), i = s.value, e && Object.defineProperty(i, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: e });
|
|
68
|
+
})(), r.styles = E, c(i, l), i;
|
|
47
69
|
})();
|
|
48
70
|
export {
|
|
49
|
-
|
|
71
|
+
B as SbbTableWrapperElement
|
|
50
72
|
};
|
|
@@ -33,7 +33,6 @@ export declare class SbbToggleElement extends SbbToggleElement_base {
|
|
|
33
33
|
/** The child instances of sbb-toggle-option as an array. */
|
|
34
34
|
get options(): SbbToggleOptionElement[];
|
|
35
35
|
private _loaded;
|
|
36
|
-
private _toggleResizeObserver;
|
|
37
36
|
/** Emits whenever the toggle value changes. */
|
|
38
37
|
private _change;
|
|
39
38
|
constructor();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toggle.d.ts","sourceRoot":"","sources":["../../../../src/elements/toggle/toggle/toggle.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"toggle.d.ts","sourceRoot":"","sources":["../../../../src/elements/toggle/toggle/toggle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAGnB,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAOb,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EAGtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;;AAIlE;;;;;GAKG;AACH,qBAEM,gBAAiB,SAAQ,qBAAoD;IACjF,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,gBAAuB,MAAM;;MAElB;IAEX;;;OAGG;IACH,SAEgB,IAAI,EAAE,OAAO,CAAS;IAEtC;;;OAGG;IACH,SAA6C,IAAI,EAAE,GAAG,GAAG,GAAG,CAAwB;IAEpF;;;OAGG;IACH,IACoB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAM7C;IACD,IAAoB,KAAK,IAAI,MAAM,CAIlC;IACD,OAAO,CAAC,MAAM,CAAuB;IAErC,4DAA4D;IAC5D,IAAW,OAAO,IAAI,sBAAsB,EAAE,CAE7C;IAED,OAAO,CAAC,OAAO,CAAkB;IAEjC,+CAA+C;IAC/C,OAAO,CAAC,OAAO,CAGZ;;IAWa,iBAAiB,IAAI,IAAI;cAKtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,GAAG,IAAI;cAO7C,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ7F;;;OAGG;IACI,aAAa,IAAI,IAAI;IAK5B;;OAEG;IACI,iBAAiB,IAAI,IAAI;IAIzB,wBAAwB,CAC7B,KAAK,EAAE,gBAAgB,GAAG,IAAI,EAC9B,OAAO,EAAE,iBAAiB,GACzB,IAAI;IAIP;;;OAGG;IACI,kBAAkB,CAAC,QAAQ,UAAQ,GAAG,IAAI;IAmCjD,SAAS,CAAC,eAAe,IAAI,IAAI;IAIjC,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,aAAa;IAuBrB,OAAO,CAAC,eAAe;IAMvB;;OAEG;IACH,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,cAAc;cA6BH,MAAM,IAAI,cAAc;CAO5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,YAAY,EAAE,gBAAgB,CAAC;KAChC;CACF"}
|
package/toggle/toggle/toggle.js
CHANGED
|
@@ -1,36 +1,31 @@
|
|
|
1
|
-
var
|
|
2
|
-
throw TypeError(
|
|
1
|
+
var A = (i) => {
|
|
2
|
+
throw TypeError(i);
|
|
3
3
|
};
|
|
4
|
-
var
|
|
5
|
-
var v = (
|
|
6
|
-
import { __esDecorate as
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import { SbbDisabledMixin as H, SbbFormAssociatedMixin as N } from "../../core/mixins.js";
|
|
4
|
+
var O = (i, o, r) => o.has(i) || A("Cannot " + r);
|
|
5
|
+
var v = (i, o, r) => (O(i, o, "read from private field"), r ? r.call(i) : o.get(i)), f = (i, o, r) => o.has(i) ? A("Cannot add the same private member more than once") : o instanceof WeakSet ? o.add(i) : o.set(i, r), c = (i, o, r, n) => (O(i, o, "write to private field"), n ? n.call(i, r) : o.set(i, r), r);
|
|
6
|
+
import { __esDecorate as u, __runInitializers as g } from "tslib";
|
|
7
|
+
import { css as R, LitElement as U, isServer as P, html as V } from "lit";
|
|
8
|
+
import { customElement as W, property as _ } from "lit/decorators.js";
|
|
9
|
+
import { interactivityChecker as K, isArrowKeyPressed as $, getNextElementIndex as j } from "../../core/a11y.js";
|
|
10
|
+
import { forceType as q } from "../../core/decorators.js";
|
|
11
|
+
import { isLean as M } from "../../core/dom.js";
|
|
12
|
+
import { EventEmitter as B } from "../../core/eventing.js";
|
|
13
|
+
import { SbbDisabledMixin as G, SbbFormAssociatedMixin as H } from "../../core/mixins.js";
|
|
15
14
|
import "../toggle-option.js";
|
|
16
|
-
const
|
|
17
|
-
let
|
|
15
|
+
const N = R`*,:before,:after{box-sizing:border-box}:host{display:block;width:fit-content;border-radius:var(--sbb-toggle-border-radius);--sbb-toggle-width: fit-content;--sbb-toggle-min-width: calc( var(--sbb-toggle-padding-inline) * 4 + var(--sbb-size-icon-ui-small) );--sbb-toggle-selected-option-border-width: var(--sbb-border-width-1x);--sbb-toggle-selected-option-border-style: solid;--sbb-toggle-selected-option-border-color: var(--sbb-color-smoke);--sbb-toggle-selected-option-background-color: var(--sbb-color-white);--sbb-toggle-selected-option-border-offset: .125rem;--sbb-toggle-padding-inline: var(--sbb-spacing-responsive-xxxs);--sbb-toggle-animation-duration: var( --sbb-disable-animation-duration, var(--sbb-animation-duration-6x) );--sbb-toggle-height: var(--sbb-size-element-xxs);--sbb-toggle-border-radius: var(--sbb-border-radius-infinity);--sbb-toggle-grid-template-columns: auto auto;--_sbb-toggle-height: calc( var(--sbb-toggle-height) - 2 * var(--sbb-toggle-selected-option-border-offset) )}@media (forced-colors: active){:host{--sbb-toggle-selected-option-border-color: Highlight;--sbb-toggle-selected-option-border-width: var(--sbb-border-width-2x)}}:host([even]){width:100%;--sbb-toggle-width: 100%;--sbb-toggle-grid-template-columns: 50% 50%}:host(:disabled){--sbb-toggle-selected-option-border-color: var(--sbb-color-graphite);--sbb-toggle-selected-option-border-style: dashed}@media (forced-colors: active){:host(:disabled){--sbb-toggle-selected-option-border-style: solid;--sbb-toggle-selected-option-border-color: GrayText}}:host([size=m]){--sbb-toggle-padding-inline: var(--sbb-spacing-responsive-xs);--sbb-toggle-height: var(--sbb-size-element-m)}:host(:is(:not([data-initialized]),[data-disable-animation-on-resizing])){--sbb-disable-animation-duration: 0s}.sbb-toggle{--sbb-text-font-size: var(--sbb-font-size-text-m);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);display:grid;grid-template-columns:var(--sbb-toggle-grid-template-columns);grid-template-areas:"start end";align-items:center;min-width:var(--sbb-toggle-min-width);width:var(--sbb-toggle-width);max-width:100%;height:var(--_sbb-toggle-height);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:var(--sbb-color-cloud);border-radius:var(--sbb-toggle-border-radius)}.sbb-toggle:before{grid-area:start/start/end/end;padding-inline:var(--sbb-toggle-padding-inline);margin-inline:var(--sbb-toggle-option-left, 0) var(--sbb-toggle-option-right, 0);display:block;background-color:var(--sbb-toggle-selected-option-background-color);border-radius:var(--sbb-toggle-border-radius);max-width:100%;height:100%;box-shadow:0 0 0 var(--sbb-toggle-selected-option-border-offset) var(--sbb-toggle-selected-option-background-color);outline:var(--sbb-toggle-selected-option-border-width) var(--sbb-toggle-selected-option-border-style) var(--sbb-toggle-selected-option-border-color);outline-offset:calc(var(--sbb-toggle-selected-option-border-offset) - var(--sbb-toggle-selected-option-border-width));transition-duration:var(--sbb-toggle-animation-duration);transition-timing-function:ease;transition-property:margin-inline-start,margin-inline-end}:host([data-initialized]) .sbb-toggle:before{content:""}@media (forced-colors: active){.sbb-toggle{outline:var(--sbb-border-width-1x) solid CanvasText}}::slotted(sbb-toggle-option:first-of-type){grid-area:start}::slotted(sbb-toggle-option:last-of-type){grid-area:end}`;
|
|
16
|
+
let re = (() => {
|
|
18
17
|
var b, d, l;
|
|
19
|
-
let
|
|
20
|
-
var
|
|
18
|
+
let i = [W("sbb-toggle")], o, r = [], n, y = G(H(U)), x = [], w, z = [], k = [], C, E = [], S = [], D;
|
|
19
|
+
var p = (l = class extends y {
|
|
21
20
|
constructor() {
|
|
22
21
|
var e, t;
|
|
23
22
|
super();
|
|
24
23
|
f(this, b);
|
|
25
24
|
f(this, d);
|
|
26
|
-
|
|
27
|
-
target: null,
|
|
28
|
-
skipInitial: !0,
|
|
29
|
-
callback: () => this.updatePillPosition(!0)
|
|
30
|
-
}), this._change = new G(this, u.events.change, {
|
|
25
|
+
c(this, b, (g(this, x), g(this, z, !1))), c(this, d, (g(this, k), g(this, E, M() ? "s" : "m"))), this._value = (g(this, S), null), this._loaded = !1, this._change = new B(this, p.events.change, {
|
|
31
26
|
bubbles: !0,
|
|
32
27
|
composed: !0
|
|
33
|
-
}), this.internals.role = "radiogroup", (e = this.addEventListener) == null || e.call(this, "input", () => this._handleInput(), { passive: !0 }), (t = this.addEventListener) == null || t.call(this, "keydown", (
|
|
28
|
+
}), this.internals.role = "radiogroup", (e = this.addEventListener) == null || e.call(this, "input", () => this._handleInput(), { passive: !0 }), (t = this.addEventListener) == null || t.call(this, "keydown", (s) => this._handleKeyDown(s));
|
|
34
29
|
}
|
|
35
30
|
/**
|
|
36
31
|
* If true, set the width of the component fixed; if false,
|
|
@@ -40,7 +35,7 @@ let ne = (() => {
|
|
|
40
35
|
return v(this, b);
|
|
41
36
|
}
|
|
42
37
|
set even(e) {
|
|
43
|
-
|
|
38
|
+
c(this, b, e);
|
|
44
39
|
}
|
|
45
40
|
/**
|
|
46
41
|
* Size variant, either m or s.
|
|
@@ -50,18 +45,18 @@ let ne = (() => {
|
|
|
50
45
|
return v(this, d);
|
|
51
46
|
}
|
|
52
47
|
set size(e) {
|
|
53
|
-
|
|
48
|
+
c(this, d, e);
|
|
54
49
|
}
|
|
55
50
|
/**
|
|
56
51
|
* The value of the toggle. It needs to be mutable since it is updated whenever
|
|
57
52
|
* a new option is selected (see the `onToggleOptionSelect()` method).
|
|
58
53
|
*/
|
|
59
54
|
set value(e) {
|
|
60
|
-
|
|
55
|
+
P ? this._value = e : this._valueChanged(e);
|
|
61
56
|
}
|
|
62
57
|
get value() {
|
|
63
58
|
var e, t;
|
|
64
|
-
return
|
|
59
|
+
return P ? this._value ?? "" : ((e = this.options.find((s) => s.checked)) == null ? void 0 : e.value) ?? ((t = this.options[0]) == null ? void 0 : t.value) ?? "";
|
|
65
60
|
}
|
|
66
61
|
/** The child instances of sbb-toggle-option as an array. */
|
|
67
62
|
get options() {
|
|
@@ -69,7 +64,7 @@ let ne = (() => {
|
|
|
69
64
|
return Array.from(((e = this.querySelectorAll) == null ? void 0 : e.call(this, "sbb-toggle-option")) ?? []);
|
|
70
65
|
}
|
|
71
66
|
connectedCallback() {
|
|
72
|
-
super.connectedCallback(), this.
|
|
67
|
+
super.connectedCallback(), this._updateToggle();
|
|
73
68
|
}
|
|
74
69
|
willUpdate(e) {
|
|
75
70
|
super.willUpdate(e), (e.has("disabled") || e.has("formDisabled")) && this._updateDisabled();
|
|
@@ -101,12 +96,12 @@ let ne = (() => {
|
|
|
101
96
|
var I, T;
|
|
102
97
|
if (!this._loaded)
|
|
103
98
|
return;
|
|
104
|
-
const t = this.options,
|
|
105
|
-
if (t.every((m) => !m.checked) || t.every((m) => !m.clientWidth) || !
|
|
99
|
+
const t = this.options, s = this.shadowRoot.querySelector(".sbb-toggle");
|
|
100
|
+
if (t.every((m) => !m.checked) || t.every((m) => !m.clientWidth) || !s)
|
|
106
101
|
return;
|
|
107
102
|
this.toggleAttribute("data-disable-animation-on-resizing", e);
|
|
108
|
-
const a = t[0],
|
|
109
|
-
(I = this.style) == null || I.setProperty("--sbb-toggle-option-left",
|
|
103
|
+
const a = t[0], h = a.checked, F = h ? "0px" : `${a.clientWidth}px`, L = h ? `${s.clientWidth - a.clientWidth}px` : "0px";
|
|
104
|
+
(I = this.style) == null || I.setProperty("--sbb-toggle-option-left", F), (T = this.style) == null || T.setProperty("--sbb-toggle-option-right", L), this.hasAttribute("data-initialized") || setTimeout(() => this.toggleAttribute("data-initialized", !0), 0);
|
|
110
105
|
}
|
|
111
106
|
updateFormValue() {
|
|
112
107
|
this.internals.setFormValue(this.value);
|
|
@@ -115,8 +110,8 @@ let ne = (() => {
|
|
|
115
110
|
this._valueChanged(this.value), this._updateDisabled();
|
|
116
111
|
}
|
|
117
112
|
_valueChanged(e) {
|
|
118
|
-
const t = this.options,
|
|
119
|
-
|
|
113
|
+
const t = this.options, s = t.find((a) => e === ("value" in a ? a.value : a.getAttribute("value"))) ?? t.find((a) => a.checked) ?? t[0];
|
|
114
|
+
s && (s.checked || (s.checked = !0), this.statusChanged());
|
|
120
115
|
}
|
|
121
116
|
_updateDisabled() {
|
|
122
117
|
for (const e of this.options)
|
|
@@ -129,15 +124,15 @@ let ne = (() => {
|
|
|
129
124
|
this.statusChanged(), this._change.emit();
|
|
130
125
|
}
|
|
131
126
|
_handleKeyDown(e) {
|
|
132
|
-
const t = this.options.filter((
|
|
127
|
+
const t = this.options.filter((s) => !s.disabled && K.isVisible(s));
|
|
133
128
|
if (!(!t || // don't trap nested handling
|
|
134
|
-
e.target !== this && e.target.parentElement !== this) &&
|
|
135
|
-
const
|
|
129
|
+
e.target !== this && e.target.parentElement !== this) && $(e)) {
|
|
130
|
+
const s = t.findIndex((h) => h.checked), a = j(e, s, t.length);
|
|
136
131
|
t[a].checked || (t[a].checked = !0, t[a].focus(), t[a].dispatchEvent(new InputEvent("input", { bubbles: !0, composed: !0 }))), e.preventDefault();
|
|
137
132
|
}
|
|
138
133
|
}
|
|
139
134
|
render() {
|
|
140
|
-
return
|
|
135
|
+
return V`
|
|
141
136
|
<div class="sbb-toggle">
|
|
142
137
|
<slot @slotchange=${this._updateToggle}></slot>
|
|
143
138
|
</div>
|
|
@@ -145,18 +140,18 @@ let ne = (() => {
|
|
|
145
140
|
}
|
|
146
141
|
}, b = new WeakMap(), d = new WeakMap(), n = l, (() => {
|
|
147
142
|
const e = typeof Symbol == "function" && Symbol.metadata ? Object.create(y[Symbol.metadata] ?? null) : void 0;
|
|
148
|
-
|
|
149
|
-
t.even =
|
|
150
|
-
} }, metadata: e },
|
|
151
|
-
t.size =
|
|
152
|
-
} }, metadata: e }, E, S),
|
|
153
|
-
t.value =
|
|
154
|
-
} }, metadata: e }, null,
|
|
155
|
-
})(), l.styles =
|
|
143
|
+
w = [q(), _({ reflect: !0, type: Boolean })], C = [_({ reflect: !0 })], D = [_()], u(l, null, w, { kind: "accessor", name: "even", static: !1, private: !1, access: { has: (t) => "even" in t, get: (t) => t.even, set: (t, s) => {
|
|
144
|
+
t.even = s;
|
|
145
|
+
} }, metadata: e }, z, k), u(l, null, C, { kind: "accessor", name: "size", static: !1, private: !1, access: { has: (t) => "size" in t, get: (t) => t.size, set: (t, s) => {
|
|
146
|
+
t.size = s;
|
|
147
|
+
} }, metadata: e }, E, S), u(l, null, D, { kind: "setter", name: "value", static: !1, private: !1, access: { has: (t) => "value" in t, set: (t, s) => {
|
|
148
|
+
t.value = s;
|
|
149
|
+
} }, metadata: e }, null, x), u(null, o = { value: n }, i, { kind: "class", name: n.name, metadata: e }, null, r), p = n = o.value, e && Object.defineProperty(n, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: e });
|
|
150
|
+
})(), l.styles = N, l.events = {
|
|
156
151
|
change: "change"
|
|
157
152
|
}, g(n, r), l);
|
|
158
|
-
return
|
|
153
|
+
return p = n;
|
|
159
154
|
})();
|
|
160
155
|
export {
|
|
161
|
-
|
|
156
|
+
re as SbbToggleElement
|
|
162
157
|
};
|
|
@@ -12,9 +12,10 @@ export declare class SbbToggleOptionElement extends SbbToggleOptionElement_base
|
|
|
12
12
|
accessor checked: boolean;
|
|
13
13
|
/** Value of toggle-option. */
|
|
14
14
|
accessor value: string;
|
|
15
|
-
private _toggle
|
|
15
|
+
private _toggle;
|
|
16
16
|
constructor();
|
|
17
17
|
connectedCallback(): void;
|
|
18
|
+
disconnectedCallback(): void;
|
|
18
19
|
protected willUpdate(changedProperties: PropertyValues<this>): void;
|
|
19
20
|
private _uncheckOtherOptions;
|
|
20
21
|
private _handleDisabledChange;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toggle-option.d.ts","sourceRoot":"","sources":["../../../../src/elements/toggle/toggle-option/toggle-option.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"toggle-option.d.ts","sourceRoot":"","sources":["../../../../src/elements/toggle/toggle-option/toggle-option.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1E,OAAO,EAAQ,UAAU,EAAE,MAAM,KAAK,CAAC;;AAWvC;;;;;GAKG;AACH,qBAGM,sBAAuB,SAAQ,2BAA8C;IACjF,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,4CAA4C;IAC5C,SAEgB,OAAO,EAAE,OAAO,CAAS;IAEzC,8BAA8B;IAC9B,SAEgB,KAAK,EAAE,MAAM,CAAM;IAEnC,OAAO,CAAC,OAAO,CAAiC;;IAyBhC,iBAAiB,IAAI,IAAI;IAQzB,oBAAoB,IAAI,IAAI;cAKzB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAe5E,OAAO,CAAC,oBAAoB;IAK5B,OAAO,CAAC,qBAAqB;IAK7B,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,eAAe;cAIJ,MAAM,IAAI,cAAc;CAU5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,mBAAmB,EAAE,sBAAsB,CAAC;KAC7C;CACF"}
|
|
@@ -1,48 +1,58 @@
|
|
|
1
|
-
var
|
|
1
|
+
var z = (t) => {
|
|
2
2
|
throw TypeError(t);
|
|
3
3
|
};
|
|
4
|
-
var w = (t, s, o) => s.has(t) ||
|
|
5
|
-
var
|
|
6
|
-
import { __esDecorate as p, __runInitializers as
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
4
|
+
var w = (t, s, o) => s.has(t) || z("Cannot " + o);
|
|
5
|
+
var d = (t, s, o) => (w(t, s, "read from private field"), o ? o.call(t) : s.get(t)), g = (t, s, o) => s.has(t) ? z("Cannot add the same private member more than once") : s instanceof WeakSet ? s.add(t) : s.set(t, o), b = (t, s, o, a) => (w(t, s, "write to private field"), a ? a.call(t, o) : s.set(t, o), o);
|
|
6
|
+
import { __esDecorate as p, __runInitializers as h } from "tslib";
|
|
7
|
+
import { ResizeController as S } from "@lit-labs/observers/resize-controller.js";
|
|
8
|
+
import { css as C, LitElement as E, html as T } from "lit";
|
|
9
|
+
import { customElement as D, property as I } from "lit/decorators.js";
|
|
10
|
+
import { slotState as j, forceType as O } from "../../core/decorators.js";
|
|
11
|
+
import { setOrRemoveAttribute as L } from "../../core/dom.js";
|
|
12
|
+
import { SbbDisabledMixin as A } from "../../core/mixins.js";
|
|
13
|
+
import { SbbIconNameMixin as M } from "../../icon.js";
|
|
14
|
+
const R = C`*,:before,:after{box-sizing:border-box}:host{--sbb-toggle-option-cursor: pointer;--sbb-toggle-option-color: var(--sbb-color-anthracite);--sbb-toggle-option-icon-min-size: var(--sbb-size-icon-ui-small);display:inline-block;overflow:hidden;outline:none!important}:host([checked]){--sbb-toggle-option-color: var(--sbb-color-charcoal)}:host([disabled]){--sbb-toggle-option-cursor: unset;--sbb-toggle-option-color: var(--sbb-color-granite)}.sbb-toggle-option{--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);font-weight:700;cursor:var(--sbb-toggle-option-cursor);display:flex;justify-content:center;align-items:center;height:var(--sbb-toggle-height);padding-inline:var(--sbb-toggle-padding-inline);color:var(--sbb-toggle-option-color)}:host([data-slot-names~=unnamed]:where([data-slot-names~=icon],[icon-name])) .sbb-toggle-option{gap:var(--sbb-spacing-fixed-1x)}.sbb-toggle-option__label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}sbb-icon,::slotted(sbb-icon){min-width:var(--sbb-toggle-option-icon-min-size);min-height:var(--sbb-toggle-option-icon-min-size)}`;
|
|
15
|
+
let K = (() => {
|
|
16
|
+
var r, c, n;
|
|
17
|
+
let t = [D("sbb-toggle-option"), j()], s, o = [], a, u = A(M(E)), m, f = [], _ = [], v, k = [], y = [];
|
|
17
18
|
return n = class extends u {
|
|
18
19
|
constructor() {
|
|
19
20
|
var i, l;
|
|
20
21
|
super();
|
|
21
22
|
g(this, r);
|
|
22
|
-
g(this,
|
|
23
|
-
|
|
23
|
+
g(this, c);
|
|
24
|
+
b(this, r, h(this, f, !1)), b(this, c, (h(this, _), h(this, k, ""))), this._toggle = (h(this, y), null);
|
|
24
25
|
const e = this.attachInternals();
|
|
25
26
|
e.role = "radio", (i = this.addEventListener) == null || i.call(this, "input", () => this._handleInput()), (l = this.addEventListener) == null || l.call(this, "click", () => {
|
|
26
27
|
!this.disabled && !this.checked && this.dispatchEvent(new InputEvent("input", { bubbles: !0, composed: !0 }));
|
|
27
|
-
})
|
|
28
|
+
}), this.addController(new S(this, {
|
|
29
|
+
skipInitial: !0,
|
|
30
|
+
callback: () => {
|
|
31
|
+
var x;
|
|
32
|
+
return (x = this._toggle) == null ? void 0 : x.updatePillPosition(!0);
|
|
33
|
+
}
|
|
34
|
+
}));
|
|
28
35
|
}
|
|
29
36
|
/** Whether the toggle-option is checked. */
|
|
30
37
|
get checked() {
|
|
31
|
-
return
|
|
38
|
+
return d(this, r);
|
|
32
39
|
}
|
|
33
40
|
set checked(e) {
|
|
34
|
-
|
|
41
|
+
b(this, r, e);
|
|
35
42
|
}
|
|
36
43
|
/** Value of toggle-option. */
|
|
37
44
|
get value() {
|
|
38
|
-
return
|
|
45
|
+
return d(this, c);
|
|
39
46
|
}
|
|
40
47
|
set value(e) {
|
|
41
|
-
|
|
48
|
+
b(this, c, e);
|
|
42
49
|
}
|
|
43
50
|
connectedCallback() {
|
|
44
51
|
var e;
|
|
45
|
-
super.connectedCallback(), this._toggle = ((e = this.closest) == null ? void 0 : e.call(this, "sbb-toggle")) ??
|
|
52
|
+
super.connectedCallback(), this._toggle = ((e = this.closest) == null ? void 0 : e.call(this, "sbb-toggle")) ?? null, this._verifyTabindex();
|
|
53
|
+
}
|
|
54
|
+
disconnectedCallback() {
|
|
55
|
+
super.disconnectedCallback(), this._toggle = null;
|
|
46
56
|
}
|
|
47
57
|
willUpdate(e) {
|
|
48
58
|
super.willUpdate(e), e.has("checked") && (this.setAttribute("aria-checked", `${this.checked}`), this._verifyTabindex(), this.checked && this._uncheckOtherOptions()), e.has("disabled") && this._handleDisabledChange();
|
|
@@ -52,7 +62,7 @@ let H = (() => {
|
|
|
52
62
|
(e = this._toggle) == null || e.options.filter((l) => l !== this).forEach((l) => l.checked = !1), (i = this._toggle) == null || i.statusChanged();
|
|
53
63
|
}
|
|
54
64
|
_handleDisabledChange() {
|
|
55
|
-
|
|
65
|
+
L(this, "aria-disabled", this.disabled ? "true" : null), this._verifyTabindex();
|
|
56
66
|
}
|
|
57
67
|
_handleInput() {
|
|
58
68
|
this.disabled || (this.checked = !0, this._uncheckOtherOptions());
|
|
@@ -61,7 +71,7 @@ let H = (() => {
|
|
|
61
71
|
this.tabIndex = this.checked && !this.disabled ? 0 : -1;
|
|
62
72
|
}
|
|
63
73
|
render() {
|
|
64
|
-
return
|
|
74
|
+
return T`
|
|
65
75
|
<div class="sbb-toggle-option">
|
|
66
76
|
${this.renderIconSlot()}
|
|
67
77
|
<span class="sbb-toggle-option__label">
|
|
@@ -70,15 +80,15 @@ let H = (() => {
|
|
|
70
80
|
</div>
|
|
71
81
|
`;
|
|
72
82
|
}
|
|
73
|
-
}, r = new WeakMap(),
|
|
83
|
+
}, r = new WeakMap(), c = new WeakMap(), a = n, (() => {
|
|
74
84
|
const e = typeof Symbol == "function" && Symbol.metadata ? Object.create(u[Symbol.metadata] ?? null) : void 0;
|
|
75
|
-
|
|
85
|
+
m = [O(), I({ reflect: !0, type: Boolean })], v = [O(), I()], p(n, null, m, { kind: "accessor", name: "checked", static: !1, private: !1, access: { has: (i) => "checked" in i, get: (i) => i.checked, set: (i, l) => {
|
|
76
86
|
i.checked = l;
|
|
77
|
-
} }, metadata: e },
|
|
87
|
+
} }, metadata: e }, f, _), p(n, null, v, { kind: "accessor", name: "value", static: !1, private: !1, access: { has: (i) => "value" in i, get: (i) => i.value, set: (i, l) => {
|
|
78
88
|
i.value = l;
|
|
79
|
-
} }, metadata: e },
|
|
80
|
-
})(), n.styles =
|
|
89
|
+
} }, metadata: e }, k, y), p(null, s = { value: a }, t, { kind: "class", name: a.name, metadata: e }, null, o), a = s.value, e && Object.defineProperty(a, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: e });
|
|
90
|
+
})(), n.styles = R, h(a, o), a;
|
|
81
91
|
})();
|
|
82
92
|
export {
|
|
83
|
-
|
|
93
|
+
K as SbbToggleOptionElement
|
|
84
94
|
};
|