@sbb-esta/lyne-elements-dev 4.9.0-dev.1775120423 → 4.9.0-dev.1775122363

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.
@@ -233,6 +233,9 @@ $theme: 'standard' !default;
233
233
  @use '../../tabs/tab-nav-bar/tab-nav-bar.global' as tab-nav-bar with (
234
234
  $theme: $theme
235
235
  );
236
+ @use '../../tag/tag/tag.global' as tag with (
237
+ $theme: $theme
238
+ );
236
239
  @use '../../visual-checkbox/visual-checkbox.global' as visual-checkbox with (
237
240
  $theme: $theme
238
241
  );
@@ -310,6 +313,7 @@ $theme: 'standard' !default;
310
313
  @include stepper.base;
311
314
  @include tab-group-common.base;
312
315
  @include tab-label-common.base;
316
+ @include tag.base;
313
317
  @include visual-checkbox.base;
314
318
 
315
319
  @include a11y.if-forced-colors {
@@ -328,6 +332,7 @@ $theme: 'standard' !default;
328
332
  @include signet.base-forced-colors;
329
333
  @include slider.base-forced-colors;
330
334
  @include step-label.base-forced-colors;
335
+ @include tag.base-forced-colors;
331
336
  }
332
337
 
333
338
  // Train formation
package/core.css CHANGED
@@ -1723,6 +1723,17 @@ slot[name=error]::slotted(*) {
1723
1723
  --sbb-tab-label-amount-color: light-dark(var(--sbb-color-metal), var(--sbb-color-smoke));
1724
1724
  --sbb-tab-label-line-color: var(--sbb-border-color-4-inverted);
1725
1725
  --sbb-tab-label-cursor: var(--sbb-cursor-pointer);
1726
+ --sbb-tag-animation-easing: var(--sbb-animation-easing);
1727
+ --sbb-tag-background-color: var(--sbb-background-color-1);
1728
+ --sbb-tag-border-color: var(--sbb-border-color-4-inverted);
1729
+ --sbb-tag-border-style: solid;
1730
+ --sbb-tag-border-width: var(--sbb-border-width-1x);
1731
+ --sbb-tag-border-radius: var(--sbb-border-radius-infinity);
1732
+ --sbb-tag-gap: var(--sbb-spacing-fixed-2x);
1733
+ --sbb-tag-text-color: var(--sbb-color-2);
1734
+ --sbb-tag-amount-color: var(--sbb-color-metal);
1735
+ --sbb-tag-amount-color: light-dark(var(--sbb-color-metal), var(--sbb-color-smoke));
1736
+ --sbb-tag-height: var(--sbb-size-element-xs);
1726
1737
  --sbb-visual-checkbox-dimension: var(--sbb-checkbox-dimension-m);
1727
1738
  --sbb-visual-checkbox-selection-color: var(--sbb-color-primary);
1728
1739
  --sbb-visual-checkbox-selection-color-negative: var(--sbb-color-primary85);
@@ -1780,6 +1791,11 @@ slot[name=error]::slotted(*) {
1780
1791
  --sbb-slider-line-color: CanvasText;
1781
1792
  --sbb-step-label-color: ButtonText;
1782
1793
  --sbb-step-label-prefix-border-color: ButtonText;
1794
+ --sbb-tag-amount-color: ButtonText;
1795
+ --sbb-tag-background-color: Canvas !important;
1796
+ --sbb-tag-text-color: ButtonText;
1797
+ --sbb-tag-border-color: CanvasText;
1798
+ --sbb-tag-border-width: var(--sbb-border-width-2x);
1783
1799
  }
1784
1800
  }
