@sbb-esta/lyne-elements-dev 5.0.0-next.3-dev.1779813787 → 5.0.0-next.3-dev.1779890843
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/custom-elements.json +54 -6
- package/development/tag/tag/tag.component.d.ts +1 -0
- package/development/tag/tag/tag.component.d.ts.map +1 -1
- package/development/tag/tag/tag.component.js +1 -1
- package/development/tag/tag-group/tag-group.component.d.ts +6 -1
- package/development/tag/tag-group/tag-group.component.d.ts.map +1 -1
- package/development/tag/tag-group/tag-group.component.js +1 -1
- package/development/tag-group.component-DTff1eBB.js +225 -0
- package/development/{tag.component-D6YowucW.js → tag.component-CDDb2fnV.js} +28 -8
- package/development/tag.js +2 -2
- package/development/tag.pure.js +2 -2
- package/package.json +2 -2
- package/tag/tag/tag.component.js +1 -1
- package/tag/tag-group/tag-group.component.js +1 -1
- package/{tag-group.component-ByRxy8UG.js → tag-group.component-CJwbkP70.js} +38 -23
- package/{tag.component-BrKoQeIW.js → tag.component-r8diGGP-.js} +14 -5
- package/tag.js +2 -2
- package/tag.pure.js +2 -2
- package/development/tag-group.component-jSgluqL-.js +0 -194
package/custom-elements.json
CHANGED
|
@@ -150276,6 +150276,16 @@
|
|
|
150276
150276
|
}
|
|
150277
150277
|
}
|
|
150278
150278
|
},
|
|
150279
|
+
{
|
|
150280
|
+
"kind": "method",
|
|
150281
|
+
"name": "_updateAriaRole",
|
|
150282
|
+
"privacy": "private",
|
|
150283
|
+
"return": {
|
|
150284
|
+
"type": {
|
|
150285
|
+
"text": "void"
|
|
150286
|
+
}
|
|
150287
|
+
}
|
|
150288
|
+
},
|
|
150279
150289
|
{
|
|
150280
150290
|
"kind": "method",
|
|
150281
150291
|
"name": "isDisabledExternally",
|
|
@@ -151125,8 +151135,7 @@
|
|
|
151125
151135
|
"name": "input",
|
|
151126
151136
|
"type": {
|
|
151127
151137
|
"text": "InputEvent"
|
|
151128
|
-
}
|
|
151129
|
-
"description": "The input event fires when the value has been changed as a direct result of a user action."
|
|
151138
|
+
}
|
|
151130
151139
|
},
|
|
151131
151140
|
{
|
|
151132
151141
|
"name": "change",
|
|
@@ -151310,14 +151319,14 @@
|
|
|
151310
151319
|
},
|
|
151311
151320
|
{
|
|
151312
151321
|
"kind": "field",
|
|
151313
|
-
"name": "
|
|
151322
|
+
"name": "accessibilityLabel",
|
|
151314
151323
|
"type": {
|
|
151315
151324
|
"text": "string"
|
|
151316
151325
|
},
|
|
151317
151326
|
"privacy": "public",
|
|
151318
151327
|
"default": "''",
|
|
151319
151328
|
"description": "This will be forwarded as aria-label to the inner list.",
|
|
151320
|
-
"attribute": "
|
|
151329
|
+
"attribute": "accessibility-label"
|
|
151321
151330
|
},
|
|
151322
151331
|
{
|
|
151323
151332
|
"kind": "field",
|
|
@@ -151373,6 +151382,45 @@
|
|
|
151373
151382
|
"description": "The child instances of sbb-tag as an array.",
|
|
151374
151383
|
"readonly": true
|
|
151375
151384
|
},
|
|
151385
|
+
{
|
|
151386
|
+
"kind": "method",
|
|
151387
|
+
"name": "_enabledTags",
|
|
151388
|
+
"privacy": "private",
|
|
151389
|
+
"return": {
|
|
151390
|
+
"type": {
|
|
151391
|
+
"text": "SbbTagElement<T>[]"
|
|
151392
|
+
}
|
|
151393
|
+
}
|
|
151394
|
+
},
|
|
151395
|
+
{
|
|
151396
|
+
"kind": "method",
|
|
151397
|
+
"name": "updateExclusiveTabIndex",
|
|
151398
|
+
"privacy": "protected",
|
|
151399
|
+
"return": {
|
|
151400
|
+
"type": {
|
|
151401
|
+
"text": "void"
|
|
151402
|
+
}
|
|
151403
|
+
},
|
|
151404
|
+
"description": "In exclusive mode, only the checked tag (or the first non-disabled tag) should be focusable."
|
|
151405
|
+
},
|
|
151406
|
+
{
|
|
151407
|
+
"kind": "method",
|
|
151408
|
+
"name": "_handleArrowKeyDown",
|
|
151409
|
+
"privacy": "private",
|
|
151410
|
+
"return": {
|
|
151411
|
+
"type": {
|
|
151412
|
+
"text": "void"
|
|
151413
|
+
}
|
|
151414
|
+
},
|
|
151415
|
+
"parameters": [
|
|
151416
|
+
{
|
|
151417
|
+
"name": "evt",
|
|
151418
|
+
"type": {
|
|
151419
|
+
"text": "KeyboardEvent"
|
|
151420
|
+
}
|
|
151421
|
+
}
|
|
151422
|
+
]
|
|
151423
|
+
},
|
|
151376
151424
|
{
|
|
151377
151425
|
"kind": "method",
|
|
151378
151426
|
"name": "_applyValueToTags",
|
|
@@ -151828,13 +151876,13 @@
|
|
|
151828
151876
|
],
|
|
151829
151877
|
"attributes": [
|
|
151830
151878
|
{
|
|
151831
|
-
"name": "
|
|
151879
|
+
"name": "accessibility-label",
|
|
151832
151880
|
"type": {
|
|
151833
151881
|
"text": "string"
|
|
151834
151882
|
},
|
|
151835
151883
|
"default": "''",
|
|
151836
151884
|
"description": "This will be forwarded as aria-label to the inner list.",
|
|
151837
|
-
"fieldName": "
|
|
151885
|
+
"fieldName": "accessibilityLabel"
|
|
151838
151886
|
},
|
|
151839
151887
|
{
|
|
151840
151888
|
"name": "multiple",
|
|
@@ -30,6 +30,7 @@ export declare class SbbTagElement<T = string> extends SbbTagElement_base {
|
|
|
30
30
|
accessor size: 's' | 'm' | null;
|
|
31
31
|
constructor();
|
|
32
32
|
private _tagGroup;
|
|
33
|
+
private _updateAriaRole;
|
|
33
34
|
protected isDisabledExternally(): boolean;
|
|
34
35
|
/** Method triggered on button click. Inverts the checked value and emits events. */
|
|
35
36
|
private _handleClick;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/tag/tag/tag.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEpB,MAAM,KAAK,CAAC;AAGb,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EAErB,wBAAwB,EAGzB,MAAM,eAAe,CAAC;;AAMvB;;;;;;;GAOG;AACH,qBAAa,aAAa,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,kBAE9C;IACC,gBAAgC,WAAW,EAAE,MAAM,CAAa;IAChE,OAAuB,MAAM,EAAE,cAAc,CAAsB;IACnE,gBAAuB,MAAM;;;;MAIlB;IAEX,iCAAiC;IACjC,SACgB,KAAK,EAAE,CAAC,GAAG,IAAI,CAAQ;IAEvC,uCAAuC;IACvC,SAEgB,MAAM,EAAE,MAAM,CAAM;IAEpC,kCAAkC;IAClC,SAEgB,OAAO,EAAE,OAAO,CAAS;IAEzC;;;OAGG;IACH,SACgB,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAQ;;
|
|
1
|
+
{"version":3,"file":"tag.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/tag/tag/tag.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEpB,MAAM,KAAK,CAAC;AAGb,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EAErB,wBAAwB,EAGzB,MAAM,eAAe,CAAC;;AAMvB;;;;;;;GAOG;AACH,qBAAa,aAAa,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,kBAE9C;IACC,gBAAgC,WAAW,EAAE,MAAM,CAAa;IAChE,OAAuB,MAAM,EAAE,cAAc,CAAsB;IACnE,gBAAuB,MAAM;;;;MAIlB;IAEX,iCAAiC;IACjC,SACgB,KAAK,EAAE,CAAC,GAAG,IAAI,CAAQ;IAEvC,uCAAuC;IACvC,SAEgB,MAAM,EAAE,MAAM,CAAM;IAEpC,kCAAkC;IAClC,SAEgB,OAAO,EAAE,OAAO,CAAS;IAEzC;;;OAGG;IACH,SACgB,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAQ;;IAe9C,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,eAAe;cAaJ,oBAAoB,IAAI,OAAO;IAIlD,oFAAoF;IACpF,OAAO,CAAC,YAAY;cAgCD,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAsB5E;;OAEG;IACa,iBAAiB,IAAI,IAAI;IAIzC;;OAEG;IACa,wBAAwB,CACtC,KAAK,EAAE,gBAAgB,GAAG,IAAI,EAC9B,OAAO,EAAE,iBAAiB,GACzB,IAAI;cAMY,eAAe,IAAI,IAAI;cAQvB,SAAS,IAAI,gBAAgB;cAI7B,cAAc,IAAI,cAAc;CAWpD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,SAAS,EAAE,aAAa,CAAC;KAC1B;CACF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as SbbTagElement } from "../../tag.component-
|
|
1
|
+
import { t as SbbTagElement } from "../../tag.component-CDDb2fnV.js";
|
|
2
2
|
export { SbbTagElement };
|
|
@@ -15,7 +15,7 @@ export declare class SbbTagGroupElement<T = string> extends SbbTagGroupElement_b
|
|
|
15
15
|
/**
|
|
16
16
|
* This will be forwarded as aria-label to the inner list.
|
|
17
17
|
*/
|
|
18
|
-
accessor
|
|
18
|
+
accessor accessibilityLabel: string;
|
|
19
19
|
/**
|
|
20
20
|
* If set multiple to false, the selection is exclusive and the value is a string (or null).
|
|
21
21
|
* If set multiple to true, the selection can have multiple values and therefore value is an array.
|
|
@@ -37,7 +37,12 @@ export declare class SbbTagGroupElement<T = string> extends SbbTagGroupElement_b
|
|
|
37
37
|
private _value;
|
|
38
38
|
/** The child instances of sbb-tag as an array. */
|
|
39
39
|
get tags(): SbbTagElement<T>[];
|
|
40
|
+
constructor();
|
|
40
41
|
protected willUpdate(changedProperties: PropertyValues<WithListChildren<this>>): void;
|
|
42
|
+
private _enabledTags;
|
|
43
|
+
/** In exclusive mode, only the checked tag (or the first non-disabled tag) should be focusable. */
|
|
44
|
+
protected updateExclusiveTabIndex(): void;
|
|
45
|
+
private _handleArrowKeyDown;
|
|
41
46
|
private _applyValueToTags;
|
|
42
47
|
protected render(): TemplateResult;
|
|
43
48
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag-group.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/tag/tag-group/tag-group.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAGnB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEpB,MAAM,KAAK,CAAC;AAGb,OAAO,
|
|
1
|
+
{"version":3,"file":"tag-group.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/tag/tag-group/tag-group.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAGnB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEpB,MAAM,KAAK,CAAC;AAGb,OAAO,EAKL,UAAU,EAEV,KAAK,gBAAgB,EACtB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;;AAI7D;;;;;GAKG;AACH,qBAAa,kBAAkB,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,uBAEnD;IACC,gBAAgC,WAAW,EAAE,MAAM,CAAmB;IACtE,OAAuB,MAAM,EAAE,cAAc,CAAsB;IAEnE,mBAA4B,mBAAmB,WAAsB;IAErE;;OAEG;IACH,SAEgB,kBAAkB,EAAE,MAAM,CAAM;IAEhD;;;;;OAKG;IACH,SAEgB,QAAQ,EAAE,OAAO,CAAS;IAE1C;;OAEG;IACH,SAA6C,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAQ;IAEhF;;;;OAIG;IACH,IACW,KAAK,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,IAAI,EAM9C;IACD,IAAW,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,IAAI,CAM1C;IACD,OAAO,CAAC,MAAM,CAAiC;IAE/C,kDAAkD;IAClD,IAAW,IAAI,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,CAEpC;;cAOkB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;IAqC9F,OAAO,CAAC,YAAY;IAIpB,mGAAmG;IACnG,SAAS,CAAC,uBAAuB,IAAI,IAAI;IAMzC,OAAO,CAAC,mBAAmB;IAoB3B,OAAO,CAAC,iBAAiB;cA0BN,MAAM,IAAI,cAAc;CAQ5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,eAAe,EAAE,kBAAkB,CAAC;KACrC;CACF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as SbbTagGroupElement } from "../../tag-group.component-
|
|
1
|
+
import { t as SbbTagGroupElement } from "../../tag-group.component-DTff1eBB.js";
|
|
2
2
|
export { SbbTagGroupElement };
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
+
import { html, isServer, unsafeCSS } from "lit";
|
|
3
|
+
import { property } from "lit/decorators.js";
|
|
4
|
+
import { SbbDisabledMixin, SbbElement, SbbNamedSlotListMixin, forceType, getNextElementIndex, isArrowKeyPressed } from "./core.js";
|
|
5
|
+
//#region src/elements/tag/tag-group/tag-group.scss?inline
|
|
6
|
+
var tag_group_default = ":host {\n display: block;\n}\n\n.sbb-tag-group__list {\n display: flex;\n flex-wrap: wrap;\n gap: var(--sbb-spacing-fixed-3x);\n}\n\n.sbb-tag-group__list > :is(li, span) {\n display: flex;\n max-width: 100%;\n}";
|
|
7
|
+
//#endregion
|
|
8
|
+
//#region src/elements/tag/tag-group/tag-group.component.ts
|
|
9
|
+
/**
|
|
10
|
+
* It can be used as a container for one or more `sbb-tag`.
|
|
11
|
+
*
|
|
12
|
+
* @slot - Use the unnamed slot to add one or more 'sbb-tag' elements to the `sbb-tag-group`.
|
|
13
|
+
* @overrideType value - (T = string | (string | null)[]) | null
|
|
14
|
+
*/
|
|
15
|
+
var SbbTagGroupElement = (() => {
|
|
16
|
+
let _classSuper = SbbDisabledMixin(SbbNamedSlotListMixin(SbbElement));
|
|
17
|
+
let _instanceExtraInitializers = [];
|
|
18
|
+
let _accessibilityLabel_decorators;
|
|
19
|
+
let _accessibilityLabel_initializers = [];
|
|
20
|
+
let _accessibilityLabel_extraInitializers = [];
|
|
21
|
+
let _multiple_decorators;
|
|
22
|
+
let _multiple_initializers = [];
|
|
23
|
+
let _multiple_extraInitializers = [];
|
|
24
|
+
let _size_decorators;
|
|
25
|
+
let _size_initializers = [];
|
|
26
|
+
let _size_extraInitializers = [];
|
|
27
|
+
let _set_value_decorators;
|
|
28
|
+
return class SbbTagGroupElement extends _classSuper {
|
|
29
|
+
static {
|
|
30
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
31
|
+
_accessibilityLabel_decorators = [forceType(), property({ attribute: "accessibility-label" })];
|
|
32
|
+
_multiple_decorators = [forceType(), property({ type: Boolean })];
|
|
33
|
+
_size_decorators = [property({ reflect: true })];
|
|
34
|
+
_set_value_decorators = [property()];
|
|
35
|
+
__esDecorate(this, null, _accessibilityLabel_decorators, {
|
|
36
|
+
kind: "accessor",
|
|
37
|
+
name: "accessibilityLabel",
|
|
38
|
+
static: false,
|
|
39
|
+
private: false,
|
|
40
|
+
access: {
|
|
41
|
+
has: (obj) => "accessibilityLabel" in obj,
|
|
42
|
+
get: (obj) => obj.accessibilityLabel,
|
|
43
|
+
set: (obj, value) => {
|
|
44
|
+
obj.accessibilityLabel = value;
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
metadata: _metadata
|
|
48
|
+
}, _accessibilityLabel_initializers, _accessibilityLabel_extraInitializers);
|
|
49
|
+
__esDecorate(this, null, _multiple_decorators, {
|
|
50
|
+
kind: "accessor",
|
|
51
|
+
name: "multiple",
|
|
52
|
+
static: false,
|
|
53
|
+
private: false,
|
|
54
|
+
access: {
|
|
55
|
+
has: (obj) => "multiple" in obj,
|
|
56
|
+
get: (obj) => obj.multiple,
|
|
57
|
+
set: (obj, value) => {
|
|
58
|
+
obj.multiple = value;
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
metadata: _metadata
|
|
62
|
+
}, _multiple_initializers, _multiple_extraInitializers);
|
|
63
|
+
__esDecorate(this, null, _size_decorators, {
|
|
64
|
+
kind: "accessor",
|
|
65
|
+
name: "size",
|
|
66
|
+
static: false,
|
|
67
|
+
private: false,
|
|
68
|
+
access: {
|
|
69
|
+
has: (obj) => "size" in obj,
|
|
70
|
+
get: (obj) => obj.size,
|
|
71
|
+
set: (obj, value) => {
|
|
72
|
+
obj.size = value;
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
metadata: _metadata
|
|
76
|
+
}, _size_initializers, _size_extraInitializers);
|
|
77
|
+
__esDecorate(this, null, _set_value_decorators, {
|
|
78
|
+
kind: "setter",
|
|
79
|
+
name: "value",
|
|
80
|
+
static: false,
|
|
81
|
+
private: false,
|
|
82
|
+
access: {
|
|
83
|
+
has: (obj) => "value" in obj,
|
|
84
|
+
set: (obj, value) => {
|
|
85
|
+
obj.value = value;
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
metadata: _metadata
|
|
89
|
+
}, null, _instanceExtraInitializers);
|
|
90
|
+
if (_metadata) Object.defineProperty(this, Symbol.metadata, {
|
|
91
|
+
enumerable: true,
|
|
92
|
+
configurable: true,
|
|
93
|
+
writable: true,
|
|
94
|
+
value: _metadata
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
static {
|
|
98
|
+
this.elementName = "sbb-tag-group";
|
|
99
|
+
}
|
|
100
|
+
static {
|
|
101
|
+
this.styles = [unsafeCSS(tag_group_default)];
|
|
102
|
+
}
|
|
103
|
+
#accessibilityLabel_accessor_storage;
|
|
104
|
+
/**
|
|
105
|
+
* This will be forwarded as aria-label to the inner list.
|
|
106
|
+
*/
|
|
107
|
+
get accessibilityLabel() {
|
|
108
|
+
return this.#accessibilityLabel_accessor_storage;
|
|
109
|
+
}
|
|
110
|
+
set accessibilityLabel(value) {
|
|
111
|
+
this.#accessibilityLabel_accessor_storage = value;
|
|
112
|
+
}
|
|
113
|
+
#multiple_accessor_storage;
|
|
114
|
+
/**
|
|
115
|
+
* If set multiple to false, the selection is exclusive and the value is a string (or null).
|
|
116
|
+
* If set multiple to true, the selection can have multiple values and therefore value is an array.
|
|
117
|
+
*
|
|
118
|
+
* Changing multiple during run time is not supported.
|
|
119
|
+
*/
|
|
120
|
+
get multiple() {
|
|
121
|
+
return this.#multiple_accessor_storage;
|
|
122
|
+
}
|
|
123
|
+
set multiple(value) {
|
|
124
|
+
this.#multiple_accessor_storage = value;
|
|
125
|
+
}
|
|
126
|
+
#size_accessor_storage;
|
|
127
|
+
/**
|
|
128
|
+
* Tag group size, either s (lean theme default) or m (standard theme default).
|
|
129
|
+
*/
|
|
130
|
+
get size() {
|
|
131
|
+
return this.#size_accessor_storage;
|
|
132
|
+
}
|
|
133
|
+
set size(value) {
|
|
134
|
+
this.#size_accessor_storage = value;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Value of the sbb-tag-group.
|
|
138
|
+
* If set multiple to false, the value is a string (or null).
|
|
139
|
+
* If set multiple to true, the value is an array.
|
|
140
|
+
*/
|
|
141
|
+
set value(value) {
|
|
142
|
+
if (isServer || !this.hasUpdated) {
|
|
143
|
+
this._value = value;
|
|
144
|
+
return;
|
|
145
|
+
}
|
|
146
|
+
this._applyValueToTags(value);
|
|
147
|
+
}
|
|
148
|
+
get value() {
|
|
149
|
+
return isServer || !this.hasUpdated ? this._value : this.multiple ? this.tags.filter((t) => t.checked).map((t) => t.value) : this.tags.find((t) => t.checked)?.value ?? null;
|
|
150
|
+
}
|
|
151
|
+
/** The child instances of sbb-tag as an array. */
|
|
152
|
+
get tags() {
|
|
153
|
+
return Array.from(this.querySelectorAll?.("sbb-tag") ?? []);
|
|
154
|
+
}
|
|
155
|
+
constructor() {
|
|
156
|
+
super();
|
|
157
|
+
this.listChildLocalNames = (__runInitializers(this, _instanceExtraInitializers), ["sbb-tag", "div"]);
|
|
158
|
+
this.#accessibilityLabel_accessor_storage = __runInitializers(this, _accessibilityLabel_initializers, "");
|
|
159
|
+
this.#multiple_accessor_storage = (__runInitializers(this, _accessibilityLabel_extraInitializers), __runInitializers(this, _multiple_initializers, false));
|
|
160
|
+
this.#size_accessor_storage = (__runInitializers(this, _multiple_extraInitializers), __runInitializers(this, _size_initializers, null));
|
|
161
|
+
this._value = (__runInitializers(this, _size_extraInitializers), null);
|
|
162
|
+
this.addEventListener?.("keydown", (e) => this._handleArrowKeyDown(e));
|
|
163
|
+
}
|
|
164
|
+
willUpdate(changedProperties) {
|
|
165
|
+
super.willUpdate(changedProperties);
|
|
166
|
+
if (changedProperties.has("value") && !this.hasUpdated && this._value) this._applyValueToTags(this.value);
|
|
167
|
+
if (changedProperties.has("disabled")) this.tags.forEach((r) => r.requestUpdate?.("disabled"));
|
|
168
|
+
if (changedProperties.has("listChildren") || changedProperties.has("multiple")) {
|
|
169
|
+
if (!this.multiple) {
|
|
170
|
+
this.tags.filter((tag) => tag.checked).slice(1).forEach((tag) => tag.checked = false);
|
|
171
|
+
this.updateExclusiveTabIndex();
|
|
172
|
+
} else if (changedProperties.has("multiple")) this._enabledTags().forEach((t) => t.tabIndex = 0);
|
|
173
|
+
}
|
|
174
|
+
if (changedProperties.has("accessibilityLabel") || changedProperties.has("multiple")) if (this.multiple) {
|
|
175
|
+
this.internals.role = this.accessibilityLabel ? null : "group";
|
|
176
|
+
this.internals.ariaLabel = null;
|
|
177
|
+
} else {
|
|
178
|
+
this.internals.role = "radiogroup";
|
|
179
|
+
this.internals.ariaLabel = this.accessibilityLabel;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
_enabledTags() {
|
|
183
|
+
return this.tags.filter((t) => !t.disabled);
|
|
184
|
+
}
|
|
185
|
+
/** In exclusive mode, only the checked tag (or the first non-disabled tag) should be focusable. */
|
|
186
|
+
updateExclusiveTabIndex() {
|
|
187
|
+
const enabledTags = this._enabledTags();
|
|
188
|
+
const focusTarget = enabledTags.find((t) => t.checked) ?? enabledTags[0];
|
|
189
|
+
enabledTags.forEach((t) => t.tabIndex = t === focusTarget ? 0 : -1);
|
|
190
|
+
}
|
|
191
|
+
_handleArrowKeyDown(evt) {
|
|
192
|
+
if (this.multiple || !isArrowKeyPressed(evt)) return;
|
|
193
|
+
evt.preventDefault();
|
|
194
|
+
const enabledTags = this._enabledTags();
|
|
195
|
+
const current = enabledTags.indexOf(evt.target);
|
|
196
|
+
if (current === -1) return;
|
|
197
|
+
const nextTag = enabledTags[getNextElementIndex(evt, current, enabledTags.length)];
|
|
198
|
+
enabledTags.forEach((t) => t.tabIndex = t === nextTag ? 0 : -1);
|
|
199
|
+
nextTag.focus();
|
|
200
|
+
}
|
|
201
|
+
_applyValueToTags(value) {
|
|
202
|
+
const tags = this.tags;
|
|
203
|
+
if (value === null) tags.forEach((t) => t.checked = false);
|
|
204
|
+
else if (this.multiple) {
|
|
205
|
+
if (!Array.isArray(value) && tags.every((t) => t.value !== value)) try {
|
|
206
|
+
value = JSON.parse(value);
|
|
207
|
+
} catch {}
|
|
208
|
+
const valueAsArray = Array.isArray(value) ? value : [value];
|
|
209
|
+
tags.forEach((t) => t.checked = valueAsArray.includes(t.value));
|
|
210
|
+
} else if (!Array.isArray(value)) tags.forEach((t) => t.checked = t.value === value);
|
|
211
|
+
}
|
|
212
|
+
render() {
|
|
213
|
+
return html`
|
|
214
|
+
${this.renderList({
|
|
215
|
+
class: "sbb-tag-group__list",
|
|
216
|
+
ariaLabel: this.multiple ? this.accessibilityLabel : void 0
|
|
217
|
+
})}
|
|
218
|
+
`;
|
|
219
|
+
}
|
|
220
|
+
};
|
|
221
|
+
})();
|
|
222
|
+
//#endregion
|
|
223
|
+
export { SbbTagGroupElement as t };
|
|
224
|
+
|
|
225
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLWdyb3VwLmNvbXBvbmVudC1EVGZmMWVCQi5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy1ncm91cC90YWctZ3JvdXAuc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy1ncm91cC90YWctZ3JvdXAuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbjpob3N0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zYmItdGFnLWdyb3VwX19saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTN4KTtcbn1cblxuLy8gVXNpbmcgLi4uIGxpIHNlbGVjdG9yLCBiZWNhdXNlIHRoZSBsaSBnZW5lcmF0aW9uXG4vLyBpcyBoYW5kbGVkIGluIHRoZSBjb21wb25lbnQgYmFzZSBjbGFzcy5cbi5zYmItdGFnLWdyb3VwX19saXN0ID4gOmlzKGxpLCBzcGFuKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbiIsImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIGlzU2VydmVyLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxuICB1bnNhZmVDU1MsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHtcbiAgZm9yY2VUeXBlLFxuICBnZXROZXh0RWxlbWVudEluZGV4LFxuICBpc0Fycm93S2V5UHJlc3NlZCxcbiAgU2JiRGlzYWJsZWRNaXhpbixcbiAgU2JiRWxlbWVudCxcbiAgU2JiTmFtZWRTbG90TGlzdE1peGluLFxuICB0eXBlIFdpdGhMaXN0Q2hpbGRyZW4sXG59IGZyb20gJy4uLy4uL2NvcmUudHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJUYWdFbGVtZW50IH0gZnJvbSAnLi4vdGFnL3RhZy5jb21wb25lbnQudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90YWctZ3JvdXAuc2Nzcz9pbmxpbmUnO1xuXG4vKipcbiAqIEl0IGNhbiBiZSB1c2VkIGFzIGEgY29udGFpbmVyIGZvciBvbmUgb3IgbW9yZSBgc2JiLXRhZ2AuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgb25lIG9yIG1vcmUgJ3NiYi10YWcnIGVsZW1lbnRzIHRvIHRoZSBgc2JiLXRhZy1ncm91cGAuXG4gKiBAb3ZlcnJpZGVUeXBlIHZhbHVlIC0gKFQgPSBzdHJpbmcgfCAoc3RyaW5nIHwgbnVsbClbXSkgfCBudWxsXG4gKi9cbmV4cG9ydCBjbGFzcyBTYmJUYWdHcm91cEVsZW1lbnQ8VCA9IHN0cmluZz4gZXh0ZW5kcyBTYmJEaXNhYmxlZE1peGluKFxuICBTYmJOYW1lZFNsb3RMaXN0TWl4aW48U2JiVGFnRWxlbWVudCwgdHlwZW9mIFNiYkVsZW1lbnQ+KFNiYkVsZW1lbnQpLFxuKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItdGFnLWdyb3VwJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW3Vuc2FmZUNTUyhzdHlsZSldO1xuICAvLyBESVYgaXMgYWRkZWQgaGVyZSBkdWUgdG8gc3BlY2lhbCByZXF1aXJlbWVudHMgZnJvbSBzYmIuY2guXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZWFkb25seSBsaXN0Q2hpbGRMb2NhbE5hbWVzID0gWydzYmItdGFnJywgJ2RpdiddO1xuXG4gIC8qKlxuICAgKiBUaGlzIHdpbGwgYmUgZm9yd2FyZGVkIGFzIGFyaWEtbGFiZWwgdG8gdGhlIGlubmVyIGxpc3QuXG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1sYWJlbCcgfSlcbiAgcHVibGljIGFjY2Vzc29yIGFjY2Vzc2liaWxpdHlMYWJlbDogc3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIElmIHNldCBtdWx0aXBsZSB0byBmYWxzZSwgdGhlIHNlbGVjdGlvbiBpcyBleGNsdXNpdmUgYW5kIHRoZSB2YWx1ZSBpcyBhIHN0cmluZyAob3IgbnVsbCkuXG4gICAqIElmIHNldCBtdWx0aXBsZSB0byB0cnVlLCB0aGUgc2VsZWN0aW9uIGNhbiBoYXZlIG11bHRpcGxlIHZhbHVlcyBhbmQgdGhlcmVmb3JlIHZhbHVlIGlzIGFuIGFycmF5LlxuICAgKlxuICAgKiBDaGFuZ2luZyBtdWx0aXBsZSBkdXJpbmcgcnVuIHRpbWUgaXMgbm90IHN1cHBvcnRlZC5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyB0eXBlOiBCb29sZWFuIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBtdWx0aXBsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUYWcgZ3JvdXAgc2l6ZSwgZWl0aGVyIHMgKGxlYW4gdGhlbWUgZGVmYXVsdCkgb3IgbSAoc3RhbmRhcmQgdGhlbWUgZGVmYXVsdCkuXG4gICAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhY2Nlc3NvciBzaXplOiBTYmJUYWdFbGVtZW50WydzaXplJ10gPSBudWxsO1xuXG4gIC8qKlxuICAgKiBWYWx1ZSBvZiB0aGUgc2JiLXRhZy1ncm91cC5cbiAgICogSWYgc2V0IG11bHRpcGxlIHRvIGZhbHNlLCB0aGUgdmFsdWUgaXMgYSBzdHJpbmcgKG9yIG51bGwpLlxuICAgKiBJZiBzZXQgbXVsdGlwbGUgdG8gdHJ1ZSwgdGhlIHZhbHVlIGlzIGFuIGFycmF5LlxuICAgKi9cbiAgQHByb3BlcnR5KClcbiAgcHVibGljIHNldCB2YWx1ZSh2YWx1ZTogVCB8IChUIHwgbnVsbClbXSB8IG51bGwpIHtcbiAgICBpZiAoaXNTZXJ2ZXIgfHwgIXRoaXMuaGFzVXBkYXRlZCkge1xuICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fYXBwbHlWYWx1ZVRvVGFncyh2YWx1ZSk7XG4gIH1cbiAgcHVibGljIGdldCB2YWx1ZSgpOiBUIHwgKFQgfCBudWxsKVtdIHwgbnVsbCB7XG4gICAgcmV0dXJuIGlzU2VydmVyIHx8ICF0aGlzLmhhc1VwZGF0ZWRcbiAgICAgID8gdGhpcy5fdmFsdWVcbiAgICAgIDogdGhpcy5tdWx0aXBsZVxuICAgICAgICA/IHRoaXMudGFncy5maWx0ZXIoKHQpID0+IHQuY2hlY2tlZCkubWFwKCh0KSA9PiB0LnZhbHVlKVxuICAgICAgICA6ICh0aGlzLnRhZ3MuZmluZCgodCkgPT4gdC5jaGVja2VkKT8udmFsdWUgPz8gbnVsbCk7XG4gIH1cbiAgcHJpdmF0ZSBfdmFsdWU6IFQgfCAoVCB8IG51bGwpW10gfCBudWxsID0gbnVsbDtcblxuICAvKiogVGhlIGNoaWxkIGluc3RhbmNlcyBvZiBzYmItdGFnIGFzIGFuIGFycmF5LiAqL1xuICBwdWJsaWMgZ2V0IHRhZ3MoKTogU2JiVGFnRWxlbWVudDxUPltdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLnF1ZXJ5U2VsZWN0b3JBbGw/LjxTYmJUYWdFbGVtZW50PFQ+Pignc2JiLXRhZycpID8/IFtdKTtcbiAgfVxuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdrZXlkb3duJywgKGUpID0+IHRoaXMuX2hhbmRsZUFycm93S2V5RG93bihlKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8V2l0aExpc3RDaGlsZHJlbjx0aGlzPj4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3ZhbHVlJykgJiYgIXRoaXMuaGFzVXBkYXRlZCAmJiB0aGlzLl92YWx1ZSkge1xuICAgICAgdGhpcy5fYXBwbHlWYWx1ZVRvVGFncyh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdkaXNhYmxlZCcpKSB7XG4gICAgICB0aGlzLnRhZ3MuZm9yRWFjaCgocikgPT4gci5yZXF1ZXN0VXBkYXRlPy4oJ2Rpc2FibGVkJykpO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2xpc3RDaGlsZHJlbicpIHx8IGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbXVsdGlwbGUnKSkge1xuICAgICAgaWYgKCF0aGlzLm11bHRpcGxlKSB7XG4gICAgICAgIC8vIEVuc3VyZSBvbmx5IG9uZSB0YWcgY2hlY2tlZFxuICAgICAgICB0aGlzLnRhZ3NcbiAgICAgICAgICAuZmlsdGVyKCh0YWcpID0+IHRhZy5jaGVja2VkKVxuICAgICAgICAgIC5zbGljZSgxKVxuICAgICAgICAgIC5mb3JFYWNoKCh0YWcpID0+ICh0YWcuY2hlY2tlZCA9IGZhbHNlKSk7XG5cbiAgICAgICAgdGhpcy51cGRhdGVFeGNsdXNpdmVUYWJJbmRleCgpO1xuICAgICAgfSBlbHNlIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ211bHRpcGxlJykpIHtcbiAgICAgICAgLy8gSW4gbXVsdGlwbGUgbW9kZSBhbGwgZW5hYmxlZCB0YWdzIHNob3VsZCBiZSBmb2N1c2FibGVcbiAgICAgICAgdGhpcy5fZW5hYmxlZFRhZ3MoKS5mb3JFYWNoKCh0KSA9PiAodC50YWJJbmRleCA9IDApKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdhY2Nlc3NpYmlsaXR5TGFiZWwnKSB8fCBjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ211bHRpcGxlJykpIHtcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICAgIHRoaXMuaW50ZXJuYWxzLnJvbGUgPSB0aGlzLmFjY2Vzc2liaWxpdHlMYWJlbCA/IG51bGwgOiAnZ3JvdXAnO1xuICAgICAgICB0aGlzLmludGVybmFscy5hcmlhTGFiZWwgPSBudWxsO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pbnRlcm5hbHMucm9sZSA9ICdyYWRpb2dyb3VwJztcbiAgICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYUxhYmVsID0gdGhpcy5hY2Nlc3NpYmlsaXR5TGFiZWw7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZW5hYmxlZFRhZ3MoKTogU2JiVGFnRWxlbWVudDxUPltdIHtcbiAgICByZXR1cm4gdGhpcy50YWdzLmZpbHRlcigodCkgPT4gIXQuZGlzYWJsZWQpO1xuICB9XG5cbiAgLyoqIEluIGV4Y2x1c2l2ZSBtb2RlLCBvbmx5IHRoZSBjaGVja2VkIHRhZyAob3IgdGhlIGZpcnN0IG5vbi1kaXNhYmxlZCB0YWcpIHNob3VsZCBiZSBmb2N1c2FibGUuICovXG4gIHByb3RlY3RlZCB1cGRhdGVFeGNsdXNpdmVUYWJJbmRleCgpOiB2b2lkIHtcbiAgICBjb25zdCBlbmFibGVkVGFncyA9IHRoaXMuX2VuYWJsZWRUYWdzKCk7XG4gICAgY29uc3QgZm9jdXNUYXJnZXQgPSBlbmFibGVkVGFncy5maW5kKCh0KSA9PiB0LmNoZWNrZWQpID8/IGVuYWJsZWRUYWdzWzBdO1xuICAgIGVuYWJsZWRUYWdzLmZvckVhY2goKHQpID0+ICh0LnRhYkluZGV4ID0gdCA9PT0gZm9jdXNUYXJnZXQgPyAwIDogLTEpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUFycm93S2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tdWx0aXBsZSB8fCAhaXNBcnJvd0tleVByZXNzZWQoZXZ0KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBldnQucHJldmVudERlZmF1bHQoKTtcblxuICAgIGNvbnN0IGVuYWJsZWRUYWdzID0gdGhpcy5fZW5hYmxlZFRhZ3MoKTtcbiAgICBjb25zdCBjdXJyZW50ID0gZW5hYmxlZFRhZ3MuaW5kZXhPZihldnQudGFyZ2V0IGFzIFNiYlRhZ0VsZW1lbnQ8VD4pO1xuICAgIGlmIChjdXJyZW50ID09PSAtMSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG5leHRJbmRleCA9IGdldE5leHRFbGVtZW50SW5kZXgoZXZ0LCBjdXJyZW50LCBlbmFibGVkVGFncy5sZW5ndGgpO1xuICAgIGNvbnN0IG5leHRUYWcgPSBlbmFibGVkVGFnc1tuZXh0SW5kZXhdO1xuXG4gICAgLy8gT25seSBtb3ZlIGZvY3VzLCBkbyBub3Qgc2VsZWN0LiBTZWxlY3Rpb24gaGFwcGVucyB2aWEgY2xpY2sgb3IgU3BhY2UvRW50ZXIuXG4gICAgZW5hYmxlZFRhZ3MuZm9yRWFjaCgodCkgPT4gKHQudGFiSW5kZXggPSB0ID09PSBuZXh0VGFnID8gMCA6IC0xKSk7XG4gICAgbmV4dFRhZy5mb2N1cygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfYXBwbHlWYWx1ZVRvVGFncyh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgY29uc3QgdGFncyA9IHRoaXMudGFncztcblxuICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgdGFncy5mb3JFYWNoKCh0KSA9PiAodC5jaGVja2VkID0gZmFsc2UpKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWx1ZSkgJiYgdGFncy5ldmVyeSgodCkgPT4gdC52YWx1ZSAhPT0gdmFsdWUpKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgLy8gSWYgaXQgaXMgbXVsdGlwbGUgbW9kZSBhbmQgbm8gdGFnIG1hdGNoZXMgdGhlIHZhbHVlLCB3ZSB0cnkgdG8gcGFyc2UgdGhlIHZhbHVlIGFzIEpTT04uXG4gICAgICAgICAgLy8gVGhpcyBhbGxvd3Mgc2VydmVyIHNpZGUgcmVuZGVyaW5nIHRvIHVzZSBhcnJheSB2YWx1ZXMgdG8gYmUgcGFzc2VkIHRvIHRoZSBjbGllbnQgc2lkZS5cbiAgICAgICAgICB2YWx1ZSA9IEpTT04ucGFyc2UodmFsdWUgYXMgc3RyaW5nKTtcbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgLyogZW1wdHkgKi9cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3QgdmFsdWVBc0FycmF5ID0gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZSA6IFt2YWx1ZV07XG4gICAgICB0YWdzLmZvckVhY2goKHQpID0+ICh0LmNoZWNrZWQgPSB2YWx1ZUFzQXJyYXkuaW5jbHVkZXModC52YWx1ZSkpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICB0YWdzLmZvckVhY2goKHQpID0+ICh0LmNoZWNrZWQgPSB0LnZhbHVlID09PSB2YWx1ZSkpO1xuICAgICAgfSBlbHNlIGlmIChpbXBvcnQubWV0YS5lbnYuREVWKSB7XG4gICAgICAgIGNvbnNvbGUud2FybigndmFsdWUgbXVzdCBub3QgYmUgc2V0IGFzIGFuIGFycmF5IGluIHNpbmd1bGFyIG1vZGUuJywgdmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgJHt0aGlzLnJlbmRlckxpc3Qoe1xuICAgICAgICBjbGFzczogJ3NiYi10YWctZ3JvdXBfX2xpc3QnLFxuICAgICAgICBhcmlhTGFiZWw6IHRoaXMubXVsdGlwbGUgPyB0aGlzLmFjY2Vzc2liaWxpdHlMYWJlbCA6IHVuZGVmaW5lZCxcbiAgICAgIH0pfVxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi10YWctZ3JvdXAnOiBTYmJUYWdHcm91cEVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7SUM2QmEsNEJBQWtCO21CQUFxQixpQkFDbEQsc0JBQXdELFVBQVUsQ0FBQzs7Ozs7Ozs7Ozs7O2NBRHhELDJCQUF1QyxZQUVuRDs7O3FDQVNFLFVBQVMsR0FDVCxTQUFTLEVBQUUsV0FBVyxzQkFBcUIsQ0FBRSxDQUFDOzJCQVM5QyxVQUFTLEdBQ1QsU0FBUyxFQUFFLE1BQU0sUUFBTyxDQUFFLENBQUM7dUJBTTNCLFNBQVMsRUFBRSxTQUFTLEtBQUksQ0FBRSxDQUFDOzRCQU8zQixTQUFRLENBQUU7R0F0QlgsYUFBQSxNQUFBLE1BQUEsZ0NBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSx3QkFBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFrQixNQUFBLEtBQUEsVUFBQTtNQUFBLElBQWxCLHFCQUFrQjtLQUFBO0lBQUE7SUFBQSxVQUFBO0dBQUEsR0FBQSxrQ0FBQSxxQ0FBQTtHQVVsQyxhQUFBLE1BQUEsTUFBQSxzQkFBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLGNBQUE7S0FBQSxNQUFBLFFBQUEsSUFBZ0I7S0FBUSxNQUFBLEtBQUEsVUFBQTtNQUFBLElBQVIsV0FBUTtLQUFBO0lBQUE7SUFBQSxVQUFBO0dBQUEsR0FBQSx3QkFBQSwyQkFBQTtHQUtLLGFBQUEsTUFBQSxNQUFBLGtCQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsVUFBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFJLE1BQUEsS0FBQSxVQUFBO01BQUEsSUFBSixPQUFJO0tBQUE7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
|
|
@@ -157,13 +157,28 @@ var SbbTagElement = (() => {
|
|
|
157
157
|
super();
|
|
158
158
|
__runInitializers(this, _size_extraInitializers);
|
|
159
159
|
this.addEventListener?.("click", () => this._handleClick());
|
|
160
|
-
this.addController(new SbbPropertyWatcherController(this, () => this._tagGroup(), {
|
|
161
|
-
|
|
162
|
-
|
|
160
|
+
this.addController(new SbbPropertyWatcherController(this, () => this._tagGroup(), {
|
|
161
|
+
multiple: () => this._updateAriaRole(),
|
|
162
|
+
size: (g) => {
|
|
163
|
+
this.size = g.size;
|
|
164
|
+
}
|
|
165
|
+
}));
|
|
163
166
|
}
|
|
164
167
|
_tagGroup() {
|
|
165
168
|
return this.closest?.("sbb-tag-group") ?? null;
|
|
166
169
|
}
|
|
170
|
+
_updateAriaRole() {
|
|
171
|
+
const tagGroup = this._tagGroup();
|
|
172
|
+
if (tagGroup && !tagGroup.multiple) {
|
|
173
|
+
this.internals.role = "radio";
|
|
174
|
+
this.internals.ariaChecked = `${this.checked}`;
|
|
175
|
+
this.internals.ariaPressed = null;
|
|
176
|
+
} else {
|
|
177
|
+
this.internals.role = "button";
|
|
178
|
+
this.internals.ariaChecked = null;
|
|
179
|
+
this.internals.ariaPressed = `${this.checked}`;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
167
182
|
isDisabledExternally() {
|
|
168
183
|
return this._tagGroup()?.disabled ?? false;
|
|
169
184
|
}
|
|
@@ -173,7 +188,6 @@ var SbbTagElement = (() => {
|
|
|
173
188
|
const tagGroup = this._tagGroup();
|
|
174
189
|
if (tagGroup && !tagGroup.multiple && this.checked) return;
|
|
175
190
|
this.checked = !this.checked;
|
|
176
|
-
/** The input event fires when the value has been changed as a direct result of a user action. */
|
|
177
191
|
this.dispatchEvent(new InputEvent("input", {
|
|
178
192
|
bubbles: true,
|
|
179
193
|
composed: true
|
|
@@ -192,13 +206,19 @@ var SbbTagElement = (() => {
|
|
|
192
206
|
}
|
|
193
207
|
willUpdate(changedProperties) {
|
|
194
208
|
super.willUpdate(changedProperties);
|
|
209
|
+
const tagGroup = this._tagGroup();
|
|
195
210
|
if (changedProperties.has("checked")) {
|
|
196
|
-
this.
|
|
211
|
+
this._updateAriaRole();
|
|
197
212
|
this.toggleState("checked", this.checked);
|
|
198
213
|
this.updateFormValue();
|
|
199
214
|
}
|
|
200
|
-
|
|
201
|
-
|
|
215
|
+
if (tagGroup && !tagGroup.multiple && changedProperties.has("checked")) {
|
|
216
|
+
if (this.checked) tagGroup.tags.forEach((t) => {
|
|
217
|
+
t.tabIndex = t === this ? 0 : -1;
|
|
218
|
+
t.checked = t === this;
|
|
219
|
+
});
|
|
220
|
+
else if (!tagGroup.tags.some((t) => t.checked)) tagGroup["updateExclusiveTabIndex"]();
|
|
221
|
+
}
|
|
202
222
|
}
|
|
203
223
|
/**
|
|
204
224
|
* @internal
|
|
@@ -235,4 +255,4 @@ var SbbTagElement = (() => {
|
|
|
235
255
|
//#endregion
|
|
236
256
|
export { SbbTagElement as t };
|
|
237
257
|
|
|
238
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLmNvbXBvbmVudC1ENllvd3VjVy5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy90YWcuc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy90YWcuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbiRkaXNhYmxlZDogJzpkaXNhYmxlZCwgW2Rpc2FibGVkLWludGVyYWN0aXZlXSc7XG4kYWN0aXZlOiAnOmFjdGl2ZSwgOnN0YXRlKGFjdGl2ZSknO1xuXG46aG9zdCB7XG4gIC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb246IHZhcihcbiAgICAtLXNiYi1kaXNhYmxlLWFuaW1hdGlvbi1kdXJhdGlvbixcbiAgICB2YXIoLS1zYmItYW5pbWF0aW9uLWR1cmF0aW9uLTJ4KVxuICApO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gIC8vIFVzZSAhaW1wb3J0YW50IGhlcmUgdG8gbm90IGludGVyZmVyZSB3aXRoIEZpcmVmb3ggZm9jdXMgcmluZyBkZWZpbml0aW9uXG4gIC8vIHdoaWNoIGFwcGVhcnMgaW4gbm9ybWFsaXplIENTUyBvZiBzZXZlcmFsIGZyYW1ld29ya3MuXG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuOmhvc3QoW3NpemU9J3MnXSkge1xuICAtLXNiYi10YWctaGVpZ2h0OiB2YXIoLS1zYmItdGFnLWhlaWdodC1zKTtcbiAgLS1zYmItdGFnLXBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItdGFnLXBhZGRpbmctaW5saW5lLXMpO1xufVxuXG46aG9zdChbc2l6ZT0nbSddKSB7XG4gIC0tc2JiLXRhZy1oZWlnaHQ6IHZhcigtLXNiYi10YWctaGVpZ2h0LW0pO1xuICAtLXNiYi10YWctcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi10YWctcGFkZGluZy1pbmxpbmUtbSk7XG59XG5cbi8vIEFjdGl2ZSBzdGF0ZVxuOmhvc3QoOnN0YXRlKGNoZWNrZWQpKSB7XG4gIC0tc2JiLXRhZy1ib3JkZXItY29sb3I6IHZhcigtLXNiYi1ib3JkZXItY29sb3ItMyk7XG4gIC0tc2JiLXRhZy1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuXG4gIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogSGlnaGxpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgLS1zYmItdGFnLWJvcmRlci13aWR0aDogdmFyKC0tc2JiLWJvcmRlci13aWR0aC00eCk7XG4gIH1cbn1cblxuOmhvc3QoOmlzKCN7JGRpc2FibGVkfSkpIHtcbiAgLS1zYmItdGFnLXRleHQtY29sb3I6IGxpZ2h0LWRhcmsodmFyKC0tc2JiLWNvbG9yLWdyYW5pdGUpLCB2YXIoLS1zYmItY29sb3ItYWx1bWluaXVtKSk7XG4gIC0tc2JiLXRhZy1hbW91bnQtY29sb3I6IHZhcigtLXNiYi10YWctdGV4dC1jb2xvcik7XG4gIC0tc2JiLXRhZy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItYmFja2dyb3VuZC1jb2xvci0zKTtcbiAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogbGlnaHQtZGFyayh2YXIoLS1zYmItY29sb3ItY2VtZW50KSwgdmFyKC0tc2JiLWNvbG9yLXNtb2tlKSk7XG4gIC0tc2JiLXRhZy1ib3JkZXItc3R5bGU6IGRhc2hlZDtcbiAgLS1zYmItdGFnLWN1cnNvcjogdW5zZXQ7XG4gIC0tc2JiLXRhZy1wb2ludGVyLWV2ZW50czogbm9uZTtcblxuICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgIC0tc2JiLXRhZy10ZXh0LWNvbG9yOiBHcmF5VGV4dDtcbiAgICAtLXNiYi10YWctYW1vdW50LWNvbG9yOiBHcmF5VGV4dDtcbiAgICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBHcmF5VGV4dDtcbiAgfVxufVxuXG46aG9zdCg6c3RhdGUoY2hlY2tlZCk6aXMoI3skZGlzYWJsZWR9KSkge1xuICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBsaWdodC1kYXJrKHZhcigtLXNiYi1jb2xvci1tZXRhbCksIHZhcigtLXNiYi1jb2xvci1jZW1lbnQpKTtcbiAgLS1zYmItdGFnLWJvcmRlci1zdHlsZTogZGFzaGVkO1xufVxuXG46aG9zdCg6aG92ZXI6bm90KCN7JGRpc2FibGVkfSwgI3skYWN0aXZlfSkpIHtcbiAgQGluY2x1ZGUgc2JiLmhvdmVyLW1xKCRob3ZlcjogdHJ1ZSkge1xuICAgIC0tc2JiLXRhZy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItYmFja2dyb3VuZC1jb2xvci0zKTtcbiAgICAtLXNiYi10YWctaW5zZXQ6IGNhbGModmFyKC0tc2JiLWJvcmRlci13aWR0aC0yeCkgKiAtMSk7XG4gICAgLS1zYmItdGFnLWNvbnRlbnQtc2hpZnQ6IHRyYW5zbGF0ZVkoY2FsYyh2YXIoLS1zYmItYm9yZGVyLXdpZHRoLTF4KSAqIC0xKSk7XG5cbiAgICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgICAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogSGlnaGxpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4vLyBQcmVzc2VkIHN0YXRlXG46aG9zdCg6aXMoI3skYWN0aXZlfSk6bm90KCN7JGRpc2FibGVkfSkpIHtcbiAgLS1zYmItdGFnLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTMpO1xuICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBsaWdodC1kYXJrKHZhcigtLXNiYi1jb2xvci1pcm9uKSwgdmFyKC0tc2JiLWNvbG9yLXN0b3JtKSk7XG4gIC0tc2JiLXRhZy1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuICAtLXNiYi10YWctdGV4dC1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLTQpO1xuXG4gIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogSGlnaGxpZ2h0O1xuICAgIC0tc2JiLXRhZy10ZXh0LWNvbG9yOiBCdXR0b25UZXh0O1xuICB9XG59XG5cbi5zYmItdGFnIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IHZhcigtLXNiYi10YWctaGVpZ2h0KTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IHZhcigtLXNiYi10ZXh0LWZvbnQtc2l6ZS14cyk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1zYmItdHlwby1sZXR0ZXItc3BhY2luZy10ZXh0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXNiYi10eXBvLWxpbmUtaGVpZ2h0LXRleHQpO1xuICBnYXA6IHZhcigtLXNiYi10YWctZ2FwKTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi10YWctcGFkZGluZy1pbmxpbmUpO1xuICBjdXJzb3I6IHZhcigtLXNiYi10YWctY3Vyc29yLCB2YXIoLS1zYmItY3Vyc29yLXBvaW50ZXIpKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLXRhZy1ib3JkZXItcmFkaXVzKTtcbiAgY29sb3I6IHZhcigtLXNiYi10YWctdGV4dC1jb2xvcik7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXNiYi10YWctYW5pbWF0aW9uLWR1cmF0aW9uKSB2YXIoLS1zYmItdGFnLWFuaW1hdGlvbi1lYXNpbmcpO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IHZhcigtLXNiYi10YWctcG9pbnRlci1ldmVudHMsIHVuc2V0KTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogdmFyKC0tc2JiLXRhZy1pbnNldCwgMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLXRhZy1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICBib3JkZXI6IHZhcigtLXNiYi10YWctYm9yZGVyLXdpZHRoKSB2YXIoLS1zYmItdGFnLWJvcmRlci1zdHlsZSkgdmFyKC0tc2JiLXRhZy1ib3JkZXItY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXNiYi10YWctYm9yZGVyLXJhZGl1cyk7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogdmFyKC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb24pO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYmItdGFnLWFuaW1hdGlvbi1lYXNpbmcpO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGluc2V0LCBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXItY29sb3IsIGJveC1zaGFkb3c7XG5cbiAgICA6aG9zdCg6Zm9jdXMtdmlzaWJsZSkgJiB7XG4gICAgICBAaW5jbHVkZSBzYmIuZm9jdXMtb3V0bGluZTtcbiAgICB9XG4gIH1cbn1cblxuLnNiYi10YWdfX2ljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IGNhbGModmFyKC0tc2JiLXR5cG8tbGluZS1oZWlnaHQtdGV4dCkgKiAxZW0pO1xuICBmbGV4LXNocmluazogMDtcblxuICA6aG9zdCg6bm90KDpzdGF0ZShzbG90dGVkLWljb24pLCA6c3RhdGUoaGFzLWljb24tbmFtZSkpKSAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zYmItdGFnX190ZXh0IHtcbiAgQGluY2x1ZGUgc2JiLmVsbGlwc2lzO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uc2JiLXRhZ19fYW1vdW50IHtcbiAgY29sb3I6IHZhcigtLXNiYi10YWctYW1vdW50LWNvbG9yKTtcblxuICA6aG9zdCg6bm90KDpzdGF0ZShzbG90dGVkLWFtb3VudCksIFthbW91bnRdKSkgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uc2JiLXRhZy0tc2hpZnQge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb24pIHZhcigtLXNiYi10YWctYW5pbWF0aW9uLWVhc2luZyk7XG4gIHRyYW5zZm9ybTogdmFyKC0tc2JiLXRhZy1jb250ZW50LXNoaWZ0LCAwKTtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbn1cbiIsImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG4gIHVuc2FmZUNTUyxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQge1xuICBmb3JjZVR5cGUsXG4gIHR5cGUgRm9ybVJlc3RvcmVSZWFzb24sXG4gIHR5cGUgRm9ybVJlc3RvcmVTdGF0ZSxcbiAgb21pdEVtcHR5Q29udmVydGVyLFxuICBTYmJCdXR0b25MaWtlQmFzZUVsZW1lbnQsXG4gIFNiYkRpc2FibGVkVGFiSW5kZXhBY3Rpb25NaXhpbixcbiAgU2JiUHJvcGVydHlXYXRjaGVyQ29udHJvbGxlcixcbn0gZnJvbSAnLi4vLi4vY29yZS50cyc7XG5pbXBvcnQgeyBTYmJJY29uTmFtZU1peGluIH0gZnJvbSAnLi4vLi4vaWNvbi5wdXJlLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiVGFnR3JvdXBFbGVtZW50IH0gZnJvbSAnLi4vdGFnLWdyb3VwL3RhZy1ncm91cC5jb21wb25lbnQudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90YWcuc2Nzcz9pbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgc2VsZWN0YWJsZSBlbGVtZW50IHdoaWNoIGNhbiBiZSB1c2VkIGFzIGEgZmlsdGVyLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIHRhZyBsYWJlbC5cbiAqIEBzbG90IGljb24gLSBVc2UgdGhpcyBzbG90IHRvIGRpc3BsYXkgYW4gaWNvbiBhdCB0aGUgY29tcG9uZW50IHN0YXJ0LCBieSBwcm92aWRpbmcgYSBgc2JiLWljb25gIGNvbXBvbmVudC5cbiAqIEBzbG90IGFtb3VudCAtIFByb3ZpZGUgYW4gYW1vdW50IHRvIHNob3cgaXQgYXQgdGhlIGNvbXBvbmVudCBlbmQuXG4gKiBAb3ZlcnJpZGVUeXBlIHZhbHVlIC0gKFQgPSBzdHJpbmcpIHwgbnVsbFxuICovXG5leHBvcnQgY2xhc3MgU2JiVGFnRWxlbWVudDxUID0gc3RyaW5nPiBleHRlbmRzIFNiYkljb25OYW1lTWl4aW4oXG4gIFNiYkRpc2FibGVkVGFiSW5kZXhBY3Rpb25NaXhpbihTYmJCdXR0b25MaWtlQmFzZUVsZW1lbnQpLFxuKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItdGFnJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW3Vuc2FmZUNTUyhzdHlsZSldO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICBpbnB1dDogJ2lucHV0JyxcbiAgICBkaWRDaGFuZ2U6ICdkaWRDaGFuZ2UnLFxuICAgIGNoYW5nZTogJ2NoYW5nZScsXG4gIH0gYXMgY29uc3Q7XG5cbiAgLyoqIFZhbHVlIG9mIHRoZSBmb3JtIGVsZW1lbnQuICovXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBhY2Nlc3NvciB2YWx1ZTogVCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBBbW91bnQgZGlzcGxheWVkIGluc2lkZSB0aGUgdGFnLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgY29udmVydGVyOiBvbWl0RW1wdHlDb252ZXJ0ZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIGFtb3VudDogc3RyaW5nID0gJyc7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHRhZyBpcyBjaGVja2VkLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogZmFsc2UsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIGNoZWNrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogVGFnIHNpemUsIGVpdGhlciBzIChsZWFuIHRoZW1lIGRlZmF1bHQpIG9yIG0gKHN0YW5kYXJkIHRoZW1lIGRlZmF1bHQpLlxuICAgKiBUaGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIGNsb3Nlc3QgYDxzYmItdGFnLWdyb3VwPmAuXG4gICAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBzaXplOiAncycgfCAnbScgfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LignY2xpY2snLCAoKSA9PiB0aGlzLl9oYW5kbGVDbGljaygpKTtcbiAgICB0aGlzLmFkZENvbnRyb2xsZXIoXG4gICAgICBuZXcgU2JiUHJvcGVydHlXYXRjaGVyQ29udHJvbGxlcih0aGlzLCAoKSA9PiB0aGlzLl90YWdHcm91cCgpLCB7XG4gICAgICAgIHNpemU6IChnKSA9PiB7XG4gICAgICAgICAgdGhpcy5zaXplID0gZy5zaXplO1xuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX3RhZ0dyb3VwKCk6IFNiYlRhZ0dyb3VwRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmNsb3Nlc3Q/Lignc2JiLXRhZy1ncm91cCcpID8/IG51bGw7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgaXNEaXNhYmxlZEV4dGVybmFsbHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3RhZ0dyb3VwKCk/LmRpc2FibGVkID8/IGZhbHNlO1xuICB9XG5cbiAgLyoqIE1ldGhvZCB0cmlnZ2VyZWQgb24gYnV0dG9uIGNsaWNrLiBJbnZlcnRzIHRoZSBjaGVja2VkIHZhbHVlIGFuZCBlbWl0cyBldmVudHMuICovXG4gIHByaXZhdGUgX2hhbmRsZUNsaWNrKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gUHJldmVudCBkZWFjdGl2YXRpbmcgb24gZXhjbHVzaXZlIC8gcmFkaW8gbW9kZVxuICAgIGNvbnN0IHRhZ0dyb3VwID0gdGhpcy5fdGFnR3JvdXAoKTtcbiAgICBpZiAodGFnR3JvdXAgJiYgIXRhZ0dyb3VwLm11bHRpcGxlICYmIHRoaXMuY2hlY2tlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNoZWNrZWQgPSAhdGhpcy5jaGVja2VkO1xuXG4gICAgLyoqIFRoZSBpbnB1dCBldmVudCBmaXJlcyB3aGVuIHRoZSB2YWx1ZSBoYXMgYmVlbiBjaGFuZ2VkIGFzIGEgZGlyZWN0IHJlc3VsdCBvZiBhIHVzZXIgYWN0aW9uLiAqL1xuICAgIHRoaXMuZGlzcGF0Y2hFdmVudChcbiAgICAgIG5ldyBJbnB1dEV2ZW50KCdpbnB1dCcsIHtcbiAgICAgICAgYnViYmxlczogdHJ1ZSxcbiAgICAgICAgY29tcG9zZWQ6IHRydWUsXG4gICAgICB9KSxcbiAgICApO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGNoYW5nZSBldmVudCBpcyBmaXJlZCB3aGVuIHRoZSB1c2VyIG1vZGlmaWVzIHRoZSBlbGVtZW50J3MgdmFsdWUuXG4gICAgICogVW5saWtlIHRoZSBpbnB1dCBldmVudCwgdGhlIGNoYW5nZSBldmVudCBpcyBub3QgbmVjZXNzYXJpbHkgZmlyZWRcbiAgICAgKiBmb3IgZWFjaCBhbHRlcmF0aW9uIHRvIGFuIGVsZW1lbnQncyB2YWx1ZS5cbiAgICAgKi9cbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdjaGFuZ2UnLCB7IGJ1YmJsZXM6IHRydWUgfSkpO1xuXG4gICAgLyoqXG4gICAgICogRGVwcmVjYXRlZC4gTWlycm9ycyBjaGFuZ2UgZXZlbnQgZm9yIFJlYWN0LiBXaWxsIGJlIHJlbW92ZWQgb25jZSBSZWFjdCBwcm9wZXJseSBzdXBwb3J0cyBjaGFuZ2UgZXZlbnRzLlxuICAgICAqIEBkZXByZWNhdGVkXG4gICAgICovXG4gICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnZGlkQ2hhbmdlJywgeyBidWJibGVzOiB0cnVlIH0pKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnY2hlY2tlZCcpKSB7XG4gICAgICB0aGlzLmludGVybmFscy5hcmlhUHJlc3NlZCA9IGAke3RoaXMuY2hlY2tlZH1gO1xuICAgICAgdGhpcy50b2dnbGVTdGF0ZSgnY2hlY2tlZCcsIHRoaXMuY2hlY2tlZCk7XG4gICAgICB0aGlzLnVwZGF0ZUZvcm1WYWx1ZSgpO1xuICAgIH1cblxuICAgIGNvbnN0IHRhZ0dyb3VwID0gdGhpcy5fdGFnR3JvdXAoKTtcbiAgICBpZiAodGFnR3JvdXAgJiYgIXRhZ0dyb3VwLm11bHRpcGxlICYmIGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnY2hlY2tlZCcpICYmIHRoaXMuY2hlY2tlZCkge1xuICAgICAgdGFnR3JvdXA/LnRhZ3MuZmlsdGVyKCh0KSA9PiB0ICE9PSB0aGlzKS5mb3JFYWNoKCh0KSA9PiAodC5jaGVja2VkID0gZmFsc2UpKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZm9ybVJlc2V0Q2FsbGJhY2soKTogdm9pZCB7XG4gICAgdGhpcy5jaGVja2VkID0gdGhpcy5oYXNBdHRyaWJ1dGUoJ2NoZWNrZWQnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBmb3JtU3RhdGVSZXN0b3JlQ2FsbGJhY2soXG4gICAgc3RhdGU6IEZvcm1SZXN0b3JlU3RhdGUgfCBudWxsLFxuICAgIF9yZWFzb246IEZvcm1SZXN0b3JlUmVhc29uLFxuICApOiB2b2lkIHtcbiAgICBpZiAoc3RhdGUpIHtcbiAgICAgIHRoaXMuY2hlY2tlZCA9IHN0YXRlID09PSAndHJ1ZSc7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHVwZGF0ZUZvcm1WYWx1ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jaGVja2VkKSB7XG4gICAgICBzdXBlci51cGRhdGVGb3JtVmFsdWUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbnRlcm5hbHMuc2V0Rm9ybVZhbHVlKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmb3JtU3RhdGUoKTogRm9ybVJlc3RvcmVTdGF0ZSB7XG4gICAgcmV0dXJuIGAke3RoaXMuY2hlY2tlZH1gO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlclRlbXBsYXRlKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRhZ19faWNvbiBzYmItdGFnLS1zaGlmdFwiPiAke3RoaXMucmVuZGVySWNvblNsb3QoKX0gPC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItdGFnX190ZXh0IHNiYi10YWctLXNoaWZ0XCI+XG4gICAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgIDwvc3Bhbj5cbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRhZ19fYW1vdW50IHNiYi10YWctLXNoaWZ0XCI+XG4gICAgICAgIDxzbG90IG5hbWU9XCJhbW91bnRcIj4ke3RoaXMuYW1vdW50fTwvc2xvdD5cbiAgICAgIDwvc3Bhbj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdGFnJzogU2JiVGFnRWxlbWVudDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztJQytCYSx1QkFBYTttQkFBcUIsaUJBQzdDLCtCQUErQix3QkFBd0IsQ0FBQzs7Ozs7Ozs7Ozs7OztjQUQ3QyxzQkFBa0MsWUFFOUM7Ozt3QkFVRSxTQUFRLENBQUU7eUJBSVYsVUFBUyxHQUNULFNBQVM7SUFBRSxTQUFTO0lBQU0sV0FBVztHQUFrQixDQUFFLENBQUM7MEJBSTFELFVBQVMsR0FDVCxTQUFTO0lBQUUsU0FBUztJQUFPLE1BQU07R0FBTyxDQUFFLENBQUM7dUJBTzNDLFNBQVMsRUFBRSxTQUFTLEtBQUksQ0FBRSxDQUFDO0dBaEI1QixhQUFBLE1BQUEsTUFBQSxtQkFBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLFdBQUE7S0FBQSxNQUFBLFFBQUEsSUFBZ0I7S0FBSyxNQUFBLEtBQUEsVUFBQTtNQUFBLElBQUwsUUFBSztLQUFBO0lBQUE7SUFBQSxVQUFBO0dBQUEsR0FBQSxxQkFBQSx3QkFBQTtHQUtyQixhQUFBLE1BQUEsTUFBQSxvQkFBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLFlBQUE7S0FBQSxNQUFBLFFBQUEsSUFBZ0I7S0FBTSxNQUFBLEtBQUEsVUFBQTtNQUFBLElBQU4sU0FBTTtLQUFBO0lBQUE7SUFBQSxVQUFBO0dB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
|
|
258
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLmNvbXBvbmVudC1DRERiMmZuVi5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy90YWcuc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy90YWcuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbiRkaXNhYmxlZDogJzpkaXNhYmxlZCwgW2Rpc2FibGVkLWludGVyYWN0aXZlXSc7XG4kYWN0aXZlOiAnOmFjdGl2ZSwgOnN0YXRlKGFjdGl2ZSknO1xuXG46aG9zdCB7XG4gIC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb246IHZhcihcbiAgICAtLXNiYi1kaXNhYmxlLWFuaW1hdGlvbi1kdXJhdGlvbixcbiAgICB2YXIoLS1zYmItYW5pbWF0aW9uLWR1cmF0aW9uLTJ4KVxuICApO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gIC8vIFVzZSAhaW1wb3J0YW50IGhlcmUgdG8gbm90IGludGVyZmVyZSB3aXRoIEZpcmVmb3ggZm9jdXMgcmluZyBkZWZpbml0aW9uXG4gIC8vIHdoaWNoIGFwcGVhcnMgaW4gbm9ybWFsaXplIENTUyBvZiBzZXZlcmFsIGZyYW1ld29ya3MuXG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuOmhvc3QoW3NpemU9J3MnXSkge1xuICAtLXNiYi10YWctaGVpZ2h0OiB2YXIoLS1zYmItdGFnLWhlaWdodC1zKTtcbiAgLS1zYmItdGFnLXBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItdGFnLXBhZGRpbmctaW5saW5lLXMpO1xufVxuXG46aG9zdChbc2l6ZT0nbSddKSB7XG4gIC0tc2JiLXRhZy1oZWlnaHQ6IHZhcigtLXNiYi10YWctaGVpZ2h0LW0pO1xuICAtLXNiYi10YWctcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi10YWctcGFkZGluZy1pbmxpbmUtbSk7XG59XG5cbi8vIEFjdGl2ZSBzdGF0ZVxuOmhvc3QoOnN0YXRlKGNoZWNrZWQpKSB7XG4gIC0tc2JiLXRhZy1ib3JkZXItY29sb3I6IHZhcigtLXNiYi1ib3JkZXItY29sb3ItMyk7XG4gIC0tc2JiLXRhZy1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuXG4gIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogSGlnaGxpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgLS1zYmItdGFnLWJvcmRlci13aWR0aDogdmFyKC0tc2JiLWJvcmRlci13aWR0aC00eCk7XG4gIH1cbn1cblxuOmhvc3QoOmlzKCN7JGRpc2FibGVkfSkpIHtcbiAgLS1zYmItdGFnLXRleHQtY29sb3I6IGxpZ2h0LWRhcmsodmFyKC0tc2JiLWNvbG9yLWdyYW5pdGUpLCB2YXIoLS1zYmItY29sb3ItYWx1bWluaXVtKSk7XG4gIC0tc2JiLXRhZy1hbW91bnQtY29sb3I6IHZhcigtLXNiYi10YWctdGV4dC1jb2xvcik7XG4gIC0tc2JiLXRhZy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItYmFja2dyb3VuZC1jb2xvci0zKTtcbiAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogbGlnaHQtZGFyayh2YXIoLS1zYmItY29sb3ItY2VtZW50KSwgdmFyKC0tc2JiLWNvbG9yLXNtb2tlKSk7XG4gIC0tc2JiLXRhZy1ib3JkZXItc3R5bGU6IGRhc2hlZDtcbiAgLS1zYmItdGFnLWN1cnNvcjogdW5zZXQ7XG4gIC0tc2JiLXRhZy1wb2ludGVyLWV2ZW50czogbm9uZTtcblxuICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgIC0tc2JiLXRhZy10ZXh0LWNvbG9yOiBHcmF5VGV4dDtcbiAgICAtLXNiYi10YWctYW1vdW50LWNvbG9yOiBHcmF5VGV4dDtcbiAgICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBHcmF5VGV4dDtcbiAgfVxufVxuXG46aG9zdCg6c3RhdGUoY2hlY2tlZCk6aXMoI3skZGlzYWJsZWR9KSkge1xuICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBsaWdodC1kYXJrKHZhcigtLXNiYi1jb2xvci1tZXRhbCksIHZhcigtLXNiYi1jb2xvci1jZW1lbnQpKTtcbiAgLS1zYmItdGFnLWJvcmRlci1zdHlsZTogZGFzaGVkO1xufVxuXG46aG9zdCg6aG92ZXI6bm90KCN7JGRpc2FibGVkfSwgI3skYWN0aXZlfSkpIHtcbiAgQGluY2x1ZGUgc2JiLmhvdmVyLW1xKCRob3ZlcjogdHJ1ZSkge1xuICAgIC0tc2JiLXRhZy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItYmFja2dyb3VuZC1jb2xvci0zKTtcbiAgICAtLXNiYi10YWctaW5zZXQ6IGNhbGModmFyKC0tc2JiLWJvcmRlci13aWR0aC0yeCkgKiAtMSk7XG4gICAgLS1zYmItdGFnLWNvbnRlbnQtc2hpZnQ6IHRyYW5zbGF0ZVkoY2FsYyh2YXIoLS1zYmItYm9yZGVyLXdpZHRoLTF4KSAqIC0xKSk7XG5cbiAgICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgICAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogSGlnaGxpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4vLyBQcmVzc2VkIHN0YXRlXG46aG9zdCg6aXMoI3skYWN0aXZlfSk6bm90KCN7JGRpc2FibGVkfSkpIHtcbiAgLS1zYmItdGFnLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTMpO1xuICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBsaWdodC1kYXJrKHZhcigtLXNiYi1jb2xvci1pcm9uKSwgdmFyKC0tc2JiLWNvbG9yLXN0b3JtKSk7XG4gIC0tc2JiLXRhZy1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuICAtLXNiYi10YWctdGV4dC1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLTQpO1xuXG4gIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogSGlnaGxpZ2h0O1xuICAgIC0tc2JiLXRhZy10ZXh0LWNvbG9yOiBCdXR0b25UZXh0O1xuICB9XG59XG5cbi5zYmItdGFnIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IHZhcigtLXNiYi10YWctaGVpZ2h0KTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IHZhcigtLXNiYi10ZXh0LWZvbnQtc2l6ZS14cyk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1zYmItdHlwby1sZXR0ZXItc3BhY2luZy10ZXh0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXNiYi10eXBvLWxpbmUtaGVpZ2h0LXRleHQpO1xuICBnYXA6IHZhcigtLXNiYi10YWctZ2FwKTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi10YWctcGFkZGluZy1pbmxpbmUpO1xuICBjdXJzb3I6IHZhcigtLXNiYi10YWctY3Vyc29yLCB2YXIoLS1zYmItY3Vyc29yLXBvaW50ZXIpKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLXRhZy1ib3JkZXItcmFkaXVzKTtcbiAgY29sb3I6IHZhcigtLXNiYi10YWctdGV4dC1jb2xvcik7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXNiYi10YWctYW5pbWF0aW9uLWR1cmF0aW9uKSB2YXIoLS1zYmItdGFnLWFuaW1hdGlvbi1lYXNpbmcpO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IHZhcigtLXNiYi10YWctcG9pbnRlci1ldmVudHMsIHVuc2V0KTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogdmFyKC0tc2JiLXRhZy1pbnNldCwgMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLXRhZy1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICBib3JkZXI6IHZhcigtLXNiYi10YWctYm9yZGVyLXdpZHRoKSB2YXIoLS1zYmItdGFnLWJvcmRlci1zdHlsZSkgdmFyKC0tc2JiLXRhZy1ib3JkZXItY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXNiYi10YWctYm9yZGVyLXJhZGl1cyk7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogdmFyKC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb24pO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYmItdGFnLWFuaW1hdGlvbi1lYXNpbmcpO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGluc2V0LCBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXItY29sb3IsIGJveC1zaGFkb3c7XG5cbiAgICA6aG9zdCg6Zm9jdXMtdmlzaWJsZSkgJiB7XG4gICAgICBAaW5jbHVkZSBzYmIuZm9jdXMtb3V0bGluZTtcbiAgICB9XG4gIH1cbn1cblxuLnNiYi10YWdfX2ljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IGNhbGModmFyKC0tc2JiLXR5cG8tbGluZS1oZWlnaHQtdGV4dCkgKiAxZW0pO1xuICBmbGV4LXNocmluazogMDtcblxuICA6aG9zdCg6bm90KDpzdGF0ZShzbG90dGVkLWljb24pLCA6c3RhdGUoaGFzLWljb24tbmFtZSkpKSAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zYmItdGFnX190ZXh0IHtcbiAgQGluY2x1ZGUgc2JiLmVsbGlwc2lzO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uc2JiLXRhZ19fYW1vdW50IHtcbiAgY29sb3I6IHZhcigtLXNiYi10YWctYW1vdW50LWNvbG9yKTtcblxuICA6aG9zdCg6bm90KDpzdGF0ZShzbG90dGVkLWFtb3VudCksIFthbW91bnRdKSkgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uc2JiLXRhZy0tc2hpZnQge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb24pIHZhcigtLXNiYi10YWctYW5pbWF0aW9uLWVhc2luZyk7XG4gIHRyYW5zZm9ybTogdmFyKC0tc2JiLXRhZy1jb250ZW50LXNoaWZ0LCAwKTtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbn1cbiIsImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG4gIHVuc2FmZUNTUyxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQge1xuICBmb3JjZVR5cGUsXG4gIHR5cGUgRm9ybVJlc3RvcmVSZWFzb24sXG4gIHR5cGUgRm9ybVJlc3RvcmVTdGF0ZSxcbiAgb21pdEVtcHR5Q29udmVydGVyLFxuICBTYmJCdXR0b25MaWtlQmFzZUVsZW1lbnQsXG4gIFNiYkRpc2FibGVkVGFiSW5kZXhBY3Rpb25NaXhpbixcbiAgU2JiUHJvcGVydHlXYXRjaGVyQ29udHJvbGxlcixcbn0gZnJvbSAnLi4vLi4vY29yZS50cyc7XG5pbXBvcnQgeyBTYmJJY29uTmFtZU1peGluIH0gZnJvbSAnLi4vLi4vaWNvbi5wdXJlLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiVGFnR3JvdXBFbGVtZW50IH0gZnJvbSAnLi4vdGFnLWdyb3VwL3RhZy1ncm91cC5jb21wb25lbnQudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90YWcuc2Nzcz9pbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgc2VsZWN0YWJsZSBlbGVtZW50IHdoaWNoIGNhbiBiZSB1c2VkIGFzIGEgZmlsdGVyLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIHRhZyBsYWJlbC5cbiAqIEBzbG90IGljb24gLSBVc2UgdGhpcyBzbG90IHRvIGRpc3BsYXkgYW4gaWNvbiBhdCB0aGUgY29tcG9uZW50IHN0YXJ0LCBieSBwcm92aWRpbmcgYSBgc2JiLWljb25gIGNvbXBvbmVudC5cbiAqIEBzbG90IGFtb3VudCAtIFByb3ZpZGUgYW4gYW1vdW50IHRvIHNob3cgaXQgYXQgdGhlIGNvbXBvbmVudCBlbmQuXG4gKiBAb3ZlcnJpZGVUeXBlIHZhbHVlIC0gKFQgPSBzdHJpbmcpIHwgbnVsbFxuICovXG5leHBvcnQgY2xhc3MgU2JiVGFnRWxlbWVudDxUID0gc3RyaW5nPiBleHRlbmRzIFNiYkljb25OYW1lTWl4aW4oXG4gIFNiYkRpc2FibGVkVGFiSW5kZXhBY3Rpb25NaXhpbihTYmJCdXR0b25MaWtlQmFzZUVsZW1lbnQpLFxuKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItdGFnJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW3Vuc2FmZUNTUyhzdHlsZSldO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICBpbnB1dDogJ2lucHV0JyxcbiAgICBkaWRDaGFuZ2U6ICdkaWRDaGFuZ2UnLFxuICAgIGNoYW5nZTogJ2NoYW5nZScsXG4gIH0gYXMgY29uc3Q7XG5cbiAgLyoqIFZhbHVlIG9mIHRoZSBmb3JtIGVsZW1lbnQuICovXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBhY2Nlc3NvciB2YWx1ZTogVCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBBbW91bnQgZGlzcGxheWVkIGluc2lkZSB0aGUgdGFnLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgY29udmVydGVyOiBvbWl0RW1wdHlDb252ZXJ0ZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIGFtb3VudDogc3RyaW5nID0gJyc7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHRhZyBpcyBjaGVja2VkLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogZmFsc2UsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIGNoZWNrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogVGFnIHNpemUsIGVpdGhlciBzIChsZWFuIHRoZW1lIGRlZmF1bHQpIG9yIG0gKHN0YW5kYXJkIHRoZW1lIGRlZmF1bHQpLlxuICAgKiBUaGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIGNsb3Nlc3QgYDxzYmItdGFnLWdyb3VwPmAuXG4gICAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBzaXplOiAncycgfCAnbScgfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LignY2xpY2snLCAoKSA9PiB0aGlzLl9oYW5kbGVDbGljaygpKTtcbiAgICB0aGlzLmFkZENvbnRyb2xsZXIoXG4gICAgICBuZXcgU2JiUHJvcGVydHlXYXRjaGVyQ29udHJvbGxlcih0aGlzLCAoKSA9PiB0aGlzLl90YWdHcm91cCgpLCB7XG4gICAgICAgIG11bHRpcGxlOiAoKSA9PiB0aGlzLl91cGRhdGVBcmlhUm9sZSgpLFxuICAgICAgICBzaXplOiAoZykgPT4ge1xuICAgICAgICAgIHRoaXMuc2l6ZSA9IGcuc2l6ZTtcbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF90YWdHcm91cCgpOiBTYmJUYWdHcm91cEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5jbG9zZXN0Py4oJ3NiYi10YWctZ3JvdXAnKSA/PyBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlQXJpYVJvbGUoKTogdm9pZCB7XG4gICAgY29uc3QgdGFnR3JvdXAgPSB0aGlzLl90YWdHcm91cCgpO1xuICAgIGlmICh0YWdHcm91cCAmJiAhdGFnR3JvdXAubXVsdGlwbGUpIHtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLnJvbGUgPSAncmFkaW8nO1xuICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYUNoZWNrZWQgPSBgJHt0aGlzLmNoZWNrZWR9YDtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLmFyaWFQcmVzc2VkID0gbnVsbDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbnRlcm5hbHMucm9sZSA9ICdidXR0b24nO1xuICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYUNoZWNrZWQgPSBudWxsO1xuICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYVByZXNzZWQgPSBgJHt0aGlzLmNoZWNrZWR9YDtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgaXNEaXNhYmxlZEV4dGVybmFsbHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3RhZ0dyb3VwKCk/LmRpc2FibGVkID8/IGZhbHNlO1xuICB9XG5cbiAgLyoqIE1ldGhvZCB0cmlnZ2VyZWQgb24gYnV0dG9uIGNsaWNrLiBJbnZlcnRzIHRoZSBjaGVja2VkIHZhbHVlIGFuZCBlbWl0cyBldmVudHMuICovXG4gIHByaXZhdGUgX2hhbmRsZUNsaWNrKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gUHJldmVudCBkZWFjdGl2YXRpbmcgb24gZXhjbHVzaXZlIC8gcmFkaW8gbW9kZVxuICAgIGNvbnN0IHRhZ0dyb3VwID0gdGhpcy5fdGFnR3JvdXAoKTtcbiAgICBpZiAodGFnR3JvdXAgJiYgIXRhZ0dyb3VwLm11bHRpcGxlICYmIHRoaXMuY2hlY2tlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNoZWNrZWQgPSAhdGhpcy5jaGVja2VkO1xuICAgIHRoaXMuZGlzcGF0Y2hFdmVudChcbiAgICAgIG5ldyBJbnB1dEV2ZW50KCdpbnB1dCcsIHtcbiAgICAgICAgYnViYmxlczogdHJ1ZSxcbiAgICAgICAgY29tcG9zZWQ6IHRydWUsXG4gICAgICB9KSxcbiAgICApO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGNoYW5nZSBldmVudCBpcyBmaXJlZCB3aGVuIHRoZSB1c2VyIG1vZGlmaWVzIHRoZSBlbGVtZW50J3MgdmFsdWUuXG4gICAgICogVW5saWtlIHRoZSBpbnB1dCBldmVudCwgdGhlIGNoYW5nZSBldmVudCBpcyBub3QgbmVjZXNzYXJpbHkgZmlyZWRcbiAgICAgKiBmb3IgZWFjaCBhbHRlcmF0aW9uIHRvIGFuIGVsZW1lbnQncyB2YWx1ZS5cbiAgICAgKi9cbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdjaGFuZ2UnLCB7IGJ1YmJsZXM6IHRydWUgfSkpO1xuXG4gICAgLyoqXG4gICAgICogRGVwcmVjYXRlZC4gTWlycm9ycyBjaGFuZ2UgZXZlbnQgZm9yIFJlYWN0LiBXaWxsIGJlIHJlbW92ZWQgb25jZSBSZWFjdCBwcm9wZXJseSBzdXBwb3J0cyBjaGFuZ2UgZXZlbnRzLlxuICAgICAqIEBkZXByZWNhdGVkXG4gICAgICovXG4gICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnZGlkQ2hhbmdlJywgeyBidWJibGVzOiB0cnVlIH0pKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuICAgIGNvbnN0IHRhZ0dyb3VwID0gdGhpcy5fdGFnR3JvdXAoKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2NoZWNrZWQnKSkge1xuICAgICAgdGhpcy5fdXBkYXRlQXJpYVJvbGUoKTtcbiAgICAgIHRoaXMudG9nZ2xlU3RhdGUoJ2NoZWNrZWQnLCB0aGlzLmNoZWNrZWQpO1xuICAgICAgdGhpcy51cGRhdGVGb3JtVmFsdWUoKTtcbiAgICB9XG5cbiAgICBpZiAodGFnR3JvdXAgJiYgIXRhZ0dyb3VwLm11bHRpcGxlICYmIGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnY2hlY2tlZCcpKSB7XG4gICAgICBpZiAodGhpcy5jaGVja2VkKSB7XG4gICAgICAgIHRhZ0dyb3VwLnRhZ3MuZm9yRWFjaCgodCkgPT4ge1xuICAgICAgICAgIHQudGFiSW5kZXggPSB0ID09PSB0aGlzID8gMCA6IC0xO1xuICAgICAgICAgIHQuY2hlY2tlZCA9IHQgPT09IHRoaXM7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIGlmICghdGFnR3JvdXAudGFncy5zb21lKCh0KSA9PiB0LmNoZWNrZWQpKSB7XG4gICAgICAgIHRhZ0dyb3VwWyd1cGRhdGVFeGNsdXNpdmVUYWJJbmRleCddKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGZvcm1SZXNldENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHRoaXMuY2hlY2tlZCA9IHRoaXMuaGFzQXR0cmlidXRlKCdjaGVja2VkJyk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZm9ybVN0YXRlUmVzdG9yZUNhbGxiYWNrKFxuICAgIHN0YXRlOiBGb3JtUmVzdG9yZVN0YXRlIHwgbnVsbCxcbiAgICBfcmVhc29uOiBGb3JtUmVzdG9yZVJlYXNvbixcbiAgKTogdm9pZCB7XG4gICAgaWYgKHN0YXRlKSB7XG4gICAgICB0aGlzLmNoZWNrZWQgPSBzdGF0ZSA9PT0gJ3RydWUnO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB1cGRhdGVGb3JtVmFsdWUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY2hlY2tlZCkge1xuICAgICAgc3VwZXIudXBkYXRlRm9ybVZhbHVlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLnNldEZvcm1WYWx1ZShudWxsKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZm9ybVN0YXRlKCk6IEZvcm1SZXN0b3JlU3RhdGUge1xuICAgIHJldHVybiBgJHt0aGlzLmNoZWNrZWR9YDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXJUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8c3BhbiBjbGFzcz1cInNiYi10YWdfX2ljb24gc2JiLXRhZy0tc2hpZnRcIj4gJHt0aGlzLnJlbmRlckljb25TbG90KCl9IDwvc3Bhbj5cbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRhZ19fdGV4dCBzYmItdGFnLS1zaGlmdFwiPlxuICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICA8L3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInNiYi10YWdfX2Ftb3VudCBzYmItdGFnLS1zaGlmdFwiPlxuICAgICAgICA8c2xvdCBuYW1lPVwiYW1vdW50XCI+JHt0aGlzLmFtb3VudH08L3Nsb3Q+XG4gICAgICA8L3NwYW4+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRhZyc6IFNiYlRhZ0VsZW1lbnQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7SUMrQmEsdUJBQWE7bUJBQXFCLGlCQUM3QywrQkFBK0Isd0JBQXdCLENBQUM7Ozs7Ozs7Ozs7Ozs7Y0FEN0Msc0JBQWtDLFlBRTlDOzs7d0JBVUUsU0FBUSxDQUFFO3lCQUlWLFVB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
|
package/development/tag.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { t as SbbTagGroupElement } from "./tag-group.component-
|
|
2
|
-
import { t as SbbTagElement } from "./tag.component-
|
|
1
|
+
import { t as SbbTagGroupElement } from "./tag-group.component-DTff1eBB.js";
|
|
2
|
+
import { t as SbbTagElement } from "./tag.component-CDDb2fnV.js";
|
|
3
3
|
import "./tag.pure.js";
|
|
4
4
|
//#region src/elements/tag.ts
|
|
5
5
|
/** @entrypoint */
|
package/development/tag.pure.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { t as SbbTagGroupElement } from "./tag-group.component-
|
|
2
|
-
import { t as SbbTagElement } from "./tag.component-
|
|
1
|
+
import { t as SbbTagGroupElement } from "./tag-group.component-DTff1eBB.js";
|
|
2
|
+
import { t as SbbTagElement } from "./tag.component-CDDb2fnV.js";
|
|
3
3
|
export { SbbTagElement, SbbTagGroupElement };
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sbb-esta/lyne-elements-dev",
|
|
3
|
-
"version": "5.0.0-next.3-dev.
|
|
3
|
+
"version": "5.0.0-next.3-dev.1779890843",
|
|
4
4
|
"description": "Lyne Design System",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"design system",
|
|
7
7
|
"web components",
|
|
8
8
|
"lit",
|
|
9
|
-
"https://github.com/sbb-design-systems/lyne-components/commit/
|
|
9
|
+
"https://github.com/sbb-design-systems/lyne-components/commit/30782dcc6ecd31bd4d3d226cf14994a7e9573862"
|
|
10
10
|
],
|
|
11
11
|
"type": "module",
|
|
12
12
|
"exports": {
|
package/tag/tag/tag.component.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../tag.component-
|
|
1
|
+
import { t as e } from "../../tag.component-r8diGGP-.js";
|
|
2
2
|
export { e as SbbTagElement };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../tag-group.component-
|
|
1
|
+
import { t as e } from "../../tag-group.component-CJwbkP70.js";
|
|
2
2
|
export { e as SbbTagGroupElement };
|
|
@@ -1,30 +1,27 @@
|
|
|
1
1
|
import { __esDecorate as e, __runInitializers as t } from "tslib";
|
|
2
2
|
import { html as n, isServer as r, unsafeCSS as i } from "lit";
|
|
3
3
|
import { property as a } from "lit/decorators.js";
|
|
4
|
-
import { SbbDisabledMixin as o, SbbElement as s, SbbNamedSlotListMixin as c, forceType as l } from "./core.js";
|
|
4
|
+
import { SbbDisabledMixin as o, SbbElement as s, SbbNamedSlotListMixin as c, forceType as l, getNextElementIndex as u, isArrowKeyPressed as d } from "./core.js";
|
|
5
5
|
//#region src/elements/tag/tag-group/tag-group.scss?inline
|
|
6
|
-
var
|
|
7
|
-
let
|
|
8
|
-
return class extends
|
|
9
|
-
constructor() {
|
|
10
|
-
super(...arguments), this.listChildLocalNames = (t(this, f), ["sbb-tag", "div"]), this.#e = t(this, m, ""), this.#t = (t(this, h), t(this, _, !1)), this.#n = (t(this, v), t(this, b, null)), this._value = (t(this, x), null);
|
|
11
|
-
}
|
|
6
|
+
var f = ":host{display:block}.sbb-tag-group__list{display:flex;flex-wrap:wrap;gap:var(--sbb-spacing-fixed-3x)}.sbb-tag-group__list>:is(li,span){display:flex;max-width:100%}", p = (() => {
|
|
7
|
+
let p = o(c(s)), m = [], h, g = [], _ = [], v, y = [], b = [], x, S = [], C = [], w;
|
|
8
|
+
return class extends p {
|
|
12
9
|
static {
|
|
13
|
-
let t = typeof Symbol == "function" && Symbol.metadata ? Object.create(
|
|
14
|
-
|
|
10
|
+
let t = typeof Symbol == "function" && Symbol.metadata ? Object.create(p[Symbol.metadata] ?? null) : void 0;
|
|
11
|
+
h = [l(), a({ attribute: "accessibility-label" })], v = [l(), a({ type: Boolean })], x = [a({ reflect: !0 })], w = [a()], e(this, null, h, {
|
|
15
12
|
kind: "accessor",
|
|
16
|
-
name: "
|
|
13
|
+
name: "accessibilityLabel",
|
|
17
14
|
static: !1,
|
|
18
15
|
private: !1,
|
|
19
16
|
access: {
|
|
20
|
-
has: (e) => "
|
|
21
|
-
get: (e) => e.
|
|
17
|
+
has: (e) => "accessibilityLabel" in e,
|
|
18
|
+
get: (e) => e.accessibilityLabel,
|
|
22
19
|
set: (e, t) => {
|
|
23
|
-
e.
|
|
20
|
+
e.accessibilityLabel = t;
|
|
24
21
|
}
|
|
25
22
|
},
|
|
26
23
|
metadata: t
|
|
27
|
-
},
|
|
24
|
+
}, g, _), e(this, null, v, {
|
|
28
25
|
kind: "accessor",
|
|
29
26
|
name: "multiple",
|
|
30
27
|
static: !1,
|
|
@@ -37,7 +34,7 @@ var u = ":host{display:block}.sbb-tag-group__list{display:flex;flex-wrap:wrap;ga
|
|
|
37
34
|
}
|
|
38
35
|
},
|
|
39
36
|
metadata: t
|
|
40
|
-
},
|
|
37
|
+
}, y, b), e(this, null, x, {
|
|
41
38
|
kind: "accessor",
|
|
42
39
|
name: "size",
|
|
43
40
|
static: !1,
|
|
@@ -50,7 +47,7 @@ var u = ":host{display:block}.sbb-tag-group__list{display:flex;flex-wrap:wrap;ga
|
|
|
50
47
|
}
|
|
51
48
|
},
|
|
52
49
|
metadata: t
|
|
53
|
-
},
|
|
50
|
+
}, S, C), e(this, null, w, {
|
|
54
51
|
kind: "setter",
|
|
55
52
|
name: "value",
|
|
56
53
|
static: !1,
|
|
@@ -62,7 +59,7 @@ var u = ":host{display:block}.sbb-tag-group__list{display:flex;flex-wrap:wrap;ga
|
|
|
62
59
|
}
|
|
63
60
|
},
|
|
64
61
|
metadata: t
|
|
65
|
-
}, null,
|
|
62
|
+
}, null, m), t && Object.defineProperty(this, Symbol.metadata, {
|
|
66
63
|
enumerable: !0,
|
|
67
64
|
configurable: !0,
|
|
68
65
|
writable: !0,
|
|
@@ -73,13 +70,13 @@ var u = ":host{display:block}.sbb-tag-group__list{display:flex;flex-wrap:wrap;ga
|
|
|
73
70
|
this.elementName = "sbb-tag-group";
|
|
74
71
|
}
|
|
75
72
|
static {
|
|
76
|
-
this.styles = [i(
|
|
73
|
+
this.styles = [i(f)];
|
|
77
74
|
}
|
|
78
75
|
#e;
|
|
79
|
-
get
|
|
76
|
+
get accessibilityLabel() {
|
|
80
77
|
return this.#e;
|
|
81
78
|
}
|
|
82
|
-
set
|
|
79
|
+
set accessibilityLabel(e) {
|
|
83
80
|
this.#e = e;
|
|
84
81
|
}
|
|
85
82
|
#t;
|
|
@@ -109,8 +106,26 @@ var u = ":host{display:block}.sbb-tag-group__list{display:flex;flex-wrap:wrap;ga
|
|
|
109
106
|
get tags() {
|
|
110
107
|
return Array.from(this.querySelectorAll?.("sbb-tag") ?? []);
|
|
111
108
|
}
|
|
109
|
+
constructor() {
|
|
110
|
+
super(), this.listChildLocalNames = (t(this, m), ["sbb-tag", "div"]), this.#e = t(this, g, ""), this.#t = (t(this, _), t(this, y, !1)), this.#n = (t(this, b), t(this, S, null)), this._value = (t(this, C), null), this.addEventListener?.("keydown", (e) => this._handleArrowKeyDown(e));
|
|
111
|
+
}
|
|
112
112
|
willUpdate(e) {
|
|
113
|
-
super.willUpdate(e), e.has("value") && !this.hasUpdated && this._value && this._applyValueToTags(this.value), e.has("disabled") && this.tags.forEach((e) => e.requestUpdate?.("disabled")), (e.has("listChildren") || e.has("multiple")) &&
|
|
113
|
+
super.willUpdate(e), e.has("value") && !this.hasUpdated && this._value && this._applyValueToTags(this.value), e.has("disabled") && this.tags.forEach((e) => e.requestUpdate?.("disabled")), (e.has("listChildren") || e.has("multiple")) && (this.multiple ? e.has("multiple") && this._enabledTags().forEach((e) => e.tabIndex = 0) : (this.tags.filter((e) => e.checked).slice(1).forEach((e) => e.checked = !1), this.updateExclusiveTabIndex())), (e.has("accessibilityLabel") || e.has("multiple")) && (this.multiple ? (this.internals.role = this.accessibilityLabel ? null : "group", this.internals.ariaLabel = null) : (this.internals.role = "radiogroup", this.internals.ariaLabel = this.accessibilityLabel));
|
|
114
|
+
}
|
|
115
|
+
_enabledTags() {
|
|
116
|
+
return this.tags.filter((e) => !e.disabled);
|
|
117
|
+
}
|
|
118
|
+
updateExclusiveTabIndex() {
|
|
119
|
+
let e = this._enabledTags(), t = e.find((e) => e.checked) ?? e[0];
|
|
120
|
+
e.forEach((e) => e.tabIndex = e === t ? 0 : -1);
|
|
121
|
+
}
|
|
122
|
+
_handleArrowKeyDown(e) {
|
|
123
|
+
if (this.multiple || !d(e)) return;
|
|
124
|
+
e.preventDefault();
|
|
125
|
+
let t = this._enabledTags(), n = t.indexOf(e.target);
|
|
126
|
+
if (n === -1) return;
|
|
127
|
+
let r = t[u(e, n, t.length)];
|
|
128
|
+
t.forEach((e) => e.tabIndex = e === r ? 0 : -1), r.focus();
|
|
114
129
|
}
|
|
115
130
|
_applyValueToTags(e) {
|
|
116
131
|
let t = this.tags;
|
|
@@ -127,11 +142,11 @@ var u = ":host{display:block}.sbb-tag-group__list{display:flex;flex-wrap:wrap;ga
|
|
|
127
142
|
return n`
|
|
128
143
|
${this.renderList({
|
|
129
144
|
class: "sbb-tag-group__list",
|
|
130
|
-
ariaLabel: this.
|
|
145
|
+
ariaLabel: this.multiple ? this.accessibilityLabel : void 0
|
|
131
146
|
})}
|
|
132
147
|
`;
|
|
133
148
|
}
|
|
134
149
|
};
|
|
135
150
|
})();
|
|
136
151
|
//#endregion
|
|
137
|
-
export {
|
|
152
|
+
export { p as t };
|
|
@@ -116,13 +116,20 @@ var d = ":host{--sbb-tag-animation-duration: var( --sbb-disable-animation-durati
|
|
|
116
116
|
this.#r = e;
|
|
117
117
|
}
|
|
118
118
|
constructor() {
|
|
119
|
-
super(), t(this, w), this.addEventListener?.("click", () => this._handleClick()), this.addController(new s(this, () => this._tagGroup(), {
|
|
120
|
-
|
|
121
|
-
|
|
119
|
+
super(), t(this, w), this.addEventListener?.("click", () => this._handleClick()), this.addController(new s(this, () => this._tagGroup(), {
|
|
120
|
+
multiple: () => this._updateAriaRole(),
|
|
121
|
+
size: (e) => {
|
|
122
|
+
this.size = e.size;
|
|
123
|
+
}
|
|
124
|
+
}));
|
|
122
125
|
}
|
|
123
126
|
_tagGroup() {
|
|
124
127
|
return this.closest?.("sbb-tag-group") ?? null;
|
|
125
128
|
}
|
|
129
|
+
_updateAriaRole() {
|
|
130
|
+
let e = this._tagGroup();
|
|
131
|
+
e && !e.multiple ? (this.internals.role = "radio", this.internals.ariaChecked = `${this.checked}`, this.internals.ariaPressed = null) : (this.internals.role = "button", this.internals.ariaChecked = null, this.internals.ariaPressed = `${this.checked}`);
|
|
132
|
+
}
|
|
126
133
|
isDisabledExternally() {
|
|
127
134
|
return this._tagGroup()?.disabled ?? !1;
|
|
128
135
|
}
|
|
@@ -135,9 +142,11 @@ var d = ":host{--sbb-tag-animation-duration: var( --sbb-disable-animation-durati
|
|
|
135
142
|
})), this.dispatchEvent(new Event("change", { bubbles: !0 })), this.dispatchEvent(new Event("didChange", { bubbles: !0 })));
|
|
136
143
|
}
|
|
137
144
|
willUpdate(e) {
|
|
138
|
-
super.willUpdate(e)
|
|
145
|
+
super.willUpdate(e);
|
|
139
146
|
let t = this._tagGroup();
|
|
140
|
-
t && !t.multiple && e.has("checked") && this.checked
|
|
147
|
+
e.has("checked") && (this._updateAriaRole(), this.toggleState("checked", this.checked), this.updateFormValue()), t && !t.multiple && e.has("checked") && (this.checked ? t.tags.forEach((e) => {
|
|
148
|
+
e.tabIndex = e === this ? 0 : -1, e.checked = e === this;
|
|
149
|
+
}) : t.tags.some((e) => e.checked) || t.updateExclusiveTabIndex());
|
|
141
150
|
}
|
|
142
151
|
formResetCallback() {
|
|
143
152
|
this.checked = this.hasAttribute("checked");
|
package/tag.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { t as e } from "./tag-group.component-
|
|
2
|
-
import { t } from "./tag.component-
|
|
1
|
+
import { t as e } from "./tag-group.component-CJwbkP70.js";
|
|
2
|
+
import { t } from "./tag.component-r8diGGP-.js";
|
|
3
3
|
import "./tag.pure.js";
|
|
4
4
|
t.define(), e.define();
|
|
5
5
|
//#endregion
|
package/tag.pure.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { t as e } from "./tag-group.component-
|
|
2
|
-
import { t } from "./tag.component-
|
|
1
|
+
import { t as e } from "./tag-group.component-CJwbkP70.js";
|
|
2
|
+
import { t } from "./tag.component-r8diGGP-.js";
|
|
3
3
|
export { t as SbbTagElement, e as SbbTagGroupElement };
|
|
@@ -1,194 +0,0 @@
|
|
|
1
|
-
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
-
import { html, isServer, unsafeCSS } from "lit";
|
|
3
|
-
import { property } from "lit/decorators.js";
|
|
4
|
-
import { SbbDisabledMixin, SbbElement, SbbNamedSlotListMixin, forceType } from "./core.js";
|
|
5
|
-
//#region src/elements/tag/tag-group/tag-group.scss?inline
|
|
6
|
-
var tag_group_default = ":host {\n display: block;\n}\n\n.sbb-tag-group__list {\n display: flex;\n flex-wrap: wrap;\n gap: var(--sbb-spacing-fixed-3x);\n}\n\n.sbb-tag-group__list > :is(li, span) {\n display: flex;\n max-width: 100%;\n}";
|
|
7
|
-
//#endregion
|
|
8
|
-
//#region src/elements/tag/tag-group/tag-group.component.ts
|
|
9
|
-
/**
|
|
10
|
-
* It can be used as a container for one or more `sbb-tag`.
|
|
11
|
-
*
|
|
12
|
-
* @slot - Use the unnamed slot to add one or more 'sbb-tag' elements to the `sbb-tag-group`.
|
|
13
|
-
* @overrideType value - (T = string | (string | null)[]) | null
|
|
14
|
-
*/
|
|
15
|
-
var SbbTagGroupElement = (() => {
|
|
16
|
-
let _classSuper = SbbDisabledMixin(SbbNamedSlotListMixin(SbbElement));
|
|
17
|
-
let _instanceExtraInitializers = [];
|
|
18
|
-
let _listAccessibilityLabel_decorators;
|
|
19
|
-
let _listAccessibilityLabel_initializers = [];
|
|
20
|
-
let _listAccessibilityLabel_extraInitializers = [];
|
|
21
|
-
let _multiple_decorators;
|
|
22
|
-
let _multiple_initializers = [];
|
|
23
|
-
let _multiple_extraInitializers = [];
|
|
24
|
-
let _size_decorators;
|
|
25
|
-
let _size_initializers = [];
|
|
26
|
-
let _size_extraInitializers = [];
|
|
27
|
-
let _set_value_decorators;
|
|
28
|
-
return class SbbTagGroupElement extends _classSuper {
|
|
29
|
-
constructor() {
|
|
30
|
-
super(...arguments);
|
|
31
|
-
this.listChildLocalNames = (__runInitializers(this, _instanceExtraInitializers), ["sbb-tag", "div"]);
|
|
32
|
-
this.#listAccessibilityLabel_accessor_storage = __runInitializers(this, _listAccessibilityLabel_initializers, "");
|
|
33
|
-
this.#multiple_accessor_storage = (__runInitializers(this, _listAccessibilityLabel_extraInitializers), __runInitializers(this, _multiple_initializers, false));
|
|
34
|
-
this.#size_accessor_storage = (__runInitializers(this, _multiple_extraInitializers), __runInitializers(this, _size_initializers, null));
|
|
35
|
-
this._value = (__runInitializers(this, _size_extraInitializers), null);
|
|
36
|
-
}
|
|
37
|
-
static {
|
|
38
|
-
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
39
|
-
_listAccessibilityLabel_decorators = [forceType(), property({ attribute: "list-accessibility-label" })];
|
|
40
|
-
_multiple_decorators = [forceType(), property({ type: Boolean })];
|
|
41
|
-
_size_decorators = [property({ reflect: true })];
|
|
42
|
-
_set_value_decorators = [property()];
|
|
43
|
-
__esDecorate(this, null, _listAccessibilityLabel_decorators, {
|
|
44
|
-
kind: "accessor",
|
|
45
|
-
name: "listAccessibilityLabel",
|
|
46
|
-
static: false,
|
|
47
|
-
private: false,
|
|
48
|
-
access: {
|
|
49
|
-
has: (obj) => "listAccessibilityLabel" in obj,
|
|
50
|
-
get: (obj) => obj.listAccessibilityLabel,
|
|
51
|
-
set: (obj, value) => {
|
|
52
|
-
obj.listAccessibilityLabel = value;
|
|
53
|
-
}
|
|
54
|
-
},
|
|
55
|
-
metadata: _metadata
|
|
56
|
-
}, _listAccessibilityLabel_initializers, _listAccessibilityLabel_extraInitializers);
|
|
57
|
-
__esDecorate(this, null, _multiple_decorators, {
|
|
58
|
-
kind: "accessor",
|
|
59
|
-
name: "multiple",
|
|
60
|
-
static: false,
|
|
61
|
-
private: false,
|
|
62
|
-
access: {
|
|
63
|
-
has: (obj) => "multiple" in obj,
|
|
64
|
-
get: (obj) => obj.multiple,
|
|
65
|
-
set: (obj, value) => {
|
|
66
|
-
obj.multiple = value;
|
|
67
|
-
}
|
|
68
|
-
},
|
|
69
|
-
metadata: _metadata
|
|
70
|
-
}, _multiple_initializers, _multiple_extraInitializers);
|
|
71
|
-
__esDecorate(this, null, _size_decorators, {
|
|
72
|
-
kind: "accessor",
|
|
73
|
-
name: "size",
|
|
74
|
-
static: false,
|
|
75
|
-
private: false,
|
|
76
|
-
access: {
|
|
77
|
-
has: (obj) => "size" in obj,
|
|
78
|
-
get: (obj) => obj.size,
|
|
79
|
-
set: (obj, value) => {
|
|
80
|
-
obj.size = value;
|
|
81
|
-
}
|
|
82
|
-
},
|
|
83
|
-
metadata: _metadata
|
|
84
|
-
}, _size_initializers, _size_extraInitializers);
|
|
85
|
-
__esDecorate(this, null, _set_value_decorators, {
|
|
86
|
-
kind: "setter",
|
|
87
|
-
name: "value",
|
|
88
|
-
static: false,
|
|
89
|
-
private: false,
|
|
90
|
-
access: {
|
|
91
|
-
has: (obj) => "value" in obj,
|
|
92
|
-
set: (obj, value) => {
|
|
93
|
-
obj.value = value;
|
|
94
|
-
}
|
|
95
|
-
},
|
|
96
|
-
metadata: _metadata
|
|
97
|
-
}, null, _instanceExtraInitializers);
|
|
98
|
-
if (_metadata) Object.defineProperty(this, Symbol.metadata, {
|
|
99
|
-
enumerable: true,
|
|
100
|
-
configurable: true,
|
|
101
|
-
writable: true,
|
|
102
|
-
value: _metadata
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
static {
|
|
106
|
-
this.elementName = "sbb-tag-group";
|
|
107
|
-
}
|
|
108
|
-
static {
|
|
109
|
-
this.styles = [unsafeCSS(tag_group_default)];
|
|
110
|
-
}
|
|
111
|
-
#listAccessibilityLabel_accessor_storage;
|
|
112
|
-
/**
|
|
113
|
-
* This will be forwarded as aria-label to the inner list.
|
|
114
|
-
*/
|
|
115
|
-
get listAccessibilityLabel() {
|
|
116
|
-
return this.#listAccessibilityLabel_accessor_storage;
|
|
117
|
-
}
|
|
118
|
-
set listAccessibilityLabel(value) {
|
|
119
|
-
this.#listAccessibilityLabel_accessor_storage = value;
|
|
120
|
-
}
|
|
121
|
-
#multiple_accessor_storage;
|
|
122
|
-
/**
|
|
123
|
-
* If set multiple to false, the selection is exclusive and the value is a string (or null).
|
|
124
|
-
* If set multiple to true, the selection can have multiple values and therefore value is an array.
|
|
125
|
-
*
|
|
126
|
-
* Changing multiple during run time is not supported.
|
|
127
|
-
*/
|
|
128
|
-
get multiple() {
|
|
129
|
-
return this.#multiple_accessor_storage;
|
|
130
|
-
}
|
|
131
|
-
set multiple(value) {
|
|
132
|
-
this.#multiple_accessor_storage = value;
|
|
133
|
-
}
|
|
134
|
-
#size_accessor_storage;
|
|
135
|
-
/**
|
|
136
|
-
* Tag group size, either s (lean theme default) or m (standard theme default).
|
|
137
|
-
*/
|
|
138
|
-
get size() {
|
|
139
|
-
return this.#size_accessor_storage;
|
|
140
|
-
}
|
|
141
|
-
set size(value) {
|
|
142
|
-
this.#size_accessor_storage = value;
|
|
143
|
-
}
|
|
144
|
-
/**
|
|
145
|
-
* Value of the sbb-tag-group.
|
|
146
|
-
* If set multiple to false, the value is a string (or null).
|
|
147
|
-
* If set multiple to true, the value is an array.
|
|
148
|
-
*/
|
|
149
|
-
set value(value) {
|
|
150
|
-
if (isServer || !this.hasUpdated) {
|
|
151
|
-
this._value = value;
|
|
152
|
-
return;
|
|
153
|
-
}
|
|
154
|
-
this._applyValueToTags(value);
|
|
155
|
-
}
|
|
156
|
-
get value() {
|
|
157
|
-
return isServer || !this.hasUpdated ? this._value : this.multiple ? this.tags.filter((t) => t.checked).map((t) => t.value) : this.tags.find((t) => t.checked)?.value ?? null;
|
|
158
|
-
}
|
|
159
|
-
/** The child instances of sbb-tag as an array. */
|
|
160
|
-
get tags() {
|
|
161
|
-
return Array.from(this.querySelectorAll?.("sbb-tag") ?? []);
|
|
162
|
-
}
|
|
163
|
-
willUpdate(changedProperties) {
|
|
164
|
-
super.willUpdate(changedProperties);
|
|
165
|
-
if (changedProperties.has("value") && !this.hasUpdated && this._value) this._applyValueToTags(this.value);
|
|
166
|
-
if (changedProperties.has("disabled")) this.tags.forEach((r) => r.requestUpdate?.("disabled"));
|
|
167
|
-
if ((changedProperties.has("listChildren") || changedProperties.has("multiple")) && !this.multiple) this.tags.filter((tag) => tag.checked).slice(1).forEach((tag) => tag.checked = false);
|
|
168
|
-
if (changedProperties.has("listAccessibilityLabel")) this.internals.role = this.listAccessibilityLabel ? null : "group";
|
|
169
|
-
}
|
|
170
|
-
_applyValueToTags(value) {
|
|
171
|
-
const tags = this.tags;
|
|
172
|
-
if (value === null) tags.forEach((t) => t.checked = false);
|
|
173
|
-
else if (this.multiple) {
|
|
174
|
-
if (!Array.isArray(value) && tags.every((t) => t.value !== value)) try {
|
|
175
|
-
value = JSON.parse(value);
|
|
176
|
-
} catch {}
|
|
177
|
-
const valueAsArray = Array.isArray(value) ? value : [value];
|
|
178
|
-
tags.forEach((t) => t.checked = valueAsArray.includes(t.value));
|
|
179
|
-
} else if (!Array.isArray(value)) tags.forEach((t) => t.checked = t.value === value);
|
|
180
|
-
}
|
|
181
|
-
render() {
|
|
182
|
-
return html`
|
|
183
|
-
${this.renderList({
|
|
184
|
-
class: "sbb-tag-group__list",
|
|
185
|
-
ariaLabel: this.listAccessibilityLabel
|
|
186
|
-
})}
|
|
187
|
-
`;
|
|
188
|
-
}
|
|
189
|
-
};
|
|
190
|
-
})();
|
|
191
|
-
//#endregion
|
|
192
|
-
export { SbbTagGroupElement as t };
|
|
193
|
-
|
|
194
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLWdyb3VwLmNvbXBvbmVudC1qU2dsdXFMLS5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy1ncm91cC90YWctZ3JvdXAuc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy1ncm91cC90YWctZ3JvdXAuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbjpob3N0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zYmItdGFnLWdyb3VwX19saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTN4KTtcbn1cblxuLy8gVXNpbmcgLi4uIGxpIHNlbGVjdG9yLCBiZWNhdXNlIHRoZSBsaSBnZW5lcmF0aW9uXG4vLyBpcyBoYW5kbGVkIGluIHRoZSBjb21wb25lbnQgYmFzZSBjbGFzcy5cbi5zYmItdGFnLWdyb3VwX19saXN0ID4gOmlzKGxpLCBzcGFuKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbiIsImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIGlzU2VydmVyLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxuICB1bnNhZmVDU1MsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHtcbiAgZm9yY2VUeXBlLFxuICBTYmJEaXNhYmxlZE1peGluLFxuICBTYmJFbGVtZW50LFxuICBTYmJOYW1lZFNsb3RMaXN0TWl4aW4sXG4gIHR5cGUgV2l0aExpc3RDaGlsZHJlbixcbn0gZnJvbSAnLi4vLi4vY29yZS50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYlRhZ0VsZW1lbnQgfSBmcm9tICcuLi90YWcvdGFnLmNvbXBvbmVudC50cyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3RhZy1ncm91cC5zY3NzP2lubGluZSc7XG5cbi8qKlxuICogSXQgY2FuIGJlIHVzZWQgYXMgYSBjb250YWluZXIgZm9yIG9uZSBvciBtb3JlIGBzYmItdGFnYC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBvbmUgb3IgbW9yZSAnc2JiLXRhZycgZWxlbWVudHMgdG8gdGhlIGBzYmItdGFnLWdyb3VwYC5cbiAqIEBvdmVycmlkZVR5cGUgdmFsdWUgLSAoVCA9IHN0cmluZyB8IChzdHJpbmcgfCBudWxsKVtdKSB8IG51bGxcbiAqL1xuZXhwb3J0IGNsYXNzIFNiYlRhZ0dyb3VwRWxlbWVudDxUID0gc3RyaW5nPiBleHRlbmRzIFNiYkRpc2FibGVkTWl4aW4oXG4gIFNiYk5hbWVkU2xvdExpc3RNaXhpbjxTYmJUYWdFbGVtZW50LCB0eXBlb2YgU2JiRWxlbWVudD4oU2JiRWxlbWVudCksXG4pIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSBlbGVtZW50TmFtZTogc3RyaW5nID0gJ3NiYi10YWctZ3JvdXAnO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbdW5zYWZlQ1NTKHN0eWxlKV07XG4gIC8vIERJViBpcyBhZGRlZCBoZXJlIGR1ZSB0byBzcGVjaWFsIHJlcXVpcmVtZW50cyBmcm9tIHNiYi5jaC5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlYWRvbmx5IGxpc3RDaGlsZExvY2FsTmFtZXMgPSBbJ3NiYi10YWcnLCAnZGl2J107XG5cbiAgLyoqXG4gICAqIFRoaXMgd2lsbCBiZSBmb3J3YXJkZWQgYXMgYXJpYS1sYWJlbCB0byB0aGUgaW5uZXIgbGlzdC5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdsaXN0LWFjY2Vzc2liaWxpdHktbGFiZWwnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBsaXN0QWNjZXNzaWJpbGl0eUxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogSWYgc2V0IG11bHRpcGxlIHRvIGZhbHNlLCB0aGUgc2VsZWN0aW9uIGlzIGV4Y2x1c2l2ZSBhbmQgdGhlIHZhbHVlIGlzIGEgc3RyaW5nIChvciBudWxsKS5cbiAgICogSWYgc2V0IG11bHRpcGxlIHRvIHRydWUsIHRoZSBzZWxlY3Rpb24gY2FuIGhhdmUgbXVsdGlwbGUgdmFsdWVzIGFuZCB0aGVyZWZvcmUgdmFsdWUgaXMgYW4gYXJyYXkuXG4gICAqXG4gICAqIENoYW5naW5nIG11bHRpcGxlIGR1cmluZyBydW4gdGltZSBpcyBub3Qgc3VwcG9ydGVkLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIG11bHRpcGxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFRhZyBncm91cCBzaXplLCBlaXRoZXIgcyAobGVhbiB0aGVtZSBkZWZhdWx0KSBvciBtIChzdGFuZGFyZCB0aGVtZSBkZWZhdWx0KS5cbiAgICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIHNpemU6IFNiYlRhZ0VsZW1lbnRbJ3NpemUnXSA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFZhbHVlIG9mIHRoZSBzYmItdGFnLWdyb3VwLlxuICAgKiBJZiBzZXQgbXVsdGlwbGUgdG8gZmFsc2UsIHRoZSB2YWx1ZSBpcyBhIHN0cmluZyAob3IgbnVsbCkuXG4gICAqIElmIHNldCBtdWx0aXBsZSB0byB0cnVlLCB0aGUgdmFsdWUgaXMgYW4gYXJyYXkuXG4gICAqL1xuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgc2V0IHZhbHVlKHZhbHVlOiBUIHwgKFQgfCBudWxsKVtdIHwgbnVsbCkge1xuICAgIGlmIChpc1NlcnZlciB8fCAhdGhpcy5oYXNVcGRhdGVkKSB7XG4gICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9hcHBseVZhbHVlVG9UYWdzKHZhbHVlKTtcbiAgfVxuICBwdWJsaWMgZ2V0IHZhbHVlKCk6IFQgfCAoVCB8IG51bGwpW10gfCBudWxsIHtcbiAgICByZXR1cm4gaXNTZXJ2ZXIgfHwgIXRoaXMuaGFzVXBkYXRlZFxuICAgICAgPyB0aGlzLl92YWx1ZVxuICAgICAgOiB0aGlzLm11bHRpcGxlXG4gICAgICAgID8gdGhpcy50YWdzLmZpbHRlcigodCkgPT4gdC5jaGVja2VkKS5tYXAoKHQpID0+IHQudmFsdWUpXG4gICAgICAgIDogKHRoaXMudGFncy5maW5kKCh0KSA9PiB0LmNoZWNrZWQpPy52YWx1ZSA/PyBudWxsKTtcbiAgfVxuICBwcml2YXRlIF92YWx1ZTogVCB8IChUIHwgbnVsbClbXSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBUaGUgY2hpbGQgaW5zdGFuY2VzIG9mIHNiYi10YWcgYXMgYW4gYXJyYXkuICovXG4gIHB1YmxpYyBnZXQgdGFncygpOiBTYmJUYWdFbGVtZW50PFQ+W10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMucXVlcnlTZWxlY3RvckFsbD8uPFNiYlRhZ0VsZW1lbnQ8VD4+KCdzYmItdGFnJykgPz8gW10pO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPFdpdGhMaXN0Q2hpbGRyZW48dGhpcz4+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCd2YWx1ZScpICYmICF0aGlzLmhhc1VwZGF0ZWQgJiYgdGhpcy5fdmFsdWUpIHtcbiAgICAgIHRoaXMuX2FwcGx5VmFsdWVUb1RhZ3ModGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnZGlzYWJsZWQnKSkge1xuICAgICAgdGhpcy50YWdzLmZvckVhY2goKHIpID0+IHIucmVxdWVzdFVwZGF0ZT8uKCdkaXNhYmxlZCcpKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdsaXN0Q2hpbGRyZW4nKSB8fCBjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ211bHRpcGxlJykpICYmXG4gICAgICAhdGhpcy5tdWx0aXBsZVxuICAgICkge1xuICAgICAgLy8gRW5zdXJlIG9ubHkgb25lIHRhZyBjaGVja2VkXG4gICAgICB0aGlzLnRhZ3NcbiAgICAgICAgLmZpbHRlcigodGFnKSA9PiB0YWcuY2hlY2tlZClcbiAgICAgICAgLnNsaWNlKDEpXG4gICAgICAgIC5mb3JFYWNoKCh0YWcpID0+ICh0YWcuY2hlY2tlZCA9IGZhbHNlKSk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbGlzdEFjY2Vzc2liaWxpdHlMYWJlbCcpKSB7XG4gICAgICB0aGlzLmludGVybmFscy5yb2xlID0gdGhpcy5saXN0QWNjZXNzaWJpbGl0eUxhYmVsID8gbnVsbCA6ICdncm91cCc7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfYXBwbHlWYWx1ZVRvVGFncyh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgY29uc3QgdGFncyA9IHRoaXMudGFncztcblxuICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgdGFncy5mb3JFYWNoKCh0KSA9PiAodC5jaGVja2VkID0gZmFsc2UpKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWx1ZSkgJiYgdGFncy5ldmVyeSgodCkgPT4gdC52YWx1ZSAhPT0gdmFsdWUpKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgLy8gSWYgaXQgaXMgbXVsdGlwbGUgbW9kZSBhbmQgbm8gdGFnIG1hdGNoZXMgdGhlIHZhbHVlLCB3ZSB0cnkgdG8gcGFyc2UgdGhlIHZhbHVlIGFzIEpTT04uXG4gICAgICAgICAgLy8gVGhpcyBhbGxvd3Mgc2VydmVyIHNpZGUgcmVuZGVyaW5nIHRvIHVzZSBhcnJheSB2YWx1ZXMgdG8gYmUgcGFzc2VkIHRvIHRoZSBjbGllbnQgc2lkZS5cbiAgICAgICAgICB2YWx1ZSA9IEpTT04ucGFyc2UodmFsdWUgYXMgc3RyaW5nKTtcbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgLyogZW1wdHkgKi9cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3QgdmFsdWVBc0FycmF5ID0gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZSA6IFt2YWx1ZV07XG4gICAgICB0YWdzLmZvckVhY2goKHQpID0+ICh0LmNoZWNrZWQgPSB2YWx1ZUFzQXJyYXkuaW5jbHVkZXModC52YWx1ZSkpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICB0YWdzLmZvckVhY2goKHQpID0+ICh0LmNoZWNrZWQgPSB0LnZhbHVlID09PSB2YWx1ZSkpO1xuICAgICAgfSBlbHNlIGlmIChpbXBvcnQubWV0YS5lbnYuREVWKSB7XG4gICAgICAgIGNvbnNvbGUud2FybigndmFsdWUgbXVzdCBub3QgYmUgc2V0IGFzIGFuIGFycmF5IGluIHNpbmd1bGFyIG1vZGUuJywgdmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgJHt0aGlzLnJlbmRlckxpc3Qoe1xuICAgICAgICBjbGFzczogJ3NiYi10YWctZ3JvdXBfX2xpc3QnLFxuICAgICAgICBhcmlhTGFiZWw6IHRoaXMubGlzdEFjY2Vzc2liaWxpdHlMYWJlbCxcbiAgICAgIH0pfVxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi10YWctZ3JvdXAnOiBTYmJUYWdHcm91cEVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7SUMyQmEsNEJBQWtCO21CQUFxQixpQkFDbEQsc0JBQXdELFVBQVUsQ0FBQzs7Ozs7Ozs7Ozs7O2NBRHhELDJCQUF1QyxZQUVuRDs7O0dBSTZCLEtBQUEsdUJBTmpCLGtCQUFBLE1BQUEsMEJBQUEsR0FNdUMsQ0FBQyxXQUFXLEtBQUs7R0FPbkQsS0FBQSwyQ0FBQSxrQkFBQSxNQUFBLHNDQUFpQyxFQUFFO0dBVW5DLEtBQUEsOEJBQUEsa0JBQUEsTUFBQSx5Q0FBQSxHQUFBLGtCQUFBLE1BQUEsd0JBQW9CLEtBQUs7R0FLSSxLQUFBLDBCQUFBLGtCQUFBLE1BQUEsMkJBQUEsR0FBQSxrQkFBQSxNQUFBLG9CQUE4QixJQUFJO0dBc0J2RSxLQUFBLFVBQU0sa0JBQUEsTUFBQSx1QkFBQSxHQUE0QjtFQW9FNUM7Ozt5Q0EzR0csVUFBUyxHQUNULFNBQVMsRUFBRSxXQUFXLDJCQUEwQixDQUFFLENBQUM7MkJBU25ELFVBQVMsR0FDVCxTQUFTLEVBQUUsTUFBTSxRQUFPLENBQUUsQ0FBQzt1QkFNM0IsU0FBUyxFQUFFLFNBQVMsS0FBSSxDQUFFLENBQUM7NEJBTzNCLFNBQVEsQ0FBRTtHQXRCWCxhQUFBLE1BQUEsTUFBQSxvQ0FBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLDRCQUFBO0tBQUEsTUFBQSxRQUFBLElBQWdCO0tBQXNCLE1BQUEsS0FBQSxVQUFBO01BQUEsSUFBdEIseUJBQXNCO0tBQUE7SUFBQTtJQUFBLFVBQUE7R0FBQSxHQUFBLHNDQUFBLHlDQUFBO0dBVXRDLGFBQUEsTUFBQSxNQUFBLHNCQUFBO0lBQUEsTUFBQTtJQUFB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
|