@sbb-esta/lyne-elements-dev 5.0.0-next.3-dev.1779781429 → 5.0.0-next.3-dev.1779890843

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (180) hide show
  1. package/_index.scss +65 -3
  2. package/alert/{alert/alert.global.scss → _alert.global.scss} +9 -7
  3. package/badge/{badge.global.scss → _badge.global.scss} +4 -2
  4. package/breadcrumb/{breadcrumb-group/breadcrumb-group.global.scss → _breadcrumb.global.scss} +11 -1
  5. package/button/{common/button-common.global.scss → _button.global.scss} +43 -2
  6. package/calendar/{calendar/calendar.global.scss → _calendar.global.scss} +20 -4
  7. package/card/{card.library.global.scss → _card.global.scss} +29 -5
  8. package/carousel/{carousel/carousel.global.scss → _carousel.global.scss} +2 -1
  9. package/carousel/carousel-list/carousel-list.component.js +1 -1
  10. package/{carousel-list.component-7mbfkw4K.js → carousel-list.component-DAPO_Oce.js} +1 -1
  11. package/carousel.js +1 -1
  12. package/carousel.pure.js +1 -1
  13. package/checkbox/{common/checkbox-common.global.scss → _checkbox.global.scss} +5 -1
  14. package/chip/{chip-group/chip-group.global.scss → _chip.global.scss} +12 -2
  15. package/container/{sticky-bar/sticky-bar.global.scss → _container.global.scss} +16 -1
  16. package/core/base-elements/{selection-group-base-element.global.scss → _selection-group-base-element.global.scss} +6 -2
  17. package/core/styles/_index.scss +3 -3
  18. package/core/styles/_theme.scss +359 -10
  19. package/core/styles/features/font-face.scss +3 -0
  20. package/core/styles/features/layout.private.scss +1 -1
  21. package/core/styles/features/typography.private.scss +3 -3
  22. package/core/styles/features/typography.scss +10 -2
  23. package/core/styles/mixins/_core.scss +69 -0
  24. package/core/styles/mixins/_layout.scss +1 -1
  25. package/core/styles/mixins/_lists.scss +2 -2
  26. package/core/styles/mixins/_pearl-chain-bullet.scss +1 -1
  27. package/core/styles/mixins/_scrollbar.scss +1 -1
  28. package/core/styles/mixins/_typo.scss +0 -19
  29. package/custom-elements.json +54 -6
  30. package/development/block-link-common-C0XzZIvS.js +1 -1
  31. package/development/breadcrumb.component-B3XsV_Aq.js +1 -1
  32. package/development/card.component-CVAgqDNK.js +1 -1
  33. package/development/carousel/carousel-list/carousel-list.component.js +1 -1
  34. package/development/carousel-list.component-pJBqbfi9.js +126 -0
  35. package/development/carousel.js +1 -1
  36. package/development/carousel.pure.js +1 -1
  37. package/development/inline-link-common-CXYyREBi.js +1 -1
  38. package/development/link-common-DWTP-lFX.js +1 -1
  39. package/development/selection-group-base-element-govDKjsE.js +1 -1
  40. package/development/styles-BTV2MyrZ.js +1 -1
  41. package/development/tab-label.component-BbQu5sA-.js +233 -0
  42. package/development/tabs/tab-label/tab-label.component.js +1 -1
  43. package/development/tabs.js +1 -1
  44. package/development/tabs.pure.js +1 -1
  45. package/development/tag/tag/tag.component.d.ts +1 -0
  46. package/development/tag/tag/tag.component.d.ts.map +1 -1
  47. package/development/tag/tag/tag.component.js +1 -1
  48. package/development/tag/tag-group/tag-group.component.d.ts +6 -1
  49. package/development/tag/tag-group/tag-group.component.d.ts.map +1 -1
  50. package/development/tag/tag-group/tag-group.component.js +1 -1
  51. package/development/tag-group.component-DTff1eBB.js +225 -0
  52. package/development/{tag.component-D6YowucW.js → tag.component-CDDb2fnV.js} +28 -8
  53. package/development/tag.js +2 -2
  54. package/development/tag.pure.js +2 -2
  55. package/dialog/_dialog.global.scss +77 -0
  56. package/expansion-panel/{expansion-panel-header/expansion-panel-header.global.scss → _expansion-panel.global.scss} +27 -2
  57. package/file-selector/{common/file-selector.global.scss → _file-selector.global.scss} +1 -1
  58. package/flip-card/{flip-card/flip-card.global.scss → _flip-card.global.scss} +15 -2
  59. package/footer/{footer.global.scss → _footer.global.scss} +1 -1
  60. package/form-field/{form-field/form-field.global.scss → _form-field.global.scss} +6 -3
  61. package/header/{header/header.global.scss → _header.global.scss} +41 -2
  62. package/icon-sidebar/{icon-sidebar/icon-sidebar.global.scss → _icon-sidebar.global.scss} +1 -1
  63. package/lead-container/{lead-container.global.scss → _lead-container.global.scss} +1 -1
  64. package/lean-off-brand-theme.css +351 -526
  65. package/lean-safety-theme.css +351 -526
  66. package/lean-theme.css +351 -526
  67. package/link/{link.library.global.scss → _link.global.scss} +18 -4
  68. package/loading-indicator-circle/{loading-indicator-circle.global.scss → _loading-indicator-circle.global.scss} +1 -1
  69. package/logo/{logo.global.scss → _logo.global.scss} +1 -1
  70. package/map-container/{map-container.global.scss → _map-container.global.scss} +1 -1
  71. package/menu/{menu/menu.global.scss → _menu.global.scss} +14 -6
  72. package/mini-calendar/{mini-calendar-month/mini-calendar-month.global.scss → _mini-calendar.global.scss} +4 -1
  73. package/navigation/_navigation.global.scss +78 -0
  74. package/notification/{notification.global.scss → _notification.global.scss} +1 -1
  75. package/off-brand-theme.css +349 -524
  76. package/option/{option/option.global.scss → _option.global.scss} +30 -1
  77. package/package.json +2 -2
  78. package/paginator/_paginator.global.scss +21 -0
  79. package/radio-button/{common/radio-button-common.global.scss → _radio-button.global.scss} +2 -2
  80. package/safety-theme.css +349 -524
  81. package/sidebar/{sidebar-container/sidebar-container.global.scss → _sidebar.global.scss} +20 -1
  82. package/signet/{signet.global.scss → _signet.global.scss} +1 -1
  83. package/slider/{slider.global.scss → _slider.global.scss} +1 -1
  84. package/standard-theme.css +349 -524
  85. package/stepper/{step-label/step-label.global.scss → _stepper.global.scss} +6 -2
  86. package/tab-label.component-C5HCrNFB.js +158 -0
  87. package/tabs/{common/tab-label-common.global.scss → _tabs.global.scss} +24 -1
  88. package/tabs/tab-label/tab-label.component.js +1 -1
  89. package/tabs.js +1 -1
  90. package/tabs.pure.js +1 -1
  91. package/tag/{tag/tag.global.scss → _tag.global.scss} +2 -2
  92. package/tag/tag/tag.component.js +1 -1
  93. package/tag/tag-group/tag-group.component.js +1 -1
  94. package/{tag-group.component-ByRxy8UG.js → tag-group.component-CJwbkP70.js} +38 -23
  95. package/{tag.component-BrKoQeIW.js → tag.component-r8diGGP-.js} +14 -5
  96. package/tag.js +2 -2
  97. package/tag.pure.js +2 -2
  98. package/teaser/_teaser.global.scss +51 -0
  99. package/teaser-hero/{teaser-hero.global.scss → _teaser-hero.global.scss} +2 -0
  100. package/teaser-panel/{teaser-panel.global.scss → _teaser-panel.global.scss} +2 -2
  101. package/teaser-product/{common/teaser-product-common.global.scss → _teaser-product.global.scss} +4 -2
  102. package/time-input/{time-input.global.scss → _time-input.global.scss} +1 -1
  103. package/timetable-form/{timetable-form/timetable-form.global.scss → _timetable-form.global.scss} +11 -1
  104. package/title/{title.global.scss → _title.global.scss} +4 -0
  105. package/toggle/{toggle/toggle.global.scss → _toggle.global.scss} +6 -2
  106. package/toggle-check/{toggle-check.global.scss → _toggle-check.global.scss} +1 -1
  107. package/train/{train-wagon-common.global.scss → _train.global.scss} +24 -0
  108. package/visual-checkbox/{visual-checkbox.global.scss → _visual-checkbox.global.scss} +1 -1
  109. package/alert/alert-group/alert-group.global.scss +0 -8
  110. package/breadcrumb/breadcrumb/breadcrumb.global.scss +0 -16
  111. package/button/common/mini-button-common.global.scss +0 -18
  112. package/button/mini-button-group/mini-button-group.global.scss +0 -35
  113. package/calendar/common/calendar-cell-base-element.global.scss +0 -23
  114. package/card/card/card.global.scss +0 -22
  115. package/card/card-badge/card-badge.global.scss +0 -19
  116. package/checkbox/checkbox.global.scss +0 -10
  117. package/chip/chip/chip.global.scss +0 -16
  118. package/container/container/container.global.scss +0 -21
  119. package/core/styles/features/core.scss +0 -618
  120. package/development/carousel-list.component-BLY3JfDq.js +0 -126
  121. package/development/tab-label.component-QHzOZ28y.js +0 -233
  122. package/development/tag-group.component-jSgluqL-.js +0 -194
  123. package/dialog/dialog/dialog.global.scss +0 -32
  124. package/dialog/dialog-close-button/dialog-close-button.global.scss +0 -35
  125. package/dialog/dialog-content/dialog-content.global.scss +0 -13
  126. package/dialog/dialog-title/dialog-title.global.scss +0 -13
  127. package/expansion-panel/expansion-panel/expansion-panel.global.scss +0 -21
  128. package/expansion-panel/expansion-panel-content/expansion-panel-content.global.scss +0 -16
  129. package/flip-card/flip-card-details/flip-card-details.global.scss +0 -7
  130. package/flip-card/flip-card-summary/flip-card-summary.global.scss +0 -17
  131. package/form-field/error/error.global.scss +0 -9
  132. package/header/common/header-action.global.scss +0 -41
  133. package/header/header-environment/header-environment.global.scss +0 -10
  134. package/link/common/block-link.global.scss +0 -15
  135. package/menu/common/menu-action.global.scss +0 -14
  136. package/mini-calendar/mini-calendar-day/mini-calendar-day.global.scss +0 -9
  137. package/navigation/common/navigation-action.global.scss +0 -11
  138. package/navigation/navigation/navigation.global.scss +0 -36
  139. package/navigation/navigation-list/navigation-list.global.scss +0 -10
  140. package/navigation/navigation-marker/navigation-marker.global.scss +0 -17
  141. package/navigation/navigation-section/navigation-section.global.scss +0 -34
  142. package/option/optgroup/optgroup.global.scss +0 -17
  143. package/option/option-hint/option-hint.global.scss +0 -17
  144. package/option/option-panel-common.global.scss +0 -11
  145. package/paginator/common/paginator-common.global.scss +0 -14
  146. package/paginator/compact-paginator/compact-paginator.global.scss +0 -9
  147. package/paginator/paginator/paginator.global.scss +0 -10
  148. package/sidebar/sidebar/sidebar.global.scss +0 -19
  149. package/sidebar/sidebar-close-button/sidebar-close-button.global.scss +0 -10
  150. package/stepper/stepper/stepper.global.scss +0 -10
  151. package/tab-label.component-BYssa8XI.js +0 -158
  152. package/tabs/common/tab-group-common.global.scss +0 -17
  153. package/tabs/tab-nav-bar/tab-nav-bar.global.scss +0 -10
  154. package/teaser/teaser.global.scss +0 -24
  155. package/timetable-form/timetable-form-details/timetable-form-details.global.scss +0 -12
  156. package/timetable-form/timetable-form-field/timetable-form-field.global.scss +0 -10
  157. package/title/title-common.global.scss +0 -7
  158. package/toggle/toggle-option/toggle-option.global.scss +0 -10
  159. package/train/train-blocked-passage/train-blocked-passage.global.scss +0 -16
  160. package/train/train-formation/train-formation.global.scss +0 -26
  161. /package/chip-label/{chip-label.global.scss → _chip-label.global.scss} +0 -0
  162. /package/clock/{clock.global.scss → _clock.global.scss} +0 -0
  163. /package/core/mixins/{panel-common.global.scss → _panel-common.global.scss} +0 -0
  164. /package/core/styles/{core/functions.scss → mixins/_functions.scss} +0 -0
  165. /package/core/styles/{core/mediaqueries.scss → mixins/_mediaqueries.scss} +0 -0
  166. /package/core/styles/{core → mixins}/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +0 -0
  167. /package/core/styles/{features/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables-as-css.scss → node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables-as-css.scss} +0 -0
  168. /package/divider/{divider.global.scss → _divider.global.scss} +0 -0
  169. /package/loading-indicator/{loading-indicator.global.scss → _loading-indicator.global.scss} +0 -0
  170. /package/message/{message.global.scss → _message.global.scss} +0 -0
  171. /package/overlay/{overlay.global.scss → _overlay.global.scss} +0 -0
  172. /package/popover/{popover.global.scss → _popover.global.scss} +0 -0
  173. /package/select/{select.global.scss → _select.global.scss} +0 -0
  174. /package/selection-action-panel/{selection-action-panel.global.scss → _selection-action-panel.global.scss} +0 -0
  175. /package/selection-expansion-panel/{selection-expansion-panel.global.scss → _selection-expansion-panel.global.scss} +0 -0
  176. /package/status/{status.global.scss → _status.global.scss} +0 -0
  177. /package/table/{table.global.scss → _table.global.scss} +0 -0
  178. /package/timetable-occupancy/{timetable-occupancy.global.scss → _timetable-occupancy.global.scss} +0 -0
  179. /package/toast/{toast.global.scss → _toast.global.scss} +0 -0
  180. /package/tooltip/{tooltip.global.scss → _tooltip.global.scss} +0 -0
@@ -1,5 +1,5 @@
1
1
  import { n as SbbTabGroupElement, t as SbbTabChangeEvent } from "./tab-group.component-DBg6I8W7.js";
2
- import { t as SbbTabLabelElement } from "./tab-label.component-QHzOZ28y.js";
2
+ import { t as SbbTabLabelElement } from "./tab-label.component-BbQu5sA-.js";
3
3
  import { t as SbbTabNavBarElement } from "./tab-nav-bar.component-DC4Ba7w2.js";
4
4
  import { t as SbbTabElement } from "./tab.component-Bsdzs7P2.js";
5
5
  import { n as tabLabelCommonStyles, t as tabGroupCommonStyles } from "./styles-BTV2MyrZ.js";
@@ -1,5 +1,5 @@
1
1
  import { n as SbbTabGroupElement, t as SbbTabChangeEvent } from "./tab-group.component-DBg6I8W7.js";
2
- import { t as SbbTabLabelElement } from "./tab-label.component-QHzOZ28y.js";
2
+ import { t as SbbTabLabelElement } from "./tab-label.component-BbQu5sA-.js";
3
3
  import { t as SbbTabNavBarElement } from "./tab-nav-bar.component-DC4Ba7w2.js";
4
4
  import { t as SbbTabElement } from "./tab.component-Bsdzs7P2.js";
5
5
  import { n as tabLabelCommonStyles, t as tabGroupCommonStyles } from "./styles-BTV2MyrZ.js";