1785
1801
  :root {
@@ -1,2 +1,2 @@
1
- import { t as SbbTagElement } from "../../tag.component-0vKnvMOm.js";
1
+ import { t as SbbTagElement } from "../../tag.component-CnNPL6aI.js";
2
2
  export { SbbTagElement };
@@ -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,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAGzD,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;;AAIzE;;;;;GAKG;AACH,qBAAa,kBAAkB,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,uBAEnD;IACC,gBAAgC,WAAW,EAAE,MAAM,CAAmB;IACtE,OAAuB,MAAM,EAAE,cAAc,CAAuC;IAEpF,mBAA4B,mBAAmB,WAAsB;IAErE;;OAEG;IACH,SAEgB,sBAAsB,EAAE,MAAM,CAAM;IAEpD;;;;;OAKG;IACH,SAEgB,QAAQ,EAAE,OAAO,CAAS;IAE1C;;;OAGG;IACH,SAA6C,IAAI,EAAE,UAAU,CAAwB;IAErF;;;;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;cAEkB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;IAkC9F,OAAO,CAAC,iBAAiB;cA0BN,MAAM,IAAI,cAAc;CAU5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,eAAe,EAAE,kBAAkB,CAAC;KACrC;CACF"}
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,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAGzD,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;;AAIzE;;;;;GAKG;AACH,qBAAa,kBAAkB,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,uBAEnD;IACC,gBAAgC,WAAW,EAAE,MAAM,CAAmB;IACtE,OAAuB,MAAM,EAAE,cAAc,CAAuC;IAEpF,mBAA4B,mBAAmB,WAAsB;IAErE;;OAEG;IACH,SAEgB,sBAAsB,EAAE,MAAM,CAAM;IAEpD;;;;;OAKG;IACH,SAEgB,QAAQ,EAAE,OAAO,CAAS;IAE1C;;;OAGG;IACH,SAA6C,IAAI,EAAE,UAAU,CAAwB;IAErF;;;;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;cAEkB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;IAkC9F,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-B7bBirrj.js";
1
+ import { t as SbbTagGroupElement } from "../../tag-group.component-Cw46bt0E.js";
2
2
  export { SbbTagGroupElement };
@@ -1,4 +1,4 @@
1
- import { t as SbbTagGroupElement } from "../tag-group.component-B7bBirrj.js";
1
+ import { t as SbbTagGroupElement } from "../tag-group.component-Cw46bt0E.js";
2
2
  //#region src/elements/tag/tag-group.ts
3
3
  /** @entrypoint */
4
4
  SbbTagGroupElement.define();
@@ -1,4 +1,4 @@
1
- import { t as SbbTagElement } from "../tag.component-0vKnvMOm.js";
1
+ import { t as SbbTagElement } from "../tag.component-CnNPL6aI.js";
2
2
  //#region src/elements/tag/tag.ts
3
3
  /** @entrypoint */
4
4
  SbbTagElement.define();
@@ -186,12 +186,10 @@ var SbbTagGroupElement = (() => {
186
186
  }
187
187
  render() {
188
188
  return html`
189
- <div class="sbb-tag-group">
190
- ${this.renderList({
189
+ ${this.renderList({
191
190
  class: "sbb-tag-group__list",
192
191
  ariaLabel: this.listAccessibilityLabel
193
192
  })}
194
- </div>
195
193
  `;
196
194
  }
197
195
  };
@@ -199,4 +197,4 @@ var SbbTagGroupElement = (() => {
199
197
  //#endregion
200
198
  export { SbbTagGroupElement as t };
201
199
 
202
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLWdyb3VwLmNvbXBvbmVudC1CN2JCaXJyai5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy1ncm91cC90YWctZ3JvdXAuc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy1ncm91cC90YWctZ3JvdXAuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbjpob3N0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zYmItdGFnLWdyb3VwX19saXN0IHtcbiAgQGluY2x1ZGUgc2JiLmxpc3QtcmVzZXQ7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTN4KTtcbn1cblxuLy8gVXNpbmcgLi4uIGxpIHNlbGVjdG9yLCBiZWNhdXNlIHRoZSBsaSBnZW5lcmF0aW9uXG4vLyBpcyBoYW5kbGVkIGluIHRoZSBjb21wb25lbnQgYmFzZSBjbGFzcy5cbi5zYmItdGFnLWdyb3VwX19saXN0ID4gOmlzKGxpLCBzcGFuKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbiIsImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIGlzU2VydmVyLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxuICB1bnNhZmVDU1MsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgU2JiRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy50cyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMudHMnO1xuaW1wb3J0IHsgaXNMZWFuLCBzZXRPclJlbW92ZUF0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLnRzJztcbmltcG9ydCB7XG4gIFNiYkRpc2FibGVkTWl4aW4sXG4gIFNiYk5hbWVkU2xvdExpc3RNaXhpbixcbiAgdHlwZSBXaXRoTGlzdENoaWxkcmVuLFxufSBmcm9tICcuLi8uLi9jb3JlL21peGlucy50cyc7XG5pbXBvcnQgeyBib3hTaXppbmdTdHlsZXMgfSBmcm9tICcuLi8uLi9jb3JlL3N0eWxlcy50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYlRhZ0VsZW1lbnQsIFNiYlRhZ1NpemUgfSBmcm9tICcuLi90YWcvdGFnLmNvbXBvbmVudC50cyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3RhZy1ncm91cC5zY3NzP2lubGluZSc7XG5cbi8qKlxuICogSXQgY2FuIGJlIHVzZWQgYXMgYSBjb250YWluZXIgZm9yIG9uZSBvciBtb3JlIGBzYmItdGFnYC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBvbmUgb3IgbW9yZSAnc2JiLXRhZycgZWxlbWVudHMgdG8gdGhlIGBzYmItdGFnLWdyb3VwYC5cbiAqIEBvdmVycmlkZVR5cGUgdmFsdWUgLSAoVCA9IHN0cmluZyB8IChzdHJpbmcgfCBudWxsKVtdKSB8IG51bGxcbiAqL1xuZXhwb3J0IGNsYXNzIFNiYlRhZ0dyb3VwRWxlbWVudDxUID0gc3RyaW5nPiBleHRlbmRzIFNiYkRpc2FibGVkTWl4aW4oXG4gIFNiYk5hbWVkU2xvdExpc3RNaXhpbjxTYmJUYWdFbGVtZW50LCB0eXBlb2YgU2JiRWxlbWVudD4oU2JiRWxlbWVudCksXG4pIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSBlbGVtZW50TmFtZTogc3RyaW5nID0gJ3NiYi10YWctZ3JvdXAnO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbYm94U2l6aW5nU3R5bGVzLCB1bnNhZmVDU1Moc3R5bGUpXTtcbiAgLy8gRElWIGlzIGFkZGVkIGhlcmUgZHVlIHRvIHNwZWNpYWwgcmVxdWlyZW1lbnRzIGZyb20gc2JiLmNoLlxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVhZG9ubHkgbGlzdENoaWxkTG9jYWxOYW1lcyA9IFsnc2JiLXRhZycsICdkaXYnXTtcblxuICAvKipcbiAgICogVGhpcyB3aWxsIGJlIGZvcndhcmRlZCBhcyBhcmlhLWxhYmVsIHRvIHRoZSBpbm5lciBsaXN0LlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2xpc3QtYWNjZXNzaWJpbGl0eS1sYWJlbCcgfSlcbiAgcHVibGljIGFjY2Vzc29yIGxpc3RBY2Nlc3NpYmlsaXR5TGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBJZiBzZXQgbXVsdGlwbGUgdG8gZmFsc2UsIHRoZSBzZWxlY3Rpb24gaXMgZXhjbHVzaXZlIGFuZCB0aGUgdmFsdWUgaXMgYSBzdHJpbmcgKG9yIG51bGwpLlxuICAgKiBJZiBzZXQgbXVsdGlwbGUgdG8gdHJ1ZSwgdGhlIHNlbGVjdGlvbiBjYW4gaGF2ZSBtdWx0aXBsZSB2YWx1ZXMgYW5kIHRoZXJlZm9yZSB2YWx1ZSBpcyBhbiBhcnJheS5cbiAgICpcbiAgICogQ2hhbmdpbmcgbXVsdGlwbGUgZHVyaW5nIHJ1biB0aW1lIGlzIG5vdCBzdXBwb3J0ZWQuXG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgYWNjZXNzb3IgbXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogVGFnIGdyb3VwIHNpemUsIGVpdGhlciBzIG9yIG0uXG4gICAqIEBkZWZhdWx0ICdtJyAvICdzJyAobGVhbilcbiAgICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIHNpemU6IFNiYlRhZ1NpemUgPSBpc0xlYW4oKSA/ICdzJyA6ICdtJztcblxuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIHNiYi10YWctZ3JvdXAuXG4gICAqIElmIHNldCBtdWx0aXBsZSB0byBmYWxzZSwgdGhlIHZhbHVlIGlzIGEgc3RyaW5nIChvciBudWxsKS5cbiAgICogSWYgc2V0IG11bHRpcGxlIHRvIHRydWUsIHRoZSB2YWx1ZSBpcyBhbiBhcnJheS5cbiAgICovXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBzZXQgdmFsdWUodmFsdWU6IFQgfCAoVCB8IG51bGwpW10gfCBudWxsKSB7XG4gICAgaWYgKGlzU2VydmVyIHx8ICF0aGlzLmhhc1VwZGF0ZWQpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX2FwcGx5VmFsdWVUb1RhZ3ModmFsdWUpO1xuICB9XG4gIHB1YmxpYyBnZXQgdmFsdWUoKTogVCB8IChUIHwgbnVsbClbXSB8IG51bGwge1xuICAgIHJldHVybiBpc1NlcnZlciB8fCAhdGhpcy5oYXNVcGRhdGVkXG4gICAgICA/IHRoaXMuX3ZhbHVlXG4gICAgICA6IHRoaXMubXVsdGlwbGVcbiAgICAgICAgPyB0aGlzLnRhZ3MuZmlsdGVyKCh0KSA9PiB0LmNoZWNrZWQpLm1hcCgodCkgPT4gdC52YWx1ZSlcbiAgICAgICAgOiAodGhpcy50YWdzLmZpbmQoKHQpID0+IHQuY2hlY2tlZCk/LnZhbHVlID8/IG51bGwpO1xuICB9XG4gIHByaXZhdGUgX3ZhbHVlOiBUIHwgKFQgfCBudWxsKVtdIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIFRoZSBjaGlsZCBpbnN0YW5jZXMgb2Ygc2JiLXRhZyBhcyBhbiBhcnJheS4gKi9cbiAgcHVibGljIGdldCB0YWdzKCk6IFNiYlRhZ0VsZW1lbnQ8VD5bXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5xdWVyeVNlbGVjdG9yQWxsPy48U2JiVGFnRWxlbWVudDxUPj4oJ3NiYi10YWcnKSA/PyBbXSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8V2l0aExpc3RDaGlsZHJlbjx0aGlzPj4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3ZhbHVlJykgJiYgIXRoaXMuaGFzVXBkYXRlZCAmJiB0aGlzLl92YWx1ZSkge1xuICAgICAgdGhpcy5fYXBwbHlWYWx1ZVRvVGFncyh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdzaXplJykpIHtcbiAgICAgIHRoaXMudGFncy5mb3JFYWNoKCh0KSA9PiB0LnJlcXVlc3RVcGRhdGU/Lignc2l6ZScpKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdkaXNhYmxlZCcpKSB7XG4gICAgICB0aGlzLnRhZ3MuZm9yRWFjaCgocikgPT4gci5yZXF1ZXN0VXBkYXRlPy4oJ2Rpc2FibGVkJykpO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2xpc3RDaGlsZHJlbicpIHx8IGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbXVsdGlwbGUnKSkgJiZcbiAgICAgICF0aGlzLm11bHRpcGxlXG4gICAgKSB7XG4gICAgICAvLyBFbnN1cmUgb25seSBvbmUgdGFnIGNoZWNrZWRcbiAgICAgIHRoaXMudGFnc1xuICAgICAgICAuZmlsdGVyKCh0YWcpID0+IHRhZy5jaGVja2VkKVxuICAgICAgICAuc2xpY2UoMSlcbiAgICAgICAgLmZvckVhY2goKHRhZykgPT4gKHRhZy5jaGVja2VkID0gZmFsc2UpKTtcbiAgICB9XG4gICAgc2V0T3JSZW1vdmVBdHRyaWJ1dGUoXG4gICAgICB0aGlzLFxuICAgICAgJ3JvbGUnLFxuICAgICAgY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdsaXN0QWNjZXNzaWJpbGl0eUxhYmVsJykgJiYgdGhpcy5saXN0QWNjZXNzaWJpbGl0eUxhYmVsXG4gICAgICAgID8gbnVsbFxuICAgICAgICA6ICdncm91cCcsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2FwcGx5VmFsdWVUb1RhZ3ModmFsdWU6IGFueSk6IHZvaWQge1xuICAgIGNvbnN0IHRhZ3MgPSB0aGlzLnRhZ3M7XG5cbiAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHRhZ3MuZm9yRWFjaCgodCkgPT4gKHQuY2hlY2tlZCA9IGZhbHNlKSk7XG4gICAgfSBlbHNlIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWUpICYmIHRhZ3MuZXZlcnkoKHQpID0+IHQudmFsdWUgIT09IHZhbHVlKSkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIC8vIElmIGl0IGlzIG11bHRpcGxlIG1vZGUgYW5kIG5vIHRhZyBtYXRjaGVzIHRoZSB2YWx1ZSwgd2UgdHJ5IHRvIHBhcnNlIHRoZSB2YWx1ZSBhcyBKU09OLlxuICAgICAgICAgIC8vIFRoaXMgYWxsb3dzIHNlcnZlciBzaWRlIHJlbmRlcmluZyB0byB1c2UgYXJyYXkgdmFsdWVzIHRvIGJlIHBhc3NlZCB0byB0aGUgY2xpZW50IHNpZGUuXG4gICAgICAgICAgdmFsdWUgPSBKU09OLnBhcnNlKHZhbHVlIGFzIHN0cmluZyk7XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgIC8qIGVtcHR5ICovXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGNvbnN0IHZhbHVlQXNBcnJheSA9IEFycmF5LmlzQXJyYXkodmFsdWUpID8gdmFsdWUgOiBbdmFsdWVdO1xuICAgICAgdGFncy5mb3JFYWNoKCh0KSA9PiAodC5jaGVja2VkID0gdmFsdWVBc0FycmF5LmluY2x1ZGVzKHQudmFsdWUpKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgdGFncy5mb3JFYWNoKCh0KSA9PiAodC5jaGVja2VkID0gdC52YWx1ZSA9PT0gdmFsdWUpKTtcbiAgICAgIH0gZWxzZSBpZiAoaW1wb3J0Lm1ldGEuZW52LkRFVikge1xuICAgICAgICBjb25zb2xlLndhcm4oJ3ZhbHVlIG11c3Qgbm90IGJlIHNldCBhcyBhbiBhcnJheSBpbiBzaW5ndWxhciBtb2RlLicsIHZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItdGFnLWdyb3VwXCI+XG4gICAgICAgICR7dGhpcy5yZW5kZXJMaXN0KHtcbiAgICAgICAgICBjbGFzczogJ3NiYi10YWctZ3JvdXBfX2xpc3QnLFxuICAgICAgICAgIGFyaWFMYWJlbDogdGhpcy5saXN0QWNjZXNzaWJpbGl0eUxhYmVsLFxuICAgICAgICB9KX1cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi10YWctZ3JvdXAnOiBTYmJUYWdHcm91cEVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lDNkJhLDRCQUFrQjttQkFBcUIsaUJBQ2xELHNCQUF3RCxXQUFXLENBQ3BFOzs7Ozs7Ozs7Ozs7Y0FGWSwyQkFBdUMsWUFFbkQ7OztBQUk2QixRQUFBLHVCQU5qQixrQkFBQSxNQUFBLDJCQUFrQixFQU1xQixDQUFDLFdBQVcsTUFBTTtBQU9wRCxTQUFBLDBDQUFBLGtCQUFBLE1BQUEsc0NBQWlDLEdBQUU7QUFVbkMsU0FBQSw2QkFBQSxrQkFBQSxNQUFBLDBDQUFBLEVBQUEsa0JBQUEsTUFBQSx3QkFBb0IsTUFBSztBQU1JLFNBQUEseUJBQUEsa0JB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
200
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLWdyb3VwLmNvbXBvbmVudC1DdzQ2YnQwRS5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy1ncm91cC90YWctZ3JvdXAuc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy1ncm91cC90YWctZ3JvdXAuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbjpob3N0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zYmItdGFnLWdyb3VwX19saXN0IHtcbiAgQGluY2x1ZGUgc2JiLmxpc3QtcmVzZXQ7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTN4KTtcbn1cblxuLy8gVXNpbmcgLi4uIGxpIHNlbGVjdG9yLCBiZWNhdXNlIHRoZSBsaSBnZW5lcmF0aW9uXG4vLyBpcyBoYW5kbGVkIGluIHRoZSBjb21wb25lbnQgYmFzZSBjbGFzcy5cbi5zYmItdGFnLWdyb3VwX19saXN0ID4gOmlzKGxpLCBzcGFuKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbiIsImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIGlzU2VydmVyLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxuICB1bnNhZmVDU1MsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgU2JiRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy50cyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMudHMnO1xuaW1wb3J0IHsgaXNMZWFuLCBzZXRPclJlbW92ZUF0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLnRzJztcbmltcG9ydCB7XG4gIFNiYkRpc2FibGVkTWl4aW4sXG4gIFNiYk5hbWVkU2xvdExpc3RNaXhpbixcbiAgdHlwZSBXaXRoTGlzdENoaWxkcmVuLFxufSBmcm9tICcuLi8uLi9jb3JlL21peGlucy50cyc7XG5pbXBvcnQgeyBib3hTaXppbmdTdHlsZXMgfSBmcm9tICcuLi8uLi9jb3JlL3N0eWxlcy50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYlRhZ0VsZW1lbnQsIFNiYlRhZ1NpemUgfSBmcm9tICcuLi90YWcvdGFnLmNvbXBvbmVudC50cyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3RhZy1ncm91cC5zY3NzP2lubGluZSc7XG5cbi8qKlxuICogSXQgY2FuIGJlIHVzZWQgYXMgYSBjb250YWluZXIgZm9yIG9uZSBvciBtb3JlIGBzYmItdGFnYC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBvbmUgb3IgbW9yZSAnc2JiLXRhZycgZWxlbWVudHMgdG8gdGhlIGBzYmItdGFnLWdyb3VwYC5cbiAqIEBvdmVycmlkZVR5cGUgdmFsdWUgLSAoVCA9IHN0cmluZyB8IChzdHJpbmcgfCBudWxsKVtdKSB8IG51bGxcbiAqL1xuZXhwb3J0IGNsYXNzIFNiYlRhZ0dyb3VwRWxlbWVudDxUID0gc3RyaW5nPiBleHRlbmRzIFNiYkRpc2FibGVkTWl4aW4oXG4gIFNiYk5hbWVkU2xvdExpc3RNaXhpbjxTYmJUYWdFbGVtZW50LCB0eXBlb2YgU2JiRWxlbWVudD4oU2JiRWxlbWVudCksXG4pIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSBlbGVtZW50TmFtZTogc3RyaW5nID0gJ3NiYi10YWctZ3JvdXAnO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbYm94U2l6aW5nU3R5bGVzLCB1bnNhZmVDU1Moc3R5bGUpXTtcbiAgLy8gRElWIGlzIGFkZGVkIGhlcmUgZHVlIHRvIHNwZWNpYWwgcmVxdWlyZW1lbnRzIGZyb20gc2JiLmNoLlxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVhZG9ubHkgbGlzdENoaWxkTG9jYWxOYW1lcyA9IFsnc2JiLXRhZycsICdkaXYnXTtcblxuICAvKipcbiAgICogVGhpcyB3aWxsIGJlIGZvcndhcmRlZCBhcyBhcmlhLWxhYmVsIHRvIHRoZSBpbm5lciBsaXN0LlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2xpc3QtYWNjZXNzaWJpbGl0eS1sYWJlbCcgfSlcbiAgcHVibGljIGFjY2Vzc29yIGxpc3RBY2Nlc3NpYmlsaXR5TGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBJZiBzZXQgbXVsdGlwbGUgdG8gZmFsc2UsIHRoZSBzZWxlY3Rpb24gaXMgZXhjbHVzaXZlIGFuZCB0aGUgdmFsdWUgaXMgYSBzdHJpbmcgKG9yIG51bGwpLlxuICAgKiBJZiBzZXQgbXVsdGlwbGUgdG8gdHJ1ZSwgdGhlIHNlbGVjdGlvbiBjYW4gaGF2ZSBtdWx0aXBsZSB2YWx1ZXMgYW5kIHRoZXJlZm9yZSB2YWx1ZSBpcyBhbiBhcnJheS5cbiAgICpcbiAgICogQ2hhbmdpbmcgbXVsdGlwbGUgZHVyaW5nIHJ1biB0aW1lIGlzIG5vdCBzdXBwb3J0ZWQuXG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgYWNjZXNzb3IgbXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogVGFnIGdyb3VwIHNpemUsIGVpdGhlciBzIG9yIG0uXG4gICAqIEBkZWZhdWx0ICdtJyAvICdzJyAobGVhbilcbiAgICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIHNpemU6IFNiYlRhZ1NpemUgPSBpc0xlYW4oKSA/ICdzJyA6ICdtJztcblxuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIHNiYi10YWctZ3JvdXAuXG4gICAqIElmIHNldCBtdWx0aXBsZSB0byBmYWxzZSwgdGhlIHZhbHVlIGlzIGEgc3RyaW5nIChvciBudWxsKS5cbiAgICogSWYgc2V0IG11bHRpcGxlIHRvIHRydWUsIHRoZSB2YWx1ZSBpcyBhbiBhcnJheS5cbiAgICovXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBzZXQgdmFsdWUodmFsdWU6IFQgfCAoVCB8IG51bGwpW10gfCBudWxsKSB7XG4gICAgaWYgKGlzU2VydmVyIHx8ICF0aGlzLmhhc1VwZGF0ZWQpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX2FwcGx5VmFsdWVUb1RhZ3ModmFsdWUpO1xuICB9XG4gIHB1YmxpYyBnZXQgdmFsdWUoKTogVCB8IChUIHwgbnVsbClbXSB8IG51bGwge1xuICAgIHJldHVybiBpc1NlcnZlciB8fCAhdGhpcy5oYXNVcGRhdGVkXG4gICAgICA/IHRoaXMuX3ZhbHVlXG4gICAgICA6IHRoaXMubXVsdGlwbGVcbiAgICAgICAgPyB0aGlzLnRhZ3MuZmlsdGVyKCh0KSA9PiB0LmNoZWNrZWQpLm1hcCgodCkgPT4gdC52YWx1ZSlcbiAgICAgICAgOiAodGhpcy50YWdzLmZpbmQoKHQpID0+IHQuY2hlY2tlZCk/LnZhbHVlID8/IG51bGwpO1xuICB9XG4gIHByaXZhdGUgX3ZhbHVlOiBUIHwgKFQgfCBudWxsKVtdIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIFRoZSBjaGlsZCBpbnN0YW5jZXMgb2Ygc2JiLXRhZyBhcyBhbiBhcnJheS4gKi9cbiAgcHVibGljIGdldCB0YWdzKCk6IFNiYlRhZ0VsZW1lbnQ8VD5bXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5xdWVyeVNlbGVjdG9yQWxsPy48U2JiVGFnRWxlbWVudDxUPj4oJ3NiYi10YWcnKSA/PyBbXSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8V2l0aExpc3RDaGlsZHJlbjx0aGlzPj4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3ZhbHVlJykgJiYgIXRoaXMuaGFzVXBkYXRlZCAmJiB0aGlzLl92YWx1ZSkge1xuICAgICAgdGhpcy5fYXBwbHlWYWx1ZVRvVGFncyh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdzaXplJykpIHtcbiAgICAgIHRoaXMudGFncy5mb3JFYWNoKCh0KSA9PiB0LnJlcXVlc3RVcGRhdGU/Lignc2l6ZScpKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdkaXNhYmxlZCcpKSB7XG4gICAgICB0aGlzLnRhZ3MuZm9yRWFjaCgocikgPT4gci5yZXF1ZXN0VXBkYXRlPy4oJ2Rpc2FibGVkJykpO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2xpc3RDaGlsZHJlbicpIHx8IGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbXVsdGlwbGUnKSkgJiZcbiAgICAgICF0aGlzLm11bHRpcGxlXG4gICAgKSB7XG4gICAgICAvLyBFbnN1cmUgb25seSBvbmUgdGFnIGNoZWNrZWRcbiAgICAgIHRoaXMudGFnc1xuICAgICAgICAuZmlsdGVyKCh0YWcpID0+IHRhZy5jaGVja2VkKVxuICAgICAgICAuc2xpY2UoMSlcbiAgICAgICAgLmZvckVhY2goKHRhZykgPT4gKHRhZy5jaGVja2VkID0gZmFsc2UpKTtcbiAgICB9XG4gICAgc2V0T3JSZW1vdmVBdHRyaWJ1dGUoXG4gICAgICB0aGlzLFxuICAgICAgJ3JvbGUnLFxuICAgICAgY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdsaXN0QWNjZXNzaWJpbGl0eUxhYmVsJykgJiYgdGhpcy5saXN0QWNjZXNzaWJpbGl0eUxhYmVsXG4gICAgICAgID8gbnVsbFxuICAgICAgICA6ICdncm91cCcsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2FwcGx5VmFsdWVUb1RhZ3ModmFsdWU6IGFueSk6IHZvaWQge1xuICAgIGNvbnN0IHRhZ3MgPSB0aGlzLnRhZ3M7XG5cbiAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHRhZ3MuZm9yRWFjaCgodCkgPT4gKHQuY2hlY2tlZCA9IGZhbHNlKSk7XG4gICAgfSBlbHNlIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWUpICYmIHRhZ3MuZXZlcnkoKHQpID0+IHQudmFsdWUgIT09IHZhbHVlKSkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIC8vIElmIGl0IGlzIG11bHRpcGxlIG1vZGUgYW5kIG5vIHRhZyBtYXRjaGVzIHRoZSB2YWx1ZSwgd2UgdHJ5IHRvIHBhcnNlIHRoZSB2YWx1ZSBhcyBKU09OLlxuICAgICAgICAgIC8vIFRoaXMgYWxsb3dzIHNlcnZlciBzaWRlIHJlbmRlcmluZyB0byB1c2UgYXJyYXkgdmFsdWVzIHRvIGJlIHBhc3NlZCB0byB0aGUgY2xpZW50IHNpZGUuXG4gICAgICAgICAgdmFsdWUgPSBKU09OLnBhcnNlKHZhbHVlIGFzIHN0cmluZyk7XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgIC8qIGVtcHR5ICovXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGNvbnN0IHZhbHVlQXNBcnJheSA9IEFycmF5LmlzQXJyYXkodmFsdWUpID8gdmFsdWUgOiBbdmFsdWVdO1xuICAgICAgdGFncy5mb3JFYWNoKCh0KSA9PiAodC5jaGVja2VkID0gdmFsdWVBc0FycmF5LmluY2x1ZGVzKHQudmFsdWUpKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgdGFncy5mb3JFYWNoKCh0KSA9PiAodC5jaGVja2VkID0gdC52YWx1ZSA9PT0gdmFsdWUpKTtcbiAgICAgIH0gZWxzZSBpZiAoaW1wb3J0Lm1ldGEuZW52LkRFVikge1xuICAgICAgICBjb25zb2xlLndhcm4oJ3ZhbHVlIG11c3Qgbm90IGJlIHNldCBhcyBhbiBhcnJheSBpbiBzaW5ndWxhciBtb2RlLicsIHZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgICR7dGhpcy5yZW5kZXJMaXN0KHtcbiAgICAgICAgY2xhc3M6ICdzYmItdGFnLWdyb3VwX19saXN0JyxcbiAgICAgICAgYXJpYUxhYmVsOiB0aGlzLmxpc3RBY2Nlc3NpYmlsaXR5TGFiZWwsXG4gICAgICB9KX1cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdGFnLWdyb3VwJzogU2JiVGFnR3JvdXBFbGVtZW50O1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQzZCYSw0QkFBa0I7bUJBQXFCLGlCQUNsRCxzQkFBd0QsV0FBVyxDQUNwRTs7Ozs7Ozs7Ozs7O2NBRlksMkJBQXVDLFlBRW5EOzs7QUFJNkIsUUFBQSx1QkFOakIsa0JBQUEsTUFBQSwyQkFBa0IsRUFNcUIsQ0FBQyxXQUFXLE1BQU07QUFPcEQsU0FBQSwwQ0FBQSxrQkFBQSxNQUFBLHNDQUFpQyxHQUFFO0FBVW5DLFNBQUEsNkJBQUEsa0JBQUEsTUFBQSwwQ0FBQSxFQUFBLGtCQUFBLE1BQUEsd0JBQW9CLE1BQUs7QUFNSSxTQUFBLHlCQUFBLGtCQUFBLE1BQUEsNEJBQUEsRUFBQSxrQkFBQSxNQUFBLG9CQUFtQixRQUFRLEdBQUcsTUFBTSxJQUFHO0FB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
@@ -0,0 +1,245 @@
1
+ import { __esDecorate, __runInitializers } from "tslib";
2
+ import { html, unsafeCSS } from "lit";
3
+ import { property } from "lit/decorators.js";
4
+ import { SbbButtonLikeBaseElement } from "./core/base-elements.js";
5
+ import { forceType, getOverride, omitEmptyConverter } from "./core/decorators.js";
6
+ import { isLean } from "./core/dom.js";
7
+ import { SbbDisabledTabIndexActionMixin } from "./core/mixins.js";
8
+ import { boxSizingStyles } from "./core/styles.js";
9
+ import { SbbIconNameMixin } from "./icon.js";
10
+ //#region src/elements/tag/tag/tag.scss?inline
11
+ var tag_default = ":host {\n --sbb-tag-animation-duration: var(\n --sbb-disable-animation-duration,\n var(--sbb-animation-duration-2x)\n );\n display: inline-block;\n max-width: 100%;\n outline: none !important;\n}\n\n:host(:is(:state(checked),[state--checked])) {\n --sbb-tag-border-color: var(--sbb-border-color-3);\n --sbb-tag-border-width: var(--sbb-border-width-2x);\n}\n@media (forced-colors: active) {\n :host(:is(:state(checked),[state--checked])) {\n --sbb-tag-border-color: Highlight !important;\n --sbb-tag-border-width: var(--sbb-border-width-4x);\n }\n}\n\n:host(:is(:disabled, [disabled-interactive])) {\n --sbb-tag-text-color: var(--sbb-color-granite);\n --sbb-tag-text-color: light-dark(var(--sbb-color-granite), var(--sbb-color-aluminium));\n --sbb-tag-amount-color: var(--sbb-tag-text-color);\n --sbb-tag-background-color: var(--sbb-background-color-3);\n --sbb-tag-border-color: var(--sbb-color-cement);\n --sbb-tag-border-color: light-dark(var(--sbb-color-cement), var(--sbb-color-smoke));\n --sbb-tag-border-style: dashed;\n --sbb-tag-cursor: unset;\n --sbb-tag-pointer-events: none;\n}\n@media (forced-colors: active) {\n :host(:is(:disabled, [disabled-interactive])) {\n --sbb-tag-text-color: GrayText;\n --sbb-tag-amount-color: GrayText;\n --sbb-tag-border-color: GrayText;\n }\n}\n\n:host(:is(:state(checked),[state--checked]):is(:disabled, [disabled-interactive])) {\n --sbb-tag-border-color: var(--sbb-color-metal);\n --sbb-tag-border-color: light-dark(var(--sbb-color-metal), var(--sbb-color-cement));\n --sbb-tag-border-style: dashed;\n}\n\n@media (any-hover: hover) {\n :host(:hover:not(:disabled, [disabled-interactive], :active, :is(:state(active),[state--active]))) {\n --sbb-tag-background-color: var(--sbb-background-color-3);\n --sbb-tag-inset: calc(var(--sbb-border-width-2x) * -1);\n --sbb-tag-content-shift: translateY(calc(var(--sbb-border-width-1x) * -1));\n }\n}\n@media (any-hover: hover) and (forced-colors: active) {\n :host(:hover:not(:disabled, [disabled-interactive], :active, :is(:state(active),[state--active]))) {\n --sbb-tag-border-color: Highlight;\n }\n}\n\n:host(:is(:active, :is(:state(active),[state--active])):not(:disabled, [disabled-interactive])) {\n --sbb-tag-background-color: var(--sbb-background-color-3);\n --sbb-tag-border-color: var(--sbb-color-iron);\n --sbb-tag-border-color: light-dark(var(--sbb-color-iron), var(--sbb-color-storm));\n --sbb-tag-border-width: var(--sbb-border-width-2x);\n --sbb-tag-text-color: var(--sbb-color-4);\n}\n@media (forced-colors: active) {\n :host(:is(:active, :is(:state(active),[state--active])):not(:disabled, [disabled-interactive])) {\n --sbb-tag-border-color: Highlight;\n --sbb-tag-text-color: ButtonText;\n }\n}\n\n:host([size=m]) {\n --sbb-tag-height: var(--sbb-size-element-xs);\n --sbb-tag-padding-inline: var(--sbb-spacing-fixed-5x);\n}\n\n:host([size=s]) {\n --sbb-tag-height: var(--sbb-size-element-xxxs);\n --sbb-tag-padding-inline: var(--sbb-spacing-fixed-3x);\n}\n\n.sbb-tag {\n position: relative;\n display: flex;\n align-items: center;\n height: var(--sbb-tag-height);\n max-width: 100%;\n font-size: var(--sbb-text-font-size-xs);\n letter-spacing: var(--sbb-typo-letter-spacing-text);\n gap: var(--sbb-tag-gap);\n padding-inline: var(--sbb-tag-padding-inline);\n cursor: var(--sbb-tag-cursor, var(--sbb-cursor-pointer));\n border-radius: var(--sbb-tag-border-radius);\n color: var(--sbb-tag-text-color);\n transition: color var(--sbb-tag-animation-duration) var(--sbb-tag-animation-easing);\n -webkit-tap-highlight-color: transparent;\n user-select: none;\n pointer-events: var(--sbb-tag-pointer-events, unset);\n}\n.sbb-tag::before {\n content: \"\";\n position: absolute;\n inset: var(--sbb-tag-inset, 0);\n background-color: var(--sbb-tag-background-color);\n border: var(--sbb-tag-border-width) var(--sbb-tag-border-style) var(--sbb-tag-border-color);\n border-radius: var(--sbb-tag-border-radius);\n transition-duration: var(--sbb-tag-animation-duration);\n transition-timing-function: var(--sbb-tag-animation-easing);\n transition-property: inset, background-color, border-color, box-shadow;\n}\n:host(:focus-visible) .sbb-tag::before {\n outline-offset: var(--sbb-focus-outline-offset);\n outline: var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width);\n}\n\n.sbb-tag__icon {\n display: flex;\n align-items: center;\n height: calc(var(--sbb-typo-line-height-text) * 1em);\n flex-shrink: 0;\n}\n:host(:not(:is(:state(slotted-icon),[state--slotted-icon]), :is(:state(has-icon-name),[state--has-icon-name]))) .sbb-tag__icon {\n display: none;\n}\n\n.sbb-tag__text {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n font-weight: bold;\n}\n\n.sbb-tag__amount {\n color: var(--sbb-tag-amount-color);\n}\n:host(:not(:is(:state(slotted-amount),[state--slotted-amount]), [amount])) .sbb-tag__amount {\n display: none;\n}\n\n.sbb-tag--shift {\n transition: transform var(--sbb-tag-animation-duration) var(--sbb-tag-animation-easing);\n transform: var(--sbb-tag-content-shift, 0);\n will-change: transform;\n}";
12
+ //#endregion
13
+ //#region src/elements/tag/tag/tag.component.ts
14
+ /**
15
+ * It displays a selectable element which can be used as a filter.
16
+ *
17
+ * @slot - Use the unnamed slot to add content to the tag label.
18
+ * @slot icon - Use this slot to display an icon at the component start, by providing a `sbb-icon` component.
19
+ * @slot amount - Provide an amount to show it at the component end.
20
+ * @overrideType value - (T = string) | null
21
+ */
22
+ var SbbTagElement = (() => {
23
+ let _classSuper = SbbIconNameMixin(SbbDisabledTabIndexActionMixin(SbbButtonLikeBaseElement));
24
+ let _value_decorators;
25
+ let _value_initializers = [];
26
+ let _value_extraInitializers = [];
27
+ let _amount_decorators;
28
+ let _amount_initializers = [];
29
+ let _amount_extraInitializers = [];
30
+ let _checked_decorators;
31
+ let _checked_initializers = [];
32
+ let _checked_extraInitializers = [];
33
+ let _size_decorators;
34
+ let _size_initializers = [];
35
+ let _size_extraInitializers = [];
36
+ return class SbbTagElement extends _classSuper {
37
+ static {
38
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
39
+ _value_decorators = [property()];
40
+ _amount_decorators = [forceType(), property({
41
+ reflect: true,
42
+ converter: omitEmptyConverter
43
+ })];
44
+ _checked_decorators = [forceType(), property({
45
+ reflect: false,
46
+ type: Boolean
47
+ })];
48
+ _size_decorators = [property({ reflect: true }), getOverride((i, v) => i._group?.size ?? v)];
49
+ __esDecorate(this, null, _value_decorators, {
50
+ kind: "accessor",
51
+ name: "value",
52
+ static: false,
53
+ private: false,
54
+ access: {
55
+ has: (obj) => "value" in obj,
56
+ get: (obj) => obj.value,
57
+ set: (obj, value) => {
58
+ obj.value = value;
59
+ }
60
+ },
61
+ metadata: _metadata
62
+ }, _value_initializers, _value_extraInitializers);
63
+ __esDecorate(this, null, _amount_decorators, {
64
+ kind: "accessor",
65
+ name: "amount",
66
+ static: false,
67
+ private: false,
68
+ access: {
69
+ has: (obj) => "amount" in obj,
70
+ get: (obj) => obj.amount,
71
+ set: (obj, value) => {
72
+ obj.amount = value;
73
+ }
74
+ },
75
+ metadata: _metadata
76
+ }, _amount_initializers, _amount_extraInitializers);
77
+ __esDecorate(this, null, _checked_decorators, {
78
+ kind: "accessor",
79
+ name: "checked",
80
+ static: false,
81
+ private: false,
82
+ access: {
83
+ has: (obj) => "checked" in obj,
84
+ get: (obj) => obj.checked,
85
+ set: (obj, value) => {
86
+ obj.checked = value;
87
+ }
88
+ },
89
+ metadata: _metadata
90
+ }, _checked_initializers, _checked_extraInitializers);
91
+ __esDecorate(this, null, _size_decorators, {
92
+ kind: "accessor",
93
+ name: "size",
94
+ static: false,
95
+ private: false,
96
+ access: {
97
+ has: (obj) => "size" in obj,
98
+ get: (obj) => obj.size,
99
+ set: (obj, value) => {
100
+ obj.size = value;
101
+ }
102
+ },
103
+ metadata: _metadata
104
+ }, _size_initializers, _size_extraInitializers);
105
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, {
106
+ enumerable: true,
107
+ configurable: true,
108
+ writable: true,
109
+ value: _metadata
110
+ });
111
+ }
112
+ static {
113
+ this.elementName = "sbb-tag";
114
+ }
115
+ static {
116
+ this.styles = [boxSizingStyles, unsafeCSS(tag_default)];
117
+ }
118
+ static {
119
+ this.events = {
120
+ input: "input",
121
+ didChange: "didChange",
122
+ change: "change"
123
+ };
124
+ }
125
+ #value_accessor_storage;
126
+ /** Value of the form element. */
127
+ get value() {
128
+ return this.#value_accessor_storage;
129
+ }
130
+ set value(value) {
131
+ this.#value_accessor_storage = value;
132
+ }
133
+ #amount_accessor_storage;
134
+ /** Amount displayed inside the tag. */
135
+ get amount() {
136
+ return this.#amount_accessor_storage;
137
+ }
138
+ set amount(value) {
139
+ this.#amount_accessor_storage = value;
140
+ }
141
+ #checked_accessor_storage;
142
+ /** Whether the tag is checked. */
143
+ get checked() {
144
+ return this.#checked_accessor_storage;
145
+ }
146
+ set checked(value) {
147
+ this.#checked_accessor_storage = value;
148
+ }
149
+ #size_accessor_storage;
150
+ /**
151
+ * Tag size, either s or m.
152
+ * @default 'm' / 's' (lean)
153
+ */
154
+ get size() {
155
+ return this.#size_accessor_storage;
156
+ }
157
+ set size(value) {
158
+ this.#size_accessor_storage = value;
159
+ }
160
+ constructor() {
161
+ super();
162
+ this.#value_accessor_storage = __runInitializers(this, _value_initializers, null);
163
+ this.#amount_accessor_storage = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _amount_initializers, ""));
164
+ this.#checked_accessor_storage = (__runInitializers(this, _amount_extraInitializers), __runInitializers(this, _checked_initializers, false));
165
+ this.#size_accessor_storage = (__runInitializers(this, _checked_extraInitializers), __runInitializers(this, _size_initializers, isLean() ? "s" : "m"));
166
+ /** Reference to the connected tag group. */
167
+ this._group = (__runInitializers(this, _size_extraInitializers), null);
168
+ this.addEventListener?.("click", () => this._handleClick());
169
+ }
170
+ connectedCallback() {
171
+ super.connectedCallback();
172
+ this._group = this.closest("sbb-tag-group");
173
+ }
174
+ isDisabledExternally() {
175
+ return this._group?.disabled ?? false;
176
+ }
177
+ /** Method triggered on button click. Inverts the checked value and emits events. */
178
+ _handleClick() {
179
+ if (this.disabled) return;
180
+ const tagGroup = this.closest("sbb-tag-group");
181
+ if (tagGroup && !tagGroup.multiple && this.checked) return;
182
+ this.checked = !this.checked;
183
+ /** The input event fires when the value has been changed as a direct result of a user action. */
184
+ this.dispatchEvent(new InputEvent("input", {
185
+ bubbles: true,
186
+ composed: true
187
+ }));
188
+ /**
189
+ * The change event is fired when the user modifies the element's value.
190
+ * Unlike the input event, the change event is not necessarily fired
191
+ * for each alteration to an element's value.
192
+ */
193
+ this.dispatchEvent(new Event("change", { bubbles: true }));
194
+ /**
195
+ * Deprecated. Mirrors change event for React. Will be removed once React properly supports change events.
196
+ * @deprecated
197
+ */
198
+ this.dispatchEvent(new Event("didChange", { bubbles: true }));
199
+ }
200
+ willUpdate(changedProperties) {
201
+ super.willUpdate(changedProperties);
202
+ if (changedProperties.has("checked")) {
203
+ this.internals.ariaPressed = `${this.checked}`;
204
+ this.toggleState("checked", this.checked);
205
+ this.updateFormValue();
206
+ }
207
+ const tagGroup = this.closest?.("sbb-tag-group");
208
+ if (tagGroup && !tagGroup.multiple && changedProperties.has("checked") && this.checked) tagGroup?.tags.filter((t) => t !== this).forEach((t) => t.checked = false);
209
+ }
210
+ /**
211
+ * @internal
212
+ */
213
+ formResetCallback() {
214
+ this.checked = this.hasAttribute("checked");
215
+ }
216
+ /**
217
+ * @internal
218
+ */
219
+ formStateRestoreCallback(state, _reason) {
220
+ if (state) this.checked = state === "true";
221
+ }
222
+ updateFormValue() {
223
+ if (this.checked) super.updateFormValue();
224
+ else this.internals.setFormValue(null);
225
+ }
226
+ formState() {
227
+ return `${this.checked}`;
228
+ }
229
+ renderTemplate() {
230
+ return html`
231
+ <span class="sbb-tag__icon sbb-tag--shift"> ${this.renderIconSlot()} </span>
232
+ <span class="sbb-tag__text sbb-tag--shift">
233
+ <slot></slot>
234
+ </span>
235
+ <span class="sbb-tag__amount sbb-tag--shift">
236
+ <slot name="amount">${this.amount}</slot>
237
+ </span>
238
+ `;
239
+ }
240
+ };
241
+ })();
242
+ //#endregion
243
+ export { SbbTagElement as t };
244
+
245
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLmNvbXBvbmVudC1Dbk5QTDZhSS5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy90YWcuc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy90YWcuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbiRkaXNhYmxlZDogJzpkaXNhYmxlZCwgW2Rpc2FibGVkLWludGVyYWN0aXZlXSc7XG4kYWN0aXZlOiAnOmFjdGl2ZSwgOnN0YXRlKGFjdGl2ZSknO1xuXG46aG9zdCB7XG4gIC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb246IHZhcihcbiAgICAtLXNiYi1kaXNhYmxlLWFuaW1hdGlvbi1kdXJhdGlvbixcbiAgICB2YXIoLS1zYmItYW5pbWF0aW9uLWR1cmF0aW9uLTJ4KVxuICApO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gIC8vIFVzZSAhaW1wb3J0YW50IGhlcmUgdG8gbm90IGludGVyZmVyZSB3aXRoIEZpcmVmb3ggZm9jdXMgcmluZyBkZWZpbml0aW9uXG4gIC8vIHdoaWNoIGFwcGVhcnMgaW4gbm9ybWFsaXplIENTUyBvZiBzZXZlcmFsIGZyYW1ld29ya3MuXG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLy8gQWN0aXZlIHN0YXRlXG46aG9zdCg6c3RhdGUoY2hlY2tlZCkpIHtcbiAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogdmFyKC0tc2JiLWJvcmRlci1jb2xvci0zKTtcbiAgLS1zYmItdGFnLWJvcmRlci13aWR0aDogdmFyKC0tc2JiLWJvcmRlci13aWR0aC0yeCk7XG5cbiAgQGluY2x1ZGUgc2JiLmlmLWZvcmNlZC1jb2xvcnMge1xuICAgIC0tc2JiLXRhZy1ib3JkZXItY29sb3I6IEhpZ2hsaWdodCAhaW1wb3J0YW50O1xuICAgIC0tc2JiLXRhZy1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtNHgpO1xuICB9XG59XG5cbjpob3N0KDppcygjeyRkaXNhYmxlZH0pKSB7XG4gIC0tc2JiLXRhZy10ZXh0LWNvbG9yOiBsaWdodC1kYXJrKHZhcigtLXNiYi1jb2xvci1ncmFuaXRlKSwgdmFyKC0tc2JiLWNvbG9yLWFsdW1pbml1bSkpO1xuICAtLXNiYi10YWctYW1vdW50LWNvbG9yOiB2YXIoLS1zYmItdGFnLXRleHQtY29sb3IpO1xuICAtLXNiYi10YWctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLWJhY2tncm91bmQtY29sb3ItMyk7XG4gIC0tc2JiLXRhZy1ib3JkZXItY29sb3I6IGxpZ2h0LWRhcmsodmFyKC0tc2JiLWNvbG9yLWNlbWVudCksIHZhcigtLXNiYi1jb2xvci1zbW9rZSkpO1xuICAtLXNiYi10YWctYm9yZGVyLXN0eWxlOiBkYXNoZWQ7XG4gIC0tc2JiLXRhZy1jdXJzb3I6IHVuc2V0O1xuICAtLXNiYi10YWctcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgQGluY2x1ZGUgc2JiLmlmLWZvcmNlZC1jb2xvcnMge1xuICAgIC0tc2JiLXRhZy10ZXh0LWNvbG9yOiBHcmF5VGV4dDtcbiAgICAtLXNiYi10YWctYW1vdW50LWNvbG9yOiBHcmF5VGV4dDtcbiAgICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBHcmF5VGV4dDtcbiAgfVxufVxuXG46aG9zdCg6c3RhdGUoY2hlY2tlZCk6aXMoI3skZGlzYWJsZWR9KSkge1xuICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBsaWdodC1kYXJrKHZhcigtLXNiYi1jb2xvci1tZXRhbCksIHZhcigtLXNiYi1jb2xvci1jZW1lbnQpKTtcbiAgLS1zYmItdGFnLWJvcmRlci1zdHlsZTogZGFzaGVkO1xufVxuXG46aG9zdCg6aG92ZXI6bm90KCN7JGRpc2FibGVkfSwgI3skYWN0aXZlfSkpIHtcbiAgQGluY2x1ZGUgc2JiLmhvdmVyLW1xKCRob3ZlcjogdHJ1ZSkge1xuICAgIC0tc2JiLXRhZy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItYmFja2dyb3VuZC1jb2xvci0zKTtcbiAgICAtLXNiYi10YWctaW5zZXQ6IGNhbGModmFyKC0tc2JiLWJvcmRlci13aWR0aC0yeCkgKiAtMSk7XG4gICAgLS1zYmItdGFnLWNvbnRlbnQtc2hpZnQ6IHRyYW5zbGF0ZVkoY2FsYyh2YXIoLS1zYmItYm9yZGVyLXdpZHRoLTF4KSAqIC0xKSk7XG5cbiAgICBAaW5jbHVkZSBzYmIuaWYtZm9yY2VkLWNvbG9ycyB7XG4gICAgICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBIaWdobGlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi8vIFByZXNzZWQgc3RhdGVcbjpob3N0KDppcygjeyRhY3RpdmV9KTpub3QoI3skZGlzYWJsZWR9KSkge1xuICAtLXNiYi10YWctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLWJhY2tncm91bmQtY29sb3ItMyk7XG4gIC0tc2JiLXRhZy1ib3JkZXItY29sb3I6IGxpZ2h0LWRhcmsodmFyKC0tc2JiLWNvbG9yLWlyb24pLCB2YXIoLS1zYmItY29sb3Itc3Rvcm0pKTtcbiAgLS1zYmItdGFnLWJvcmRlci13aWR0aDogdmFyKC0tc2JiLWJvcmRlci13aWR0aC0yeCk7XG4gIC0tc2JiLXRhZy10ZXh0LWNvbG9yOiB2YXIoLS1zYmItY29sb3ItNCk7XG5cbiAgQGluY2x1ZGUgc2JiLmlmLWZvcmNlZC1jb2xvcnMge1xuICAgIC0tc2JiLXRhZy1ib3JkZXItY29sb3I6IEhpZ2hsaWdodDtcbiAgICAtLXNiYi10YWctdGV4dC1jb2xvcjogQnV0dG9uVGV4dDtcbiAgfVxufVxuXG46aG9zdChbc2l6ZT0nbSddKSB7XG4gIC0tc2JiLXRhZy1oZWlnaHQ6IHZhcigtLXNiYi1zaXplLWVsZW1lbnQteHMpO1xuICAtLXNiYi10YWctcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTV4KTtcbn1cblxuOmhvc3QoW3NpemU9J3MnXSkge1xuICAtLXNiYi10YWctaGVpZ2h0OiB2YXIoLS1zYmItc2l6ZS1lbGVtZW50LXh4eHMpO1xuICAtLXNiYi10YWctcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTN4KTtcbn1cblxuLnNiYi10YWcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogdmFyKC0tc2JiLXRhZy1oZWlnaHQpO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tc2JiLXRleHQtZm9udC1zaXplLXhzKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXNiYi10eXBvLWxldHRlci1zcGFjaW5nLXRleHQpO1xuICBnYXA6IHZhcigtLXNiYi10YWctZ2FwKTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi10YWctcGFkZGluZy1pbmxpbmUpO1xuICBjdXJzb3I6IHZhcigtLXNiYi10YWctY3Vyc29yLCB2YXIoLS1zYmItY3Vyc29yLXBvaW50ZXIpKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLXRhZy1ib3JkZXItcmFkaXVzKTtcbiAgY29sb3I6IHZhcigtLXNiYi10YWctdGV4dC1jb2xvcik7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXNiYi10YWctYW5pbWF0aW9uLWR1cmF0aW9uKSB2YXIoLS1zYmItdGFnLWFuaW1hdGlvbi1lYXNpbmcpO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IHZhcigtLXNiYi10YWctcG9pbnRlci1ldmVudHMsIHVuc2V0KTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogdmFyKC0tc2JiLXRhZy1pbnNldCwgMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLXRhZy1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICBib3JkZXI6IHZhcigtLXNiYi10YWctYm9yZGVyLXdpZHRoKSB2YXIoLS1zYmItdGFnLWJvcmRlci1zdHlsZSkgdmFyKC0tc2JiLXRhZy1ib3JkZXItY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXNiYi10YWctYm9yZGVyLXJhZGl1cyk7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogdmFyKC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb24pO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYmItdGFnLWFuaW1hdGlvbi1lYXNpbmcpO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGluc2V0LCBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXItY29sb3IsIGJveC1zaGFkb3c7XG5cbiAgICA6aG9zdCg6Zm9jdXMtdmlzaWJsZSkgJiB7XG4gICAgICBAaW5jbHVkZSBzYmIuZm9jdXMtb3V0bGluZTtcbiAgICB9XG4gIH1cbn1cblxuLnNiYi10YWdfX2ljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IGNhbGModmFyKC0tc2JiLXR5cG8tbGluZS1oZWlnaHQtdGV4dCkgKiAxZW0pO1xuICBmbGV4LXNocmluazogMDtcblxuICA6aG9zdCg6bm90KDpzdGF0ZShzbG90dGVkLWljb24pLCA6c3RhdGUoaGFzLWljb24tbmFtZSkpKSAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zYmItdGFnX190ZXh0IHtcbiAgQGluY2x1ZGUgc2JiLmVsbGlwc2lzO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uc2JiLXRhZ19fYW1vdW50IHtcbiAgY29sb3I6IHZhcigtLXNiYi10YWctYW1vdW50LWNvbG9yKTtcblxuICA6aG9zdCg6bm90KDpzdGF0ZShzbG90dGVkLWFtb3VudCksIFthbW91bnRdKSkgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uc2JiLXRhZy0tc2hpZnQge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb24pIHZhcigtLXNiYi10YWctYW5pbWF0aW9uLWVhc2luZyk7XG4gIHRyYW5zZm9ybTogdmFyKC0tc2JiLXRhZy1jb250ZW50LXNoaWZ0LCAwKTtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbn1cbiIsImltcG9ydCB7XG4gIGh0bWwsXG4gIHVuc2FmZUNTUyxcbiAgdHlwZSBDU1NSZXN1bHRHcm91cCxcbiAgdHlwZSBQcm9wZXJ0eVZhbHVlcyxcbiAgdHlwZSBUZW1wbGF0ZVJlc3VsdCxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBTYmJCdXR0b25MaWtlQmFzZUVsZW1lbnQgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UtZWxlbWVudHMudHMnO1xuaW1wb3J0IHsgZm9yY2VUeXBlLCBnZXRPdmVycmlkZSwgb21pdEVtcHR5Q29udmVydGVyIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLnRzJztcbmltcG9ydCB7IGlzTGVhbiB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLnRzJztcbmltcG9ydCB7XG4gIHR5cGUgRm9ybVJlc3RvcmVSZWFzb24sXG4gIHR5cGUgRm9ybVJlc3RvcmVTdGF0ZSxcbiAgU2JiRGlzYWJsZWRUYWJJbmRleEFjdGlvbk1peGluLFxufSBmcm9tICcuLi8uLi9jb3JlL21peGlucy50cyc7XG5pbXBvcnQgeyBib3hTaXppbmdTdHlsZXMgfSBmcm9tICcuLi8uLi9jb3JlL3N0eWxlcy50cyc7XG5pbXBvcnQgeyBTYmJJY29uTmFtZU1peGluIH0gZnJvbSAnLi4vLi4vaWNvbi50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYlRhZ0dyb3VwRWxlbWVudCB9IGZyb20gJy4uL3RhZy1ncm91cC90YWctZ3JvdXAuY29tcG9uZW50LnRzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vdGFnLnNjc3M/aW5saW5lJztcblxuZXhwb3J0IHR5cGUgU2JiVGFnU2l6ZSA9ICdzJyB8ICdtJztcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhIHNlbGVjdGFibGUgZWxlbWVudCB3aGljaCBjYW4gYmUgdXNlZCBhcyBhIGZpbHRlci5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IHRvIHRoZSB0YWcgbGFiZWwuXG4gKiBAc2xvdCBpY29uIC0gVXNlIHRoaXMgc2xvdCB0byBkaXNwbGF5IGFuIGljb24gYXQgdGhlIGNvbXBvbmVudCBzdGFydCwgYnkgcHJvdmlkaW5nIGEgYHNiYi1pY29uYCBjb21wb25lbnQuXG4gKiBAc2xvdCBhbW91bnQgLSBQcm92aWRlIGFuIGFtb3VudCB0byBzaG93IGl0IGF0IHRoZSBjb21wb25lbnQgZW5kLlxuICogQG92ZXJyaWRlVHlwZSB2YWx1ZSAtIChUID0gc3RyaW5nKSB8IG51bGxcbiAqL1xuZXhwb3J0IGNsYXNzIFNiYlRhZ0VsZW1lbnQ8VCA9IHN0cmluZz4gZXh0ZW5kcyBTYmJJY29uTmFtZU1peGluKFxuICBTYmJEaXNhYmxlZFRhYkluZGV4QWN0aW9uTWl4aW4oU2JiQnV0dG9uTGlrZUJhc2VFbGVtZW50KSxcbikge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHJlYWRvbmx5IGVsZW1lbnROYW1lOiBzdHJpbmcgPSAnc2JiLXRhZyc7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtib3hTaXppbmdTdHlsZXMsIHVuc2FmZUNTUyhzdHlsZSldO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICBpbnB1dDogJ2lucHV0JyxcbiAgICBkaWRDaGFuZ2U6ICdkaWRDaGFuZ2UnLFxuICAgIGNoYW5nZTogJ2NoYW5nZScsXG4gIH0gYXMgY29uc3Q7XG5cbiAgLyoqIFZhbHVlIG9mIHRoZSBmb3JtIGVsZW1lbnQuICovXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBhY2Nlc3NvciB2YWx1ZTogVCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBBbW91bnQgZGlzcGxheWVkIGluc2lkZSB0aGUgdGFnLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgY29udmVydGVyOiBvbWl0RW1wdHlDb252ZXJ0ZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIGFtb3VudDogc3RyaW5nID0gJyc7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHRhZyBpcyBjaGVja2VkLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogZmFsc2UsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIGNoZWNrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogVGFnIHNpemUsIGVpdGhlciBzIG9yIG0uXG4gICAqIEBkZWZhdWx0ICdtJyAvICdzJyAobGVhbilcbiAgICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSlcbiAgQGdldE92ZXJyaWRlKChpLCB2KSA9PiBpLl9ncm91cD8uc2l6ZSA/PyB2KVxuICBwdWJsaWMgYWNjZXNzb3Igc2l6ZTogU2JiVGFnU2l6ZSA9IGlzTGVhbigpID8gJ3MnIDogJ20nO1xuXG4gIC8qKiBSZWZlcmVuY2UgdG8gdGhlIGNvbm5lY3RlZCB0YWcgZ3JvdXAuICovXG4gIHByaXZhdGUgX2dyb3VwOiBTYmJUYWdHcm91cEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LignY2xpY2snLCAoKSA9PiB0aGlzLl9oYW5kbGVDbGljaygpKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuX2dyb3VwID0gdGhpcy5jbG9zZXN0KCdzYmItdGFnLWdyb3VwJykgYXMgU2JiVGFnR3JvdXBFbGVtZW50O1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGlzRGlzYWJsZWRFeHRlcm5hbGx5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9ncm91cD8uZGlzYWJsZWQgPz8gZmFsc2U7XG4gIH1cblxuICAvKiogTWV0aG9kIHRyaWdnZXJlZCBvbiBidXR0b24gY2xpY2suIEludmVydHMgdGhlIGNoZWNrZWQgdmFsdWUgYW5kIGVtaXRzIGV2ZW50cy4gKi9cbiAgcHJpdmF0ZSBfaGFuZGxlQ2xpY2soKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBQcmV2ZW50IGRlYWN0aXZhdGluZyBvbiBleGNsdXNpdmUgLyByYWRpbyBtb2RlXG4gICAgY29uc3QgdGFnR3JvdXAgPSB0aGlzLmNsb3Nlc3QoJ3NiYi10YWctZ3JvdXAnKTtcbiAgICBpZiAodGFnR3JvdXAgJiYgIXRhZ0dyb3VwLm11bHRpcGxlICYmIHRoaXMuY2hlY2tlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNoZWNrZWQgPSAhdGhpcy5jaGVja2VkO1xuXG4gICAgLyoqIFRoZSBpbnB1dCBldmVudCBmaXJlcyB3aGVuIHRoZSB2YWx1ZSBoYXMgYmVlbiBjaGFuZ2VkIGFzIGEgZGlyZWN0IHJlc3VsdCBvZiBhIHVzZXIgYWN0aW9uLiAqL1xuICAgIHRoaXMuZGlzcGF0Y2hFdmVudChcbiAgICAgIG5ldyBJbnB1dEV2ZW50KCdpbnB1dCcsIHtcbiAgICAgICAgYnViYmxlczogdHJ1ZSxcbiAgICAgICAgY29tcG9zZWQ6IHRydWUsXG4gICAgICB9KSxcbiAgICApO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGNoYW5nZSBldmVudCBpcyBmaXJlZCB3aGVuIHRoZSB1c2VyIG1vZGlmaWVzIHRoZSBlbGVtZW50J3MgdmFsdWUuXG4gICAgICogVW5saWtlIHRoZSBpbnB1dCBldmVudCwgdGhlIGNoYW5nZSBldmVudCBpcyBub3QgbmVjZXNzYXJpbHkgZmlyZWRcbiAgICAgKiBmb3IgZWFjaCBhbHRlcmF0aW9uIHRvIGFuIGVsZW1lbnQncyB2YWx1ZS5cbiAgICAgKi9cbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdjaGFuZ2UnLCB7IGJ1YmJsZXM6IHRydWUgfSkpO1xuXG4gICAgLyoqXG4gICAgICogRGVwcmVjYXRlZC4gTWlycm9ycyBjaGFuZ2UgZXZlbnQgZm9yIFJlYWN0LiBXaWxsIGJlIHJlbW92ZWQgb25jZSBSZWFjdCBwcm9wZXJseSBzdXBwb3J0cyBjaGFuZ2UgZXZlbnRzLlxuICAgICAqIEBkZXByZWNhdGVkXG4gICAgICovXG4gICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnZGlkQ2hhbmdlJywgeyBidWJibGVzOiB0cnVlIH0pKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnY2hlY2tlZCcpKSB7XG4gICAgICB0aGlzLmludGVybmFscy5hcmlhUHJlc3NlZCA9IGAke3RoaXMuY2hlY2tlZH1gO1xuICAgICAgdGhpcy50b2dnbGVTdGF0ZSgnY2hlY2tlZCcsIHRoaXMuY2hlY2tlZCk7XG4gICAgICB0aGlzLnVwZGF0ZUZvcm1WYWx1ZSgpO1xuICAgIH1cblxuICAgIGNvbnN0IHRhZ0dyb3VwID0gdGhpcy5jbG9zZXN0Py4oJ3NiYi10YWctZ3JvdXAnKTtcbiAgICBpZiAodGFnR3JvdXAgJiYgIXRhZ0dyb3VwLm11bHRpcGxlICYmIGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnY2hlY2tlZCcpICYmIHRoaXMuY2hlY2tlZCkge1xuICAgICAgdGFnR3JvdXA/LnRhZ3MuZmlsdGVyKCh0KSA9PiB0ICE9PSB0aGlzKS5mb3JFYWNoKCh0KSA9PiAodC5jaGVja2VkID0gZmFsc2UpKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZm9ybVJlc2V0Q2FsbGJhY2soKTogdm9pZCB7XG4gICAgdGhpcy5jaGVja2VkID0gdGhpcy5oYXNBdHRyaWJ1dGUoJ2NoZWNrZWQnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBmb3JtU3RhdGVSZXN0b3JlQ2FsbGJhY2soXG4gICAgc3RhdGU6IEZvcm1SZXN0b3JlU3RhdGUgfCBudWxsLFxuICAgIF9yZWFzb246IEZvcm1SZXN0b3JlUmVhc29uLFxuICApOiB2b2lkIHtcbiAgICBpZiAoc3RhdGUpIHtcbiAgICAgIHRoaXMuY2hlY2tlZCA9IHN0YXRlID09PSAndHJ1ZSc7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHVwZGF0ZUZvcm1WYWx1ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jaGVja2VkKSB7XG4gICAgICBzdXBlci51cGRhdGVGb3JtVmFsdWUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbnRlcm5hbHMuc2V0Rm9ybVZhbHVlKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmb3JtU3RhdGUoKTogRm9ybVJlc3RvcmVTdGF0ZSB7XG4gICAgcmV0dXJuIGAke3RoaXMuY2hlY2tlZH1gO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlclRlbXBsYXRlKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRhZ19faWNvbiBzYmItdGFnLS1zaGlmdFwiPiAke3RoaXMucmVuZGVySWNvblNsb3QoKX0gPC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItdGFnX190ZXh0IHNiYi10YWctLXNoaWZ0XCI+XG4gICAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgIDwvc3Bhbj5cbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRhZ19fYW1vdW50IHNiYi10YWctLXNoaWZ0XCI+XG4gICAgICAgIDxzbG90IG5hbWU9XCJhbW91bnRcIj4ke3RoaXMuYW1vdW50fTwvc2xvdD5cbiAgICAgIDwvc3Bhbj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdGFnJzogU2JiVGFnRWxlbWVudDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNpQ2EsdUJBQWE7bUJBQXFCLGlCQUM3QywrQkFBK0IseUJBQXlCLENBQ3pEOzs7Ozs7Ozs7Ozs7O2NBRlksc0JBQWtDLFlBRTlDOzs7d0JBVUUsVUFBVSxDQUFBO3lCQUlWLFdBQVcsRUFDWCxTQUFTO0lBQUUsU0FBUztJQUFNLFdBQVc7SUFBb0IsQ0FBQyxDQUFBOzBCQUkxRCxXQUFXLEVBQ1gsU0FBUztJQUFFLFNBQVM7SUFBTyxNQUFNO0lBQVMsQ0FBQyxDQUFBO3VCQU8zQyxTQUFTLEVBQUUsU0FBUyxNQUFNLENBQUMsRUFDM0IsYUFBYSxHQUFHLE1BQU0sRUFBRSxRQUFRLFFBQVEsRUFBRSxDQUFBO0FBakIzQyxnQkFBQSxNQUFBLE1BQUEsbUJBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSxXQUFBO0tBQUEsTUFBQSxRQUFBLElBQWdCO0tBQUssTUFBQSxLQUFBLFVBQUE7QUFBQSxVQUFMLFFBQUs7O0tBQUE7SUFBQSxVQUFBO0lBQUEsRUFBQSxxQkFBQSx5QkFB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
@@ -1,5 +1,5 @@
1
- import { t as SbbTagGroupElement } from "./tag-group.component-B7bBirrj.js";
2
- import { t as SbbTagElement } from "./tag.component-0vKnvMOm.js";
1
+ import { t as SbbTagGroupElement } from "./tag-group.component-Cw46bt0E.js";
2
+ import { t as SbbTagElement } from "./tag.component-CnNPL6aI.js";
3
3
  import "./tag.pure.js";
4
4
  //#region src/elements/tag.ts
5
5
  /** @entrypoint */
@@ -1,3 +1,3 @@
1
- import { t as SbbTagGroupElement } from "./tag-group.component-B7bBirrj.js";
2
- import { t as SbbTagElement } from "./tag.component-0vKnvMOm.js";
1
+ import { t as SbbTagGroupElement } from "./tag-group.component-Cw46bt0E.js";
2
+ import { t as SbbTagElement } from "./tag.component-CnNPL6aI.js";
3
3
  export { SbbTagElement, SbbTagGroupElement };
@@ -1827,6 +1827,17 @@ slot[name=error]::slotted(*) {
1827
1827
  --sbb-tab-label-amount-color: light-dark(var(--sbb-color-metal), var(--sbb-color-smoke));
1828
1828
  --sbb-tab-label-line-color: var(--sbb-border-color-4-inverted);
1829
1829
  --sbb-tab-label-cursor: var(--sbb-cursor-pointer);
1830
+ --sbb-tag-animation-easing: var(--sbb-animation-easing);
1831
+ --sbb-tag-background-color: var(--sbb-background-color-1);
1832
+ --sbb-tag-border-color: var(--sbb-border-color-4-inverted);
1833
+ --sbb-tag-border-style: solid;
1834
+ --sbb-tag-border-width: var(--sbb-border-width-1x);
1835
+ --sbb-tag-border-radius: var(--sbb-border-radius-infinity);
1836
+ --sbb-tag-gap: var(--sbb-spacing-fixed-2x);
1837
+ --sbb-tag-text-color: var(--sbb-color-2);
1838
+ --sbb-tag-amount-color: var(--sbb-color-metal);
1839
+ --sbb-tag-amount-color: light-dark(var(--sbb-color-metal), var(--sbb-color-smoke));
1840
+ --sbb-tag-height: var(--sbb-size-element-xs);
1830
1841
  --sbb-visual-checkbox-dimension: var(--sbb-checkbox-dimension-m);
1831
1842
  --sbb-visual-checkbox-selection-color: var(--sbb-color-primary);
1832
1843
  --sbb-visual-checkbox-selection-color-negative: var(--sbb-color-primary85);
@@ -1884,6 +1895,11 @@ slot[name=error]::slotted(*) {
1884
1895
  --sbb-slider-line-color: CanvasText;
1885
1896
  --sbb-step-label-color: ButtonText;
1886
1897
  --sbb-step-label-prefix-border-color: ButtonText;
1898
+ --sbb-tag-amount-color: ButtonText;
1899
+ --sbb-tag-background-color: Canvas !important;
1900
+ --sbb-tag-text-color: ButtonText;
1901
+ --sbb-tag-border-color: CanvasText;
1902
+ --sbb-tag-border-width: var(--sbb-border-width-2x);
1887
1903
  }
1888
1904
  }
1889
1905
  :root {
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@sbb-esta/lyne-elements-dev",
3
- "version": "4.9.0-dev.1775120423",
3
+ "version": "4.9.0-dev.1775122363",
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/791daf9e9368915fe15c870fb048b2054b1f08f2"
9
+ "https://github.com/sbb-design-systems/lyne-components/commit/1d7d5b53274606711e17771379a5a25d3c9cc99e"
10
10
  ],
11
11
  "type": "module",
12
12
  "exports": {
package/safety-theme.css CHANGED
@@ -1827,6 +1827,17 @@ slot[name=error]::slotted(*) {
1827
1827
  --sbb-tab-label-amount-color: light-dark(var(--sbb-color-metal), var(--sbb-color-smoke));
1828
1828
  --sbb-tab-label-line-color: var(--sbb-border-color-4-inverted);
1829
1829
  --sbb-tab-label-cursor: var(--sbb-cursor-pointer);
1830
+ --sbb-tag-animation-easing: var(--sbb-animation-easing);
1831
+ --sbb-tag-background-color: var(--sbb-background-color-1);
1832
+ --sbb-tag-border-color: var(--sbb-border-color-4-inverted);
1833
+ --sbb-tag-border-style: solid;
1834
+ --sbb-tag-border-width: var(--sbb-border-width-1x);
1835
+ --sbb-tag-border-radius: var(--sbb-border-radius-infinity);
1836
+ --sbb-tag-gap: var(--sbb-spacing-fixed-2x);
1837
+ --sbb-tag-text-color: var(--sbb-color-2);
1838
+ --sbb-tag-amount-color: var(--sbb-color-metal);
1839
+ --sbb-tag-amount-color: light-dark(var(--sbb-color-metal), var(--sbb-color-smoke));
1840
+ --sbb-tag-height: var(--sbb-size-element-xs);
1830
1841
  --sbb-visual-checkbox-dimension: var(--sbb-checkbox-dimension-m);
1831
1842
  --sbb-visual-checkbox-selection-color: var(--sbb-color-primary);
1832
1843
  --sbb-visual-checkbox-selection-color-negative: var(--sbb-color-primary85);
@@ -1884,6 +1895,11 @@ slot[name=error]::slotted(*) {
1884
1895
  --sbb-slider-line-color: CanvasText;
1885
1896
  --sbb-step-label-color: ButtonText;
1886
1897
  --sbb-step-label-prefix-border-color: ButtonText;
1898
+ --sbb-tag-amount-color: ButtonText;
1899
+ --sbb-tag-background-color: Canvas !important;
1900
+ --sbb-tag-text-color: ButtonText;
1901
+ --sbb-tag-border-color: CanvasText;
1902
+ --sbb-tag-border-width: var(--sbb-border-width-2x);
1887
1903
  }
1888
1904
  }
1889
1905
  :root {
@@ -1827,6 +1827,17 @@ slot[name=error]::slotted(*) {
1827
1827
  --sbb-tab-label-amount-color: light-dark(var(--sbb-color-metal), var(--sbb-color-smoke));
1828
1828
  --sbb-tab-label-line-color: var(--sbb-border-color-4-inverted);
1829
1829
  --sbb-tab-label-cursor: var(--sbb-cursor-pointer);
1830
+ --sbb-tag-animation-easing: var(--sbb-animation-easing);
1831
+ --sbb-tag-background-color: var(--sbb-background-color-1);
1832
+ --sbb-tag-border-color: var(--sbb-border-color-4-inverted);
1833
+ --sbb-tag-border-style: solid;
1834
+ --sbb-tag-border-width: var(--sbb-border-width-1x);
1835
+ --sbb-tag-border-radius: var(--sbb-border-radius-infinity);
1836
+ --sbb-tag-gap: var(--sbb-spacing-fixed-2x);
1837
+ --sbb-tag-text-color: var(--sbb-color-2);
1838
+ --sbb-tag-amount-color: var(--sbb-color-metal);
1839
+ --sbb-tag-amount-color: light-dark(var(--sbb-color-metal), var(--sbb-color-smoke));
1840
+ --sbb-tag-height: var(--sbb-size-element-xs);
1830
1841
  --sbb-visual-checkbox-dimension: var(--sbb-checkbox-dimension-m);
1831
1842
  --sbb-visual-checkbox-selection-color: var(--sbb-color-primary);
1832
1843
  --sbb-visual-checkbox-selection-color-negative: var(--sbb-color-primary85);
@@ -1884,6 +1895,11 @@ slot[name=error]::slotted(*) {
1884
1895
  --sbb-slider-line-color: CanvasText;
1885
1896
  --sbb-step-label-color: ButtonText;
1886
1897
  --sbb-step-label-prefix-border-color: ButtonText;
1898
+ --sbb-tag-amount-color: ButtonText;
1899
+ --sbb-tag-background-color: Canvas !important;
1900
+ --sbb-tag-text-color: ButtonText;
1901
+ --sbb-tag-border-color: CanvasText;
1902
+ --sbb-tag-border-width: var(--sbb-border-width-2x);
1887
1903
  }
1888
1904
  }
1889
1905
  :root {
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../tag.component-C3ogN9Th.js";
1
+ import { t as e } from "../../tag.component-CzYJZuFT.js";
2
2
  export { e as SbbTagElement };
@@ -1,2 +1,2 @@
1
- import { t as e } from "../../tag-group.component-DyEB8c6w.js";
1
+ import { t as e } from "../../tag-group.component-DkQVBbQY.js";
2
2
  export { e as SbbTagGroupElement };
package/tag/tag-group.js CHANGED
@@ -1,4 +1,4 @@
1
- import { t as e } from "../tag-group.component-DyEB8c6w.js";
1
+ import { t as e } from "../tag-group.component-DkQVBbQY.js";
2
2
  e.define(), console.warn("The entrypoint '@sbb-esta/elements/tag/tag-group.js' has been deprecated.\nUse either '@sbb-esta/elements/tag.js' or '@sbb-esta/elements/tag.pure.js' instead.");
3
3
  //#endregion
4
4
  export { e as SbbTagGroupElement };
package/tag/tag.js CHANGED
@@ -1,4 +1,4 @@
1
- import { t as e } from "../tag.component-C3ogN9Th.js";
1
+ import { t as e } from "../tag.component-CzYJZuFT.js";
2
2
  e.define(), console.warn("The entrypoint '@sbb-esta/elements/tag/tag.js' has been deprecated.\nUse either '@sbb-esta/elements/tag.js' or '@sbb-esta/elements/tag.pure.js' instead.");
3
3
  //#endregion
4
4
  export { e as SbbTagElement };
@@ -129,12 +129,10 @@ var p = ":host{display:block}.sbb-tag-group__list{list-style:none;margin:0;paddi
129
129
  }
130
130
  render() {
131
131
  return n`
132
- <div class="sbb-tag-group">
133
- ${this.renderList({
132
+ ${this.renderList({
134
133
  class: "sbb-tag-group__list",
135
134
  ariaLabel: this.listAccessibilityLabel
136
135
  })}
137
- </div>
138
136
  `;
139
137
  }
140
138
  };
@@ -0,0 +1,170 @@
1
+ import { __esDecorate as e, __runInitializers as t } from "tslib";
2
+ import { html as n, unsafeCSS as r } from "lit";
3
+ import { property as i } from "lit/decorators.js";
4
+ import { SbbButtonLikeBaseElement as a } from "./core/base-elements.js";
5
+ import { forceType as o, getOverride as s, omitEmptyConverter as c } from "./core/decorators.js";
6
+ import { isLean as l } from "./core/dom.js";
7
+ import { SbbDisabledTabIndexActionMixin as u } from "./core/mixins.js";
8
+ import { boxSizingStyles as d } from "./core/styles.js";
9
+ import { SbbIconNameMixin as f } from "./icon.js";
10
+ //#region src/elements/tag/tag/tag.scss?inline
11
+ var p = ":host{--sbb-tag-animation-duration: var( --sbb-disable-animation-duration, var(--sbb-animation-duration-2x) );display:inline-block;max-width:100%;outline:none!important}:host(:is(:state(checked),[state--checked])){--sbb-tag-border-color: var(--sbb-border-color-3);--sbb-tag-border-width: var(--sbb-border-width-2x)}@media(forced-colors:active){:host(:is(:state(checked),[state--checked])){--sbb-tag-border-color: Highlight !important;--sbb-tag-border-width: var(--sbb-border-width-4x)}}:host(:is(:disabled,[disabled-interactive])){--sbb-tag-text-color: var(--sbb-color-granite);--sbb-tag-text-color: light-dark(var(--sbb-color-granite), var(--sbb-color-aluminium));--sbb-tag-amount-color: var(--sbb-tag-text-color);--sbb-tag-background-color: var(--sbb-background-color-3);--sbb-tag-border-color: var(--sbb-color-cement);--sbb-tag-border-color: light-dark(var(--sbb-color-cement), var(--sbb-color-smoke));--sbb-tag-border-style: dashed;--sbb-tag-cursor: unset;--sbb-tag-pointer-events: none}@media(forced-colors:active){:host(:is(:disabled,[disabled-interactive])){--sbb-tag-text-color: GrayText;--sbb-tag-amount-color: GrayText;--sbb-tag-border-color: GrayText}}:host(:is(:state(checked),[state--checked]):is(:disabled,[disabled-interactive])){--sbb-tag-border-color: var(--sbb-color-metal);--sbb-tag-border-color: light-dark(var(--sbb-color-metal), var(--sbb-color-cement));--sbb-tag-border-style: dashed}@media(any-hover:hover){:host(:hover:not(:disabled,[disabled-interactive],:active,:is(:state(active),[state--active]))){--sbb-tag-background-color: var(--sbb-background-color-3);--sbb-tag-inset: calc(var(--sbb-border-width-2x) * -1);--sbb-tag-content-shift: translateY(calc(var(--sbb-border-width-1x) * -1))}}@media(any-hover:hover)and (forced-colors:active){:host(:hover:not(:disabled,[disabled-interactive],:active,:is(:state(active),[state--active]))){--sbb-tag-border-color: Highlight}}:host(:is(:active,:is(:state(active),[state--active])):not(:disabled,[disabled-interactive])){--sbb-tag-background-color: var(--sbb-background-color-3);--sbb-tag-border-color: var(--sbb-color-iron);--sbb-tag-border-color: light-dark(var(--sbb-color-iron), var(--sbb-color-storm));--sbb-tag-border-width: var(--sbb-border-width-2x);--sbb-tag-text-color: var(--sbb-color-4)}@media(forced-colors:active){:host(:is(:active,:is(:state(active),[state--active])):not(:disabled,[disabled-interactive])){--sbb-tag-border-color: Highlight;--sbb-tag-text-color: ButtonText}}:host([size=m]){--sbb-tag-height: var(--sbb-size-element-xs);--sbb-tag-padding-inline: var(--sbb-spacing-fixed-5x)}:host([size=s]){--sbb-tag-height: var(--sbb-size-element-xxxs);--sbb-tag-padding-inline: var(--sbb-spacing-fixed-3x)}.sbb-tag{position:relative;display:flex;align-items:center;height:var(--sbb-tag-height);max-width:100%;font-size:var(--sbb-text-font-size-xs);letter-spacing:var(--sbb-typo-letter-spacing-text);gap:var(--sbb-tag-gap);padding-inline:var(--sbb-tag-padding-inline);cursor:var(--sbb-tag-cursor, var(--sbb-cursor-pointer));border-radius:var(--sbb-tag-border-radius);color:var(--sbb-tag-text-color);transition:color var(--sbb-tag-animation-duration) var(--sbb-tag-animation-easing);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;pointer-events:var(--sbb-tag-pointer-events, unset)}.sbb-tag:before{content:\"\";position:absolute;inset:var(--sbb-tag-inset, 0);background-color:var(--sbb-tag-background-color);border:var(--sbb-tag-border-width) var(--sbb-tag-border-style) var(--sbb-tag-border-color);border-radius:var(--sbb-tag-border-radius);transition-duration:var(--sbb-tag-animation-duration);transition-timing-function:var(--sbb-tag-animation-easing);transition-property:inset,background-color,border-color,box-shadow}:host(:focus-visible) .sbb-tag:before{outline-offset:var(--sbb-focus-outline-offset);outline:var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width)}.sbb-tag__icon{display:flex;align-items:center;height:calc(var(--sbb-typo-line-height-text) * 1em);flex-shrink:0}:host(:not(:is(:state(slotted-icon),[state--slotted-icon]),:is(:state(has-icon-name),[state--has-icon-name]))) .sbb-tag__icon{display:none}.sbb-tag__text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:700}.sbb-tag__amount{color:var(--sbb-tag-amount-color)}:host(:not(:is(:state(slotted-amount),[state--slotted-amount]),[amount])) .sbb-tag__amount{display:none}.sbb-tag--shift{transition:transform var(--sbb-tag-animation-duration) var(--sbb-tag-animation-easing);transform:var(--sbb-tag-content-shift, 0);will-change:transform}", m = (() => {
12
+ let m = f(u(a)), h, g = [], _ = [], v, y = [], b = [], x, S = [], C = [], w, T = [], E = [];
13
+ return class extends m {
14
+ static {
15
+ let t = typeof Symbol == "function" && Symbol.metadata ? Object.create(m[Symbol.metadata] ?? null) : void 0;
16
+ h = [i()], v = [o(), i({
17
+ reflect: !0,
18
+ converter: c
19
+ })], x = [o(), i({
20
+ reflect: !1,
21
+ type: Boolean
22
+ })], w = [i({ reflect: !0 }), s((e, t) => e._group?.size ?? t)], e(this, null, h, {
23
+ kind: "accessor",
24
+ name: "value",
25
+ static: !1,
26
+ private: !1,
27
+ access: {
28
+ has: (e) => "value" in e,
29
+ get: (e) => e.value,
30
+ set: (e, t) => {
31
+ e.value = t;
32
+ }
33
+ },
34
+ metadata: t
35
+ }, g, _), e(this, null, v, {
36
+ kind: "accessor",
37
+ name: "amount",
38
+ static: !1,
39
+ private: !1,
40
+ access: {
41
+ has: (e) => "amount" in e,
42
+ get: (e) => e.amount,
43
+ set: (e, t) => {
44
+ e.amount = t;
45
+ }
46
+ },
47
+ metadata: t
48
+ }, y, b), e(this, null, x, {
49
+ kind: "accessor",
50
+ name: "checked",
51
+ static: !1,
52
+ private: !1,
53
+ access: {
54
+ has: (e) => "checked" in e,
55
+ get: (e) => e.checked,
56
+ set: (e, t) => {
57
+ e.checked = t;
58
+ }
59
+ },
60
+ metadata: t
61
+ }, S, C), e(this, null, w, {
62
+ kind: "accessor",
63
+ name: "size",
64
+ static: !1,
65
+ private: !1,
66
+ access: {
67
+ has: (e) => "size" in e,
68
+ get: (e) => e.size,
69
+ set: (e, t) => {
70
+ e.size = t;
71
+ }
72
+ },
73
+ metadata: t
74
+ }, T, E), t && Object.defineProperty(this, Symbol.metadata, {
75
+ enumerable: !0,
76
+ configurable: !0,
77
+ writable: !0,
78
+ value: t
79
+ });
80
+ }
81
+ static {
82
+ this.elementName = "sbb-tag";
83
+ }
84
+ static {
85
+ this.styles = [d, r(p)];
86
+ }
87
+ static {
88
+ this.events = {
89
+ input: "input",
90
+ didChange: "didChange",
91
+ change: "change"
92
+ };
93
+ }
94
+ #e;
95
+ get value() {
96
+ return this.#e;
97
+ }
98
+ set value(e) {
99
+ this.#e = e;
100
+ }
101
+ #t;
102
+ get amount() {
103
+ return this.#t;
104
+ }
105
+ set amount(e) {
106
+ this.#t = e;
107
+ }
108
+ #n;
109
+ get checked() {
110
+ return this.#n;
111
+ }
112
+ set checked(e) {
113
+ this.#n = e;
114
+ }
115
+ #r;
116
+ get size() {
117
+ return this.#r;
118
+ }
119
+ set size(e) {
120
+ this.#r = e;
121
+ }
122
+ constructor() {
123
+ super(), this.#e = t(this, g, null), this.#t = (t(this, _), t(this, y, "")), this.#n = (t(this, b), t(this, S, !1)), this.#r = (t(this, C), t(this, T, l() ? "s" : "m")), this._group = (t(this, E), null), this.addEventListener?.("click", () => this._handleClick());
124
+ }
125
+ connectedCallback() {
126
+ super.connectedCallback(), this._group = this.closest("sbb-tag-group");
127
+ }
128
+ isDisabledExternally() {
129
+ return this._group?.disabled ?? !1;
130
+ }
131
+ _handleClick() {
132
+ if (this.disabled) return;
133
+ let e = this.closest("sbb-tag-group");
134
+ e && !e.multiple && this.checked || (this.checked = !this.checked, this.dispatchEvent(new InputEvent("input", {
135
+ bubbles: !0,
136
+ composed: !0
137
+ })), this.dispatchEvent(new Event("change", { bubbles: !0 })), this.dispatchEvent(new Event("didChange", { bubbles: !0 })));
138
+ }
139
+ willUpdate(e) {
140
+ super.willUpdate(e), e.has("checked") && (this.internals.ariaPressed = `${this.checked}`, this.toggleState("checked", this.checked), this.updateFormValue());
141
+ let t = this.closest?.("sbb-tag-group");
142
+ t && !t.multiple && e.has("checked") && this.checked && t?.tags.filter((e) => e !== this).forEach((e) => e.checked = !1);
143
+ }
144
+ formResetCallback() {
145
+ this.checked = this.hasAttribute("checked");
146
+ }
147
+ formStateRestoreCallback(e, t) {
148
+ e && (this.checked = e === "true");
149
+ }
150
+ updateFormValue() {
151
+ this.checked ? super.updateFormValue() : this.internals.setFormValue(null);
152
+ }
153
+ formState() {
154
+ return `${this.checked}`;
155
+ }
156
+ renderTemplate() {
157
+ return n`
158
+ <span class="sbb-tag__icon sbb-tag--shift"> ${this.renderIconSlot()} </span>
159
+ <span class="sbb-tag__text sbb-tag--shift">
160
+ <slot></slot>
161
+ </span>
162
+ <span class="sbb-tag__amount sbb-tag--shift">
163
+ <slot name="amount">${this.amount}</slot>
164
+ </span>
165
+ `;
166
+ }
167
+ };
168
+ })();
169
+ //#endregion
170
+ export { m as t };
package/tag.js CHANGED
@@ -1,5 +1,5 @@
1
- import { t as e } from "./tag-group.component-DyEB8c6w.js";
2
- import { t } from "./tag.component-C3ogN9Th.js";
1
+ import { t as e } from "./tag-group.component-DkQVBbQY.js";
2
+ import { t } from "./tag.component-CzYJZuFT.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-DyEB8c6w.js";
2
- import { t } from "./tag.component-C3ogN9Th.js";
1
+ import { t as e } from "./tag-group.component-DkQVBbQY.js";
2
+ import { t } from "./tag.component-CzYJZuFT.js";
3
3
  export { t as SbbTagElement, e as SbbTagGroupElement };
@@ -1,245 +0,0 @@
1
- import { __esDecorate, __runInitializers } from "tslib";
2
- import { html, unsafeCSS } from "lit";
3
- import { property } from "lit/decorators.js";
4
- import { SbbButtonLikeBaseElement } from "./core/base-elements.js";
5
- import { forceType, getOverride, omitEmptyConverter } from "./core/decorators.js";
6
- import { isLean } from "./core/dom.js";
7
- import { SbbDisabledTabIndexActionMixin } from "./core/mixins.js";
8
- import { boxSizingStyles } from "./core/styles.js";
9
- import { SbbIconNameMixin } from "./icon.js";
10
- //#region src/elements/tag/tag/tag.scss?inline
11
- var tag_default = ":host {\n display: inline-block;\n outline: none !important;\n max-width: 100%;\n --sbb-tag-border-radius: var(--sbb-border-radius-infinity);\n --sbb-tag-background-color: var(--sbb-background-color-1);\n --sbb-tag-border-color: var(--sbb-border-color-4-inverted);\n --sbb-tag-border-style: solid;\n --sbb-tag-border-width: var(--sbb-border-width-1x);\n --sbb-tag-text-color: var(--sbb-color-2);\n --sbb-tag-amount-color: var(--sbb-color-metal);\n --sbb-tag-amount-color: light-dark(var(--sbb-color-metal), var(--sbb-color-smoke));\n --sbb-tag-height: var(--sbb-size-element-xs);\n --sbb-tag-inset: 0;\n --sbb-tag-cursor: var(--sbb-cursor-pointer);\n --sbb-tag-content-shift: translateY(0);\n --sbb-tag-animation-duration: var(\n --sbb-disable-animation-duration,\n var(--sbb-animation-duration-2x)\n );\n --sbb-tag-animation-easing: var(--sbb-animation-easing);\n --sbb-tag-padding-inline: var(--sbb-spacing-fixed-5x);\n --sbb-tag-gap: var(--sbb-spacing-fixed-2x);\n}\n@media (forced-colors: active) {\n :host {\n --sbb-tag-background-color: Canvas !important;\n --sbb-tag-text-color: ButtonText;\n --sbb-tag-amount-color: ButtonText;\n --sbb-tag-border-color: CanvasText;\n --sbb-tag-border-width: var(--sbb-border-width-2x);\n }\n}\n\n:host(:is(:state(checked),[state--checked])) {\n --sbb-tag-border-color: var(--sbb-border-color-3);\n --sbb-tag-border-width: var(--sbb-border-width-2x);\n}\n@media (forced-colors: active) {\n :host(:is(:state(checked),[state--checked])) {\n --sbb-tag-border-color: Highlight !important;\n --sbb-tag-border-width: var(--sbb-border-width-4x);\n }\n}\n\n:host(:is(:disabled, [disabled-interactive])) {\n --sbb-tag-text-color: var(--sbb-color-granite);\n --sbb-tag-text-color: light-dark(var(--sbb-color-granite), var(--sbb-color-aluminium));\n --sbb-tag-amount-color: var(--sbb-tag-text-color);\n --sbb-tag-background-color: var(--sbb-background-color-3);\n --sbb-tag-border-color: var(--sbb-color-cement);\n --sbb-tag-border-color: light-dark(var(--sbb-color-cement), var(--sbb-color-smoke));\n --sbb-tag-border-style: dashed;\n --sbb-tag-cursor: unset;\n --sbb-tag-pointer-events: none;\n}\n@media (forced-colors: active) {\n :host(:is(:disabled, [disabled-interactive])) {\n --sbb-tag-text-color: GrayText;\n --sbb-tag-amount-color: GrayText;\n --sbb-tag-border-color: GrayText;\n }\n}\n\n:host(:is(:state(checked),[state--checked]):is(:disabled, [disabled-interactive])) {\n --sbb-tag-border-color: var(--sbb-color-metal);\n --sbb-tag-border-color: light-dark(var(--sbb-color-metal), var(--sbb-color-cement));\n --sbb-tag-border-style: dashed;\n}\n\n@media (any-hover: hover) {\n :host(:hover:not(:disabled, [disabled-interactive], :active, :is(:state(active),[state--active]))) {\n --sbb-tag-background-color: var(--sbb-background-color-3);\n --sbb-tag-inset: calc(var(--sbb-border-width-2x) * -1);\n --sbb-tag-content-shift: translateY(calc(var(--sbb-border-width-1x) * -1));\n }\n}\n@media (any-hover: hover) and (forced-colors: active) {\n :host(:hover:not(:disabled, [disabled-interactive], :active, :is(:state(active),[state--active]))) {\n --sbb-tag-border-color: Highlight;\n }\n}\n\n:host(:is(:active, :is(:state(active),[state--active])):not(:disabled, [disabled-interactive])) {\n --sbb-tag-background-color: var(--sbb-background-color-3);\n --sbb-tag-border-color: var(--sbb-color-iron);\n --sbb-tag-border-color: light-dark(var(--sbb-color-iron), var(--sbb-color-storm));\n --sbb-tag-border-width: var(--sbb-border-width-2x);\n --sbb-tag-text-color: var(--sbb-color-4);\n}\n@media (forced-colors: active) {\n :host(:is(:active, :is(:state(active),[state--active])):not(:disabled, [disabled-interactive])) {\n --sbb-tag-border-color: Highlight;\n --sbb-tag-text-color: ButtonText;\n }\n}\n\n:host([size=s]) {\n --sbb-tag-height: var(--sbb-size-element-xxxs);\n --sbb-tag-padding-inline: var(--sbb-spacing-fixed-3x);\n}\n\n.sbb-tag {\n --sbb-text-font-size: var(--sbb-text-font-size-xs);\n font-family: var(--sbb-typo-font-family);\n font-weight: normal;\n line-height: var(--sbb-typo-line-height-text);\n letter-spacing: var(--sbb-typo-letter-spacing-text);\n font-size: var(--sbb-text-font-size);\n font-weight: bold;\n position: relative;\n display: flex;\n align-items: center;\n height: var(--sbb-tag-height);\n max-width: 100%;\n gap: var(--sbb-tag-gap);\n padding-inline: var(--sbb-tag-padding-inline);\n cursor: var(--sbb-tag-cursor);\n border-radius: var(--sbb-tag-border-radius);\n color: var(--sbb-tag-text-color);\n transition: color var(--sbb-tag-animation-duration) var(--sbb-tag-animation-easing);\n -webkit-tap-highlight-color: transparent;\n user-select: none;\n pointer-events: var(--sbb-tag-pointer-events, unset);\n}\n.sbb-tag::before {\n content: \"\";\n position: absolute;\n inset: var(--sbb-tag-inset);\n background-color: var(--sbb-tag-background-color);\n border: var(--sbb-tag-border-width) var(--sbb-tag-border-style) var(--sbb-tag-border-color);\n border-radius: var(--sbb-tag-border-radius);\n transition-duration: var(--sbb-tag-animation-duration);\n transition-timing-function: var(--sbb-tag-animation-easing);\n transition-property: inset, background-color, border-color, box-shadow;\n}\n:host(:focus-visible) .sbb-tag::before {\n outline-offset: var(--sbb-focus-outline-offset);\n outline: var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width);\n}\n\n.sbb-tag__icon {\n display: flex;\n align-items: center;\n height: calc(var(--sbb-typo-line-height-text) * 1em);\n flex-shrink: 0;\n}\n:host(:not(:is(:state(slotted-icon),[state--slotted-icon]), :is(:state(has-icon-name),[state--has-icon-name]))) .sbb-tag__icon {\n display: none;\n}\n\n.sbb-tag__text {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\n.sbb-tag__amount {\n --sbb-text-font-size: var(--sbb-text-font-size-xs);\n font-family: var(--sbb-typo-font-family);\n font-weight: normal;\n line-height: var(--sbb-typo-line-height-text);\n letter-spacing: var(--sbb-typo-letter-spacing-text);\n font-size: var(--sbb-text-font-size);\n color: var(--sbb-tag-amount-color);\n}\n:host(:not(:is(:state(slotted-amount),[state--slotted-amount]), [amount])) .sbb-tag__amount {\n display: none;\n}\n\n.sbb-tag--shift {\n transition: transform var(--sbb-tag-animation-duration) var(--sbb-tag-animation-easing);\n transform: var(--sbb-tag-content-shift);\n will-change: transform;\n}";
12
- //#endregion
13
- //#region src/elements/tag/tag/tag.component.ts
14
- /**
15
- * It displays a selectable element which can be used as a filter.
16
- *
17
- * @slot - Use the unnamed slot to add content to the tag label.
18
- * @slot icon - Use this slot to display an icon at the component start, by providing a `sbb-icon` component.
19
- * @slot amount - Provide an amount to show it at the component end.
20
- * @overrideType value - (T = string) | null
21
- */
22
- var SbbTagElement = (() => {
23
- let _classSuper = SbbIconNameMixin(SbbDisabledTabIndexActionMixin(SbbButtonLikeBaseElement));
24
- let _value_decorators;
25
- let _value_initializers = [];
26
- let _value_extraInitializers = [];
27
- let _amount_decorators;
28
- let _amount_initializers = [];
29
- let _amount_extraInitializers = [];
30
- let _checked_decorators;
31
- let _checked_initializers = [];
32
- let _checked_extraInitializers = [];
33
- let _size_decorators;
34
- let _size_initializers = [];
35
- let _size_extraInitializers = [];
36
- return class SbbTagElement extends _classSuper {
37
- static {
38
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
39
- _value_decorators = [property()];
40
- _amount_decorators = [forceType(), property({
41
- reflect: true,
42
- converter: omitEmptyConverter
43
- })];
44
- _checked_decorators = [forceType(), property({
45
- reflect: false,
46
- type: Boolean
47
- })];
48
- _size_decorators = [property({ reflect: true }), getOverride((i, v) => i._group?.size ?? v)];
49
- __esDecorate(this, null, _value_decorators, {
50
- kind: "accessor",
51
- name: "value",
52
- static: false,
53
- private: false,
54
- access: {
55
- has: (obj) => "value" in obj,
56
- get: (obj) => obj.value,
57
- set: (obj, value) => {
58
- obj.value = value;
59
- }
60
- },
61
- metadata: _metadata
62
- }, _value_initializers, _value_extraInitializers);
63
- __esDecorate(this, null, _amount_decorators, {
64
- kind: "accessor",
65
- name: "amount",
66
- static: false,
67
- private: false,
68
- access: {
69
- has: (obj) => "amount" in obj,
70
- get: (obj) => obj.amount,
71
- set: (obj, value) => {
72
- obj.amount = value;
73
- }
74
- },
75
- metadata: _metadata
76
- }, _amount_initializers, _amount_extraInitializers);
77
- __esDecorate(this, null, _checked_decorators, {
78
- kind: "accessor",
79
- name: "checked",
80
- static: false,
81
- private: false,
82
- access: {
83
- has: (obj) => "checked" in obj,
84
- get: (obj) => obj.checked,
85
- set: (obj, value) => {
86
- obj.checked = value;
87
- }
88
- },
89
- metadata: _metadata
90
- }, _checked_initializers, _checked_extraInitializers);
91
- __esDecorate(this, null, _size_decorators, {
92
- kind: "accessor",
93
- name: "size",
94
- static: false,
95
- private: false,
96
- access: {
97
- has: (obj) => "size" in obj,
98
- get: (obj) => obj.size,
99
- set: (obj, value) => {
100
- obj.size = value;
101
- }
102
- },
103
- metadata: _metadata
104
- }, _size_initializers, _size_extraInitializers);
105
- if (_metadata) Object.defineProperty(this, Symbol.metadata, {
106
- enumerable: true,
107
- configurable: true,
108
- writable: true,
109
- value: _metadata
110
- });
111
- }
112
- static {
113
- this.elementName = "sbb-tag";
114
- }
115
- static {
116
- this.styles = [boxSizingStyles, unsafeCSS(tag_default)];
117
- }
118
- static {
119
- this.events = {
120
- input: "input",
121
- didChange: "didChange",
122
- change: "change"
123
- };
124
- }
125
- #value_accessor_storage;
126
- /** Value of the form element. */
127
- get value() {
128
- return this.#value_accessor_storage;
129
- }
130
- set value(value) {
131
- this.#value_accessor_storage = value;
132
- }
133
- #amount_accessor_storage;
134
- /** Amount displayed inside the tag. */
135
- get amount() {
136
- return this.#amount_accessor_storage;
137
- }
138
- set amount(value) {
139
- this.#amount_accessor_storage = value;
140
- }
141
- #checked_accessor_storage;
142
- /** Whether the tag is checked. */
143
- get checked() {
144
- return this.#checked_accessor_storage;
145
- }
146
- set checked(value) {
147
- this.#checked_accessor_storage = value;
148
- }
149
- #size_accessor_storage;
150
- /**
151
- * Tag size, either s or m.
152
- * @default 'm' / 's' (lean)
153
- */
154
- get size() {
155
- return this.#size_accessor_storage;
156
- }
157
- set size(value) {
158
- this.#size_accessor_storage = value;
159
- }
160
- constructor() {
161
- super();
162
- this.#value_accessor_storage = __runInitializers(this, _value_initializers, null);
163
- this.#amount_accessor_storage = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _amount_initializers, ""));
164
- this.#checked_accessor_storage = (__runInitializers(this, _amount_extraInitializers), __runInitializers(this, _checked_initializers, false));
165
- this.#size_accessor_storage = (__runInitializers(this, _checked_extraInitializers), __runInitializers(this, _size_initializers, isLean() ? "s" : "m"));
166
- /** Reference to the connected tag group. */
167
- this._group = (__runInitializers(this, _size_extraInitializers), null);
168
- this.addEventListener?.("click", () => this._handleClick());
169
- }
170
- connectedCallback() {
171
- super.connectedCallback();
172
- this._group = this.closest("sbb-tag-group");
173
- }
174
- isDisabledExternally() {
175
- return this._group?.disabled ?? false;
176
- }
177
- /** Method triggered on button click. Inverts the checked value and emits events. */
178
- _handleClick() {
179
- if (this.disabled) return;
180
- const tagGroup = this.closest("sbb-tag-group");
181
- if (tagGroup && !tagGroup.multiple && this.checked) return;
182
- this.checked = !this.checked;
183
- /** The input event fires when the value has been changed as a direct result of a user action. */
184
- this.dispatchEvent(new InputEvent("input", {
185
- bubbles: true,
186
- composed: true
187
- }));
188
- /**
189
- * The change event is fired when the user modifies the element's value.
190
- * Unlike the input event, the change event is not necessarily fired
191
- * for each alteration to an element's value.
192
- */
193
- this.dispatchEvent(new Event("change", { bubbles: true }));
194
- /**
195
- * Deprecated. Mirrors change event for React. Will be removed once React properly supports change events.
196
- * @deprecated
197
- */
198
- this.dispatchEvent(new Event("didChange", { bubbles: true }));
199
- }
200
- willUpdate(changedProperties) {
201
- super.willUpdate(changedProperties);
202
- if (changedProperties.has("checked")) {
203
- this.internals.ariaPressed = `${this.checked}`;
204
- this.toggleState("checked", this.checked);
205
- this.updateFormValue();
206
- }
207
- const tagGroup = this.closest?.("sbb-tag-group");
208
- if (tagGroup && !tagGroup.multiple && changedProperties.has("checked") && this.checked) tagGroup?.tags.filter((t) => t !== this).forEach((t) => t.checked = false);
209
- }
210
- /**
211
- * @internal
212
- */
213
- formResetCallback() {
214
- this.checked = this.hasAttribute("checked");
215
- }
216
- /**
217
- * @internal
218
- */
219
- formStateRestoreCallback(state, _reason) {
220
- if (state) this.checked = state === "true";
221
- }
222
- updateFormValue() {
223
- if (this.checked) super.updateFormValue();
224
- else this.internals.setFormValue(null);
225
- }
226
- formState() {
227
- return `${this.checked}`;
228
- }
229
- renderTemplate() {
230
- return html`
231
- <span class="sbb-tag__icon sbb-tag--shift"> ${this.renderIconSlot()} </span>
232
- <span class="sbb-tag__text sbb-tag--shift">
233
- <slot></slot>
234
- </span>
235
- <span class="sbb-tag__amount sbb-tag--shift">
236
- <slot name="amount">${this.amount}</slot>
237
- </span>
238
- `;
239
- }
240
- };
241
- })();
242
- //#endregion
243
- export { SbbTagElement as t };
244
-
245
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLmNvbXBvbmVudC0wdktudk1PbS5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy90YWcuc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy90YWcuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbiRkaXNhYmxlZDogJzpkaXNhYmxlZCwgW2Rpc2FibGVkLWludGVyYWN0aXZlXSc7XG4kYWN0aXZlOiAnOmFjdGl2ZSwgOnN0YXRlKGFjdGl2ZSknO1xuXG46aG9zdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAvLyBVc2UgIWltcG9ydGFudCBoZXJlIHRvIG5vdCBpbnRlcmZlcmUgd2l0aCBGaXJlZm94IGZvY3VzIHJpbmcgZGVmaW5pdGlvblxuICAvLyB3aGljaCBhcHBlYXJzIGluIG5vcm1hbGl6ZSBDU1Mgb2Ygc2V2ZXJhbCBmcmFtZXdvcmtzLlxuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogMTAwJTtcblxuICAtLXNiYi10YWctYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLWJvcmRlci1yYWRpdXMtaW5maW5pdHkpO1xuICAtLXNiYi10YWctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLWJhY2tncm91bmQtY29sb3ItMSk7XG4gIC0tc2JiLXRhZy1ib3JkZXItY29sb3I6IHZhcigtLXNiYi1ib3JkZXItY29sb3ItNC1pbnZlcnRlZCk7XG4gIC0tc2JiLXRhZy1ib3JkZXItc3R5bGU6IHNvbGlkO1xuICAtLXNiYi10YWctYm9yZGVyLXdpZHRoOiB2YXIoLS1zYmItYm9yZGVyLXdpZHRoLTF4KTtcbiAgLS1zYmItdGFnLXRleHQtY29sb3I6IHZhcigtLXNiYi1jb2xvci0yKTtcbiAgLS1zYmItdGFnLWFtb3VudC1jb2xvcjogbGlnaHQtZGFyayh2YXIoLS1zYmItY29sb3ItbWV0YWwpLCB2YXIoLS1zYmItY29sb3Itc21va2UpKTtcbiAgLS1zYmItdGFnLWhlaWdodDogdmFyKC0tc2JiLXNpemUtZWxlbWVudC14cyk7XG4gIC0tc2JiLXRhZy1pbnNldDogMDtcbiAgLS1zYmItdGFnLWN1cnNvcjogdmFyKC0tc2JiLWN1cnNvci1wb2ludGVyKTtcbiAgLS1zYmItdGFnLWNvbnRlbnQtc2hpZnQ6IHRyYW5zbGF0ZVkoMCk7XG4gIC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb246IHZhcihcbiAgICAtLXNiYi1kaXNhYmxlLWFuaW1hdGlvbi1kdXJhdGlvbixcbiAgICB2YXIoLS1zYmItYW5pbWF0aW9uLWR1cmF0aW9uLTJ4KVxuICApO1xuICAtLXNiYi10YWctYW5pbWF0aW9uLWVhc2luZzogdmFyKC0tc2JiLWFuaW1hdGlvbi1lYXNpbmcpO1xuICAtLXNiYi10YWctcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTV4KTtcbiAgLS1zYmItdGFnLWdhcDogdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtMngpO1xuXG4gIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAtLXNiYi10YWctYmFja2dyb3VuZC1jb2xvcjogQ2FudmFzICFpbXBvcnRhbnQ7XG4gICAgLS1zYmItdGFnLXRleHQtY29sb3I6IEJ1dHRvblRleHQ7XG4gICAgLS1zYmItdGFnLWFtb3VudC1jb2xvcjogQnV0dG9uVGV4dDtcbiAgICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBDYW52YXNUZXh0O1xuICAgIC0tc2JiLXRhZy1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuICB9XG59XG5cbi8vIEFjdGl2ZSBzdGF0ZVxuOmhvc3QoOnN0YXRlKGNoZWNrZWQpKSB7XG4gIC0tc2JiLXRhZy1ib3JkZXItY29sb3I6IHZhcigtLXNiYi1ib3JkZXItY29sb3ItMyk7XG4gIC0tc2JiLXRhZy1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuXG4gIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBIaWdobGlnaHQgIWltcG9ydGFudDtcbiAgICAtLXNiYi10YWctYm9yZGVyLXdpZHRoOiB2YXIoLS1zYmItYm9yZGVyLXdpZHRoLTR4KTtcbiAgfVxufVxuXG46aG9zdCg6aXMoI3skZGlzYWJsZWR9KSkge1xuICAtLXNiYi10YWctdGV4dC1jb2xvcjogbGlnaHQtZGFyayh2YXIoLS1zYmItY29sb3ItZ3Jhbml0ZSksIHZhcigtLXNiYi1jb2xvci1hbHVtaW5pdW0pKTtcbiAgLS1zYmItdGFnLWFtb3VudC1jb2xvcjogdmFyKC0tc2JiLXRhZy10ZXh0LWNvbG9yKTtcbiAgLS1zYmItdGFnLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTMpO1xuICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBsaWdodC1kYXJrKHZhcigtLXNiYi1jb2xvci1jZW1lbnQpLCB2YXIoLS1zYmItY29sb3Itc21va2UpKTtcbiAgLS1zYmItdGFnLWJvcmRlci1zdHlsZTogZGFzaGVkO1xuICAtLXNiYi10YWctY3Vyc29yOiB1bnNldDtcbiAgLS1zYmItdGFnLXBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAtLXNiYi10YWctdGV4dC1jb2xvcjogR3JheVRleHQ7XG4gICAgLS1zYmItdGFnLWFtb3VudC1jb2xvcjogR3JheVRleHQ7XG4gICAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogR3JheVRleHQ7XG4gIH1cbn1cblxuOmhvc3QoOnN0YXRlKGNoZWNrZWQpOmlzKCN7JGRpc2FibGVkfSkpIHtcbiAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogbGlnaHQtZGFyayh2YXIoLS1zYmItY29sb3ItbWV0YWwpLCB2YXIoLS1zYmItY29sb3ItY2VtZW50KSk7XG4gIC0tc2JiLXRhZy1ib3JkZXItc3R5bGU6IGRhc2hlZDtcbn1cblxuOmhvc3QoOmhvdmVyOm5vdCgjeyRkaXNhYmxlZH0sICN7JGFjdGl2ZX0pKSB7XG4gIEBpbmNsdWRlIHNiYi5ob3Zlci1tcSgkaG92ZXI6IHRydWUpIHtcbiAgICAtLXNiYi10YWctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLWJhY2tncm91bmQtY29sb3ItMyk7XG4gICAgLS1zYmItdGFnLWluc2V0OiBjYWxjKHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpICogLTEpO1xuICAgIC0tc2JiLXRhZy1jb250ZW50LXNoaWZ0OiB0cmFuc2xhdGVZKGNhbGModmFyKC0tc2JiLWJvcmRlci13aWR0aC0xeCkgKiAtMSkpO1xuXG4gICAgQGluY2x1ZGUgc2JiLmlmLWZvcmNlZC1jb2xvcnMge1xuICAgICAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogSGlnaGxpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4vLyBQcmVzc2VkIHN0YXRlXG46aG9zdCg6aXMoI3skYWN0aXZlfSk6bm90KCN7JGRpc2FibGVkfSkpIHtcbiAgLS1zYmItdGFnLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTMpO1xuICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBsaWdodC1kYXJrKHZhcigtLXNiYi1jb2xvci1pcm9uKSwgdmFyKC0tc2JiLWNvbG9yLXN0b3JtKSk7XG4gIC0tc2JiLXRhZy1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuICAtLXNiYi10YWctdGV4dC1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLTQpO1xuXG4gIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBIaWdobGlnaHQ7XG4gICAgLS1zYmItdGFnLXRleHQtY29sb3I6IEJ1dHRvblRleHQ7XG4gIH1cbn1cblxuOmhvc3QoW3NpemU9J3MnXSkge1xuICAtLXNiYi10YWctaGVpZ2h0OiB2YXIoLS1zYmItc2l6ZS1lbGVtZW50LXh4eHMpO1xuICAtLXNiYi10YWctcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTN4KTtcbn1cblxuLnNiYi10YWcge1xuICBAaW5jbHVkZSBzYmIudGV4dC14cy0tYm9sZDtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogdmFyKC0tc2JiLXRhZy1oZWlnaHQpO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGdhcDogdmFyKC0tc2JiLXRhZy1nYXApO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc2JiLXRhZy1wYWRkaW5nLWlubGluZSk7XG4gIGN1cnNvcjogdmFyKC0tc2JiLXRhZy1jdXJzb3IpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItdGFnLWJvcmRlci1yYWRpdXMpO1xuICBjb2xvcjogdmFyKC0tc2JiLXRhZy10ZXh0LWNvbG9yKTtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb24pIHZhcigtLXNiYi10YWctYW5pbWF0aW9uLWVhc2luZyk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBwb2ludGVyLWV2ZW50czogdmFyKC0tc2JiLXRhZy1wb2ludGVyLWV2ZW50cywgdW5zZXQpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiB2YXIoLS1zYmItdGFnLWluc2V0KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItdGFnLWJhY2tncm91bmQtY29sb3IpO1xuICAgIGJvcmRlcjogdmFyKC0tc2JiLXRhZy1ib3JkZXItd2lkdGgpIHZhcigtLXNiYi10YWctYm9yZGVyLXN0eWxlKSB2YXIoLS1zYmItdGFnLWJvcmRlci1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLXRhZy1ib3JkZXItcmFkaXVzKTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoLS1zYmItdGFnLWFuaW1hdGlvbi1kdXJhdGlvbik7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IHZhcigtLXNiYi10YWctYW5pbWF0aW9uLWVhc2luZyk7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogaW5zZXQsIGJhY2tncm91bmQtY29sb3IsIGJvcmRlci1jb2xvciwgYm94LXNoYWRvdztcblxuICAgIDpob3N0KDpmb2N1cy12aXNpYmxlKSAmIHtcbiAgICAgIEBpbmNsdWRlIHNiYi5mb2N1cy1vdXRsaW5lO1xuICAgIH1cbiAgfVxufVxuXG4uc2JiLXRhZ19faWNvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogY2FsYyh2YXIoLS1zYmItdHlwby1saW5lLWhlaWdodC10ZXh0KSAqIDFlbSk7XG4gIGZsZXgtc2hyaW5rOiAwO1xuXG4gIDpob3N0KDpub3QoOnN0YXRlKHNsb3R0ZWQtaWNvbiksIDpzdGF0ZShoYXMtaWNvbi1uYW1lKSkpICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnNiYi10YWdfX3RleHQge1xuICBAaW5jbHVkZSBzYmIuZWxsaXBzaXM7XG59XG5cbi5zYmItdGFnX19hbW91bnQge1xuICBAaW5jbHVkZSBzYmIudGV4dC14cy0tcmVndWxhcjtcblxuICBjb2xvcjogdmFyKC0tc2JiLXRhZy1hbW91bnQtY29sb3IpO1xuXG4gIDpob3N0KDpub3QoOnN0YXRlKHNsb3R0ZWQtYW1vdW50KSwgW2Ftb3VudF0pKSAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zYmItdGFnLS1zaGlmdCB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS1zYmItdGFnLWFuaW1hdGlvbi1kdXJhdGlvbikgdmFyKC0tc2JiLXRhZy1hbmltYXRpb24tZWFzaW5nKTtcbiAgdHJhbnNmb3JtOiB2YXIoLS1zYmItdGFnLWNvbnRlbnQtc2hpZnQpO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xufVxuIiwiaW1wb3J0IHtcbiAgaHRtbCxcbiAgdW5zYWZlQ1NTLFxuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IFNiYkJ1dHRvbkxpa2VCYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy50cyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUsIGdldE92ZXJyaWRlLCBvbWl0RW1wdHlDb252ZXJ0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMudHMnO1xuaW1wb3J0IHsgaXNMZWFuIH0gZnJvbSAnLi4vLi4vY29yZS9kb20udHMnO1xuaW1wb3J0IHtcbiAgdHlwZSBGb3JtUmVzdG9yZVJlYXNvbixcbiAgdHlwZSBGb3JtUmVzdG9yZVN0YXRlLFxuICBTYmJEaXNhYmxlZFRhYkluZGV4QWN0aW9uTWl4aW4sXG59IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLnRzJztcbmltcG9ydCB7IGJveFNpemluZ1N0eWxlcyB9IGZyb20gJy4uLy4uL2NvcmUvc3R5bGVzLnRzJztcbmltcG9ydCB7IFNiYkljb25OYW1lTWl4aW4gfSBmcm9tICcuLi8uLi9pY29uLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiVGFnR3JvdXBFbGVtZW50IH0gZnJvbSAnLi4vdGFnLWdyb3VwL3RhZy1ncm91cC5jb21wb25lbnQudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90YWcuc2Nzcz9pbmxpbmUnO1xuXG5leHBvcnQgdHlwZSBTYmJUYWdTaXplID0gJ3MnIHwgJ20nO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgc2VsZWN0YWJsZSBlbGVtZW50IHdoaWNoIGNhbiBiZSB1c2VkIGFzIGEgZmlsdGVyLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIHRhZyBsYWJlbC5cbiAqIEBzbG90IGljb24gLSBVc2UgdGhpcyBzbG90IHRvIGRpc3BsYXkgYW4gaWNvbiBhdCB0aGUgY29tcG9uZW50IHN0YXJ0LCBieSBwcm92aWRpbmcgYSBgc2JiLWljb25gIGNvbXBvbmVudC5cbiAqIEBzbG90IGFtb3VudCAtIFByb3ZpZGUgYW4gYW1vdW50IHRvIHNob3cgaXQgYXQgdGhlIGNvbXBvbmVudCBlbmQuXG4gKiBAb3ZlcnJpZGVUeXBlIHZhbHVlIC0gKFQgPSBzdHJpbmcpIHwgbnVsbFxuICovXG5leHBvcnQgY2xhc3MgU2JiVGFnRWxlbWVudDxUID0gc3RyaW5nPiBleHRlbmRzIFNiYkljb25OYW1lTWl4aW4oXG4gIFNiYkRpc2FibGVkVGFiSW5kZXhBY3Rpb25NaXhpbihTYmJCdXR0b25MaWtlQmFzZUVsZW1lbnQpLFxuKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItdGFnJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW2JveFNpemluZ1N0eWxlcywgdW5zYWZlQ1NTKHN0eWxlKV07XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgIGlucHV0OiAnaW5wdXQnLFxuICAgIGRpZENoYW5nZTogJ2RpZENoYW5nZScsXG4gICAgY2hhbmdlOiAnY2hhbmdlJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKiogVmFsdWUgb2YgdGhlIGZvcm0gZWxlbWVudC4gKi9cbiAgQHByb3BlcnR5KClcbiAgcHVibGljIGFjY2Vzc29yIHZhbHVlOiBUIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIEFtb3VudCBkaXNwbGF5ZWQgaW5zaWRlIHRoZSB0YWcuICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlLCBjb252ZXJ0ZXI6IG9taXRFbXB0eUNvbnZlcnRlciB9KVxuICBwdWJsaWMgYWNjZXNzb3IgYW1vdW50OiBzdHJpbmcgPSAnJztcblxuICAvKiogV2hldGhlciB0aGUgdGFnIGlzIGNoZWNrZWQuICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyByZWZsZWN0OiBmYWxzZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgYWNjZXNzb3IgY2hlY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUYWcgc2l6ZSwgZWl0aGVyIHMgb3IgbS5cbiAgICogQGRlZmF1bHQgJ20nIC8gJ3MnIChsZWFuKVxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KVxuICBAZ2V0T3ZlcnJpZGUoKGksIHYpID0+IGkuX2dyb3VwPy5zaXplID8/IHYpXG4gIHB1YmxpYyBhY2Nlc3NvciBzaXplOiBTYmJUYWdTaXplID0gaXNMZWFuKCkgPyAncycgOiAnbSc7XG5cbiAgLyoqIFJlZmVyZW5jZSB0byB0aGUgY29ubmVjdGVkIHRhZyBncm91cC4gKi9cbiAgcHJpdmF0ZSBfZ3JvdXA6IFNiYlRhZ0dyb3VwRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdjbGljaycsICgpID0+IHRoaXMuX2hhbmRsZUNsaWNrKCkpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fZ3JvdXAgPSB0aGlzLmNsb3Nlc3QoJ3NiYi10YWctZ3JvdXAnKSBhcyBTYmJUYWdHcm91cEVsZW1lbnQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgaXNEaXNhYmxlZEV4dGVybmFsbHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2dyb3VwPy5kaXNhYmxlZCA/PyBmYWxzZTtcbiAgfVxuXG4gIC8qKiBNZXRob2QgdHJpZ2dlcmVkIG9uIGJ1dHRvbiBjbGljay4gSW52ZXJ0cyB0aGUgY2hlY2tlZCB2YWx1ZSBhbmQgZW1pdHMgZXZlbnRzLiAqL1xuICBwcml2YXRlIF9oYW5kbGVDbGljaygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIFByZXZlbnQgZGVhY3RpdmF0aW5nIG9uIGV4Y2x1c2l2ZSAvIHJhZGlvIG1vZGVcbiAgICBjb25zdCB0YWdHcm91cCA9IHRoaXMuY2xvc2VzdCgnc2JiLXRhZy1ncm91cCcpO1xuICAgIGlmICh0YWdHcm91cCAmJiAhdGFnR3JvdXAubXVsdGlwbGUgJiYgdGhpcy5jaGVja2VkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuY2hlY2tlZCA9ICF0aGlzLmNoZWNrZWQ7XG5cbiAgICAvKiogVGhlIGlucHV0IGV2ZW50IGZpcmVzIHdoZW4gdGhlIHZhbHVlIGhhcyBiZWVuIGNoYW5nZWQgYXMgYSBkaXJlY3QgcmVzdWx0IG9mIGEgdXNlciBhY3Rpb24uICovXG4gICAgdGhpcy5kaXNwYXRjaEV2ZW50KFxuICAgICAgbmV3IElucHV0RXZlbnQoJ2lucHV0Jywge1xuICAgICAgICBidWJibGVzOiB0cnVlLFxuICAgICAgICBjb21wb3NlZDogdHJ1ZSxcbiAgICAgIH0pLFxuICAgICk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgY2hhbmdlIGV2ZW50IGlzIGZpcmVkIHdoZW4gdGhlIHVzZXIgbW9kaWZpZXMgdGhlIGVsZW1lbnQncyB2YWx1ZS5cbiAgICAgKiBVbmxpa2UgdGhlIGlucHV0IGV2ZW50LCB0aGUgY2hhbmdlIGV2ZW50IGlzIG5vdCBuZWNlc3NhcmlseSBmaXJlZFxuICAgICAqIGZvciBlYWNoIGFsdGVyYXRpb24gdG8gYW4gZWxlbWVudCdzIHZhbHVlLlxuICAgICAqL1xuICAgIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2NoYW5nZScsIHsgYnViYmxlczogdHJ1ZSB9KSk7XG5cbiAgICAvKipcbiAgICAgKiBEZXByZWNhdGVkLiBNaXJyb3JzIGNoYW5nZSBldmVudCBmb3IgUmVhY3QuIFdpbGwgYmUgcmVtb3ZlZCBvbmNlIFJlYWN0IHByb3Blcmx5IHN1cHBvcnRzIGNoYW5nZSBldmVudHMuXG4gICAgICogQGRlcHJlY2F0ZWRcbiAgICAgKi9cbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdkaWRDaGFuZ2UnLCB7IGJ1YmJsZXM6IHRydWUgfSkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdjaGVja2VkJykpIHtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLmFyaWFQcmVzc2VkID0gYCR7dGhpcy5jaGVja2VkfWA7XG4gICAgICB0aGlzLnRvZ2dsZVN0YXRlKCdjaGVja2VkJywgdGhpcy5jaGVja2VkKTtcbiAgICAgIHRoaXMudXBkYXRlRm9ybVZhbHVlKCk7XG4gICAgfVxuXG4gICAgY29uc3QgdGFnR3JvdXAgPSB0aGlzLmNsb3Nlc3Q/Lignc2JiLXRhZy1ncm91cCcpO1xuICAgIGlmICh0YWdHcm91cCAmJiAhdGFnR3JvdXAubXVsdGlwbGUgJiYgY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdjaGVja2VkJykgJiYgdGhpcy5jaGVja2VkKSB7XG4gICAgICB0YWdHcm91cD8udGFncy5maWx0ZXIoKHQpID0+IHQgIT09IHRoaXMpLmZvckVhY2goKHQpID0+ICh0LmNoZWNrZWQgPSBmYWxzZSkpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBmb3JtUmVzZXRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLmNoZWNrZWQgPSB0aGlzLmhhc0F0dHJpYnV0ZSgnY2hlY2tlZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGZvcm1TdGF0ZVJlc3RvcmVDYWxsYmFjayhcbiAgICBzdGF0ZTogRm9ybVJlc3RvcmVTdGF0ZSB8IG51bGwsXG4gICAgX3JlYXNvbjogRm9ybVJlc3RvcmVSZWFzb24sXG4gICk6IHZvaWQge1xuICAgIGlmIChzdGF0ZSkge1xuICAgICAgdGhpcy5jaGVja2VkID0gc3RhdGUgPT09ICd0cnVlJztcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgdXBkYXRlRm9ybVZhbHVlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNoZWNrZWQpIHtcbiAgICAgIHN1cGVyLnVwZGF0ZUZvcm1WYWx1ZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmludGVybmFscy5zZXRGb3JtVmFsdWUobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGZvcm1TdGF0ZSgpOiBGb3JtUmVzdG9yZVN0YXRlIHtcbiAgICByZXR1cm4gYCR7dGhpcy5jaGVja2VkfWA7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItdGFnX19pY29uIHNiYi10YWctLXNoaWZ0XCI+ICR7dGhpcy5yZW5kZXJJY29uU2xvdCgpfSA8L3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInNiYi10YWdfX3RleHQgc2JiLXRhZy0tc2hpZnRcIj5cbiAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgPC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItdGFnX19hbW91bnQgc2JiLXRhZy0tc2hpZnRcIj5cbiAgICAgICAgPHNsb3QgbmFtZT1cImFtb3VudFwiPiR7dGhpcy5hbW91bnR9PC9zbG90PlxuICAgICAgPC9zcGFuPlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi10YWcnOiBTYmJUYWdFbGVtZW50O1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQ2lDYSx1QkFBYTttQkFBcUIsaUJBQzdDLCtCQUErQix5QkFBeUIsQ0FDekQ7Ozs7Ozs7Ozs7Ozs7Y0FGWSxzQkFBa0MsWUFFOUM7Ozt3QkFVRSxVQUFVLENBQUE7eUJBSVYsV0FBVyxFQUNYLFNBQVM7SUFBRSxTQUFTO0lBQU0sV0FBVztJQUFvQixDQUFDLENBQUE7MEJBSTFELFdBQVcsRUFDWCxTQUFTO0lBQUUsU0FBUztJQUFPLE1BQU07SUFBUyxDQUFDLENBQUE7dUJBTzNDLFNBQVMsRUFBRSxTQUFTLE1BQU0sQ0FBQyxFQUMzQixhQUFhLEdBQUcsTUFBTSxFQUFFLFFBQVEsUUFBUSxFQUFFLENBQUE7QUFqQjNDLGdCQUFBLE1BQUEsTUFBQSxtQkFBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLFdBQUE7S0FBQSxNQUFBLFFBQUEsSUFBZ0I7S0FBSyxNQUFBLEtBQUEsVUFBQTtBQUFBLFVBQUwsUUFBSzs7S0FBQTtJQUFBLFVBQUE7SUFBQSxFQUFBLHFCQUFBLHlCQUFBO0FBS3JCLGdCQUFBLE1BQUEsTUFBQSxvQkFBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLFlBQUE7S0FBQSxNQUFBLFFB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
@@ -1,170 +0,0 @@
1
- import { __esDecorate as e, __runInitializers as t } from "tslib";
2
- import { html as n, unsafeCSS as r } from "lit";
3
- import { property as i } from "lit/decorators.js";
4
- import { SbbButtonLikeBaseElement as a } from "./core/base-elements.js";
5
- import { forceType as o, getOverride as s, omitEmptyConverter as c } from "./core/decorators.js";
6
- import { isLean as l } from "./core/dom.js";
7
- import { SbbDisabledTabIndexActionMixin as u } from "./core/mixins.js";
8
- import { boxSizingStyles as d } from "./core/styles.js";
9
- import { SbbIconNameMixin as f } from "./icon.js";
10
- //#region src/elements/tag/tag/tag.scss?inline
11
- var p = ":host{display:inline-block;outline:none!important;max-width:100%;--sbb-tag-border-radius: var(--sbb-border-radius-infinity);--sbb-tag-background-color: var(--sbb-background-color-1);--sbb-tag-border-color: var(--sbb-border-color-4-inverted);--sbb-tag-border-style: solid;--sbb-tag-border-width: var(--sbb-border-width-1x);--sbb-tag-text-color: var(--sbb-color-2);--sbb-tag-amount-color: var(--sbb-color-metal);--sbb-tag-amount-color: light-dark(var(--sbb-color-metal), var(--sbb-color-smoke));--sbb-tag-height: var(--sbb-size-element-xs);--sbb-tag-inset: 0;--sbb-tag-cursor: var(--sbb-cursor-pointer);--sbb-tag-content-shift: translateY(0);--sbb-tag-animation-duration: var( --sbb-disable-animation-duration, var(--sbb-animation-duration-2x) );--sbb-tag-animation-easing: var(--sbb-animation-easing);--sbb-tag-padding-inline: var(--sbb-spacing-fixed-5x);--sbb-tag-gap: var(--sbb-spacing-fixed-2x)}@media(forced-colors:active){:host{--sbb-tag-background-color: Canvas !important;--sbb-tag-text-color: ButtonText;--sbb-tag-amount-color: ButtonText;--sbb-tag-border-color: CanvasText;--sbb-tag-border-width: var(--sbb-border-width-2x)}}:host(:is(:state(checked),[state--checked])){--sbb-tag-border-color: var(--sbb-border-color-3);--sbb-tag-border-width: var(--sbb-border-width-2x)}@media(forced-colors:active){:host(:is(:state(checked),[state--checked])){--sbb-tag-border-color: Highlight !important;--sbb-tag-border-width: var(--sbb-border-width-4x)}}:host(:is(:disabled,[disabled-interactive])){--sbb-tag-text-color: var(--sbb-color-granite);--sbb-tag-text-color: light-dark(var(--sbb-color-granite), var(--sbb-color-aluminium));--sbb-tag-amount-color: var(--sbb-tag-text-color);--sbb-tag-background-color: var(--sbb-background-color-3);--sbb-tag-border-color: var(--sbb-color-cement);--sbb-tag-border-color: light-dark(var(--sbb-color-cement), var(--sbb-color-smoke));--sbb-tag-border-style: dashed;--sbb-tag-cursor: unset;--sbb-tag-pointer-events: none}@media(forced-colors:active){:host(:is(:disabled,[disabled-interactive])){--sbb-tag-text-color: GrayText;--sbb-tag-amount-color: GrayText;--sbb-tag-border-color: GrayText}}:host(:is(:state(checked),[state--checked]):is(:disabled,[disabled-interactive])){--sbb-tag-border-color: var(--sbb-color-metal);--sbb-tag-border-color: light-dark(var(--sbb-color-metal), var(--sbb-color-cement));--sbb-tag-border-style: dashed}@media(any-hover:hover){:host(:hover:not(:disabled,[disabled-interactive],:active,:is(:state(active),[state--active]))){--sbb-tag-background-color: var(--sbb-background-color-3);--sbb-tag-inset: calc(var(--sbb-border-width-2x) * -1);--sbb-tag-content-shift: translateY(calc(var(--sbb-border-width-1x) * -1))}}@media(any-hover:hover)and (forced-colors:active){:host(:hover:not(:disabled,[disabled-interactive],:active,:is(:state(active),[state--active]))){--sbb-tag-border-color: Highlight}}:host(:is(:active,:is(:state(active),[state--active])):not(:disabled,[disabled-interactive])){--sbb-tag-background-color: var(--sbb-background-color-3);--sbb-tag-border-color: var(--sbb-color-iron);--sbb-tag-border-color: light-dark(var(--sbb-color-iron), var(--sbb-color-storm));--sbb-tag-border-width: var(--sbb-border-width-2x);--sbb-tag-text-color: var(--sbb-color-4)}@media(forced-colors:active){:host(:is(:active,:is(:state(active),[state--active])):not(:disabled,[disabled-interactive])){--sbb-tag-border-color: Highlight;--sbb-tag-text-color: ButtonText}}:host([size=s]){--sbb-tag-height: var(--sbb-size-element-xxxs);--sbb-tag-padding-inline: var(--sbb-spacing-fixed-3x)}.sbb-tag{--sbb-text-font-size: var(--sbb-text-font-size-xs);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-text);letter-spacing:var(--sbb-typo-letter-spacing-text);font-size:var(--sbb-text-font-size);font-weight:700;position:relative;display:flex;align-items:center;height:var(--sbb-tag-height);max-width:100%;gap:var(--sbb-tag-gap);padding-inline:var(--sbb-tag-padding-inline);cursor:var(--sbb-tag-cursor);border-radius:var(--sbb-tag-border-radius);color:var(--sbb-tag-text-color);transition:color var(--sbb-tag-animation-duration) var(--sbb-tag-animation-easing);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;pointer-events:var(--sbb-tag-pointer-events, unset)}.sbb-tag:before{content:\"\";position:absolute;inset:var(--sbb-tag-inset);background-color:var(--sbb-tag-background-color);border:var(--sbb-tag-border-width) var(--sbb-tag-border-style) var(--sbb-tag-border-color);border-radius:var(--sbb-tag-border-radius);transition-duration:var(--sbb-tag-animation-duration);transition-timing-function:var(--sbb-tag-animation-easing);transition-property:inset,background-color,border-color,box-shadow}:host(:focus-visible) .sbb-tag:before{outline-offset:var(--sbb-focus-outline-offset);outline:var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width)}.sbb-tag__icon{display:flex;align-items:center;height:calc(var(--sbb-typo-line-height-text) * 1em);flex-shrink:0}:host(:not(:is(:state(slotted-icon),[state--slotted-icon]),:is(:state(has-icon-name),[state--has-icon-name]))) .sbb-tag__icon{display:none}.sbb-tag__text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sbb-tag__amount{--sbb-text-font-size: var(--sbb-text-font-size-xs);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-text);letter-spacing:var(--sbb-typo-letter-spacing-text);font-size:var(--sbb-text-font-size);color:var(--sbb-tag-amount-color)}:host(:not(:is(:state(slotted-amount),[state--slotted-amount]),[amount])) .sbb-tag__amount{display:none}.sbb-tag--shift{transition:transform var(--sbb-tag-animation-duration) var(--sbb-tag-animation-easing);transform:var(--sbb-tag-content-shift);will-change:transform}", m = (() => {
12
- let m = f(u(a)), h, g = [], _ = [], v, y = [], b = [], x, S = [], C = [], w, T = [], E = [];
13
- return class extends m {
14
- static {
15
- let t = typeof Symbol == "function" && Symbol.metadata ? Object.create(m[Symbol.metadata] ?? null) : void 0;
16
- h = [i()], v = [o(), i({
17
- reflect: !0,
18
- converter: c
19
- })], x = [o(), i({
20
- reflect: !1,
21
- type: Boolean
22
- })], w = [i({ reflect: !0 }), s((e, t) => e._group?.size ?? t)], e(this, null, h, {
23
- kind: "accessor",
24
- name: "value",
25
- static: !1,
26
- private: !1,
27
- access: {
28
- has: (e) => "value" in e,
29
- get: (e) => e.value,
30
- set: (e, t) => {
31
- e.value = t;
32
- }
33
- },
34
- metadata: t
35
- }, g, _), e(this, null, v, {
36
- kind: "accessor",
37
- name: "amount",
38
- static: !1,
39
- private: !1,
40
- access: {
41
- has: (e) => "amount" in e,
42
- get: (e) => e.amount,
43
- set: (e, t) => {
44
- e.amount = t;
45
- }
46
- },
47
- metadata: t
48
- }, y, b), e(this, null, x, {
49
- kind: "accessor",
50
- name: "checked",
51
- static: !1,
52
- private: !1,
53
- access: {
54
- has: (e) => "checked" in e,
55
- get: (e) => e.checked,
56
- set: (e, t) => {
57
- e.checked = t;
58
- }
59
- },
60
- metadata: t
61
- }, S, C), e(this, null, w, {
62
- kind: "accessor",
63
- name: "size",
64
- static: !1,
65
- private: !1,
66
- access: {
67
- has: (e) => "size" in e,
68
- get: (e) => e.size,
69
- set: (e, t) => {
70
- e.size = t;
71
- }
72
- },
73
- metadata: t
74
- }, T, E), t && Object.defineProperty(this, Symbol.metadata, {
75
- enumerable: !0,
76
- configurable: !0,
77
- writable: !0,
78
- value: t
79
- });
80
- }
81
- static {
82
- this.elementName = "sbb-tag";
83
- }
84
- static {
85
- this.styles = [d, r(p)];
86
- }
87
- static {
88
- this.events = {
89
- input: "input",
90
- didChange: "didChange",
91
- change: "change"
92
- };
93
- }
94
- #e;
95
- get value() {
96
- return this.#e;
97
- }
98
- set value(e) {
99
- this.#e = e;
100
- }
101
- #t;
102
- get amount() {
103
- return this.#t;
104
- }
105
- set amount(e) {
106
- this.#t = e;
107
- }
108
- #n;
109
- get checked() {
110
- return this.#n;
111
- }
112
- set checked(e) {
113
- this.#n = e;
114
- }
115
- #r;
116
- get size() {
117
- return this.#r;
118
- }
119
- set size(e) {
120
- this.#r = e;
121
- }
122
- constructor() {
123
- super(), this.#e = t(this, g, null), this.#t = (t(this, _), t(this, y, "")), this.#n = (t(this, b), t(this, S, !1)), this.#r = (t(this, C), t(this, T, l() ? "s" : "m")), this._group = (t(this, E), null), this.addEventListener?.("click", () => this._handleClick());
124
- }
125
- connectedCallback() {
126
- super.connectedCallback(), this._group = this.closest("sbb-tag-group");
127
- }
128
- isDisabledExternally() {
129
- return this._group?.disabled ?? !1;
130
- }
131
- _handleClick() {
132
- if (this.disabled) return;
133
- let e = this.closest("sbb-tag-group");
134
- e && !e.multiple && this.checked || (this.checked = !this.checked, this.dispatchEvent(new InputEvent("input", {
135
- bubbles: !0,
136
- composed: !0
137
- })), this.dispatchEvent(new Event("change", { bubbles: !0 })), this.dispatchEvent(new Event("didChange", { bubbles: !0 })));
138
- }
139
- willUpdate(e) {
140
- super.willUpdate(e), e.has("checked") && (this.internals.ariaPressed = `${this.checked}`, this.toggleState("checked", this.checked), this.updateFormValue());
141
- let t = this.closest?.("sbb-tag-group");
142
- t && !t.multiple && e.has("checked") && this.checked && t?.tags.filter((e) => e !== this).forEach((e) => e.checked = !1);
143
- }
144
- formResetCallback() {
145
- this.checked = this.hasAttribute("checked");
146
- }
147
- formStateRestoreCallback(e, t) {
148
- e && (this.checked = e === "true");
149
- }
150
- updateFormValue() {
151
- this.checked ? super.updateFormValue() : this.internals.setFormValue(null);
152
- }
153
- formState() {
154
- return `${this.checked}`;
155
- }
156
- renderTemplate() {
157
- return n`
158
- <span class="sbb-tag__icon sbb-tag--shift"> ${this.renderIconSlot()} </span>
159
- <span class="sbb-tag__text sbb-tag--shift">
160
- <slot></slot>
161
- </span>
162
- <span class="sbb-tag__amount sbb-tag--shift">
163
- <slot name="amount">${this.amount}</slot>
164
- </span>
165
- `;
166
- }
167
- };
168
- })();
169
- //#endregion
170
- export { m as t };