@@ -30,6 +30,7 @@ export declare class SbbTagElement<T = string> extends SbbTagElement_base {
30
30
  accessor size: 's' | 'm' | null;
31
31
  constructor();
32
32
  private _tagGroup;
33
+ private _updateAriaRole;
33
34
  protected isDisabledExternally(): boolean;
34
35
  /** Method triggered on button click. Inverts the checked value and emits events. */
35
36
  private _handleClick;
@@ -1 +1 @@
1
- {"version":3,"file":"tag.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/tag/tag/tag.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEpB,MAAM,KAAK,CAAC;AAGb,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EAErB,wBAAwB,EAGzB,MAAM,eAAe,CAAC;;AAMvB;;;;;;;GAOG;AACH,qBAAa,aAAa,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,kBAE9C;IACC,gBAAgC,WAAW,EAAE,MAAM,CAAa;IAChE,OAAuB,MAAM,EAAE,cAAc,CAAsB;IACnE,gBAAuB,MAAM;;;;MAIlB;IAEX,iCAAiC;IACjC,SACgB,KAAK,EAAE,CAAC,GAAG,IAAI,CAAQ;IAEvC,uCAAuC;IACvC,SAEgB,MAAM,EAAE,MAAM,CAAM;IAEpC,kCAAkC;IAClC,SAEgB,OAAO,EAAE,OAAO,CAAS;IAEzC;;;OAGG;IACH,SACgB,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAQ;;IAc9C,OAAO,CAAC,SAAS;cAIE,oBAAoB,IAAI,OAAO;IAIlD,oFAAoF;IACpF,OAAO,CAAC,YAAY;cAkCD,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAe5E;;OAEG;IACa,iBAAiB,IAAI,IAAI;IAIzC;;OAEG;IACa,wBAAwB,CACtC,KAAK,EAAE,gBAAgB,GAAG,IAAI,EAC9B,OAAO,EAAE,iBAAiB,GACzB,IAAI;cAMY,eAAe,IAAI,IAAI;cAQvB,SAAS,IAAI,gBAAgB;cAI7B,cAAc,IAAI,cAAc;CAWpD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,SAAS,EAAE,aAAa,CAAC;KAC1B;CACF"}
1
+ {"version":3,"file":"tag.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/tag/tag/tag.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEpB,MAAM,KAAK,CAAC;AAGb,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EAErB,wBAAwB,EAGzB,MAAM,eAAe,CAAC;;AAMvB;;;;;;;GAOG;AACH,qBAAa,aAAa,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,kBAE9C;IACC,gBAAgC,WAAW,EAAE,MAAM,CAAa;IAChE,OAAuB,MAAM,EAAE,cAAc,CAAsB;IACnE,gBAAuB,MAAM;;;;MAIlB;IAEX,iCAAiC;IACjC,SACgB,KAAK,EAAE,CAAC,GAAG,IAAI,CAAQ;IAEvC,uCAAuC;IACvC,SAEgB,MAAM,EAAE,MAAM,CAAM;IAEpC,kCAAkC;IAClC,SAEgB,OAAO,EAAE,OAAO,CAAS;IAEzC;;;OAGG;IACH,SACgB,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,CAAQ;;IAe9C,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,eAAe;cAaJ,oBAAoB,IAAI,OAAO;IAIlD,oFAAoF;IACpF,OAAO,CAAC,YAAY;cAgCD,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAsB5E;;OAEG;IACa,iBAAiB,IAAI,IAAI;IAIzC;;OAEG;IACa,wBAAwB,CACtC,KAAK,EAAE,gBAAgB,GAAG,IAAI,EAC9B,OAAO,EAAE,iBAAiB,GACzB,IAAI;cAMY,eAAe,IAAI,IAAI;cAQvB,SAAS,IAAI,gBAAgB;cAI7B,cAAc,IAAI,cAAc;CAWpD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,SAAS,EAAE,aAAa,CAAC;KAC1B;CACF"}
@@ -1,2 +1,2 @@
1
- import { t as SbbTagElement } from "../../tag.component-D6YowucW.js";
1
+ import { t as SbbTagElement } from "../../tag.component-CDDb2fnV.js";
2
2
  export { SbbTagElement };
@@ -15,7 +15,7 @@ export declare class SbbTagGroupElement<T = string> extends SbbTagGroupElement_b
15
15
  /**
16
16
  * This will be forwarded as aria-label to the inner list.
17
17
  */
18
- accessor listAccessibilityLabel: string;
18
+ accessor accessibilityLabel: string;
19
19
  /**
20
20
  * If set multiple to false, the selection is exclusive and the value is a string (or null).
21
21
  * If set multiple to true, the selection can have multiple values and therefore value is an array.
@@ -37,7 +37,12 @@ export declare class SbbTagGroupElement<T = string> extends SbbTagGroupElement_b
37
37
  private _value;
38
38
  /** The child instances of sbb-tag as an array. */
39
39
  get tags(): SbbTagElement<T>[];
40
+ constructor();
40
41
  protected willUpdate(changedProperties: PropertyValues<WithListChildren<this>>): void;
42
+ private _enabledTags;
43
+ /** In exclusive mode, only the checked tag (or the first non-disabled tag) should be focusable. */
44
+ protected updateExclusiveTabIndex(): void;
45
+ private _handleArrowKeyDown;
41
46
  private _applyValueToTags;
42
47
  protected render(): TemplateResult;
43
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tag-group.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/tag/tag-group/tag-group.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAGnB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEpB,MAAM,KAAK,CAAC;AAGb,OAAO,EAGL,UAAU,EAEV,KAAK,gBAAgB,EACtB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;;AAI7D;;;;;GAKG;AACH,qBAAa,kBAAkB,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,uBAEnD;IACC,gBAAgC,WAAW,EAAE,MAAM,CAAmB;IACtE,OAAuB,MAAM,EAAE,cAAc,CAAsB;IAEnE,mBAA4B,mBAAmB,WAAsB;IAErE;;OAEG;IACH,SAEgB,sBAAsB,EAAE,MAAM,CAAM;IAEpD;;;;;OAKG;IACH,SAEgB,QAAQ,EAAE,OAAO,CAAS;IAE1C;;OAEG;IACH,SAA6C,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAQ;IAEhF;;;;OAIG;IACH,IACW,KAAK,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,IAAI,EAM9C;IACD,IAAW,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,IAAI,CAM1C;IACD,OAAO,CAAC,MAAM,CAAiC;IAE/C,kDAAkD;IAClD,IAAW,IAAI,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,CAEpC;cAEkB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;IA2B9F,OAAO,CAAC,iBAAiB;cA0BN,MAAM,IAAI,cAAc;CAQ5C;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,EAKL,UAAU,EAEV,KAAK,gBAAgB,EACtB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;;AAI7D;;;;;GAKG;AACH,qBAAa,kBAAkB,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,uBAEnD;IACC,gBAAgC,WAAW,EAAE,MAAM,CAAmB;IACtE,OAAuB,MAAM,EAAE,cAAc,CAAsB;IAEnE,mBAA4B,mBAAmB,WAAsB;IAErE;;OAEG;IACH,SAEgB,kBAAkB,EAAE,MAAM,CAAM;IAEhD;;;;;OAKG;IACH,SAEgB,QAAQ,EAAE,OAAO,CAAS;IAE1C;;OAEG;IACH,SAA6C,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAQ;IAEhF;;;;OAIG;IACH,IACW,KAAK,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,IAAI,EAM9C;IACD,IAAW,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,IAAI,CAM1C;IACD,OAAO,CAAC,MAAM,CAAiC;IAE/C,kDAAkD;IAClD,IAAW,IAAI,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,CAEpC;;cAOkB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;IAqC9F,OAAO,CAAC,YAAY;IAIpB,mGAAmG;IACnG,SAAS,CAAC,uBAAuB,IAAI,IAAI;IAMzC,OAAO,CAAC,mBAAmB;IAoB3B,OAAO,CAAC,iBAAiB;cA0BN,MAAM,IAAI,cAAc;CAQ5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,eAAe,EAAE,kBAAkB,CAAC;KACrC;CACF"}
@@ -1,2 +1,2 @@
1
- import { t as SbbTagGroupElement } from "../../tag-group.component-jSgluqL-.js";
1
+ import { t as SbbTagGroupElement } from "../../tag-group.component-DTff1eBB.js";
2
2
  export { SbbTagGroupElement };
@@ -0,0 +1,225 @@
1
+ import { __esDecorate, __runInitializers } from "tslib";
2
+ import { html, isServer, unsafeCSS } from "lit";
3
+ import { property } from "lit/decorators.js";
4
+ import { SbbDisabledMixin, SbbElement, SbbNamedSlotListMixin, forceType, getNextElementIndex, isArrowKeyPressed } from "./core.js";
5
+ //#region src/elements/tag/tag-group/tag-group.scss?inline
6
+ var tag_group_default = ":host {\n display: block;\n}\n\n.sbb-tag-group__list {\n display: flex;\n flex-wrap: wrap;\n gap: var(--sbb-spacing-fixed-3x);\n}\n\n.sbb-tag-group__list > :is(li, span) {\n display: flex;\n max-width: 100%;\n}";
7
+ //#endregion
8
+ //#region src/elements/tag/tag-group/tag-group.component.ts
9
+ /**
10
+ * It can be used as a container for one or more `sbb-tag`.
11
+ *
12
+ * @slot - Use the unnamed slot to add one or more 'sbb-tag' elements to the `sbb-tag-group`.
13
+ * @overrideType value - (T = string | (string | null)[]) | null
14
+ */
15
+ var SbbTagGroupElement = (() => {
16
+ let _classSuper = SbbDisabledMixin(SbbNamedSlotListMixin(SbbElement));
17
+ let _instanceExtraInitializers = [];
18
+ let _accessibilityLabel_decorators;
19
+ let _accessibilityLabel_initializers = [];
20
+ let _accessibilityLabel_extraInitializers = [];
21
+ let _multiple_decorators;
22
+ let _multiple_initializers = [];
23
+ let _multiple_extraInitializers = [];
24
+ let _size_decorators;
25
+ let _size_initializers = [];
26
+ let _size_extraInitializers = [];
27
+ let _set_value_decorators;
28
+ return class SbbTagGroupElement extends _classSuper {
29
+ static {
30
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
31
+ _accessibilityLabel_decorators = [forceType(), property({ attribute: "accessibility-label" })];
32
+ _multiple_decorators = [forceType(), property({ type: Boolean })];
33
+ _size_decorators = [property({ reflect: true })];
34
+ _set_value_decorators = [property()];
35
+ __esDecorate(this, null, _accessibilityLabel_decorators, {
36
+ kind: "accessor",
37
+ name: "accessibilityLabel",
38
+ static: false,
39
+ private: false,
40
+ access: {
41
+ has: (obj) => "accessibilityLabel" in obj,
42
+ get: (obj) => obj.accessibilityLabel,
43
+ set: (obj, value) => {
44
+ obj.accessibilityLabel = value;
45
+ }
46
+ },
47
+ metadata: _metadata
48
+ }, _accessibilityLabel_initializers, _accessibilityLabel_extraInitializers);
49
+ __esDecorate(this, null, _multiple_decorators, {
50
+ kind: "accessor",
51
+ name: "multiple",
52
+ static: false,
53
+ private: false,
54
+ access: {
55
+ has: (obj) => "multiple" in obj,
56
+ get: (obj) => obj.multiple,
57
+ set: (obj, value) => {
58
+ obj.multiple = value;
59
+ }
60
+ },
61
+ metadata: _metadata
62
+ }, _multiple_initializers, _multiple_extraInitializers);
63
+ __esDecorate(this, null, _size_decorators, {
64
+ kind: "accessor",
65
+ name: "size",
66
+ static: false,
67
+ private: false,
68
+ access: {
69
+ has: (obj) => "size" in obj,
70
+ get: (obj) => obj.size,
71
+ set: (obj, value) => {
72
+ obj.size = value;
73
+ }
74
+ },
75
+ metadata: _metadata
76
+ }, _size_initializers, _size_extraInitializers);
77
+ __esDecorate(this, null, _set_value_decorators, {
78
+ kind: "setter",
79
+ name: "value",
80
+ static: false,
81
+ private: false,
82
+ access: {
83
+ has: (obj) => "value" in obj,
84
+ set: (obj, value) => {
85
+ obj.value = value;
86
+ }
87
+ },
88
+ metadata: _metadata
89
+ }, null, _instanceExtraInitializers);
90
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, {
91
+ enumerable: true,
92
+ configurable: true,
93
+ writable: true,
94
+ value: _metadata
95
+ });
96
+ }
97
+ static {
98
+ this.elementName = "sbb-tag-group";
99
+ }
100
+ static {
101
+ this.styles = [unsafeCSS(tag_group_default)];
102
+ }
103
+ #accessibilityLabel_accessor_storage;
104
+ /**
105
+ * This will be forwarded as aria-label to the inner list.
106
+ */
107
+ get accessibilityLabel() {
108
+ return this.#accessibilityLabel_accessor_storage;
109
+ }
110
+ set accessibilityLabel(value) {
111
+ this.#accessibilityLabel_accessor_storage = value;
112
+ }
113
+ #multiple_accessor_storage;
114
+ /**
115
+ * If set multiple to false, the selection is exclusive and the value is a string (or null).
116
+ * If set multiple to true, the selection can have multiple values and therefore value is an array.
117
+ *
118
+ * Changing multiple during run time is not supported.
119
+ */
120
+ get multiple() {
121
+ return this.#multiple_accessor_storage;
122
+ }
123
+ set multiple(value) {
124
+ this.#multiple_accessor_storage = value;
125
+ }
126
+ #size_accessor_storage;
127
+ /**
128
+ * Tag group size, either s (lean theme default) or m (standard theme default).
129
+ */
130
+ get size() {
131
+ return this.#size_accessor_storage;
132
+ }
133
+ set size(value) {
134
+ this.#size_accessor_storage = value;
135
+ }
136
+ /**
137
+ * Value of the sbb-tag-group.
138
+ * If set multiple to false, the value is a string (or null).
139
+ * If set multiple to true, the value is an array.
140
+ */
141
+ set value(value) {
142
+ if (isServer || !this.hasUpdated) {
143
+ this._value = value;
144
+ return;
145
+ }
146
+ this._applyValueToTags(value);
147
+ }
148
+ get value() {
149
+ return isServer || !this.hasUpdated ? this._value : this.multiple ? this.tags.filter((t) => t.checked).map((t) => t.value) : this.tags.find((t) => t.checked)?.value ?? null;
150
+ }
151
+ /** The child instances of sbb-tag as an array. */
152
+ get tags() {
153
+ return Array.from(this.querySelectorAll?.("sbb-tag") ?? []);
154
+ }
155
+ constructor() {
156
+ super();
157
+ this.listChildLocalNames = (__runInitializers(this, _instanceExtraInitializers), ["sbb-tag", "div"]);
158
+ this.#accessibilityLabel_accessor_storage = __runInitializers(this, _accessibilityLabel_initializers, "");
159
+ this.#multiple_accessor_storage = (__runInitializers(this, _accessibilityLabel_extraInitializers), __runInitializers(this, _multiple_initializers, false));
160
+ this.#size_accessor_storage = (__runInitializers(this, _multiple_extraInitializers), __runInitializers(this, _size_initializers, null));
161
+ this._value = (__runInitializers(this, _size_extraInitializers), null);
162
+ this.addEventListener?.("keydown", (e) => this._handleArrowKeyDown(e));
163
+ }
164
+ willUpdate(changedProperties) {
165
+ super.willUpdate(changedProperties);
166
+ if (changedProperties.has("value") && !this.hasUpdated && this._value) this._applyValueToTags(this.value);
167
+ if (changedProperties.has("disabled")) this.tags.forEach((r) => r.requestUpdate?.("disabled"));
168
+ if (changedProperties.has("listChildren") || changedProperties.has("multiple")) {
169
+ if (!this.multiple) {
170
+ this.tags.filter((tag) => tag.checked).slice(1).forEach((tag) => tag.checked = false);
171
+ this.updateExclusiveTabIndex();
172
+ } else if (changedProperties.has("multiple")) this._enabledTags().forEach((t) => t.tabIndex = 0);
173
+ }
174
+ if (changedProperties.has("accessibilityLabel") || changedProperties.has("multiple")) if (this.multiple) {
175
+ this.internals.role = this.accessibilityLabel ? null : "group";
176
+ this.internals.ariaLabel = null;
177
+ } else {
178
+ this.internals.role = "radiogroup";
179
+ this.internals.ariaLabel = this.accessibilityLabel;
180
+ }
181
+ }
182
+ _enabledTags() {
183
+ return this.tags.filter((t) => !t.disabled);
184
+ }
185
+ /** In exclusive mode, only the checked tag (or the first non-disabled tag) should be focusable. */
186
+ updateExclusiveTabIndex() {
187
+ const enabledTags = this._enabledTags();
188
+ const focusTarget = enabledTags.find((t) => t.checked) ?? enabledTags[0];
189
+ enabledTags.forEach((t) => t.tabIndex = t === focusTarget ? 0 : -1);
190
+ }
191
+ _handleArrowKeyDown(evt) {
192
+ if (this.multiple || !isArrowKeyPressed(evt)) return;
193
+ evt.preventDefault();
194
+ const enabledTags = this._enabledTags();
195
+ const current = enabledTags.indexOf(evt.target);
196
+ if (current === -1) return;
197
+ const nextTag = enabledTags[getNextElementIndex(evt, current, enabledTags.length)];
198
+ enabledTags.forEach((t) => t.tabIndex = t === nextTag ? 0 : -1);
199
+ nextTag.focus();
200
+ }
201
+ _applyValueToTags(value) {
202
+ const tags = this.tags;
203
+ if (value === null) tags.forEach((t) => t.checked = false);
204
+ else if (this.multiple) {
205
+ if (!Array.isArray(value) && tags.every((t) => t.value !== value)) try {
206
+ value = JSON.parse(value);
207
+ } catch {}
208
+ const valueAsArray = Array.isArray(value) ? value : [value];
209
+ tags.forEach((t) => t.checked = valueAsArray.includes(t.value));
210
+ } else if (!Array.isArray(value)) tags.forEach((t) => t.checked = t.value === value);
211
+ }
212
+ render() {
213
+ return html`
214
+ ${this.renderList({
215
+ class: "sbb-tag-group__list",
216
+ ariaLabel: this.multiple ? this.accessibilityLabel : void 0
217
+ })}
218
+ `;
219
+ }
220
+ };
221
+ })();
222
+ //#endregion
223
+ export { SbbTagGroupElement as t };
224
+
225
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLWdyb3VwLmNvbXBvbmVudC1EVGZmMWVCQi5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy1ncm91cC90YWctZ3JvdXAuc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy1ncm91cC90YWctZ3JvdXAuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbjpob3N0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zYmItdGFnLWdyb3VwX19saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTN4KTtcbn1cblxuLy8gVXNpbmcgLi4uIGxpIHNlbGVjdG9yLCBiZWNhdXNlIHRoZSBsaSBnZW5lcmF0aW9uXG4vLyBpcyBoYW5kbGVkIGluIHRoZSBjb21wb25lbnQgYmFzZSBjbGFzcy5cbi5zYmItdGFnLWdyb3VwX19saXN0ID4gOmlzKGxpLCBzcGFuKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbiIsImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIGlzU2VydmVyLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxuICB1bnNhZmVDU1MsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHtcbiAgZm9yY2VUeXBlLFxuICBnZXROZXh0RWxlbWVudEluZGV4LFxuICBpc0Fycm93S2V5UHJlc3NlZCxcbiAgU2JiRGlzYWJsZWRNaXhpbixcbiAgU2JiRWxlbWVudCxcbiAgU2JiTmFtZWRTbG90TGlzdE1peGluLFxuICB0eXBlIFdpdGhMaXN0Q2hpbGRyZW4sXG59IGZyb20gJy4uLy4uL2NvcmUudHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJUYWdFbGVtZW50IH0gZnJvbSAnLi4vdGFnL3RhZy5jb21wb25lbnQudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90YWctZ3JvdXAuc2Nzcz9pbmxpbmUnO1xuXG4vKipcbiAqIEl0IGNhbiBiZSB1c2VkIGFzIGEgY29udGFpbmVyIGZvciBvbmUgb3IgbW9yZSBgc2JiLXRhZ2AuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgb25lIG9yIG1vcmUgJ3NiYi10YWcnIGVsZW1lbnRzIHRvIHRoZSBgc2JiLXRhZy1ncm91cGAuXG4gKiBAb3ZlcnJpZGVUeXBlIHZhbHVlIC0gKFQgPSBzdHJpbmcgfCAoc3RyaW5nIHwgbnVsbClbXSkgfCBudWxsXG4gKi9cbmV4cG9ydCBjbGFzcyBTYmJUYWdHcm91cEVsZW1lbnQ8VCA9IHN0cmluZz4gZXh0ZW5kcyBTYmJEaXNhYmxlZE1peGluKFxuICBTYmJOYW1lZFNsb3RMaXN0TWl4aW48U2JiVGFnRWxlbWVudCwgdHlwZW9mIFNiYkVsZW1lbnQ+KFNiYkVsZW1lbnQpLFxuKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItdGFnLWdyb3VwJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW3Vuc2FmZUNTUyhzdHlsZSldO1xuICAvLyBESVYgaXMgYWRkZWQgaGVyZSBkdWUgdG8gc3BlY2lhbCByZXF1aXJlbWVudHMgZnJvbSBzYmIuY2guXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZWFkb25seSBsaXN0Q2hpbGRMb2NhbE5hbWVzID0gWydzYmItdGFnJywgJ2RpdiddO1xuXG4gIC8qKlxuICAgKiBUaGlzIHdpbGwgYmUgZm9yd2FyZGVkIGFzIGFyaWEtbGFiZWwgdG8gdGhlIGlubmVyIGxpc3QuXG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1sYWJlbCcgfSlcbiAgcHVibGljIGFjY2Vzc29yIGFjY2Vzc2liaWxpdHlMYWJlbDogc3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIElmIHNldCBtdWx0aXBsZSB0byBmYWxzZSwgdGhlIHNlbGVjdGlvbiBpcyBleGNsdXNpdmUgYW5kIHRoZSB2YWx1ZSBpcyBhIHN0cmluZyAob3IgbnVsbCkuXG4gICAqIElmIHNldCBtdWx0aXBsZSB0byB0cnVlLCB0aGUgc2VsZWN0aW9uIGNhbiBoYXZlIG11bHRpcGxlIHZhbHVlcyBhbmQgdGhlcmVmb3JlIHZhbHVlIGlzIGFuIGFycmF5LlxuICAgKlxuICAgKiBDaGFuZ2luZyBtdWx0aXBsZSBkdXJpbmcgcnVuIHRpbWUgaXMgbm90IHN1cHBvcnRlZC5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyB0eXBlOiBCb29sZWFuIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBtdWx0aXBsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUYWcgZ3JvdXAgc2l6ZSwgZWl0aGVyIHMgKGxlYW4gdGhlbWUgZGVmYXVsdCkgb3IgbSAoc3RhbmRhcmQgdGhlbWUgZGVmYXVsdCkuXG4gICAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhY2Nlc3NvciBzaXplOiBTYmJUYWdFbGVtZW50WydzaXplJ10gPSBudWxsO1xuXG4gIC8qKlxuICAgKiBWYWx1ZSBvZiB0aGUgc2JiLXRhZy1ncm91cC5cbiAgICogSWYgc2V0IG11bHRpcGxlIHRvIGZhbHNlLCB0aGUgdmFsdWUgaXMgYSBzdHJpbmcgKG9yIG51bGwpLlxuICAgKiBJZiBzZXQgbXVsdGlwbGUgdG8gdHJ1ZSwgdGhlIHZhbHVlIGlzIGFuIGFycmF5LlxuICAgKi9cbiAgQHByb3BlcnR5KClcbiAgcHVibGljIHNldCB2YWx1ZSh2YWx1ZTogVCB8IChUIHwgbnVsbClbXSB8IG51bGwpIHtcbiAgICBpZiAoaXNTZXJ2ZXIgfHwgIXRoaXMuaGFzVXBkYXRlZCkge1xuICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fYXBwbHlWYWx1ZVRvVGFncyh2YWx1ZSk7XG4gIH1cbiAgcHVibGljIGdldCB2YWx1ZSgpOiBUIHwgKFQgfCBudWxsKVtdIHwgbnVsbCB7XG4gICAgcmV0dXJuIGlzU2VydmVyIHx8ICF0aGlzLmhhc1VwZGF0ZWRcbiAgICAgID8gdGhpcy5fdmFsdWVcbiAgICAgIDogdGhpcy5tdWx0aXBsZVxuICAgICAgICA/IHRoaXMudGFncy5maWx0ZXIoKHQpID0+IHQuY2hlY2tlZCkubWFwKCh0KSA9PiB0LnZhbHVlKVxuICAgICAgICA6ICh0aGlzLnRhZ3MuZmluZCgodCkgPT4gdC5jaGVja2VkKT8udmFsdWUgPz8gbnVsbCk7XG4gIH1cbiAgcHJpdmF0ZSBfdmFsdWU6IFQgfCAoVCB8IG51bGwpW10gfCBudWxsID0gbnVsbDtcblxuICAvKiogVGhlIGNoaWxkIGluc3RhbmNlcyBvZiBzYmItdGFnIGFzIGFuIGFycmF5LiAqL1xuICBwdWJsaWMgZ2V0IHRhZ3MoKTogU2JiVGFnRWxlbWVudDxUPltdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLnF1ZXJ5U2VsZWN0b3JBbGw/LjxTYmJUYWdFbGVtZW50PFQ+Pignc2JiLXRhZycpID8/IFtdKTtcbiAgfVxuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdrZXlkb3duJywgKGUpID0+IHRoaXMuX2hhbmRsZUFycm93S2V5RG93bihlKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8V2l0aExpc3RDaGlsZHJlbjx0aGlzPj4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3ZhbHVlJykgJiYgIXRoaXMuaGFzVXBkYXRlZCAmJiB0aGlzLl92YWx1ZSkge1xuICAgICAgdGhpcy5fYXBwbHlWYWx1ZVRvVGFncyh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdkaXNhYmxlZCcpKSB7XG4gICAgICB0aGlzLnRhZ3MuZm9yRWFjaCgocikgPT4gci5yZXF1ZXN0VXBkYXRlPy4oJ2Rpc2FibGVkJykpO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2xpc3RDaGlsZHJlbicpIHx8IGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbXVsdGlwbGUnKSkge1xuICAgICAgaWYgKCF0aGlzLm11bHRpcGxlKSB7XG4gICAgICAgIC8vIEVuc3VyZSBvbmx5IG9uZSB0YWcgY2hlY2tlZFxuICAgICAgICB0aGlzLnRhZ3NcbiAgICAgICAgICAuZmlsdGVyKCh0YWcpID0+IHRhZy5jaGVja2VkKVxuICAgICAgICAgIC5zbGljZSgxKVxuICAgICAgICAgIC5mb3JFYWNoKCh0YWcpID0+ICh0YWcuY2hlY2tlZCA9IGZhbHNlKSk7XG5cbiAgICAgICAgdGhpcy51cGRhdGVFeGNsdXNpdmVUYWJJbmRleCgpO1xuICAgICAgfSBlbHNlIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ211bHRpcGxlJykpIHtcbiAgICAgICAgLy8gSW4gbXVsdGlwbGUgbW9kZSBhbGwgZW5hYmxlZCB0YWdzIHNob3VsZCBiZSBmb2N1c2FibGVcbiAgICAgICAgdGhpcy5fZW5hYmxlZFRhZ3MoKS5mb3JFYWNoKCh0KSA9PiAodC50YWJJbmRleCA9IDApKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdhY2Nlc3NpYmlsaXR5TGFiZWwnKSB8fCBjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ211bHRpcGxlJykpIHtcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICAgIHRoaXMuaW50ZXJuYWxzLnJvbGUgPSB0aGlzLmFjY2Vzc2liaWxpdHlMYWJlbCA/IG51bGwgOiAnZ3JvdXAnO1xuICAgICAgICB0aGlzLmludGVybmFscy5hcmlhTGFiZWwgPSBudWxsO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pbnRlcm5hbHMucm9sZSA9ICdyYWRpb2dyb3VwJztcbiAgICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYUxhYmVsID0gdGhpcy5hY2Nlc3NpYmlsaXR5TGFiZWw7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZW5hYmxlZFRhZ3MoKTogU2JiVGFnRWxlbWVudDxUPltdIHtcbiAgICByZXR1cm4gdGhpcy50YWdzLmZpbHRlcigodCkgPT4gIXQuZGlzYWJsZWQpO1xuICB9XG5cbiAgLyoqIEluIGV4Y2x1c2l2ZSBtb2RlLCBvbmx5IHRoZSBjaGVja2VkIHRhZyAob3IgdGhlIGZpcnN0IG5vbi1kaXNhYmxlZCB0YWcpIHNob3VsZCBiZSBmb2N1c2FibGUuICovXG4gIHByb3RlY3RlZCB1cGRhdGVFeGNsdXNpdmVUYWJJbmRleCgpOiB2b2lkIHtcbiAgICBjb25zdCBlbmFibGVkVGFncyA9IHRoaXMuX2VuYWJsZWRUYWdzKCk7XG4gICAgY29uc3QgZm9jdXNUYXJnZXQgPSBlbmFibGVkVGFncy5maW5kKCh0KSA9PiB0LmNoZWNrZWQpID8/IGVuYWJsZWRUYWdzWzBdO1xuICAgIGVuYWJsZWRUYWdzLmZvckVhY2goKHQpID0+ICh0LnRhYkluZGV4ID0gdCA9PT0gZm9jdXNUYXJnZXQgPyAwIDogLTEpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUFycm93S2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tdWx0aXBsZSB8fCAhaXNBcnJvd0tleVByZXNzZWQoZXZ0KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBldnQucHJldmVudERlZmF1bHQoKTtcblxuICAgIGNvbnN0IGVuYWJsZWRUYWdzID0gdGhpcy5fZW5hYmxlZFRhZ3MoKTtcbiAgICBjb25zdCBjdXJyZW50ID0gZW5hYmxlZFRhZ3MuaW5kZXhPZihldnQudGFyZ2V0IGFzIFNiYlRhZ0VsZW1lbnQ8VD4pO1xuICAgIGlmIChjdXJyZW50ID09PSAtMSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG5leHRJbmRleCA9IGdldE5leHRFbGVtZW50SW5kZXgoZXZ0LCBjdXJyZW50LCBlbmFibGVkVGFncy5sZW5ndGgpO1xuICAgIGNvbnN0IG5leHRUYWcgPSBlbmFibGVkVGFnc1tuZXh0SW5kZXhdO1xuXG4gICAgLy8gT25seSBtb3ZlIGZvY3VzLCBkbyBub3Qgc2VsZWN0LiBTZWxlY3Rpb24gaGFwcGVucyB2aWEgY2xpY2sgb3IgU3BhY2UvRW50ZXIuXG4gICAgZW5hYmxlZFRhZ3MuZm9yRWFjaCgodCkgPT4gKHQudGFiSW5kZXggPSB0ID09PSBuZXh0VGFnID8gMCA6IC0xKSk7XG4gICAgbmV4dFRhZy5mb2N1cygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfYXBwbHlWYWx1ZVRvVGFncyh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgY29uc3QgdGFncyA9IHRoaXMudGFncztcblxuICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgdGFncy5mb3JFYWNoKCh0KSA9PiAodC5jaGVja2VkID0gZmFsc2UpKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWx1ZSkgJiYgdGFncy5ldmVyeSgodCkgPT4gdC52YWx1ZSAhPT0gdmFsdWUpKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgLy8gSWYgaXQgaXMgbXVsdGlwbGUgbW9kZSBhbmQgbm8gdGFnIG1hdGNoZXMgdGhlIHZhbHVlLCB3ZSB0cnkgdG8gcGFyc2UgdGhlIHZhbHVlIGFzIEpTT04uXG4gICAgICAgICAgLy8gVGhpcyBhbGxvd3Mgc2VydmVyIHNpZGUgcmVuZGVyaW5nIHRvIHVzZSBhcnJheSB2YWx1ZXMgdG8gYmUgcGFzc2VkIHRvIHRoZSBjbGllbnQgc2lkZS5cbiAgICAgICAgICB2YWx1ZSA9IEpTT04ucGFyc2UodmFsdWUgYXMgc3RyaW5nKTtcbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgLyogZW1wdHkgKi9cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3QgdmFsdWVBc0FycmF5ID0gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZSA6IFt2YWx1ZV07XG4gICAgICB0YWdzLmZvckVhY2goKHQpID0+ICh0LmNoZWNrZWQgPSB2YWx1ZUFzQXJyYXkuaW5jbHVkZXModC52YWx1ZSkpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICB0YWdzLmZvckVhY2goKHQpID0+ICh0LmNoZWNrZWQgPSB0LnZhbHVlID09PSB2YWx1ZSkpO1xuICAgICAgfSBlbHNlIGlmIChpbXBvcnQubWV0YS5lbnYuREVWKSB7XG4gICAgICAgIGNvbnNvbGUud2FybigndmFsdWUgbXVzdCBub3QgYmUgc2V0IGFzIGFuIGFycmF5IGluIHNpbmd1bGFyIG1vZGUuJywgdmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgJHt0aGlzLnJlbmRlckxpc3Qoe1xuICAgICAgICBjbGFzczogJ3NiYi10YWctZ3JvdXBfX2xpc3QnLFxuICAgICAgICBhcmlhTGFiZWw6IHRoaXMubXVsdGlwbGUgPyB0aGlzLmFjY2Vzc2liaWxpdHlMYWJlbCA6IHVuZGVmaW5lZCxcbiAgICAgIH0pfVxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi10YWctZ3JvdXAnOiBTYmJUYWdHcm91cEVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7SUM2QmEsNEJBQWtCO21CQUFxQixpQkFDbEQsc0JBQXdELFVBQVUsQ0FBQzs7Ozs7Ozs7Ozs7O2NBRHhELDJCQUF1QyxZQUVuRDs7O3FDQVNFLFVBQVMsR0FDVCxTQUFTLEVBQUUsV0FBVyxzQkFBcUIsQ0FBRSxDQUFDOzJCQVM5QyxVQUFTLEdBQ1QsU0FBUyxFQUFFLE1BQU0sUUFBTyxDQUFFLENBQUM7dUJBTTNCLFNBQVMsRUFBRSxTQUFTLEtBQUksQ0FBRSxDQUFDOzRCQU8zQixTQUFRLENBQUU7R0F0QlgsYUFBQSxNQUFBLE1BQUEsZ0NBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSx3QkFBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFrQixNQUFBLEtBQUEsVUFBQTtNQUFBLElBQWxCLHFCQUFrQjtLQUFBO0lBQUE7SUFBQSxVQUFBO0dBQUEsR0FBQSxrQ0FBQSxxQ0FBQTtHQVVsQyxhQUFBLE1BQUEsTUFBQSxzQkFBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLGNBQUE7S0FBQSxNQUFBLFFBQUEsSUFBZ0I7S0FBUSxNQUFBLEtBQUEsVUFBQTtNQUFBLElBQVIsV0FBUTtLQUFBO0lBQUE7SUFBQSxVQUFBO0dBQUEsR0FBQSx3QkFBQSwyQkFBQTtHQUtLLGFBQUEsTUFBQSxNQUFBLGtCQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsVUFBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFJLE1BQUEsS0FBQSxVQUFBO01BQUEsSUFBSixPQUFJO0tBQUE7SUFBQTtJQUFBLFVBQUE7R0FBQSxHQUFBLG9CQUFBLHVCQUFBO0dBUWpELGFBQUEsTUFBQSxNQUFBLHVCQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsV0FBQTtLQUFBLE1BQUEsS0FBQSxVQUFBO01BQUEsSUFBVyxRQUFLO0tBQUE7SUFBQTtJQUFBLFVBQUE7R0FBQSxHQUFBLE1BQUEsMEJBQUE7Ozs7Ozs7OztHQWpDZ0IsS0FBQSxjQUFzQjtFQUFnQjs7R0FDL0MsS0FBQSxTQUF5QixDQUFDLFVBQVUsaUJBQUssQ0FBQztFQUFFO0VBU25FOzs7O0VBQUEsSUFBZ0IscUJBQWtCO0dBQUEsT0FBQSxLQUFBO0VBQUE7RUFBbEMsSUFBZ0IsbUJBQWtCLE9BQUE7R0FBQSxLQUFBLHVDQUFBO0VBQUE7RUFVbEM7Ozs7Ozs7RUFBQSxJQUFnQixXQUFRO0dBQUEsT0FBQSxLQUFBO0VBQUE7RUFBeEIsSUFBZ0IsU0FBUSxPQUFBO0dBQUEsS0FBQSw2QkFBQTtFQUFBO0VBS0s7Ozs7RUFBQSxJQUFnQixPQUFJO0dBQUEsT0FBQSxLQUFBO0VBQUE7RUFBcEIsSUFBZ0IsS0FBSSxPQUFBO0dBQUEsS0FBQSx5QkFBQTtFQUFBOzs7Ozs7RUFRakQsSUFBVyxNQUFNLE9BQThCO0dBQzdDLElBQUksWUFBWSxDQUFDLEtBQUssWUFBWTtJQUNoQyxLQUFLLFNBQVM7SUFDZDtHQUNGO0dBQ0EsS0FBSyxrQkFBa0IsS0FBSztFQUM5QjtFQUNBLElBQVcsUUFBSztHQUNkLE9BQU8sWUFBWSxDQUFDLEtBQUssYUFDckIsS0FBSyxTQUNMLEtBQUssV0FDSCxLQUFLLEtBQUssUUFBUSxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFFLEtBQUssSUFDcEQsS0FBSyxLQUFLLE1BQU0sTUFBTSxFQUFFLE9BQU8sR0FBRyxTQUFTO0VBQ3BEOztFQUlBLElBQVcsT0FBSTtHQUNiLE9BQU8sTUFBTSxLQUFLLEtBQUssbUJBQXFDLFNBQVMsS0FBSyxDQUFBLENBQUU7RUFDOUU7RUFFQSxjQUFBO0dBQ0UsTUFBSztHQXBEcUIsS0FBQSx1QkFOakIsa0JBQUEsTUFBQSwwQkFBQSxHQU11QyxDQUFDLFdBQVcsS0FBSztHQU9uRCxLQUFBLHVDQUFBLGtCQUFBLE1BQUEsa0NBQTZCLEVBQUU7R0FVL0IsS0FBQSw4QkFBQSxrQkFBQSxNQUFBLHFDQUFBLEdBQUEsa0JBQUEsTUFBQSx3QkFBb0IsS0FBSztHQUtJLEtBQUEsMEJBQUEsa0JBQUEsTUFBQSwyQkFBQSxHQUFBLGtCQUFBLE1BQUEsb0JBQThCLElBQUk7R0FzQnZFLEtBQUEsVUFBTSxrQkFBQSxNQUFBLHVCQUFBLEdBQTRCO0dBU3hDLEtBQUssbUJBQW1CLFlBQVksTUFBTSxLQUFLLG9CQUFvQixDQUFDLENBQUM7RUFDdkU7RUFFbUIsV0FBVyxtQkFBeUQ7R0FDckYsTUFBTSxXQUFXLGlCQUFpQjtHQUVsQyxJQUFJLGtCQUFrQixJQUFJLE9BQU8sS0FBSyxDQUFDLEtBQUssY0FBYyxLQUFLLFFBQzdELEtBQUssa0JBQWtCLEtBQUssS0FBSztHQUduQyxJQUFJLGtCQUFrQixJQUFJLFVBQVUsR0FDbEMsS0FBSyxLQUFLLFNBQVMsTUFBTSxFQUFFLGdCQUFnQixVQUFVLENBQUM7R0FHeEQsSUFBSSxrQkFBa0IsSUFBSSxjQUFjLEtBQUssa0JBQWtCLElBQUksVUFBVTtRQUN2RSxDQUFDLEtBQUssVUFBVTtLQUVsQixLQUFLLEtBQ0YsUUFBUSxRQUFRLElBQUksT0FBTyxFQUMzQixNQUFNLENBQUMsRUFDUCxTQUFTLFFBQVMsSUFBSSxVQUFVLEtBQU07S0FFekMsS0FBSyx3QkFBdUI7SUFDOUIsT0FBTyxJQUFJLGtCQUFrQixJQUFJLFVBQVUsR0FFekMsS0FBSyxhQUFZLEVBQUcsU0FBUyxNQUFPLEVBQUUsV0FBVyxDQUFFO0dBQUE7R0FJdkQsSUFBSSxrQkFBa0IsSUFBSSxvQkFBb0IsS0FBSyxrQkFBa0IsSUFBSSxVQUFVLEdBQ2pGLElBQUksS0FBSyxVQUFVO0lBQ2pCLEtBQUssVUFBVSxPQUFPLEtBQUsscUJBQXFCLE9BQU87SUFDdkQsS0FBSyxVQUFVLFlBQVk7R0FDN0IsT0FBTztJQUNMLEtBQUssVUFBVSxPQUFPO0lBQ3RCLEtBQUssVUFBVSxZQUFZLEtBQUs7R0FDbEM7RUFFSjtFQUVRLGVBQVk7R0FDbEIsT0FBTyxLQUFLLEtBQUssUUFBUSxNQUFNLENBQUMsRUFBRSxRQUFRO0VBQzVDOztFQUdVLDBCQUF1QjtHQUMvQixNQUFNLGNBQWMsS0FBSyxhQUFZO0dBQ3JDLE1BQU0sY0FBYyxZQUFZLE1BQU0sTUFBTSxFQUFFLE9BQU8sS0FBSyxZQUFZO0dBQ3RFLFlBQVksU0FBUyxNQUFPLEVBQUUsV0FBVyxNQUFNLGNBQWMsSUFBSSxFQUFHO0VBQ3RFO0VBRVEsb0JBQW9CLEtBQWtCO0dBQzVDLElBQUksS0FBSyxZQUFZLENBQUMsa0JBQWtCLEdBQUcsR0FDekM7R0FFRixJQUFJLGVBQWM7R0FFbEIsTUFBTSxjQUFjLEtBQUssYUFBWTtHQUNyQyxNQUFNLFVBQVUsWUFBWSxRQUFRLElBQUksTUFBMEI7R0FDbEUsSUFBSSxZQUFZLElBQ2Q7R0FJRixNQUFNLFVBQVUsWUFERSxvQkFBb0IsS0FBSyxTQUFTLFlBQVksTUFDcEM7R0FHNUIsWUFBWSxTQUFTLE1BQU8sRUFBRSxXQUFXLE1BQU0sVUFBVSxJQUFJLEVBQUc7R0FDaEUsUUFBUSxNQUFLO0VBQ2Y7RUFFUSxrQkFBa0IsT0FBVTtHQUNsQyxNQUFNLE9BQU8sS0FBSztHQUVsQixJQUFJLFVBQVUsTUFDWixLQUFLLFNBQVMsTUFBTyxFQUFFLFVBQVUsS0FBTTtRQUNsQyxJQUFJLEtBQUssVUFBVTtJQUN4QixJQUFJLENBQUMsTUFBTSxRQUFRLEtBQUssS0FBSyxLQUFLLE9BQU8sTUFBTSxFQUFFLFVBQVUsS0FBSyxHQUM5RCxJQUFJO0tBR0YsUUFBUSxLQUFLLE1BQU0sS0FBZTtJQUNwQyxRQUFRLENBRVI7SUFFRixNQUFNLGVBQWUsTUFBTSxRQUFRLEtBQUssSUFBSSxRQUFRLENBQUMsS0FBSztJQUMxRCxLQUFLLFNBQVMsTUFBTyxFQUFFLFVBQVUsYUFBYSxTQUFTLEVBQUUsS0FBSyxDQUFFO0dBQ2xFLE9BQ0UsSUFBSSxDQUFDLE1BQU0sUUFBUSxLQUFLLEdBQ3RCLEtBQUssU0FBUyxNQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsS0FBTTtFQUt6RDtFQUVtQixTQUFNO0dBQ3ZCLE9BQU8sSUFBSTtRQUNQLEtBQUssV0FBVztJQUNoQixPQUFPO0lBQ1AsV0FBVyxLQUFLLFdBQVcsS0FBSyxxQkFBcUIsS0FBQTtJQUN0RCxFQUFBOztFQUVMIn0=
@@ -157,13 +157,28 @@ var SbbTagElement = (() => {
157
157
  super();
158
158
  __runInitializers(this, _size_extraInitializers);
159
159
  this.addEventListener?.("click", () => this._handleClick());
160
- this.addController(new SbbPropertyWatcherController(this, () => this._tagGroup(), { size: (g) => {
161
- this.size = g.size;
162
- } }));
160
+ this.addController(new SbbPropertyWatcherController(this, () => this._tagGroup(), {
161
+ multiple: () => this._updateAriaRole(),
162
+ size: (g) => {
163
+ this.size = g.size;
164
+ }
165
+ }));
163
166
  }
164
167
  _tagGroup() {
165
168
  return this.closest?.("sbb-tag-group") ?? null;
166
169
  }
170
+ _updateAriaRole() {
171
+ const tagGroup = this._tagGroup();
172
+ if (tagGroup && !tagGroup.multiple) {
173
+ this.internals.role = "radio";
174
+ this.internals.ariaChecked = `${this.checked}`;
175
+ this.internals.ariaPressed = null;
176
+ } else {
177
+ this.internals.role = "button";
178
+ this.internals.ariaChecked = null;
179
+ this.internals.ariaPressed = `${this.checked}`;
180
+ }
181
+ }
167
182
  isDisabledExternally() {
168
183
  return this._tagGroup()?.disabled ?? false;
169
184
  }
@@ -173,7 +188,6 @@ var SbbTagElement = (() => {
173
188
  const tagGroup = this._tagGroup();
174
189
  if (tagGroup && !tagGroup.multiple && this.checked) return;
175
190
  this.checked = !this.checked;
176
- /** The input event fires when the value has been changed as a direct result of a user action. */
177
191
  this.dispatchEvent(new InputEvent("input", {
178
192
  bubbles: true,
179
193
  composed: true
@@ -192,13 +206,19 @@ var SbbTagElement = (() => {
192
206
  }
193
207
  willUpdate(changedProperties) {
194
208
  super.willUpdate(changedProperties);
209
+ const tagGroup = this._tagGroup();
195
210
  if (changedProperties.has("checked")) {
196
- this.internals.ariaPressed = `${this.checked}`;
211
+ this._updateAriaRole();
197
212
  this.toggleState("checked", this.checked);
198
213
  this.updateFormValue();
199
214
  }
200
- const tagGroup = this._tagGroup();
201
- if (tagGroup && !tagGroup.multiple && changedProperties.has("checked") && this.checked) tagGroup?.tags.filter((t) => t !== this).forEach((t) => t.checked = false);
215
+ if (tagGroup && !tagGroup.multiple && changedProperties.has("checked")) {
216
+ if (this.checked) tagGroup.tags.forEach((t) => {
217
+ t.tabIndex = t === this ? 0 : -1;
218
+ t.checked = t === this;
219
+ });
220
+ else if (!tagGroup.tags.some((t) => t.checked)) tagGroup["updateExclusiveTabIndex"]();
221
+ }
202
222
  }
203
223
  /**
204
224
  * @internal
@@ -235,4 +255,4 @@ var SbbTagElement = (() => {
235
255
  //#endregion
236
256
  export { SbbTagElement as t };
237
257
 
238
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLmNvbXBvbmVudC1ENllvd3VjVy5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy90YWcuc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy90YWcuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbiRkaXNhYmxlZDogJzpkaXNhYmxlZCwgW2Rpc2FibGVkLWludGVyYWN0aXZlXSc7XG4kYWN0aXZlOiAnOmFjdGl2ZSwgOnN0YXRlKGFjdGl2ZSknO1xuXG46aG9zdCB7XG4gIC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb246IHZhcihcbiAgICAtLXNiYi1kaXNhYmxlLWFuaW1hdGlvbi1kdXJhdGlvbixcbiAgICB2YXIoLS1zYmItYW5pbWF0aW9uLWR1cmF0aW9uLTJ4KVxuICApO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gIC8vIFVzZSAhaW1wb3J0YW50IGhlcmUgdG8gbm90IGludGVyZmVyZSB3aXRoIEZpcmVmb3ggZm9jdXMgcmluZyBkZWZpbml0aW9uXG4gIC8vIHdoaWNoIGFwcGVhcnMgaW4gbm9ybWFsaXplIENTUyBvZiBzZXZlcmFsIGZyYW1ld29ya3MuXG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuOmhvc3QoW3NpemU9J3MnXSkge1xuICAtLXNiYi10YWctaGVpZ2h0OiB2YXIoLS1zYmItdGFnLWhlaWdodC1zKTtcbiAgLS1zYmItdGFnLXBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItdGFnLXBhZGRpbmctaW5saW5lLXMpO1xufVxuXG46aG9zdChbc2l6ZT0nbSddKSB7XG4gIC0tc2JiLXRhZy1oZWlnaHQ6IHZhcigtLXNiYi10YWctaGVpZ2h0LW0pO1xuICAtLXNiYi10YWctcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi10YWctcGFkZGluZy1pbmxpbmUtbSk7XG59XG5cbi8vIEFjdGl2ZSBzdGF0ZVxuOmhvc3QoOnN0YXRlKGNoZWNrZWQpKSB7XG4gIC0tc2JiLXRhZy1ib3JkZXItY29sb3I6IHZhcigtLXNiYi1ib3JkZXItY29sb3ItMyk7XG4gIC0tc2JiLXRhZy1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuXG4gIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogSGlnaGxpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgLS1zYmItdGFnLWJvcmRlci13aWR0aDogdmFyKC0tc2JiLWJvcmRlci13aWR0aC00eCk7XG4gIH1cbn1cblxuOmhvc3QoOmlzKCN7JGRpc2FibGVkfSkpIHtcbiAgLS1zYmItdGFnLXRleHQtY29sb3I6IGxpZ2h0LWRhcmsodmFyKC0tc2JiLWNvbG9yLWdyYW5pdGUpLCB2YXIoLS1zYmItY29sb3ItYWx1bWluaXVtKSk7XG4gIC0tc2JiLXRhZy1hbW91bnQtY29sb3I6IHZhcigtLXNiYi10YWctdGV4dC1jb2xvcik7XG4gIC0tc2JiLXRhZy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItYmFja2dyb3VuZC1jb2xvci0zKTtcbiAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogbGlnaHQtZGFyayh2YXIoLS1zYmItY29sb3ItY2VtZW50KSwgdmFyKC0tc2JiLWNvbG9yLXNtb2tlKSk7XG4gIC0tc2JiLXRhZy1ib3JkZXItc3R5bGU6IGRhc2hlZDtcbiAgLS1zYmItdGFnLWN1cnNvcjogdW5zZXQ7XG4gIC0tc2JiLXRhZy1wb2ludGVyLWV2ZW50czogbm9uZTtcblxuICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgIC0tc2JiLXRhZy10ZXh0LWNvbG9yOiBHcmF5VGV4dDtcbiAgICAtLXNiYi10YWctYW1vdW50LWNvbG9yOiBHcmF5VGV4dDtcbiAgICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBHcmF5VGV4dDtcbiAgfVxufVxuXG46aG9zdCg6c3RhdGUoY2hlY2tlZCk6aXMoI3skZGlzYWJsZWR9KSkge1xuICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBsaWdodC1kYXJrKHZhcigtLXNiYi1jb2xvci1tZXRhbCksIHZhcigtLXNiYi1jb2xvci1jZW1lbnQpKTtcbiAgLS1zYmItdGFnLWJvcmRlci1zdHlsZTogZGFzaGVkO1xufVxuXG46aG9zdCg6aG92ZXI6bm90KCN7JGRpc2FibGVkfSwgI3skYWN0aXZlfSkpIHtcbiAgQGluY2x1ZGUgc2JiLmhvdmVyLW1xKCRob3ZlcjogdHJ1ZSkge1xuICAgIC0tc2JiLXRhZy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItYmFja2dyb3VuZC1jb2xvci0zKTtcbiAgICAtLXNiYi10YWctaW5zZXQ6IGNhbGModmFyKC0tc2JiLWJvcmRlci13aWR0aC0yeCkgKiAtMSk7XG4gICAgLS1zYmItdGFnLWNvbnRlbnQtc2hpZnQ6IHRyYW5zbGF0ZVkoY2FsYyh2YXIoLS1zYmItYm9yZGVyLXdpZHRoLTF4KSAqIC0xKSk7XG5cbiAgICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgICAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogSGlnaGxpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4vLyBQcmVzc2VkIHN0YXRlXG46aG9zdCg6aXMoI3skYWN0aXZlfSk6bm90KCN7JGRpc2FibGVkfSkpIHtcbiAgLS1zYmItdGFnLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTMpO1xuICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBsaWdodC1kYXJrKHZhcigtLXNiYi1jb2xvci1pcm9uKSwgdmFyKC0tc2JiLWNvbG9yLXN0b3JtKSk7XG4gIC0tc2JiLXRhZy1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuICAtLXNiYi10YWctdGV4dC1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLTQpO1xuXG4gIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogSGlnaGxpZ2h0O1xuICAgIC0tc2JiLXRhZy10ZXh0LWNvbG9yOiBCdXR0b25UZXh0O1xuICB9XG59XG5cbi5zYmItdGFnIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IHZhcigtLXNiYi10YWctaGVpZ2h0KTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IHZhcigtLXNiYi10ZXh0LWZvbnQtc2l6ZS14cyk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1zYmItdHlwby1sZXR0ZXItc3BhY2luZy10ZXh0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXNiYi10eXBvLWxpbmUtaGVpZ2h0LXRleHQpO1xuICBnYXA6IHZhcigtLXNiYi10YWctZ2FwKTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi10YWctcGFkZGluZy1pbmxpbmUpO1xuICBjdXJzb3I6IHZhcigtLXNiYi10YWctY3Vyc29yLCB2YXIoLS1zYmItY3Vyc29yLXBvaW50ZXIpKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLXRhZy1ib3JkZXItcmFkaXVzKTtcbiAgY29sb3I6IHZhcigtLXNiYi10YWctdGV4dC1jb2xvcik7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXNiYi10YWctYW5pbWF0aW9uLWR1cmF0aW9uKSB2YXIoLS1zYmItdGFnLWFuaW1hdGlvbi1lYXNpbmcpO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IHZhcigtLXNiYi10YWctcG9pbnRlci1ldmVudHMsIHVuc2V0KTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogdmFyKC0tc2JiLXRhZy1pbnNldCwgMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLXRhZy1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICBib3JkZXI6IHZhcigtLXNiYi10YWctYm9yZGVyLXdpZHRoKSB2YXIoLS1zYmItdGFnLWJvcmRlci1zdHlsZSkgdmFyKC0tc2JiLXRhZy1ib3JkZXItY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXNiYi10YWctYm9yZGVyLXJhZGl1cyk7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogdmFyKC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb24pO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYmItdGFnLWFuaW1hdGlvbi1lYXNpbmcpO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGluc2V0LCBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXItY29sb3IsIGJveC1zaGFkb3c7XG5cbiAgICA6aG9zdCg6Zm9jdXMtdmlzaWJsZSkgJiB7XG4gICAgICBAaW5jbHVkZSBzYmIuZm9jdXMtb3V0bGluZTtcbiAgICB9XG4gIH1cbn1cblxuLnNiYi10YWdfX2ljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IGNhbGModmFyKC0tc2JiLXR5cG8tbGluZS1oZWlnaHQtdGV4dCkgKiAxZW0pO1xuICBmbGV4LXNocmluazogMDtcblxuICA6aG9zdCg6bm90KDpzdGF0ZShzbG90dGVkLWljb24pLCA6c3RhdGUoaGFzLWljb24tbmFtZSkpKSAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zYmItdGFnX190ZXh0IHtcbiAgQGluY2x1ZGUgc2JiLmVsbGlwc2lzO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uc2JiLXRhZ19fYW1vdW50IHtcbiAgY29sb3I6IHZhcigtLXNiYi10YWctYW1vdW50LWNvbG9yKTtcblxuICA6aG9zdCg6bm90KDpzdGF0ZShzbG90dGVkLWFtb3VudCksIFthbW91bnRdKSkgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uc2JiLXRhZy0tc2hpZnQge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb24pIHZhcigtLXNiYi10YWctYW5pbWF0aW9uLWVhc2luZyk7XG4gIHRyYW5zZm9ybTogdmFyKC0tc2JiLXRhZy1jb250ZW50LXNoaWZ0LCAwKTtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbn1cbiIsImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG4gIHVuc2FmZUNTUyxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQge1xuICBmb3JjZVR5cGUsXG4gIHR5cGUgRm9ybVJlc3RvcmVSZWFzb24sXG4gIHR5cGUgRm9ybVJlc3RvcmVTdGF0ZSxcbiAgb21pdEVtcHR5Q29udmVydGVyLFxuICBTYmJCdXR0b25MaWtlQmFzZUVsZW1lbnQsXG4gIFNiYkRpc2FibGVkVGFiSW5kZXhBY3Rpb25NaXhpbixcbiAgU2JiUHJvcGVydHlXYXRjaGVyQ29udHJvbGxlcixcbn0gZnJvbSAnLi4vLi4vY29yZS50cyc7XG5pbXBvcnQgeyBTYmJJY29uTmFtZU1peGluIH0gZnJvbSAnLi4vLi4vaWNvbi5wdXJlLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiVGFnR3JvdXBFbGVtZW50IH0gZnJvbSAnLi4vdGFnLWdyb3VwL3RhZy1ncm91cC5jb21wb25lbnQudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90YWcuc2Nzcz9pbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgc2VsZWN0YWJsZSBlbGVtZW50IHdoaWNoIGNhbiBiZSB1c2VkIGFzIGEgZmlsdGVyLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIHRhZyBsYWJlbC5cbiAqIEBzbG90IGljb24gLSBVc2UgdGhpcyBzbG90IHRvIGRpc3BsYXkgYW4gaWNvbiBhdCB0aGUgY29tcG9uZW50IHN0YXJ0LCBieSBwcm92aWRpbmcgYSBgc2JiLWljb25gIGNvbXBvbmVudC5cbiAqIEBzbG90IGFtb3VudCAtIFByb3ZpZGUgYW4gYW1vdW50IHRvIHNob3cgaXQgYXQgdGhlIGNvbXBvbmVudCBlbmQuXG4gKiBAb3ZlcnJpZGVUeXBlIHZhbHVlIC0gKFQgPSBzdHJpbmcpIHwgbnVsbFxuICovXG5leHBvcnQgY2xhc3MgU2JiVGFnRWxlbWVudDxUID0gc3RyaW5nPiBleHRlbmRzIFNiYkljb25OYW1lTWl4aW4oXG4gIFNiYkRpc2FibGVkVGFiSW5kZXhBY3Rpb25NaXhpbihTYmJCdXR0b25MaWtlQmFzZUVsZW1lbnQpLFxuKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItdGFnJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW3Vuc2FmZUNTUyhzdHlsZSldO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICBpbnB1dDogJ2lucHV0JyxcbiAgICBkaWRDaGFuZ2U6ICdkaWRDaGFuZ2UnLFxuICAgIGNoYW5nZTogJ2NoYW5nZScsXG4gIH0gYXMgY29uc3Q7XG5cbiAgLyoqIFZhbHVlIG9mIHRoZSBmb3JtIGVsZW1lbnQuICovXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBhY2Nlc3NvciB2YWx1ZTogVCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBBbW91bnQgZGlzcGxheWVkIGluc2lkZSB0aGUgdGFnLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgY29udmVydGVyOiBvbWl0RW1wdHlDb252ZXJ0ZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIGFtb3VudDogc3RyaW5nID0gJyc7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHRhZyBpcyBjaGVja2VkLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogZmFsc2UsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIGNoZWNrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogVGFnIHNpemUsIGVpdGhlciBzIChsZWFuIHRoZW1lIGRlZmF1bHQpIG9yIG0gKHN0YW5kYXJkIHRoZW1lIGRlZmF1bHQpLlxuICAgKiBUaGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIGNsb3Nlc3QgYDxzYmItdGFnLWdyb3VwPmAuXG4gICAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBzaXplOiAncycgfCAnbScgfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LignY2xpY2snLCAoKSA9PiB0aGlzLl9oYW5kbGVDbGljaygpKTtcbiAgICB0aGlzLmFkZENvbnRyb2xsZXIoXG4gICAgICBuZXcgU2JiUHJvcGVydHlXYXRjaGVyQ29udHJvbGxlcih0aGlzLCAoKSA9PiB0aGlzLl90YWdHcm91cCgpLCB7XG4gICAgICAgIHNpemU6IChnKSA9PiB7XG4gICAgICAgICAgdGhpcy5zaXplID0gZy5zaXplO1xuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX3RhZ0dyb3VwKCk6IFNiYlRhZ0dyb3VwRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmNsb3Nlc3Q/Lignc2JiLXRhZy1ncm91cCcpID8/IG51bGw7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgaXNEaXNhYmxlZEV4dGVybmFsbHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3RhZ0dyb3VwKCk/LmRpc2FibGVkID8/IGZhbHNlO1xuICB9XG5cbiAgLyoqIE1ldGhvZCB0cmlnZ2VyZWQgb24gYnV0dG9uIGNsaWNrLiBJbnZlcnRzIHRoZSBjaGVja2VkIHZhbHVlIGFuZCBlbWl0cyBldmVudHMuICovXG4gIHByaXZhdGUgX2hhbmRsZUNsaWNrKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gUHJldmVudCBkZWFjdGl2YXRpbmcgb24gZXhjbHVzaXZlIC8gcmFkaW8gbW9kZVxuICAgIGNvbnN0IHRhZ0dyb3VwID0gdGhpcy5fdGFnR3JvdXAoKTtcbiAgICBpZiAodGFnR3JvdXAgJiYgIXRhZ0dyb3VwLm11bHRpcGxlICYmIHRoaXMuY2hlY2tlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNoZWNrZWQgPSAhdGhpcy5jaGVja2VkO1xuXG4gICAgLyoqIFRoZSBpbnB1dCBldmVudCBmaXJlcyB3aGVuIHRoZSB2YWx1ZSBoYXMgYmVlbiBjaGFuZ2VkIGFzIGEgZGlyZWN0IHJlc3VsdCBvZiBhIHVzZXIgYWN0aW9uLiAqL1xuICAgIHRoaXMuZGlzcGF0Y2hFdmVudChcbiAgICAgIG5ldyBJbnB1dEV2ZW50KCdpbnB1dCcsIHtcbiAgICAgICAgYnViYmxlczogdHJ1ZSxcbiAgICAgICAgY29tcG9zZWQ6IHRydWUsXG4gICAgICB9KSxcbiAgICApO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGNoYW5nZSBldmVudCBpcyBmaXJlZCB3aGVuIHRoZSB1c2VyIG1vZGlmaWVzIHRoZSBlbGVtZW50J3MgdmFsdWUuXG4gICAgICogVW5saWtlIHRoZSBpbnB1dCBldmVudCwgdGhlIGNoYW5nZSBldmVudCBpcyBub3QgbmVjZXNzYXJpbHkgZmlyZWRcbiAgICAgKiBmb3IgZWFjaCBhbHRlcmF0aW9uIHRvIGFuIGVsZW1lbnQncyB2YWx1ZS5cbiAgICAgKi9cbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdjaGFuZ2UnLCB7IGJ1YmJsZXM6IHRydWUgfSkpO1xuXG4gICAgLyoqXG4gICAgICogRGVwcmVjYXRlZC4gTWlycm9ycyBjaGFuZ2UgZXZlbnQgZm9yIFJlYWN0LiBXaWxsIGJlIHJlbW92ZWQgb25jZSBSZWFjdCBwcm9wZXJseSBzdXBwb3J0cyBjaGFuZ2UgZXZlbnRzLlxuICAgICAqIEBkZXByZWNhdGVkXG4gICAgICovXG4gICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnZGlkQ2hhbmdlJywgeyBidWJibGVzOiB0cnVlIH0pKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnY2hlY2tlZCcpKSB7XG4gICAgICB0aGlzLmludGVybmFscy5hcmlhUHJlc3NlZCA9IGAke3RoaXMuY2hlY2tlZH1gO1xuICAgICAgdGhpcy50b2dnbGVTdGF0ZSgnY2hlY2tlZCcsIHRoaXMuY2hlY2tlZCk7XG4gICAgICB0aGlzLnVwZGF0ZUZvcm1WYWx1ZSgpO1xuICAgIH1cblxuICAgIGNvbnN0IHRhZ0dyb3VwID0gdGhpcy5fdGFnR3JvdXAoKTtcbiAgICBpZiAodGFnR3JvdXAgJiYgIXRhZ0dyb3VwLm11bHRpcGxlICYmIGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnY2hlY2tlZCcpICYmIHRoaXMuY2hlY2tlZCkge1xuICAgICAgdGFnR3JvdXA/LnRhZ3MuZmlsdGVyKCh0KSA9PiB0ICE9PSB0aGlzKS5mb3JFYWNoKCh0KSA9PiAodC5jaGVja2VkID0gZmFsc2UpKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZm9ybVJlc2V0Q2FsbGJhY2soKTogdm9pZCB7XG4gICAgdGhpcy5jaGVja2VkID0gdGhpcy5oYXNBdHRyaWJ1dGUoJ2NoZWNrZWQnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBmb3JtU3RhdGVSZXN0b3JlQ2FsbGJhY2soXG4gICAgc3RhdGU6IEZvcm1SZXN0b3JlU3RhdGUgfCBudWxsLFxuICAgIF9yZWFzb246IEZvcm1SZXN0b3JlUmVhc29uLFxuICApOiB2b2lkIHtcbiAgICBpZiAoc3RhdGUpIHtcbiAgICAgIHRoaXMuY2hlY2tlZCA9IHN0YXRlID09PSAndHJ1ZSc7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHVwZGF0ZUZvcm1WYWx1ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jaGVja2VkKSB7XG4gICAgICBzdXBlci51cGRhdGVGb3JtVmFsdWUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbnRlcm5hbHMuc2V0Rm9ybVZhbHVlKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmb3JtU3RhdGUoKTogRm9ybVJlc3RvcmVTdGF0ZSB7XG4gICAgcmV0dXJuIGAke3RoaXMuY2hlY2tlZH1gO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlclRlbXBsYXRlKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRhZ19faWNvbiBzYmItdGFnLS1zaGlmdFwiPiAke3RoaXMucmVuZGVySWNvblNsb3QoKX0gPC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItdGFnX190ZXh0IHNiYi10YWctLXNoaWZ0XCI+XG4gICAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgIDwvc3Bhbj5cbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRhZ19fYW1vdW50IHNiYi10YWctLXNoaWZ0XCI+XG4gICAgICAgIDxzbG90IG5hbWU9XCJhbW91bnRcIj4ke3RoaXMuYW1vdW50fTwvc2xvdD5cbiAgICAgIDwvc3Bhbj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdGFnJzogU2JiVGFnRWxlbWVudDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztJQytCYSx1QkFBYTttQkFBcUIsaUJBQzdDLCtCQUErQix3QkFBd0IsQ0FBQzs7Ozs7Ozs7Ozs7OztjQUQ3QyxzQkFBa0MsWUFFOUM7Ozt3QkFVRSxTQUFRLENBQUU7eUJBSVYsVUFBUyxHQUNULFNBQVM7SUFBRSxTQUFTO0lBQU0sV0FBVztHQUFrQixDQUFFLENBQUM7MEJBSTFELFVBQVMsR0FDVCxTQUFTO0lBQUUsU0FBUztJQUFPLE1BQU07R0FBTyxDQUFFLENBQUM7dUJBTzNDLFNBQVMsRUFBRSxTQUFTLEtBQUksQ0FBRSxDQUFDO0dBaEI1QixhQUFBLE1BQUEsTUFBQSxtQkFBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLFdBQUE7S0FBQSxNQUFBLFFBQUEsSUFBZ0I7S0FBSyxNQUFBLEtBQUEsVUFBQTtNQUFBLElBQUwsUUFBSztLQUFBO0lBQUE7SUFBQSxVQUFBO0dBQUEsR0FBQSxxQkFBQSx3QkFBQTtHQUtyQixhQUFBLE1BQUEsTUFBQSxvQkFBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLFlBQUE7S0FBQSxNQUFBLFFBQUEsSUFBZ0I7S0FBTSxNQUFBLEtBQUEsVUFBQTtNQUFBLElBQU4sU0FBTTtLQUFBO0lBQUE7SUFBQSxVQUFBO0dB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
258
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLmNvbXBvbmVudC1DRERiMmZuVi5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy90YWcuc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy90YWcuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbiRkaXNhYmxlZDogJzpkaXNhYmxlZCwgW2Rpc2FibGVkLWludGVyYWN0aXZlXSc7XG4kYWN0aXZlOiAnOmFjdGl2ZSwgOnN0YXRlKGFjdGl2ZSknO1xuXG46aG9zdCB7XG4gIC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb246IHZhcihcbiAgICAtLXNiYi1kaXNhYmxlLWFuaW1hdGlvbi1kdXJhdGlvbixcbiAgICB2YXIoLS1zYmItYW5pbWF0aW9uLWR1cmF0aW9uLTJ4KVxuICApO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gIC8vIFVzZSAhaW1wb3J0YW50IGhlcmUgdG8gbm90IGludGVyZmVyZSB3aXRoIEZpcmVmb3ggZm9jdXMgcmluZyBkZWZpbml0aW9uXG4gIC8vIHdoaWNoIGFwcGVhcnMgaW4gbm9ybWFsaXplIENTUyBvZiBzZXZlcmFsIGZyYW1ld29ya3MuXG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuOmhvc3QoW3NpemU9J3MnXSkge1xuICAtLXNiYi10YWctaGVpZ2h0OiB2YXIoLS1zYmItdGFnLWhlaWdodC1zKTtcbiAgLS1zYmItdGFnLXBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItdGFnLXBhZGRpbmctaW5saW5lLXMpO1xufVxuXG46aG9zdChbc2l6ZT0nbSddKSB7XG4gIC0tc2JiLXRhZy1oZWlnaHQ6IHZhcigtLXNiYi10YWctaGVpZ2h0LW0pO1xuICAtLXNiYi10YWctcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi10YWctcGFkZGluZy1pbmxpbmUtbSk7XG59XG5cbi8vIEFjdGl2ZSBzdGF0ZVxuOmhvc3QoOnN0YXRlKGNoZWNrZWQpKSB7XG4gIC0tc2JiLXRhZy1ib3JkZXItY29sb3I6IHZhcigtLXNiYi1ib3JkZXItY29sb3ItMyk7XG4gIC0tc2JiLXRhZy1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuXG4gIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogSGlnaGxpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgLS1zYmItdGFnLWJvcmRlci13aWR0aDogdmFyKC0tc2JiLWJvcmRlci13aWR0aC00eCk7XG4gIH1cbn1cblxuOmhvc3QoOmlzKCN7JGRpc2FibGVkfSkpIHtcbiAgLS1zYmItdGFnLXRleHQtY29sb3I6IGxpZ2h0LWRhcmsodmFyKC0tc2JiLWNvbG9yLWdyYW5pdGUpLCB2YXIoLS1zYmItY29sb3ItYWx1bWluaXVtKSk7XG4gIC0tc2JiLXRhZy1hbW91bnQtY29sb3I6IHZhcigtLXNiYi10YWctdGV4dC1jb2xvcik7XG4gIC0tc2JiLXRhZy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItYmFja2dyb3VuZC1jb2xvci0zKTtcbiAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogbGlnaHQtZGFyayh2YXIoLS1zYmItY29sb3ItY2VtZW50KSwgdmFyKC0tc2JiLWNvbG9yLXNtb2tlKSk7XG4gIC0tc2JiLXRhZy1ib3JkZXItc3R5bGU6IGRhc2hlZDtcbiAgLS1zYmItdGFnLWN1cnNvcjogdW5zZXQ7XG4gIC0tc2JiLXRhZy1wb2ludGVyLWV2ZW50czogbm9uZTtcblxuICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgIC0tc2JiLXRhZy10ZXh0LWNvbG9yOiBHcmF5VGV4dDtcbiAgICAtLXNiYi10YWctYW1vdW50LWNvbG9yOiBHcmF5VGV4dDtcbiAgICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBHcmF5VGV4dDtcbiAgfVxufVxuXG46aG9zdCg6c3RhdGUoY2hlY2tlZCk6aXMoI3skZGlzYWJsZWR9KSkge1xuICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBsaWdodC1kYXJrKHZhcigtLXNiYi1jb2xvci1tZXRhbCksIHZhcigtLXNiYi1jb2xvci1jZW1lbnQpKTtcbiAgLS1zYmItdGFnLWJvcmRlci1zdHlsZTogZGFzaGVkO1xufVxuXG46aG9zdCg6aG92ZXI6bm90KCN7JGRpc2FibGVkfSwgI3skYWN0aXZlfSkpIHtcbiAgQGluY2x1ZGUgc2JiLmhvdmVyLW1xKCRob3ZlcjogdHJ1ZSkge1xuICAgIC0tc2JiLXRhZy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItYmFja2dyb3VuZC1jb2xvci0zKTtcbiAgICAtLXNiYi10YWctaW5zZXQ6IGNhbGModmFyKC0tc2JiLWJvcmRlci13aWR0aC0yeCkgKiAtMSk7XG4gICAgLS1zYmItdGFnLWNvbnRlbnQtc2hpZnQ6IHRyYW5zbGF0ZVkoY2FsYyh2YXIoLS1zYmItYm9yZGVyLXdpZHRoLTF4KSAqIC0xKSk7XG5cbiAgICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgICAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogSGlnaGxpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4vLyBQcmVzc2VkIHN0YXRlXG46aG9zdCg6aXMoI3skYWN0aXZlfSk6bm90KCN7JGRpc2FibGVkfSkpIHtcbiAgLS1zYmItdGFnLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTMpO1xuICAtLXNiYi10YWctYm9yZGVyLWNvbG9yOiBsaWdodC1kYXJrKHZhcigtLXNiYi1jb2xvci1pcm9uKSwgdmFyKC0tc2JiLWNvbG9yLXN0b3JtKSk7XG4gIC0tc2JiLXRhZy1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuICAtLXNiYi10YWctdGV4dC1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLTQpO1xuXG4gIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgLS1zYmItdGFnLWJvcmRlci1jb2xvcjogSGlnaGxpZ2h0O1xuICAgIC0tc2JiLXRhZy10ZXh0LWNvbG9yOiBCdXR0b25UZXh0O1xuICB9XG59XG5cbi5zYmItdGFnIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IHZhcigtLXNiYi10YWctaGVpZ2h0KTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IHZhcigtLXNiYi10ZXh0LWZvbnQtc2l6ZS14cyk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1zYmItdHlwby1sZXR0ZXItc3BhY2luZy10ZXh0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXNiYi10eXBvLWxpbmUtaGVpZ2h0LXRleHQpO1xuICBnYXA6IHZhcigtLXNiYi10YWctZ2FwKTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi10YWctcGFkZGluZy1pbmxpbmUpO1xuICBjdXJzb3I6IHZhcigtLXNiYi10YWctY3Vyc29yLCB2YXIoLS1zYmItY3Vyc29yLXBvaW50ZXIpKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLXRhZy1ib3JkZXItcmFkaXVzKTtcbiAgY29sb3I6IHZhcigtLXNiYi10YWctdGV4dC1jb2xvcik7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXNiYi10YWctYW5pbWF0aW9uLWR1cmF0aW9uKSB2YXIoLS1zYmItdGFnLWFuaW1hdGlvbi1lYXNpbmcpO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IHZhcigtLXNiYi10YWctcG9pbnRlci1ldmVudHMsIHVuc2V0KTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogdmFyKC0tc2JiLXRhZy1pbnNldCwgMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLXRhZy1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICBib3JkZXI6IHZhcigtLXNiYi10YWctYm9yZGVyLXdpZHRoKSB2YXIoLS1zYmItdGFnLWJvcmRlci1zdHlsZSkgdmFyKC0tc2JiLXRhZy1ib3JkZXItY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXNiYi10YWctYm9yZGVyLXJhZGl1cyk7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogdmFyKC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb24pO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYmItdGFnLWFuaW1hdGlvbi1lYXNpbmcpO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGluc2V0LCBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXItY29sb3IsIGJveC1zaGFkb3c7XG5cbiAgICA6aG9zdCg6Zm9jdXMtdmlzaWJsZSkgJiB7XG4gICAgICBAaW5jbHVkZSBzYmIuZm9jdXMtb3V0bGluZTtcbiAgICB9XG4gIH1cbn1cblxuLnNiYi10YWdfX2ljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IGNhbGModmFyKC0tc2JiLXR5cG8tbGluZS1oZWlnaHQtdGV4dCkgKiAxZW0pO1xuICBmbGV4LXNocmluazogMDtcblxuICA6aG9zdCg6bm90KDpzdGF0ZShzbG90dGVkLWljb24pLCA6c3RhdGUoaGFzLWljb24tbmFtZSkpKSAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zYmItdGFnX190ZXh0IHtcbiAgQGluY2x1ZGUgc2JiLmVsbGlwc2lzO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uc2JiLXRhZ19fYW1vdW50IHtcbiAgY29sb3I6IHZhcigtLXNiYi10YWctYW1vdW50LWNvbG9yKTtcblxuICA6aG9zdCg6bm90KDpzdGF0ZShzbG90dGVkLWFtb3VudCksIFthbW91bnRdKSkgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uc2JiLXRhZy0tc2hpZnQge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tc2JiLXRhZy1hbmltYXRpb24tZHVyYXRpb24pIHZhcigtLXNiYi10YWctYW5pbWF0aW9uLWVhc2luZyk7XG4gIHRyYW5zZm9ybTogdmFyKC0tc2JiLXRhZy1jb250ZW50LXNoaWZ0LCAwKTtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbn1cbiIsImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG4gIHVuc2FmZUNTUyxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQge1xuICBmb3JjZVR5cGUsXG4gIHR5cGUgRm9ybVJlc3RvcmVSZWFzb24sXG4gIHR5cGUgRm9ybVJlc3RvcmVTdGF0ZSxcbiAgb21pdEVtcHR5Q29udmVydGVyLFxuICBTYmJCdXR0b25MaWtlQmFzZUVsZW1lbnQsXG4gIFNiYkRpc2FibGVkVGFiSW5kZXhBY3Rpb25NaXhpbixcbiAgU2JiUHJvcGVydHlXYXRjaGVyQ29udHJvbGxlcixcbn0gZnJvbSAnLi4vLi4vY29yZS50cyc7XG5pbXBvcnQgeyBTYmJJY29uTmFtZU1peGluIH0gZnJvbSAnLi4vLi4vaWNvbi5wdXJlLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiVGFnR3JvdXBFbGVtZW50IH0gZnJvbSAnLi4vdGFnLWdyb3VwL3RhZy1ncm91cC5jb21wb25lbnQudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90YWcuc2Nzcz9pbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgc2VsZWN0YWJsZSBlbGVtZW50IHdoaWNoIGNhbiBiZSB1c2VkIGFzIGEgZmlsdGVyLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIHRhZyBsYWJlbC5cbiAqIEBzbG90IGljb24gLSBVc2UgdGhpcyBzbG90IHRvIGRpc3BsYXkgYW4gaWNvbiBhdCB0aGUgY29tcG9uZW50IHN0YXJ0LCBieSBwcm92aWRpbmcgYSBgc2JiLWljb25gIGNvbXBvbmVudC5cbiAqIEBzbG90IGFtb3VudCAtIFByb3ZpZGUgYW4gYW1vdW50IHRvIHNob3cgaXQgYXQgdGhlIGNvbXBvbmVudCBlbmQuXG4gKiBAb3ZlcnJpZGVUeXBlIHZhbHVlIC0gKFQgPSBzdHJpbmcpIHwgbnVsbFxuICovXG5leHBvcnQgY2xhc3MgU2JiVGFnRWxlbWVudDxUID0gc3RyaW5nPiBleHRlbmRzIFNiYkljb25OYW1lTWl4aW4oXG4gIFNiYkRpc2FibGVkVGFiSW5kZXhBY3Rpb25NaXhpbihTYmJCdXR0b25MaWtlQmFzZUVsZW1lbnQpLFxuKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItdGFnJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW3Vuc2FmZUNTUyhzdHlsZSldO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICBpbnB1dDogJ2lucHV0JyxcbiAgICBkaWRDaGFuZ2U6ICdkaWRDaGFuZ2UnLFxuICAgIGNoYW5nZTogJ2NoYW5nZScsXG4gIH0gYXMgY29uc3Q7XG5cbiAgLyoqIFZhbHVlIG9mIHRoZSBmb3JtIGVsZW1lbnQuICovXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBhY2Nlc3NvciB2YWx1ZTogVCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBBbW91bnQgZGlzcGxheWVkIGluc2lkZSB0aGUgdGFnLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgY29udmVydGVyOiBvbWl0RW1wdHlDb252ZXJ0ZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIGFtb3VudDogc3RyaW5nID0gJyc7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHRhZyBpcyBjaGVja2VkLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogZmFsc2UsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIGNoZWNrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogVGFnIHNpemUsIGVpdGhlciBzIChsZWFuIHRoZW1lIGRlZmF1bHQpIG9yIG0gKHN0YW5kYXJkIHRoZW1lIGRlZmF1bHQpLlxuICAgKiBUaGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIGNsb3Nlc3QgYDxzYmItdGFnLWdyb3VwPmAuXG4gICAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBzaXplOiAncycgfCAnbScgfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LignY2xpY2snLCAoKSA9PiB0aGlzLl9oYW5kbGVDbGljaygpKTtcbiAgICB0aGlzLmFkZENvbnRyb2xsZXIoXG4gICAgICBuZXcgU2JiUHJvcGVydHlXYXRjaGVyQ29udHJvbGxlcih0aGlzLCAoKSA9PiB0aGlzLl90YWdHcm91cCgpLCB7XG4gICAgICAgIG11bHRpcGxlOiAoKSA9PiB0aGlzLl91cGRhdGVBcmlhUm9sZSgpLFxuICAgICAgICBzaXplOiAoZykgPT4ge1xuICAgICAgICAgIHRoaXMuc2l6ZSA9IGcuc2l6ZTtcbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF90YWdHcm91cCgpOiBTYmJUYWdHcm91cEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5jbG9zZXN0Py4oJ3NiYi10YWctZ3JvdXAnKSA/PyBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlQXJpYVJvbGUoKTogdm9pZCB7XG4gICAgY29uc3QgdGFnR3JvdXAgPSB0aGlzLl90YWdHcm91cCgpO1xuICAgIGlmICh0YWdHcm91cCAmJiAhdGFnR3JvdXAubXVsdGlwbGUpIHtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLnJvbGUgPSAncmFkaW8nO1xuICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYUNoZWNrZWQgPSBgJHt0aGlzLmNoZWNrZWR9YDtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLmFyaWFQcmVzc2VkID0gbnVsbDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbnRlcm5hbHMucm9sZSA9ICdidXR0b24nO1xuICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYUNoZWNrZWQgPSBudWxsO1xuICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYVByZXNzZWQgPSBgJHt0aGlzLmNoZWNrZWR9YDtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgaXNEaXNhYmxlZEV4dGVybmFsbHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3RhZ0dyb3VwKCk/LmRpc2FibGVkID8/IGZhbHNlO1xuICB9XG5cbiAgLyoqIE1ldGhvZCB0cmlnZ2VyZWQgb24gYnV0dG9uIGNsaWNrLiBJbnZlcnRzIHRoZSBjaGVja2VkIHZhbHVlIGFuZCBlbWl0cyBldmVudHMuICovXG4gIHByaXZhdGUgX2hhbmRsZUNsaWNrKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gUHJldmVudCBkZWFjdGl2YXRpbmcgb24gZXhjbHVzaXZlIC8gcmFkaW8gbW9kZVxuICAgIGNvbnN0IHRhZ0dyb3VwID0gdGhpcy5fdGFnR3JvdXAoKTtcbiAgICBpZiAodGFnR3JvdXAgJiYgIXRhZ0dyb3VwLm11bHRpcGxlICYmIHRoaXMuY2hlY2tlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNoZWNrZWQgPSAhdGhpcy5jaGVja2VkO1xuICAgIHRoaXMuZGlzcGF0Y2hFdmVudChcbiAgICAgIG5ldyBJbnB1dEV2ZW50KCdpbnB1dCcsIHtcbiAgICAgICAgYnViYmxlczogdHJ1ZSxcbiAgICAgICAgY29tcG9zZWQ6IHRydWUsXG4gICAgICB9KSxcbiAgICApO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGNoYW5nZSBldmVudCBpcyBmaXJlZCB3aGVuIHRoZSB1c2VyIG1vZGlmaWVzIHRoZSBlbGVtZW50J3MgdmFsdWUuXG4gICAgICogVW5saWtlIHRoZSBpbnB1dCBldmVudCwgdGhlIGNoYW5nZSBldmVudCBpcyBub3QgbmVjZXNzYXJpbHkgZmlyZWRcbiAgICAgKiBmb3IgZWFjaCBhbHRlcmF0aW9uIHRvIGFuIGVsZW1lbnQncyB2YWx1ZS5cbiAgICAgKi9cbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdjaGFuZ2UnLCB7IGJ1YmJsZXM6IHRydWUgfSkpO1xuXG4gICAgLyoqXG4gICAgICogRGVwcmVjYXRlZC4gTWlycm9ycyBjaGFuZ2UgZXZlbnQgZm9yIFJlYWN0LiBXaWxsIGJlIHJlbW92ZWQgb25jZSBSZWFjdCBwcm9wZXJseSBzdXBwb3J0cyBjaGFuZ2UgZXZlbnRzLlxuICAgICAqIEBkZXByZWNhdGVkXG4gICAgICovXG4gICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnZGlkQ2hhbmdlJywgeyBidWJibGVzOiB0cnVlIH0pKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuICAgIGNvbnN0IHRhZ0dyb3VwID0gdGhpcy5fdGFnR3JvdXAoKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2NoZWNrZWQnKSkge1xuICAgICAgdGhpcy5fdXBkYXRlQXJpYVJvbGUoKTtcbiAgICAgIHRoaXMudG9nZ2xlU3RhdGUoJ2NoZWNrZWQnLCB0aGlzLmNoZWNrZWQpO1xuICAgICAgdGhpcy51cGRhdGVGb3JtVmFsdWUoKTtcbiAgICB9XG5cbiAgICBpZiAodGFnR3JvdXAgJiYgIXRhZ0dyb3VwLm11bHRpcGxlICYmIGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnY2hlY2tlZCcpKSB7XG4gICAgICBpZiAodGhpcy5jaGVja2VkKSB7XG4gICAgICAgIHRhZ0dyb3VwLnRhZ3MuZm9yRWFjaCgodCkgPT4ge1xuICAgICAgICAgIHQudGFiSW5kZXggPSB0ID09PSB0aGlzID8gMCA6IC0xO1xuICAgICAgICAgIHQuY2hlY2tlZCA9IHQgPT09IHRoaXM7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIGlmICghdGFnR3JvdXAudGFncy5zb21lKCh0KSA9PiB0LmNoZWNrZWQpKSB7XG4gICAgICAgIHRhZ0dyb3VwWyd1cGRhdGVFeGNsdXNpdmVUYWJJbmRleCddKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGZvcm1SZXNldENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHRoaXMuY2hlY2tlZCA9IHRoaXMuaGFzQXR0cmlidXRlKCdjaGVja2VkJyk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZm9ybVN0YXRlUmVzdG9yZUNhbGxiYWNrKFxuICAgIHN0YXRlOiBGb3JtUmVzdG9yZVN0YXRlIHwgbnVsbCxcbiAgICBfcmVhc29uOiBGb3JtUmVzdG9yZVJlYXNvbixcbiAgKTogdm9pZCB7XG4gICAgaWYgKHN0YXRlKSB7XG4gICAgICB0aGlzLmNoZWNrZWQgPSBzdGF0ZSA9PT0gJ3RydWUnO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB1cGRhdGVGb3JtVmFsdWUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY2hlY2tlZCkge1xuICAgICAgc3VwZXIudXBkYXRlRm9ybVZhbHVlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLnNldEZvcm1WYWx1ZShudWxsKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZm9ybVN0YXRlKCk6IEZvcm1SZXN0b3JlU3RhdGUge1xuICAgIHJldHVybiBgJHt0aGlzLmNoZWNrZWR9YDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXJUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8c3BhbiBjbGFzcz1cInNiYi10YWdfX2ljb24gc2JiLXRhZy0tc2hpZnRcIj4gJHt0aGlzLnJlbmRlckljb25TbG90KCl9IDwvc3Bhbj5cbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRhZ19fdGV4dCBzYmItdGFnLS1zaGlmdFwiPlxuICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICA8L3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInNiYi10YWdfX2Ftb3VudCBzYmItdGFnLS1zaGlmdFwiPlxuICAgICAgICA8c2xvdCBuYW1lPVwiYW1vdW50XCI+JHt0aGlzLmFtb3VudH08L3Nsb3Q+XG4gICAgICA8L3NwYW4+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRhZyc6IFNiYlRhZ0VsZW1lbnQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7SUMrQmEsdUJBQWE7bUJBQXFCLGlCQUM3QywrQkFBK0Isd0JBQXdCLENBQUM7Ozs7Ozs7Ozs7Ozs7Y0FEN0Msc0JBQWtDLFlBRTlDOzs7d0JBVUUsU0FBUSxDQUFFO3lCQUlWLFVBQVMsR0FDVCxTQUFTO0lBQUUsU0FBUztJQUFNLFdBQVc7R0FBa0IsQ0FBRSxDQUFDOzBCQUkxRCxVQUFTLEdBQ1QsU0FBUztJQUFFLFNBQVM7SUFBTyxNQUFNO0dBQU8sQ0FBRSxDQUFDO3VCQU8zQyxTQUFTLEVBQUUsU0FBUyxLQUFJLENBQUUsQ0FBQztHQWhCNUIsYUFBQSxNQUFBLE1BQUEsbUJBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSxXQUFBO0tBQUEsTUFBQSxRQUFBLElBQWdCO0tBQUssTUFBQSxLQUFBLFVBQUE7TUFBQSxJQUFMLFFBQUs7S0FBQTtJQUFBO0lBQUEsVUFBQTtHQUFBLEdBQUEscUJBQUEsd0JBQUE7R0FLckIsYUFBQSxNQUFBLE1BQUEsb0JBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSxZQUFBO0tBQUEsTUFBQSxRQUFBLElBQWdCO0tBQU0sTUFBQSxLQUFBLFVBQUE7TUFBQSxJQUFOLFNBQU07S0FBQTtJQUFBO0lBQUEsVUFBQTtHQUFBLEdBQUEsc0JBQUEseUJBQUE7R0FLdEIsYUFBQSxNQUFBLE1BQUEscUJBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSxhQUFBO0tBQUEsTUFBQSxRQUFBLElBQWdCO0tBQU8sTUFBQSxLQUFBLFVBQUE7TUFBQSxJQUFQLFVBQU87S0FBQTtJQUFBO0lBQUEsVUFBQTtHQUFBLEdBQUEsdUJBQUEsMEJBQUE7R0FPdkIsYUFBQSxNQUFBLE1BQUEsa0JBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSxVQUFBO0tBQUEsTUFBQSxRQUFBLElBQWdCO0tBQUksTUFBQSxLQUFBLFVBQUE7TUFBQSxJQUFKLE9BQUk7S0FBQTtJQUFBO0lBQUEsVUFBQTtHQUFBLEdBQUEsb0JBQUEsdUJBQUE7Ozs7Ozs7OztHQTNCWSxLQUFBLGNBQXNCO0VBQVU7O0dBQ3pDLEtBQUEsU0FBeUIsQ0FBQyxVQUFVLFdBQUssQ0FBQztFQUFFOztHQUM1QyxLQUFBLFNBQVM7SUFDOUIsT0FBTztJQUNQLFdBQVc7SUFDWCxRQUFROztFQUNDO0VBSVgsMEJBQUEsa0JBQUEsTUFBQSxxQkFBa0MsSUFBSTs7RUFBdEMsSUFBZ0IsUUFBSztHQUFBLE9BQUEsS0FBQTtFQUFBO0VBQXJCLElBQWdCLE1BQUssT0FBQTtHQUFBLEtBQUEsMEJBQUE7RUFBQTtFQUtyQiw0QkFBQSxrQkFBQSxNQUFBLHdCQUFBLEdBQUEsa0JBQUEsTUFBQSxzQkFBaUMsRUFBRTs7RUFBbkMsSUFBZ0IsU0FBTTtHQUFBLE9BQUEsS0FBQTtFQUFBO0VBQXRCLElBQWdCLE9BQU0sT0FBQTtHQUFBLEtBQUEsMkJBQUE7RUFBQTtFQUt0Qiw2QkFBQSxrQkFBQSxNQUFBLHlCQUFBLEdBQUEsa0JBQUEsTUFBQSx1QkFBbUMsS0FBSzs7RUFBeEMsSUFBZ0IsVUFBTztHQUFBLE9BQUEsS0FBQTtFQUFBO0VBQXZCLElBQWdCLFFBQU8sT0FBQTtHQUFBLEtBQUEsNEJBQUE7RUFBQTtFQU92QiwwQkFBQSxrQkFBQSxNQUFBLDBCQUFBLEdBQUEsa0JBQUEsTUFBQSxvQkFBeUMsSUFBSTs7Ozs7RUFBN0MsSUFBZ0IsT0FBSTtHQUFBLE9BQUEsS0FBQTtFQUFBO0VBQXBCLElBQWdCLEtBQUksT0FBQTtHQUFBLEtBQUEseUJBQUE7RUFBQTtFQUVwQixjQUFBO0dBQ0UsTUFBSzs7R0FDTCxLQUFLLG1CQUFtQixlQUFlLEtBQUssYUFBWSxDQUFFO0dBQzFELEtBQUssY0FDSCxJQUFJLDZCQUE2QixZQUFZLEtBQUssVUFBUyxHQUFJO0lBQzdELGdCQUFnQixLQUFLLGdCQUFlO0lBQ3BDLE9BQU8sTUFBSztLQUNWLEtBQUssT0FBTyxFQUFFO0lBQ2hCO0lBQ0QsQ0FBQzs7RUFJRSxZQUFTO0dBQ2YsT0FBTyxLQUFLLFVBQVUsZUFBZSxLQUFLO0VBQzVDO0VBRVEsa0JBQWU7R0FDckIsTUFBTSxXQUFXLEtBQUssVUFBUztHQUMvQixJQUFJLFlBQVksQ0FBQyxTQUFTLFVBQVU7SUFDbEMsS0FBSyxVQUFVLE9BQU87SUFDdEIsS0FBSyxVQUFVLGNBQWMsR0FBRyxLQUFLO0lBQ3JDLEtBQUssVUFBVSxjQUFjO0dBQy9CLE9BQU87SUFDTCxLQUFLLFVBQVUsT0FBTztJQUN0QixLQUFLLFVBQVUsY0FBYztJQUM3QixLQUFLLFVBQVUsY0FBYyxHQUFHLEtBQUs7R0FDdkM7RUFDRjtFQUVtQix1QkFBb0I7R0FDckMsT0FBTyxLQUFLLFVBQVMsR0FBSSxZQUFZO0VBQ3ZDOztFQUdRLGVBQVk7R0FDbEIsSUFBSSxLQUFLLFVBQ1A7R0FJRixNQUFNLFdBQVcsS0FBSyxVQUFTO0dBQy9CLElBQUksWUFBWSxDQUFDLFNBQVMsWUFBWSxLQUFLLFNBQ3pDO0dBRUYsS0FBSyxVQUFVLENBQUMsS0FBSztHQUNyQixLQUFLLGNBQ0gsSUFBSSxXQUFXLFNBQVM7SUFDdEIsU0FBUztJQUNULFVBQVU7SUFDWCxDQUFDOzs7Ozs7R0FRSixLQUFLLGNBQWMsSUFBSSxNQUFNLFVBQVUsRUFBRSxTQUFTLEtBQUksQ0FBRSxDQUFDOzs7OztHQU16RCxLQUFLLGNBQWMsSUFBSSxNQUFNLGFBQWEsRUFBRSxTQUFTLEtBQUksQ0FBRSxDQUFDO0VBQzlEO0VBRW1CLFdBQVcsbUJBQXVDO0dBQ25FLE1BQU0sV0FBVyxpQkFBaUI7R0FDbEMsTUFBTSxXQUFXLEtBQUssVUFBUztHQUUvQixJQUFJLGtCQUFrQixJQUFJLFNBQVMsR0FBRztJQUNwQyxLQUFLLGdCQUFlO0lBQ3BCLEtBQUssWUFBWSxXQUFXLEtBQUssT0FBTztJQUN4QyxLQUFLLGdCQUFlO0dBQ3RCO0dBRUEsSUFBSSxZQUFZLENBQUMsU0FBUyxZQUFZLGtCQUFrQixJQUFJLFNBQVM7UUFDL0QsS0FBSyxTQUNQLFNBQVMsS0FBSyxTQUFTLE1BQUs7S0FDMUIsRUFBRSxXQUFXLE1BQU0sT0FBTyxJQUFJO0tBQzlCLEVBQUUsVUFBVSxNQUFNO0lBQ3BCLENBQUM7U0FDSSxJQUFJLENBQUMsU0FBUyxLQUFLLE1BQU0sTUFBTSxFQUFFLE9BQU8sR0FDN0MsU0FBUywyQkFBMEI7R0FBQTtFQUd6Qzs7OztFQUtnQixvQkFBaUI7R0FDL0IsS0FBSyxVQUFVLEtBQUssYUFBYSxTQUFTO0VBQzVDOzs7O0VBS2dCLHlCQUNkLE9BQ0EsU0FBMEI7R0FFMUIsSUFBSSxPQUNGLEtBQUssVUFBVSxVQUFVO0VBRTdCO0VBRW1CLGtCQUFlO0dBQ2hDLElBQUksS0FBSyxTQUNQLE1BQU0sZ0JBQWU7UUFFckIsS0FBSyxVQUFVLGFBQWEsSUFBSTtFQUVwQztFQUVtQixZQUFTO0dBQzFCLE9BQU8sR0FBRyxLQUFLO0VBQ2pCO0VBRW1CLGlCQUFjO0dBQy9CLE9BQU8sSUFBSTtvREFDcUMsS0FBSyxlQUFjLEVBQUU7Ozs7OzhCQUszQyxLQUFLLE9BQU07OztFQUd2QyJ9
@@ -1,5 +1,5 @@
1
- import { t as SbbTagGroupElement } from "./tag-group.component-jSgluqL-.js";
2
- import { t as SbbTagElement } from "./tag.component-D6YowucW.js";
1
+ import { t as SbbTagGroupElement } from "./tag-group.component-DTff1eBB.js";
2
+ import { t as SbbTagElement } from "./tag.component-CDDb2fnV.js";
3
3
  import "./tag.pure.js";
4
4
  //#region src/elements/tag.ts
5
5
  /** @entrypoint */
@@ -1,3 +1,3 @@
1
- import { t as SbbTagGroupElement } from "./tag-group.component-jSgluqL-.js";
2
- import { t as SbbTagElement } from "./tag.component-D6YowucW.js";
1
+ import { t as SbbTagGroupElement } from "./tag-group.component-DTff1eBB.js";
2
+ import { t as SbbTagElement } from "./tag.component-CDDb2fnV.js";
3
3
  export { SbbTagElement, SbbTagGroupElement };
@@ -0,0 +1,77 @@
1
+ @use '../core/styles' as sbb;
2
+
3
+ $theme: 'standard' !default;
4
+
5
+ @mixin base {
6
+ --sbb-dialog-padding-inline: var(--sbb-spacing-fixed-5x);
7
+ --sbb-dialog-color: var(--sbb-color-2);
8
+ --sbb-dialog-background-color: var(--sbb-background-color-1);
9
+ --sbb-dialog-block-shadow: var(--sbb-box-shadow-level-9-soft);
10
+ --sbb-dialog-color-negative: var(--sbb-color-2-negative);
11
+ --sbb-dialog-block-shadow-negative: var(--sbb-box-shadow-level-9-soft-negative);
12
+ --sbb-dialog-width: auto;
13
+ --sbb-dialog-max-width: 100%;
14
+ --sbb-dialog-height: auto;
15
+ --sbb-dialog-max-height: calc(100vh - var(--sbb-spacing-fixed-6x));
16
+ --sbb-dialog-inset-block: 0 auto;
17
+ --sbb-dialog-inset-inline: 0 auto;
18
+ --sbb-dialog-border-radius: var(--sbb-border-radius-8x);
19
+ --sbb-dialog-animation-easing: ease;
20
+ --sbb-dialog-pointer-events: none;
21
+ --sbb-dialog-backdrop-visibility: hidden;
22
+ --sbb-dialog-backdrop-pointer-events: none;
23
+ --sbb-dialog-backdrop-color: transparent;
24
+ --sbb-dialog-actions-border-color: var(--sbb-background-color-4);
25
+ --sbb-dialog-close-button-inset-inline-end: var(--sbb-spacing-fixed-4x);
26
+ --sbb-dialog-close-button-margin-inline: var(--sbb-spacing-fixed-2x) var(--sbb-spacing-fixed-4x);
27
+ }
28
+
29
+ @mixin breakpoint-small {
30
+ --sbb-dialog-padding-inline: var(--sbb-spacing-fixed-8x);
31
+ --sbb-dialog-max-height: calc(100vh - 2 * var(--sbb-spacing-fixed-6x));
32
+ --sbb-dialog-max-width: 90vw;
33
+ --sbb-dialog-translate-y: var(--sbb-spacing-fixed-4x);
34
+ }
35
+
36
+ @mixin rules {
37
+ sbb-dialog-close-button {
38
+ // If there is no dialog title, the close button should be positioned absolute
39
+ sbb-dialog:not(:has(> sbb-dialog-title)) > &,
40
+ sbb-dialog:state(has-intermediate-element):not(:has(> * > sbb-dialog-title)) > * > & {
41
+ position: absolute;
42
+ z-index: 1;
43
+ }
44
+
45
+ // The close button positioning needs the current dialog title size
46
+ sbb-dialog:has(> sbb-dialog-title[visual-level='3']) > &,
47
+ sbb-dialog:state(has-intermediate-element):has(> * > sbb-dialog-title[visual-level='3'])
48
+ > *
49
+ > & {
50
+ --_sbb-dialog-title-size: var(--sbb-heading-font-size-3);
51
+ }
52
+
53
+ // The close button positioning needs the current dialog title size
54
+ sbb-dialog:has(> sbb-dialog-title[visual-level='5']) > &,
55
+ sbb-dialog:state(has-intermediate-element):has(> * > sbb-dialog-title[visual-level='5'])
56
+ > *
57
+ > & {
58
+ --_sbb-dialog-title-size: var(--sbb-heading-font-size-5);
59
+ }
60
+ }
61
+
62
+ sbb-dialog-content {
63
+ // If there is a title, reduce the top spacing for the content
64
+ sbb-dialog:has(> sbb-dialog-title) > &,
65
+ sbb-dialog:state(has-intermediate-element):has(> * > sbb-dialog-title) > * > & {
66
+ padding-block-start: var(--sbb-spacing-fixed-1x);
67
+ }
68
+ }
69
+
70
+ sbb-dialog-title {
71
+ // Hide margin on the right side. Distance to button is defined by flex gap already.
72
+ sbb-dialog:has(> sbb-dialog-close-button) > &,
73
+ sbb-dialog:state(has-intermediate-element):has(> * > sbb-dialog-close-button) > * > & {
74
+ padding-inline-end: 0;
75
+ }
76
+ }
77
+ }
@@ -1,8 +1,33 @@
1
- @use '../../core/styles' as sbb;
1
+ @use '../core/styles' as sbb;
2
2
 
3
3
  $theme: 'standard' !default;
4
4
 
5
5
  @mixin base {
6
+ --sbb-expansion-panel-background-color: var(--sbb-background-color-1);
7
+ --sbb-expansion-panel-background-color-hover: var(--sbb-background-color-3);
8
+ --sbb-expansion-panel-border-radius: var(--sbb-border-radius-4x);
9
+
10
+ // Vars which will be used by child components
11
+ --sbb-expansion-panel-icon-size: var(--sbb-size-icon-ui-medium);
12
+ --sbb-expansion-panel-title-gap-s: var(--sbb-spacing-fixed-2x);
13
+ --sbb-expansion-panel-title-gap-l: var(--sbb-spacing-fixed-4x);
14
+ --sbb-expansion-panel-title-gap-default: #{sbb.theme-pattern-select(
15
+ (
16
+ 'standard': var(--sbb-expansion-panel-title-gap-l),
17
+ 'lean': var(--sbb-expansion-panel-title-gap-s),
18
+ ),
19
+ $theme
20
+ )};
21
+ --sbb-expansion-panel-content-padding-block-end: var(--sbb-spacing-responsive-s);
22
+ --sbb-expansion-panel-content-padding-inline-s: var(--sbb-spacing-fixed-5x);
23
+ --sbb-expansion-panel-content-padding-inline-l: var(--sbb-spacing-fixed-6x);
24
+ --sbb-expansion-panel-content-padding-inline-default: #{sbb.theme-pattern-select(
25
+ (
26
+ 'standard': var(--sbb-expansion-panel-content-padding-inline-l),
27
+ 'lean': var(--sbb-expansion-panel-content-padding-inline-s),
28
+ ),
29
+ $theme
30
+ )};
6
31
  --sbb-expansion-panel-header-cursor: var(--sbb-cursor-pointer);
7
32
  --sbb-expansion-panel-header-font-size: var(--sbb-text-font-size-l);
8
33
  --sbb-expansion-panel-header-text-color: var(--sbb-color-2);
@@ -36,6 +61,6 @@ $theme: 'standard' !default;
36
61
  )};
37
62
  }
38
63
 
39
- @mixin base-forced-colors {
64
+ @mixin forced-colors {
40
65
  --sbb-expansion-panel-header-text-color: ButtonText;
41
66
  }
@@ -1,4 +1,4 @@
1
- @use '../../core/styles' as sbb;
1
+ @use '../core/styles' as sbb;
2
2
 
3
3
  $theme: 'standard' !default;
4
4