@sbb-esta/lyne-elements 4.4.0 → 4.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/autocomplete/autocomplete-base-element.js +73 -60
  2. package/button/common.js +1 -1
  3. package/button/mini-button-group/mini-button-group.component.js +14 -14
  4. package/button.js +1 -1
  5. package/chip-label/chip-label.component.js +13 -13
  6. package/container/container/container.component.js +9 -9
  7. package/container/sticky-bar/sticky-bar.component.js +12 -12
  8. package/core/a11y/focus-trap-controller.js +10 -10
  9. package/core/datetime/temporal-date-adapter.js +12 -6
  10. package/core/datetime.js +14 -12
  11. package/core/styles/core.scss +27 -12
  12. package/core/styles/mixins/chip.scss +6 -6
  13. package/core.css +75 -8
  14. package/custom-elements.json +93 -30
  15. package/datepicker/common.js +5 -3
  16. package/datepicker/datepicker-next-day/datepicker-next-day.component.js +13 -11
  17. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +12 -10
  18. package/datepicker/datepicker-toggle/datepicker-toggle.component.js +21 -19
  19. package/datepicker-button-Debzp_As.js +5 -0
  20. package/datepicker.js +6 -4
  21. package/development/autocomplete/autocomplete-base-element.d.ts +6 -1
  22. package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  23. package/development/autocomplete/autocomplete-base-element.js +33 -8
  24. package/development/button/common.js +1 -1
  25. package/development/button/mini-button-group/mini-button-group.component.js +10 -14
  26. package/development/button.js +1 -1
  27. package/development/chip-label/chip-label.component.js +6 -15
  28. package/development/container/container/container.component.js +1 -3
  29. package/development/container/sticky-bar/sticky-bar.component.js +9 -14
  30. package/development/core/a11y/focus-trap-controller.d.ts.map +1 -1
  31. package/development/core/a11y/focus-trap-controller.js +4 -3
  32. package/development/core/controllers/overlay-position-controller.d.ts.map +1 -1
  33. package/development/core/controllers/overlay-position-controller.js +1 -1
  34. package/development/core/datetime/native-date-adapter.js +1 -1
  35. package/development/core/datetime/temporal-date-adapter.d.ts +7 -1
  36. package/development/core/datetime/temporal-date-adapter.d.ts.map +1 -1
  37. package/development/core/datetime/temporal-date-adapter.js +14 -7
  38. package/development/core/datetime.d.ts +1 -0
  39. package/development/core/datetime.d.ts.map +1 -1
  40. package/development/core/datetime.js +3 -1
  41. package/development/datepicker/common.d.ts.map +1 -1
  42. package/development/datepicker/common.js +4 -2
  43. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts.map +1 -1
  44. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.js +7 -8
  45. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts.map +1 -1
  46. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +7 -8
  47. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts.map +1 -1
  48. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.js +7 -8
  49. package/development/datepicker-button-BDlxIp9r.js +9 -0
  50. package/development/datepicker.js +4 -2
  51. package/development/dialog/dialog-title/dialog-title.component.js +2 -1
  52. package/development/expansion-panel/expansion-panel/expansion-panel.component.js +6 -5
  53. package/development/{mini-button-label-common-0DeEC1qs.js → mini-button-label-common-BaMSfSTe.js} +13 -63
  54. package/development/radio-button/radio-button-group/radio-button-group.component.d.ts.map +1 -1
  55. package/development/radio-button/radio-button-group/radio-button-group.component.js +2 -2
  56. package/development/select/select.component.d.ts +1 -1
  57. package/development/select/select.component.d.ts.map +1 -1
  58. package/development/select/select.component.js +17 -8
  59. package/development/tabs/tab/tab.component.d.ts.map +1 -1
  60. package/development/tabs/tab/tab.component.js +6 -4
  61. package/development/tabs/tab-group/tab-group.component.d.ts +7 -7
  62. package/development/tabs/tab-group/tab-group.component.d.ts.map +1 -1
  63. package/development/tabs/tab-group/tab-group.component.js +29 -66
  64. package/dialog/dialog-title/dialog-title.component.js +7 -7
  65. package/expansion-panel/expansion-panel/expansion-panel.component.js +9 -9
  66. package/mini-button-label-common-Dx9JhmQ6.js +11 -0
  67. package/off-brand-theme.css +75 -8
  68. package/package.json +1 -1
  69. package/radio-button/radio-button-group/radio-button-group.component.js +1 -1
  70. package/safety-theme.css +75 -8
  71. package/select/select.component.js +20 -20
  72. package/standard-theme.css +75 -8
  73. package/tabs/tab/tab.component.js +5 -5
  74. package/tabs/tab-group/tab-group.component.js +59 -57
  75. package/mini-button-label-common-BOB7JQKi.js +0 -11
@@ -14,14 +14,6 @@ import { SbbNegativeMixin, SbbNamedSlotListMixin } from "../../core/mixins.js";
14
14
  import { boxSizingStyles } from "../../core/styles.js";
15
15
  const style = css`:host {
16
16
  display: block;
17
- --sbb-mini-button-group-background: var(--sbb-background-color-1);
18
- --sbb-mini-button-group-border-color: var(--sbb-border-color-4-inverted);
19
- --sbb-mini-button-group-border-width: var(--sbb-border-width-2x);
20
- --sbb-mini-button-group-border: var(--sbb-mini-button-group-border-width) solid
21
- var(--sbb-mini-button-group-border-color);
22
- --sbb-mini-button-group-gap: var(--sbb-spacing-fixed-2x);
23
- --sbb-mini-button-group-min-height: var(--sbb-size-element-s);
24
- --sbb-mini-button-group-padding-inline: var(--sbb-spacing-fixed-3x);
25
17
  }
26
18
 
27
19
  :host([negative]) {
@@ -35,6 +27,11 @@ const style = css`:host {
35
27
  --sbb-mini-button-group-padding-inline: var(--sbb-spacing-fixed-2x);
36
28
  }
37
29
 
30
+ :host([size=m]) {
31
+ --sbb-mini-button-group-min-height: var(--sbb-size-element-s);
32
+ --sbb-mini-button-group-padding-inline: var(--sbb-spacing-fixed-3x);
33
+ }
34
+
38
35
  :host([size=l]) {
39
36
  --sbb-mini-button-group-min-height: var(--sbb-size-element-m);
40
37
  }
@@ -50,9 +47,8 @@ const style = css`:host {
50
47
 
51
48
  ::slotted(sbb-divider) {
52
49
  --sbb-divider-border-width: var(--sbb-border-width-1x);
53
- padding-block: var(--sbb-spacing-fixed-1x);
54
- padding-inline: var(--sbb-spacing-fixed-1x);
55
- height: var(--sbb-size-icon-ui-small);
50
+ padding: var(--sbb-mini-button-group-divider-padding);
51
+ height: var(--sbb-mini-button-group-divider-height);
56
52
  }
57
53
 
58
54
  .sbb-mini-button-group {
@@ -67,8 +63,8 @@ const style = css`:host {
67
63
  width: fit-content;
68
64
  min-height: var(--sbb-mini-button-group-min-height);
69
65
  background-color: var(--sbb-mini-button-group-background);
70
- border: var(--sbb-mini-button-group-border);
71
- border-radius: var(--sbb-border-radius-infinity);
66
+ border: var(--sbb-mini-button-group-border-width) solid var(--sbb-mini-button-group-border-color);
67
+ border-radius: var(--sbb-mini-button-group-border-radius);
72
68
  padding-inline: calc(var(--sbb-mini-button-group-padding-inline) - var(--sbb-mini-button-group-border-width));
73
69
  }`;
74
70
  let SbbMiniButtonGroupElement = (() => {
@@ -148,4 +144,4 @@ let SbbMiniButtonGroupElement = (() => {
148
144
  export {
149
145
  SbbMiniButtonGroupElement
150
146
  };
151
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS1idXR0b24tZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvYnV0dG9uL21pbmktYnV0dG9uLWdyb3VwL21pbmktYnV0dG9uLWdyb3VwLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBQcm9wZXJ0eVZhbHVlcywgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgTGl0RWxlbWVudCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgZm9yY2VUeXBlIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLnRzJztcbmltcG9ydCB7IGlzTGVhbiB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLnRzJztcbmltcG9ydCB7IFNiYk5hbWVkU2xvdExpc3RNaXhpbiwgU2JiTmVnYXRpdmVNaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLnRzJztcbmltcG9ydCB7IGJveFNpemluZ1N0eWxlcyB9IGZyb20gJy4uLy4uL2NvcmUvc3R5bGVzLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiRGl2aWRlckVsZW1lbnQgfSBmcm9tICcuLi8uLi9kaXZpZGVyL2RpdmlkZXIuY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgU2JiTWluaUJ1dHRvbkVsZW1lbnQgfSBmcm9tICcuLi9taW5pLWJ1dHRvbi9taW5pLWJ1dHRvbi5jb21wb25lbnQudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9taW5pLWJ1dHRvbi1ncm91cC5zY3NzP2xpdCZpbmxpbmUnO1xuXG5leHBvcnQgdHlwZSBTYmJNaW5pQnV0dG9uR3JvdXBTaXplID0gJ3MnIHwgJ20nIHwgJ2wnIHwgJ3hsJztcblxuLyoqXG4gKiBEaXNwbGF5IGEgbGlzdCBvZiBgc2JiLW1pbmktYnV0dG9uYCBlbGVtZW50cyBpbiBhIGhvcml6b250YWwgY29udGFpbmVyLFxuICogcG9zc2libHkgc2VwYXJhdGVkIGJ5IGEgYHNiYi1kaXZpZGVyYCBjb21wb25lbnQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYHNiYi1taW5pLWJ1dHRvbmAgYW5kIGBzYmItZGl2aWRlcmAgZWxlbWVudHMuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi1taW5pLWJ1dHRvbi1ncm91cCcpXG5jbGFzcyBTYmJNaW5pQnV0dG9uR3JvdXBFbGVtZW50IGV4dGVuZHMgU2JiTmVnYXRpdmVNaXhpbihcbiAgU2JiTmFtZWRTbG90TGlzdE1peGluPFNiYk1pbmlCdXR0b25FbGVtZW50LCB0eXBlb2YgTGl0RWxlbWVudD4oTGl0RWxlbWVudCksXG4pIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW2JveFNpemluZ1N0eWxlcywgc3R5bGVdO1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVhZG9ubHkgbGlzdENoaWxkTG9jYWxOYW1lcyA9IFtcbiAgICAnc2JiLW1pbmktYnV0dG9uJyxcbiAgICAnc2JiLW1pbmktYnV0dG9uLWxpbmsnLFxuICAgICdzYmItZGl2aWRlcicsXG4gIF07XG5cbiAgLyoqIFRoaXMgd2lsbCBiZSBmb3J3YXJkZWQgYXMgYXJpYS1sYWJlbCB0byB0aGUgbGlzdCB0aGF0IGNvbnRhaW5zIHRoZSBidXR0b25zLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1sYWJlbCcgfSlcbiAgcHVibGljIGFjY2Vzc29yIGFjY2Vzc2liaWxpdHlMYWJlbDogc3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIFNpemUgdmFyaWFudCwgZWl0aGVyIHMsIG0sIGwgb3IgeGwuXG4gICAqIEBkZWZhdWx0ICdtJyAvICdzJyAobGVhbilcbiAgICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIHNpemU6IFNiYk1pbmlCdXR0b25Hcm91cFNpemUgPSBpc0xlYW4oKSA/ICdzJyA6ICdtJztcblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ25lZ2F0aXZlJykpIHtcbiAgICAgIHRoaXMuX3Byb3h5TmVnYXRpdmUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9wcm94eU5lZ2F0aXZlKCk6IHZvaWQge1xuICAgIHRoaXMucXVlcnlTZWxlY3RvckFsbD8uPFNiYkRpdmlkZXJFbGVtZW50IHwgU2JiTWluaUJ1dHRvbkVsZW1lbnQ+KFxuICAgICAgJ3NiYi1kaXZpZGVyLCBzYmItbWluaS1idXR0b24sIHNiYi1taW5pLWJ1dHRvbi1saW5rJyxcbiAgICApLmZvckVhY2goKGUpID0+IChlLm5lZ2F0aXZlID0gdGhpcy5uZWdhdGl2ZSkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICAke3RoaXMucmVuZGVyTGlzdChcbiAgICAgICAgeyBhcmlhTGFiZWw6IHRoaXMuYWNjZXNzaWJpbGl0eUxhYmVsIH0sXG4gICAgICAgIHsgbG9jYWxOYW1lVmlzdWFsT25seTogWydzYmItZGl2aWRlciddIH0sXG4gICAgICApfVxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1taW5pLWJ1dHRvbi1ncm91cCc6IFNiYk1pbmlCdXR0b25Hcm91cEVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBdUJNLDZCQUF5QixNQUFBOzswQkFEOUIsY0FBYyx1QkFBdUIsQ0FBQzs7OztBQUNDLE1BQUEsY0FBQSxpQkFDdEMsc0JBQStELFVBQVUsQ0FBQzs7Ozs7OztBQUQ1QyxFQUFBLG1CQUFRLFlBRXZDO0FBQUE7O0FBV0M7QUFNNkI7QUFmRCxXQUFBLHNCQUFzQjtBQUFBLFFBQ2hEO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxNQUFBO0FBTWMseUJBQUEsc0NBQUEsa0JBQUEsTUFBQSxrQ0FBNkIsRUFBRTtBQU1GLHlCQUFBLHlCQUFBLGtCQUFBLE1BQUEscUNBQUEsR0FBQSxrQkFBQSxNQUFBLG9CQUErQixPQUFBLElBQVcsTUFBTSxHQUFHOzs7O0lBTmhHLElBQWdCLHFCQUFrQjtBQUFBLGFBQUEsbUJBQUE7QUFBQSxJQUFBO0FBQUEsSUFBbEMsSUFBZ0IsbUJBQWtCLE9BQUE7QUFBQSx5QkFBQSxzQ0FBQTtBQUFBLElBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLElBTUwsSUFBZ0IsT0FBSTtBQUFBLGFBQUEsbUJBQUE7QUFBQSxJQUFBO0FBQUEsSUFBcEIsSUFBZ0IsS0FBSSxPQUFBO0FBQUEseUJBQUEsd0JBQUE7QUFBQSxJQUFBO0FBQUEsSUFFOUIsV0FBVyxtQkFBdUM7QUFDbkUsWUFBTSxXQUFXLGlCQUFpQjtBQUVsQyxVQUFJLGtCQUFrQixJQUFJLFVBQVUsR0FBRztBQUNyQyxhQUFLLGVBQUE7QUFBQSxNQUNQO0FBQUEsSUFDRjtBQUFBLElBRVEsaUJBQWM7QUFDcEIsV0FBSyxtQkFDSCxvREFBb0QsRUFDcEQsUUFBUSxDQUFDLE1BQU8sRUFBRSxXQUFXLEtBQUssUUFBUztBQUFBLElBQy9DO0FBQUEsSUFFbUIsU0FBTTtBQUN2QixhQUFPO0FBQUEsUUFDSCxLQUFLLFdBQ0wsRUFBRSxXQUFXLEtBQUssbUJBQUEsR0FDbEIsRUFBRSxxQkFBcUIsQ0FBQyxhQUFhLEdBQUcsQ0FDekM7QUFBQTtBQUFBLElBRUw7QUFBQSxLQTdCQSxzREFNNkI7O3NDQVI1QixhQUNBLFNBQVMsRUFBRSxXQUFXLHNCQUFBLENBQXVCLENBQUM7QUFPOUMsdUJBQUEsQ0FBQSxTQUFTLEVBQUUsU0FBUyxLQUFBLENBQU0sQ0FBQztBQU41QixpQkFBQSxJQUFBLE1BQUEsZ0NBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxzQkFBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSx3QkFBQSxLQUFBLEtBQUEsQ0FBQSxRQUFBLElBQWdCLG9CQUFrQixLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBbEIscUJBQWtCO0FBQUEsSUFBQSxLQUFBLFVBQUEsVUFBQSxHQUFBLGtDQUFBLHFDQUFBO0FBTUwsaUJBQUEsSUFBQSxNQUFBLGtCQUFBLEVBQUEsTUFBQSxZQUFBLE1BQUEsUUFBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSxVQUFBLEtBQUEsS0FBQSxDQUFBLFFBQUEsSUFBZ0IsTUFBSSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBSixPQUFJO0FBQUEsSUFBQSxLQUFBLFVBQUEsVUFBQSxHQUFBLG9CQUFBLHVCQUFBO0FBbkJuRCxpQkFBQSxNQUFBLG1CQUFBLEVBQUEsT0FBQSxXQUFBLEdBQUEsa0JBQUEsRUFBQSxNQUFBLFNBQUEsTUFBQSxXQUFBLE1BQUEsVUFBQSxVQUFBLEdBQUEsTUFBQSx1QkFBQTs7O1FBR3lCLEdBQUEsU0FBeUIsQ0FBQyxpQkFBaUIsS0FBSyxHQUhuRSxrQkFBQSxZQUFBLHVCQUFBLEdBQTBCOzs7In0=
147
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS1idXR0b24tZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvYnV0dG9uL21pbmktYnV0dG9uLWdyb3VwL21pbmktYnV0dG9uLWdyb3VwLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBQcm9wZXJ0eVZhbHVlcywgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgTGl0RWxlbWVudCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgZm9yY2VUeXBlIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLnRzJztcbmltcG9ydCB7IGlzTGVhbiB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLnRzJztcbmltcG9ydCB7IFNiYk5hbWVkU2xvdExpc3RNaXhpbiwgU2JiTmVnYXRpdmVNaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLnRzJztcbmltcG9ydCB7IGJveFNpemluZ1N0eWxlcyB9IGZyb20gJy4uLy4uL2NvcmUvc3R5bGVzLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiRGl2aWRlckVsZW1lbnQgfSBmcm9tICcuLi8uLi9kaXZpZGVyL2RpdmlkZXIuY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgU2JiTWluaUJ1dHRvbkVsZW1lbnQgfSBmcm9tICcuLi9taW5pLWJ1dHRvbi9taW5pLWJ1dHRvbi5jb21wb25lbnQudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9taW5pLWJ1dHRvbi1ncm91cC5zY3NzP2xpdCZpbmxpbmUnO1xuXG5leHBvcnQgdHlwZSBTYmJNaW5pQnV0dG9uR3JvdXBTaXplID0gJ3MnIHwgJ20nIHwgJ2wnIHwgJ3hsJztcblxuLyoqXG4gKiBEaXNwbGF5IGEgbGlzdCBvZiBgc2JiLW1pbmktYnV0dG9uYCBlbGVtZW50cyBpbiBhIGhvcml6b250YWwgY29udGFpbmVyLFxuICogcG9zc2libHkgc2VwYXJhdGVkIGJ5IGEgYHNiYi1kaXZpZGVyYCBjb21wb25lbnQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYHNiYi1taW5pLWJ1dHRvbmAgYW5kIGBzYmItZGl2aWRlcmAgZWxlbWVudHMuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi1taW5pLWJ1dHRvbi1ncm91cCcpXG5jbGFzcyBTYmJNaW5pQnV0dG9uR3JvdXBFbGVtZW50IGV4dGVuZHMgU2JiTmVnYXRpdmVNaXhpbihcbiAgU2JiTmFtZWRTbG90TGlzdE1peGluPFNiYk1pbmlCdXR0b25FbGVtZW50LCB0eXBlb2YgTGl0RWxlbWVudD4oTGl0RWxlbWVudCksXG4pIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW2JveFNpemluZ1N0eWxlcywgc3R5bGVdO1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVhZG9ubHkgbGlzdENoaWxkTG9jYWxOYW1lcyA9IFtcbiAgICAnc2JiLW1pbmktYnV0dG9uJyxcbiAgICAnc2JiLW1pbmktYnV0dG9uLWxpbmsnLFxuICAgICdzYmItZGl2aWRlcicsXG4gIF07XG5cbiAgLyoqIFRoaXMgd2lsbCBiZSBmb3J3YXJkZWQgYXMgYXJpYS1sYWJlbCB0byB0aGUgbGlzdCB0aGF0IGNvbnRhaW5zIHRoZSBidXR0b25zLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1sYWJlbCcgfSlcbiAgcHVibGljIGFjY2Vzc29yIGFjY2Vzc2liaWxpdHlMYWJlbDogc3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIFNpemUgdmFyaWFudCwgZWl0aGVyIHMsIG0sIGwgb3IgeGwuXG4gICAqIEBkZWZhdWx0ICdtJyAvICdzJyAobGVhbilcbiAgICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIHNpemU6IFNiYk1pbmlCdXR0b25Hcm91cFNpemUgPSBpc0xlYW4oKSA/ICdzJyA6ICdtJztcblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ25lZ2F0aXZlJykpIHtcbiAgICAgIHRoaXMuX3Byb3h5TmVnYXRpdmUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9wcm94eU5lZ2F0aXZlKCk6IHZvaWQge1xuICAgIHRoaXMucXVlcnlTZWxlY3RvckFsbD8uPFNiYkRpdmlkZXJFbGVtZW50IHwgU2JiTWluaUJ1dHRvbkVsZW1lbnQ+KFxuICAgICAgJ3NiYi1kaXZpZGVyLCBzYmItbWluaS1idXR0b24sIHNiYi1taW5pLWJ1dHRvbi1saW5rJyxcbiAgICApLmZvckVhY2goKGUpID0+IChlLm5lZ2F0aXZlID0gdGhpcy5uZWdhdGl2ZSkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICAke3RoaXMucmVuZGVyTGlzdChcbiAgICAgICAgeyBhcmlhTGFiZWw6IHRoaXMuYWNjZXNzaWJpbGl0eUxhYmVsIH0sXG4gICAgICAgIHsgbG9jYWxOYW1lVmlzdWFsT25seTogWydzYmItZGl2aWRlciddIH0sXG4gICAgICApfVxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1taW5pLWJ1dHRvbi1ncm91cCc6IFNiYk1pbmlCdXR0b25Hcm91cEVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUF1Qk0sNkJBQXlCLE1BQUE7OzBCQUQ5QixjQUFjLHVCQUF1QixDQUFDOzs7O0FBQ0MsTUFBQSxjQUFBLGlCQUN0QyxzQkFBK0QsVUFBVSxDQUFDOzs7Ozs7O0FBRDVDLEVBQUEsbUJBQVEsWUFFdkM7QUFBQTs7QUFXQztBQU02QjtBQWZELFdBQUEsc0JBQXNCO0FBQUEsUUFDaEQ7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLE1BQUE7QUFNYyx5QkFBQSxzQ0FBQSxrQkFBQSxNQUFBLGtDQUE2QixFQUFFO0FBTUYseUJBQUEseUJBQUEsa0JBQUEsTUFBQSxxQ0FBQSxHQUFBLGtCQUFBLE1BQUEsb0JBQStCLE9BQUEsSUFBVyxNQUFNLEdBQUc7Ozs7SUFOaEcsSUFBZ0IscUJBQWtCO0FBQUEsYUFBQSxtQkFBQTtBQUFBLElBQUE7QUFBQSxJQUFsQyxJQUFnQixtQkFBa0IsT0FBQTtBQUFBLHlCQUFBLHNDQUFBO0FBQUEsSUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsSUFNTCxJQUFnQixPQUFJO0FBQUEsYUFBQSxtQkFBQTtBQUFBLElBQUE7QUFBQSxJQUFwQixJQUFnQixLQUFJLE9BQUE7QUFBQSx5QkFBQSx3QkFBQTtBQUFBLElBQUE7QUFBQSxJQUU5QixXQUFXLG1CQUF1QztBQUNuRSxZQUFNLFdBQVcsaUJBQWlCO0FBRWxDLFVBQUksa0JBQWtCLElBQUksVUFBVSxHQUFHO0FBQ3JDLGFBQUssZUFBQTtBQUFBLE1BQ1A7QUFBQSxJQUNGO0FBQUEsSUFFUSxpQkFBYztBQUNwQixXQUFLLG1CQUNILG9EQUFvRCxFQUNwRCxRQUFRLENBQUMsTUFBTyxFQUFFLFdBQVcsS0FBSyxRQUFTO0FBQUEsSUFDL0M7QUFBQSxJQUVtQixTQUFNO0FBQ3ZCLGFBQU87QUFBQSxRQUNILEtBQUssV0FDTCxFQUFFLFdBQVcsS0FBSyxtQkFBQSxHQUNsQixFQUFFLHFCQUFxQixDQUFDLGFBQWEsR0FBRyxDQUN6QztBQUFBO0FBQUEsSUFFTDtBQUFBLEtBN0JBLHNEQU02Qjs7c0NBUjVCLGFBQ0EsU0FBUyxFQUFFLFdBQVcsc0JBQUEsQ0FBdUIsQ0FBQztBQU85Qyx1QkFBQSxDQUFBLFNBQVMsRUFBRSxTQUFTLEtBQUEsQ0FBTSxDQUFDO0FBTjVCLGlCQUFBLElBQUEsTUFBQSxnQ0FBQSxFQUFBLE1BQUEsWUFBQSxNQUFBLHNCQUFBLFFBQUEsT0FBQSxTQUFBLE9BQUEsUUFBQSxFQUFBLEtBQUEsQ0FBQSxRQUFBLHdCQUFBLEtBQUEsS0FBQSxDQUFBLFFBQUEsSUFBZ0Isb0JBQWtCLEtBQUEsQ0FBQSxLQUFBLFVBQUE7QUFBQSxVQUFsQixxQkFBa0I7QUFBQSxJQUFBLEtBQUEsVUFBQSxVQUFBLEdBQUEsa0NBQUEscUNBQUE7QUFNTCxpQkFBQSxJQUFBLE1BQUEsa0JBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxRQUFBLFFBQUEsT0FBQSxTQUFBLE9BQUEsUUFBQSxFQUFBLEtBQUEsQ0FBQSxRQUFBLFVBQUEsS0FBQSxLQUFBLENBQUEsUUFBQSxJQUFnQixNQUFJLEtBQUEsQ0FBQSxLQUFBLFVBQUE7QUFBQSxVQUFKLE9BQUk7QUFBQSxJQUFBLEtBQUEsVUFBQSxVQUFBLEdBQUEsb0JBQUEsdUJBQUE7QUFuQm5ELGlCQUFBLE1BQUEsbUJBQUEsRUFBQSxPQUFBLFdBQUEsR0FBQSxrQkFBQSxFQUFBLE1BQUEsU0FBQSxNQUFBLFdBQUEsTUFBQSxVQUFBLFVBQUEsR0FBQSxNQUFBLHVCQUFBOzs7UUFHeUIsR0FBQSxTQUF5QixDQUFDLGlCQUFpQixLQUFLLEdBSG5FLGtCQUFBLFlBQUEsdUJBQUEsR0FBMEI7OzsifQ==
@@ -14,7 +14,7 @@ import { SbbSecondaryButtonStaticElement } from "./button/secondary-button-stati
14
14
  import { SbbAccentButtonStaticElement } from "./button/accent-button-static/accent-button-static.component.js";
15
15
  import { SbbTransparentButtonStaticElement } from "./button/transparent-button-static/transparent-button-static.component.js";
16
16
  import { SbbButtonCommonElementMixin } from "./button/common/button-common.js";
17
- import { a, b, p, s, t, m, c } from "./mini-button-label-common-0DeEC1qs.js";
17
+ import { a, b, p, s, t, m, c } from "./mini-button-label-common-BaMSfSTe.js";
18
18
  export {
19
19
  SbbAccentButtonElement,
20
20
  SbbAccentButtonLinkElement,
@@ -11,12 +11,6 @@ import { customElement, property } from "lit/decorators.js";
11
11
  import { boxSizingStyles } from "../core/styles.js";
12
12
  const style = css`:host {
13
13
  display: inline-block;
14
- --sbb-chip-label-color: var(--sbb-color-granite);
15
- --sbb-chip-label-color: light-dark(var(--sbb-color-granite), var(--sbb-color-cloud));
16
- --sbb-chip-label-background-color: var(--sbb-background-color-3);
17
- --sbb-chip-label-padding-block: 0em;
18
- --sbb-chip-label-padding-inline: var(--sbb-spacing-fixed-2x);
19
- --sbb-text-font-size: var(--sbb-text-font-size-xxs);
20
14
  }
21
15
 
22
16
  :host([color=charcoal]) {
@@ -39,30 +33,27 @@ const style = css`:host {
39
33
  :host([size=xs]) {
40
34
  --sbb-chip-label-padding-block: var(--sbb-spacing-fixed-1x);
41
35
  --sbb-chip-label-padding-inline: var(--sbb-spacing-fixed-3x);
42
- --sbb-text-font-size: var(--sbb-text-font-size-xs);
36
+ --sbb-chip-label-font-size: var(--sbb-text-font-size-xs);
43
37
  }
44
38
 
45
39
  :host([size=s]) {
46
40
  --sbb-chip-label-padding-block: var(--sbb-spacing-fixed-1x);
47
41
  --sbb-chip-label-padding-inline: var(--sbb-spacing-fixed-4x);
48
- --sbb-text-font-size: var(--sbb-text-font-size-s);
42
+ --sbb-chip-label-font-size: var(--sbb-text-font-size-s);
49
43
  }
50
44
 
51
45
  .sbb-chip-label {
52
- font-family: var(--sbb-typo-font-family);
53
- font-weight: normal;
54
- line-height: var(--sbb-typo-line-height-text);
55
- letter-spacing: var(--sbb-typo-letter-spacing-text);
56
- font-size: var(--sbb-text-font-size);
57
46
  line-height: 2;
58
47
  display: inline-flex;
59
48
  align-items: center;
60
49
  justify-content: center;
61
- height: calc(var(--sbb-typo-line-height-text) * var(--sbb-text-font-size) + var(--sbb-chip-label-padding-block) * 2);
50
+ height: calc(var(--sbb-typo-line-height-text) * var(--sbb-chip-label-font-size) + var(--sbb-chip-label-padding-block) * 2);
62
51
  background-color: var(--sbb-chip-label-background-color);
63
52
  padding-inline: var(--sbb-chip-label-padding-inline);
64
53
  border-radius: var(--sbb-border-radius-infinity);
65
54
  color: var(--sbb-chip-label-color);
55
+ font-size: var(--sbb-chip-label-font-size);
56
+ letter-spacing: var(--sbb-typo-letter-spacing-text);
66
57
  overflow: hidden;
67
58
  }
68
59
  @media (forced-colors: active) {
@@ -143,4 +134,4 @@ let SbbChipLabelElement = (() => {
143
134
  export {
144
135
  SbbChipLabelElement
145
136
  };
146
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcC1sYWJlbC5jb21wb25lbnQuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jaGlwLWxhYmVsL2NoaXAtbGFiZWwuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IGJveFNpemluZ1N0eWxlcyB9IGZyb20gJy4uL2NvcmUvc3R5bGVzLnRzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vY2hpcC1sYWJlbC5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGJyaWVmIGFuZCBjb21wYWN0IGluZm9ybWF0aW9uLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIGBzYmItY2hpcC1sYWJlbGAuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi1jaGlwLWxhYmVsJylcbmNsYXNzIFNiYkNoaXBMYWJlbEVsZW1lbnQgZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW2JveFNpemluZ1N0eWxlcywgc3R5bGVdO1xuXG4gIC8qKiBTaXplIG9mIHRoZSBjaGlwLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBzaXplOiAneHhzJyB8ICd4cycgfCAncycgPSAneHhzJztcblxuICAvKiogQ29sb3Igb2YgdGhlIGNoaXAuICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSlcbiAgcHVibGljIGFjY2Vzc29yIGNvbG9yOiAnbWlsaycgfCAnY2hhcmNvYWwnIHwgJ3doaXRlJyB8ICdncmFuaXRlJyA9ICdtaWxrJztcblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWNoaXAtbGFiZWxcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItY2hpcF9fdGV4dC13cmFwcGVyXCI+XG4gICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L3NwYW4+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWNoaXAtbGFiZWwnOiBTYmJDaGlwTGFiZWxFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFlTSx1QkFBbUIsTUFBQTs7MEJBRHhCLGNBQWMsZ0JBQWdCLENBQUM7Ozs7b0JBQ0U7Ozs7Ozs7QUFBUixFQUFBLG1CQUFRLFlBQVU7QUFBQTs7QUFLMUMsaURBQUEsa0JBQUEsTUFBQSxvQkFBMkMsS0FBSztBQUloRCxtREFBQSxrQkFBQSxNQUFBLHVCQUFBLEdBQUEsa0JBQUEsTUFBQSxxQkFBbUUsTUFBTTs7OztJQUp6RSxJQUFnQixPQUFJO0FBQUEsYUFBQSxtQkFBQTtBQUFBLElBQUE7QUFBQSxJQUFwQixJQUFnQixLQUFJLE9BQUE7QUFBQSx5QkFBQSx3QkFBQTtBQUFBLElBQUE7QUFBQTtBQUFBLElBSXBCLElBQWdCLFFBQUs7QUFBQSxhQUFBLG1CQUFBO0FBQUEsSUFBQTtBQUFBLElBQXJCLElBQWdCLE1BQUssT0FBQTtBQUFBLHlCQUFBLHlCQUFBO0FBQUEsSUFBQTtBQUFBLElBRUYsU0FBTTtBQUN2QixhQUFPO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsSUFPVDtBQUFBLEtBZEEsd0NBSUE7O0FBTEMsdUJBQUEsQ0FBQSxTQUFTLEVBQUUsU0FBUyxLQUFBLENBQU0sQ0FBQztBQUkzQix3QkFBQSxDQUFBLFNBQVMsRUFBRSxTQUFTLEtBQUEsQ0FBTSxDQUFDO0FBSDVCLGlCQUFBLElBQUEsTUFBQSxrQkFBQSxFQUFBLE1BQUEsWUFBQSxNQUFBLFFBQUEsUUFBQSxPQUFBLFNBQUEsT0FBQSxRQUFBLEVBQUEsS0FBQSxDQUFBLFFBQUEsVUFBQSxLQUFBLEtBQUEsQ0FBQSxRQUFBLElBQWdCLE1BQUksS0FBQSxDQUFBLEtBQUEsVUFBQTtBQUFBLFVBQUosT0FBSTtBQUFBLElBQUEsS0FBQSxVQUFBLFVBQUEsR0FBQSxvQkFBQSx1QkFBQTtBQUlwQixpQkFBQSxJQUFBLE1BQUEsbUJBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxTQUFBLFFBQUEsT0FBQSxTQUFBLE9BQUEsUUFBQSxFQUFBLEtBQUEsQ0FBQSxRQUFBLFdBQUEsS0FBQSxLQUFBLENBQUEsUUFBQSxJQUFnQixPQUFLLEtBQUEsQ0FBQSxLQUFBLFVBQUE7QUFBQSxVQUFMLFFBQUs7QUFBQSxJQUFBLEtBQUEsVUFBQSxVQUFBLEdBQUEscUJBQUEsd0JBQUE7QUFUdkIsaUJBQUEsTUFBQSxtQkFBQSxFQUFBLE9BQUEsV0FBQSxHQUFBLGtCQUFBLEVBQUEsTUFBQSxTQUFBLE1BQUEsV0FBQSxNQUFBLFVBQUEsVUFBQSxHQUFBLE1BQUEsdUJBQUE7OztRQUN5QixHQUFBLFNBQXlCLENBQUMsaUJBQWlCLEtBQUssR0FEbkUsa0JBQUEsWUFBQSx1QkFBQSxHQUFvQjs7OyJ9
137
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcC1sYWJlbC5jb21wb25lbnQuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jaGlwLWxhYmVsL2NoaXAtbGFiZWwuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IGJveFNpemluZ1N0eWxlcyB9IGZyb20gJy4uL2NvcmUvc3R5bGVzLnRzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vY2hpcC1sYWJlbC5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGJyaWVmIGFuZCBjb21wYWN0IGluZm9ybWF0aW9uLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIGBzYmItY2hpcC1sYWJlbGAuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi1jaGlwLWxhYmVsJylcbmNsYXNzIFNiYkNoaXBMYWJlbEVsZW1lbnQgZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW2JveFNpemluZ1N0eWxlcywgc3R5bGVdO1xuXG4gIC8qKiBTaXplIG9mIHRoZSBjaGlwLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBzaXplOiAneHhzJyB8ICd4cycgfCAncycgPSAneHhzJztcblxuICAvKiogQ29sb3Igb2YgdGhlIGNoaXAuICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSlcbiAgcHVibGljIGFjY2Vzc29yIGNvbG9yOiAnbWlsaycgfCAnY2hhcmNvYWwnIHwgJ3doaXRlJyB8ICdncmFuaXRlJyA9ICdtaWxrJztcblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWNoaXAtbGFiZWxcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItY2hpcF9fdGV4dC13cmFwcGVyXCI+XG4gICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L3NwYW4+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWNoaXAtbGFiZWwnOiBTYmJDaGlwTGFiZWxFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFlTSx1QkFBbUIsTUFBQTs7MEJBRHhCLGNBQWMsZ0JBQWdCLENBQUM7Ozs7b0JBQ0U7Ozs7Ozs7QUFBUixFQUFBLG1CQUFRLFlBQVU7QUFBQTs7QUFLMUMsaURBQUEsa0JBQUEsTUFBQSxvQkFBMkMsS0FBSztBQUloRCxtREFBQSxrQkFBQSxNQUFBLHVCQUFBLEdBQUEsa0JBQUEsTUFBQSxxQkFBbUUsTUFBTTs7OztJQUp6RSxJQUFnQixPQUFJO0FBQUEsYUFBQSxtQkFBQTtBQUFBLElBQUE7QUFBQSxJQUFwQixJQUFnQixLQUFJLE9BQUE7QUFBQSx5QkFBQSx3QkFBQTtBQUFBLElBQUE7QUFBQTtBQUFBLElBSXBCLElBQWdCLFFBQUs7QUFBQSxhQUFBLG1CQUFBO0FBQUEsSUFBQTtBQUFBLElBQXJCLElBQWdCLE1BQUssT0FBQTtBQUFBLHlCQUFBLHlCQUFBO0FBQUEsSUFBQTtBQUFBLElBRUYsU0FBTTtBQUN2QixhQUFPO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsSUFPVDtBQUFBLEtBZEEsd0NBSUE7O0FBTEMsdUJBQUEsQ0FBQSxTQUFTLEVBQUUsU0FBUyxLQUFBLENBQU0sQ0FBQztBQUkzQix3QkFBQSxDQUFBLFNBQVMsRUFBRSxTQUFTLEtBQUEsQ0FBTSxDQUFDO0FBSDVCLGlCQUFBLElBQUEsTUFBQSxrQkFBQSxFQUFBLE1BQUEsWUFBQSxNQUFBLFFBQUEsUUFBQSxPQUFBLFNBQUEsT0FBQSxRQUFBLEVBQUEsS0FBQSxDQUFBLFFBQUEsVUFBQSxLQUFBLEtBQUEsQ0FBQSxRQUFBLElBQWdCLE1BQUksS0FBQSxDQUFBLEtBQUEsVUFBQTtBQUFBLFVBQUosT0FBSTtBQUFBLElBQUEsS0FBQSxVQUFBLFVBQUEsR0FBQSxvQkFBQSx1QkFBQTtBQUlwQixpQkFBQSxJQUFBLE1BQUEsbUJBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxTQUFBLFFBQUEsT0FBQSxTQUFBLE9BQUEsUUFBQSxFQUFBLEtBQUEsQ0FBQSxRQUFBLFdBQUEsS0FBQSxLQUFBLENBQUEsUUFBQSxJQUFnQixPQUFLLEtBQUEsQ0FBQSxLQUFBLFVBQUE7QUFBQSxVQUFMLFFBQUs7QUFBQSxJQUFBLEtBQUEsVUFBQSxVQUFBLEdBQUEscUJBQUEsd0JBQUE7QUFUdkIsaUJBQUEsTUFBQSxtQkFBQSxFQUFBLE9BQUEsV0FBQSxHQUFBLGtCQUFBLEVBQUEsTUFBQSxTQUFBLE1BQUEsV0FBQSxNQUFBLFVBQUEsVUFBQSxHQUFBLE1BQUEsdUJBQUE7OztRQUN5QixHQUFBLFNBQXlCLENBQUMsaUJBQWlCLEtBQUssR0FEbkUsa0JBQUEsWUFBQSx1QkFBQSxHQUFvQjs7OyJ9
@@ -13,8 +13,6 @@ import { SbbElementInternalsMixin, ɵstateController as _stateController } from
13
13
  import { boxSizingStyles } from "../../core/styles.js";
14
14
  const style = css`@charset "UTF-8";
15
15
  :host {
16
- --sbb-container-background-border-radius: 0;
17
- --sbb-container-color: inherit;
18
16
  display: block;
19
17
  }
20
18
 
@@ -187,4 +185,4 @@ let SbbContainerElement = (() => {
187
185
  export {
188
186
  SbbContainerElement
189
187
  };
190
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvbnRhaW5lci9jb250YWluZXIvY29udGFpbmVyLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBMaXRFbGVtZW50LFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IGZvcmNlVHlwZSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy50cyc7XG5pbXBvcnQgeyBTYmJFbGVtZW50SW50ZXJuYWxzTWl4aW4sIMm1c3RhdGVDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMudHMnO1xuaW1wb3J0IHsgYm94U2l6aW5nU3R5bGVzIH0gZnJvbSAnLi4vLi4vY29yZS9zdHlsZXMudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9jb250YWluZXIuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBpdHMgY29udGVudCB3aXRoIHRoZSBkZWZhdWx0IHBhZ2Ugc3BhY2luZy5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBhbnl0aGluZyB0byB0aGUgY29udGFpbmVyLlxuICogQHNsb3Qgc3RpY2t5LWJhciAtIFRoZSBzbG90IHVzZWQgYnkgdGhlIHNiYi1zdGlja3ktYmFyIGNvbXBvbmVudC5cbiAqIEBzbG90IGltYWdlIC0gVGhlIHNsb3QgdXNlZCB0byBzbG90IGFuIGBzYmItaW1hZ2VgIHRvIHVzZSBhcyBiYWNrZ3JvdW5kLlxuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItY29udGFpbmVyJylcbmNsYXNzIFNiYkNvbnRhaW5lckVsZW1lbnQgZXh0ZW5kcyBTYmJFbGVtZW50SW50ZXJuYWxzTWl4aW4oTGl0RWxlbWVudCkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbYm94U2l6aW5nU3R5bGVzLCBzdHlsZV07XG5cbiAgLyoqIFdoZXRoZXIgdGhlIGNvbnRhaW5lciBpcyBleHBhbmRlZC4gKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IHR5cGU6IEJvb2xlYW4sIHJlZmxlY3Q6IHRydWUgfSlcbiAgcHVibGljIGFjY2Vzc29yIGV4cGFuZGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIGJhY2tncm91bmQgY29sb3IgaXMgc2hvd24gb24gZnVsbCBjb250YWluZXIgd2lkdGggb24gbGFyZ2Ugc2NyZWVucy4gKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IHR5cGU6IEJvb2xlYW4sIHJlZmxlY3Q6IHRydWUsIGF0dHJpYnV0ZTogJ2JhY2tncm91bmQtZXhwYW5kZWQnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBiYWNrZ3JvdW5kRXhwYW5kZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogQ29sb3Igb2YgdGhlIGNvbnRhaW5lciwgbGlrZSB0cmFuc3BhcmVudCwgd2hpdGUgZXRjLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhY2Nlc3NvciBjb2xvcjpcbiAgICB8ICd0cmFuc3BhcmVudCdcbiAgICB8ICd3aGl0ZSdcbiAgICB8ICdtaWxrJ1xuICAgIHwgJ21pZG5pZ2h0J1xuICAgIHwgJ2NoYXJjb2FsJyA9ICd3aGl0ZSc7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdleHBhbmRlZCcpKSB7XG4gICAgICBjb25zdCBzdGlja3lCYXIgPSB0aGlzLnF1ZXJ5U2VsZWN0b3I/Lignc2JiLXN0aWNreS1iYXInKTtcbiAgICAgIMm1c3RhdGVDb250cm9sbGVyKHN0aWNreUJhcik/LnRvZ2dsZSgnZXhwYW5kZWQnLCB0aGlzLmV4cGFuZGVkKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItY29udGFpbmVyXCI+XG4gICAgICAgIDxzbG90IG5hbWU9XCJpbWFnZVwiPjwvc2xvdD5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1jb250YWluZXJfX2NvbnRlbnRcIj5cbiAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8c2xvdCBuYW1lPVwic3RpY2t5LWJhclwiPjwvc2xvdD5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItY29udGFpbmVyJzogU2JiQ29udGFpbmVyRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIsm1c3RhdGVDb250cm9sbGVyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBd0JNLHVCQUFtQixNQUFBOzswQkFEeEIsY0FBYyxlQUFlLENBQUM7Ozs7b0JBQ0cseUJBQXlCLFVBQVU7Ozs7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
188
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvbnRhaW5lci9jb250YWluZXIvY29udGFpbmVyLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBMaXRFbGVtZW50LFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IGZvcmNlVHlwZSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy50cyc7XG5pbXBvcnQgeyBTYmJFbGVtZW50SW50ZXJuYWxzTWl4aW4sIMm1c3RhdGVDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMudHMnO1xuaW1wb3J0IHsgYm94U2l6aW5nU3R5bGVzIH0gZnJvbSAnLi4vLi4vY29yZS9zdHlsZXMudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9jb250YWluZXIuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBpdHMgY29udGVudCB3aXRoIHRoZSBkZWZhdWx0IHBhZ2Ugc3BhY2luZy5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBhbnl0aGluZyB0byB0aGUgY29udGFpbmVyLlxuICogQHNsb3Qgc3RpY2t5LWJhciAtIFRoZSBzbG90IHVzZWQgYnkgdGhlIHNiYi1zdGlja3ktYmFyIGNvbXBvbmVudC5cbiAqIEBzbG90IGltYWdlIC0gVGhlIHNsb3QgdXNlZCB0byBzbG90IGFuIGBzYmItaW1hZ2VgIHRvIHVzZSBhcyBiYWNrZ3JvdW5kLlxuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItY29udGFpbmVyJylcbmNsYXNzIFNiYkNvbnRhaW5lckVsZW1lbnQgZXh0ZW5kcyBTYmJFbGVtZW50SW50ZXJuYWxzTWl4aW4oTGl0RWxlbWVudCkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbYm94U2l6aW5nU3R5bGVzLCBzdHlsZV07XG5cbiAgLyoqIFdoZXRoZXIgdGhlIGNvbnRhaW5lciBpcyBleHBhbmRlZC4gKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IHR5cGU6IEJvb2xlYW4sIHJlZmxlY3Q6IHRydWUgfSlcbiAgcHVibGljIGFjY2Vzc29yIGV4cGFuZGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIGJhY2tncm91bmQgY29sb3IgaXMgc2hvd24gb24gZnVsbCBjb250YWluZXIgd2lkdGggb24gbGFyZ2Ugc2NyZWVucy4gKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IHR5cGU6IEJvb2xlYW4sIHJlZmxlY3Q6IHRydWUsIGF0dHJpYnV0ZTogJ2JhY2tncm91bmQtZXhwYW5kZWQnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBiYWNrZ3JvdW5kRXhwYW5kZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogQ29sb3Igb2YgdGhlIGNvbnRhaW5lciwgbGlrZSB0cmFuc3BhcmVudCwgd2hpdGUgZXRjLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhY2Nlc3NvciBjb2xvcjpcbiAgICB8ICd0cmFuc3BhcmVudCdcbiAgICB8ICd3aGl0ZSdcbiAgICB8ICdtaWxrJ1xuICAgIHwgJ21pZG5pZ2h0J1xuICAgIHwgJ2NoYXJjb2FsJyA9ICd3aGl0ZSc7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdleHBhbmRlZCcpKSB7XG4gICAgICBjb25zdCBzdGlja3lCYXIgPSB0aGlzLnF1ZXJ5U2VsZWN0b3I/Lignc2JiLXN0aWNreS1iYXInKTtcbiAgICAgIMm1c3RhdGVDb250cm9sbGVyKHN0aWNreUJhcik/LnRvZ2dsZSgnZXhwYW5kZWQnLCB0aGlzLmV4cGFuZGVkKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItY29udGFpbmVyXCI+XG4gICAgICAgIDxzbG90IG5hbWU9XCJpbWFnZVwiPjwvc2xvdD5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1jb250YWluZXJfX2NvbnRlbnRcIj5cbiAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8c2xvdCBuYW1lPVwic3RpY2t5LWJhclwiPjwvc2xvdD5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItY29udGFpbmVyJzogU2JiQ29udGFpbmVyRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIsm1c3RhdGVDb250cm9sbGVyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQXdCTSx1QkFBbUIsTUFBQTs7MEJBRHhCLGNBQWMsZUFBZSxDQUFDOzs7O29CQUNHLHlCQUF5QixVQUFVOzs7Ozs7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
@@ -13,10 +13,6 @@ import { isLean, isZeroAnimationDuration } from "../../core/dom.js";
13
13
  import { SbbUpdateSchedulerMixin, SbbElementInternalsMixin } from "../../core/mixins.js";
14
14
  import { boxSizingStyles } from "../../core/styles.js";
15
15
  const style = css`:host {
16
- --sbb-sticky-bar-position: sticky;
17
- --sbb-sticky-bar-padding-block: var(--sbb-spacing-responsive-xs);
18
- --sbb-sticky-bar-border-radius: var(--sbb-border-radius-8x);
19
- --sbb-sticky-bar-animation-easing: var(--sbb-animation-easing);
20
16
  --sbb-sticky-bar-fade-in-animation-duration: var(
21
17
  --sbb-disable-animation-duration,
22
18
  var(--sbb-animation-duration-5x)
@@ -29,14 +25,9 @@ const style = css`:host {
29
25
  --sbb-disable-animation-duration,
30
26
  var(--sbb-animation-duration-4x)
31
27
  );
32
- --sbb-sticky-bar-slide-vertically-animation-easing: ease-out;
33
- --sbb-sticky-bar-slide-vertically-animation-delay: 0s;
34
- --sbb-sticky-bar-slide-vertically-animation-name: unset;
35
28
  --_sbb-sticky-bar-background-animation-duration: var(
36
29
  --sbb-sticky-bar-fade-out-animation-duration
37
30
  );
38
- --_sbb-sticky-bar-intersector-background-color: transparent;
39
- --_sbb-sticky-bar-forced-colors-border: none;
40
31
  display: contents;
41
32
  }
42
33
 
@@ -44,6 +35,10 @@ const style = css`:host {
44
35
  --sbb-sticky-bar-padding-block: var(--sbb-spacing-responsive-xxxs);
45
36
  }
46
37
 
38
+ :host([size=m]) {
39
+ --sbb-sticky-bar-padding-block: var(--sbb-spacing-responsive-xs);
40
+ }
41
+
47
42
  :host(:is(:state(sticking),[state--sticking]):not(:is(:state(state-unsticky),[state--state-unsticky]))) {
48
43
  --sbb-sticky-bar-sticky-background-color: var(
49
44
  --sbb-container-background-color,
@@ -97,10 +92,10 @@ const style = css`:host {
97
92
  inset-block-end: 0;
98
93
  display: block;
99
94
  z-index: var(--sbb-sticky-bar-z-index);
100
- animation-name: var(--sbb-sticky-bar-slide-vertically-animation-name);
95
+ animation-name: var(--sbb-sticky-bar-slide-vertically-animation-name, unset);
101
96
  animation-duration: var(--sbb-sticky-bar-slide-vertically-animation-duration);
102
97
  animation-timing-function: var(--sbb-sticky-bar-slide-vertically-animation-easing);
103
- animation-delay: var(--sbb-sticky-bar-slide-vertically-animation-delay);
98
+ animation-delay: 0s;
104
99
  animation-fill-mode: backwards;
105
100
  }
106
101
  .sbb-sticky-bar__wrapper::after, .sbb-sticky-bar__wrapper::before {
@@ -129,7 +124,7 @@ const style = css`:host {
129
124
  border-start-start-radius: var(--sbb-sticky-bar-border-radius);
130
125
  border-start-end-radius: var(--sbb-sticky-bar-border-radius);
131
126
  transition: background-color var(--_sbb-sticky-bar-background-animation-duration) var(--sbb-sticky-bar-animation-easing);
132
- border: var(--_sbb-sticky-bar-forced-colors-border);
127
+ border: var(--_sbb-sticky-bar-forced-colors-border, none);
133
128
  }
134
129
 
135
130
  .sbb-sticky-bar {
@@ -173,7 +168,7 @@ const style = css`:host {
173
168
  position: absolute;
174
169
  width: 100%;
175
170
  height: calc(var(--sbb-sticky-bar-bottom-overlapping-height, 0) + 1px);
176
- background-color: var(--_sbb-sticky-bar-intersector-background-color);
171
+ background-color: var(--_sbb-sticky-bar-intersector-background-color, transparent);
177
172
  pointer-events: none;
178
173
  transition: background-color var(--_sbb-sticky-bar-background-animation-duration) var(--sbb-sticky-bar-animation-easing);
179
174
  }
@@ -365,4 +360,4 @@ let SbbStickyBarElement = (() => {
365
360
  export {
366
361
  SbbStickyBarElement
367
362
  };
368
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RpY2t5LWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb250YWluZXIvc3RpY2t5LWJhci9zdGlja3ktYmFyLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnRlcnNlY3Rpb25Db250cm9sbGVyIH0gZnJvbSAnQGxpdC1sYWJzL29ic2VydmVycy9pbnRlcnNlY3Rpb24tY29udHJvbGxlci5qcyc7XG5pbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBMaXRFbGVtZW50LFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IGlzTGVhbiwgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24gfSBmcm9tICcuLi8uLi9jb3JlL2RvbS50cyc7XG5pbXBvcnQgeyBTYmJFbGVtZW50SW50ZXJuYWxzTWl4aW4sIFNiYlVwZGF0ZVNjaGVkdWxlck1peGluIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMudHMnO1xuaW1wb3J0IHsgYm94U2l6aW5nU3R5bGVzIH0gZnJvbSAnLi4vLi4vY29yZS9zdHlsZXMudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9zdGlja3ktYmFyLnNjc3M/bGl0JmlubGluZSc7XG5cbnR5cGUgU3RpY2t5U3RhdGUgPSAnc3RpY2tpbmcnIHwgJ3N0aWNreScgfCAndW5zdGlja2luZycgfCAndW5zdGlja3knO1xuXG4vKipcbiAqIEEgY29udGFpbmVyIHRoYXQgc3RpY2tzIHRvIHRoZSBib3R0b20gb2YgdGhlIHBhZ2UgaWYgc2xvdHRlZCBpbnRvIGBzYmItY29udGFpbmVyYC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IHRvIHRoZSBzdGlja3kgYmFyLlxuICogQGNzc3Byb3AgWy0tc2JiLXN0aWNreS1iYXItcGFkZGluZy1ibG9jaz12YXIoLS1zYmItc3BhY2luZy1yZXNwb25zaXZlLXhzKV0gLSBCbG9jayBwYWRkaW5nIG9mIHRoZSBzdGlja3kgYmFyLlxuICogQGNzc3Byb3AgWy0tc2JiLXN0aWNreS1iYXItYm90dG9tLW92ZXJsYXBwaW5nLWhlaWdodD0wcHhdIC0gRGVmaW5lIGFuIGFkZGl0aW9uYWwgYXJlYSB3aGVyZVxuICogdGhlIHN0aWNreSBiYXIgb3ZlcmxhcHMgdGhlIGZvbGxvd2luZyBjb250ZW50IG9uIHRoZSBib3R0b20uXG4gKiBUaGlzIGFyZWEgYmVjb21lcyB2aXNpYmxlIHdoZW4gdGhlIHN0aWNreSBiYXIgdHJhbnNpdGlvbnMgZnJvbSBzdGlja3kgdG8gdGhlIG5vcm1hbCBkb2N1bWVudCBmbG93LlxuICogQGNzc3Byb3AgWy0tc2JiLXN0aWNreS1iYXItei1pbmRleF0gLSBUbyBzcGVjaWZ5IGEgY3VzdG9tIHN0YWNrIG9yZGVyLFxuICogdGhlIGB6LWluZGV4YCBjYW4gYmUgb3ZlcnJpZGRlbiBieSBkZWZpbmluZyB0aGlzIENTUyB2YXJpYWJsZS5cbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLXN0aWNreS1iYXInKVxuY2xhc3MgU2JiU3RpY2t5QmFyRWxlbWVudCBleHRlbmRzIFNiYlVwZGF0ZVNjaGVkdWxlck1peGluKFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpbihMaXRFbGVtZW50KSkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbYm94U2l6aW5nU3R5bGVzLCBzdHlsZV07XG5cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBldmVudHMgPSB7XG4gICAgYmVmb3Jlc3RpY2s6ICdiZWZvcmVzdGljaycsXG4gICAgc3RpY2s6ICdzdGljaycsXG4gICAgYmVmb3JldW5zdGljazogJ2JlZm9yZXVuc3RpY2snLFxuICAgIHVuc3RpY2s6ICd1bnN0aWNrJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKiogQ29sb3Igb2YgdGhlIGNvbnRhaW5lciwgbGlrZSB0cmFuc3BhcmVudCwgd2hpdGUgZXRjLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhY2Nlc3NvciBjb2xvcjpcbiAgICB8ICd3aGl0ZSdcbiAgICB8ICdtaWxrJ1xuICAgIHwgJ21pZG5pZ2h0J1xuICAgIHwgJ2NoYXJjb2FsJ1xuICAgIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFNpemUgb2YgdGhlIGNvbnRhaW5lci5cbiAgICogQGRlZmF1bHQgJ20nIC8gJ3MnIChsZWFuKVxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3Igc2l6ZTogJ20nIHwgJ3MnID0gaXNMZWFuKCkgPyAncycgOiAnbSc7XG5cbiAgLyoqIFRoZSBzdGF0ZSBvZiB0aGUgY29tcG9uZW50LiAqL1xuICBwcml2YXRlIHNldCBfc3RhdGUoc3RhdGU6IFN0aWNreVN0YXRlKSB7XG4gICAgaWYgKHRoaXMuX3N0YXRlSW50ZXJuYWwpIHtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5kZWxldGUoYHN0YXRlLSR7dGhpcy5fc3RhdGVJbnRlcm5hbH1gKTtcbiAgICB9XG4gICAgdGhpcy5fc3RhdGVJbnRlcm5hbCA9IHN0YXRlO1xuICAgIGlmICh0aGlzLl9zdGF0ZUludGVybmFsKSB7XG4gICAgICB0aGlzLmludGVybmFscy5zdGF0ZXMuYWRkKGBzdGF0ZS0ke3RoaXMuX3N0YXRlSW50ZXJuYWx9YCk7XG4gICAgfVxuICB9XG4gIHByaXZhdGUgZ2V0IF9zdGF0ZSgpOiBTdGlja3lTdGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0YXRlSW50ZXJuYWw7XG4gIH1cbiAgcHJpdmF0ZSBfc3RhdGVJbnRlcm5hbCE6IFN0aWNreVN0YXRlO1xuXG4gIHByaXZhdGUgX2ludGVyc2VjdG9yPzogSFRNTFNwYW5FbGVtZW50O1xuICBwcml2YXRlIF9vYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25Db250cm9sbGVyKHRoaXMsIHtcbiAgICAvLyBBbHRob3VnaCBgdGhpc2AgaXMgb2JzZXJ2ZWQsIHdlIGhhdmUgdG8gcG9zdHBvbmUgb2JzZXJ2aW5nXG4gICAgLy8gaW50byBmaXJzdFVwZGF0ZWQoKSB0byBhY2hpZXZlIGEgY29ycmVjdCBpbml0aWFsIHN0YXRlLlxuICAgIHRhcmdldDogbnVsbCxcbiAgICBjYWxsYmFjazogKGVudHJpZXMpID0+IHRoaXMuX2RldGVjdFN0aWNreVN0YXRlKGVudHJpZXNbMF0pLFxuICB9KTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMuX3N0YXRlID0gJ3N0aWNreSc7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLnNsb3QgfHw9ICdzdGlja3ktYmFyJztcblxuICAgIC8vIFN0aWNreSBiYXIgbmVlZHMgdG8gYmUgaGlkZGVuIHVudGlsIGZpcnN0IG9ic2VydmVyIGNhbGxiYWNrXG4gICAgdGhpcy5zdGFydFVwZGF0ZSgpO1xuXG4gICAgY29uc3QgY29udGFpbmVyID0gdGhpcy5jbG9zZXN0KCdzYmItY29udGFpbmVyJyk7XG4gICAgaWYgKGNvbnRhaW5lcikge1xuICAgICAgdGhpcy50b2dnbGVTdGF0ZSgnZXhwYW5kZWQnLCBjb250YWluZXIuZXhwYW5kZWQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5faW50ZXJzZWN0b3IpIHtcbiAgICAgIHRoaXMuX29ic2VydmVyLm9ic2VydmUodGhpcy5faW50ZXJzZWN0b3IpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBkaXNjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5kZWxldGUoJ2luaXRpYWxpemVkJyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLmZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoIXRoaXMuX2ludGVyc2VjdG9yKSB7XG4gICAgICB0aGlzLl9pbnRlcnNlY3RvciA9IHRoaXMuc2hhZG93Um9vdCEucXVlcnlTZWxlY3RvcignLnNiYi1zdGlja3ktYmFyX19pbnRlcnNlY3RvcicpITtcbiAgICAgIHRoaXMuX29ic2VydmVyLm9ic2VydmUodGhpcy5faW50ZXJzZWN0b3IpO1xuICAgIH1cbiAgICB0aGlzLl9vYnNlcnZlci5vYnNlcnZlKHRoaXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKHRoaXMsICctLXNiYi1zdGlja3ktYmFyLXNsaWRlLXZlcnRpY2FsbHktYW5pbWF0aW9uLWR1cmF0aW9uJyk7XG4gIH1cblxuICBwcml2YXRlIF9kZXRlY3RTdGlja3lTdGF0ZShlbnRyeTogSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeSk6IHZvaWQge1xuICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5hZGQoJ2luaXRpYWxpemVkJyk7XG5cbiAgICBjb25zdCBpc1N0aWNreSA9ICFlbnRyeS5pc0ludGVyc2VjdGluZyAmJiBlbnRyeS5ib3VuZGluZ0NsaWVudFJlY3QudG9wID4gMDtcblxuICAgIC8vIFRvIG9wdGltaXplIHRoZSB2aXN1YWwgcGVyY2VwdGlvbiBvZiB0aGUgc3RpY2t5IGJhciwgd2UgaGF2ZSBjZXJ0YWluIGNhc2VzIChlLmcuIG9uIHBhZ2UgbG9hZClcbiAgICAvLyB3aGVyZSB3ZSB3YW50IHRoZSBzdGlja3kgYmFyIHRvIHNsaWRlIGluIGZyb20gdGhlIGJvdHRvbS5cbiAgICAvLyBUbyBkZWNpZGUgd2hldGhlciB0byBzbGlkZSBpbiBmcm9tIHRoZSBib3R0b20gdXAsXG4gICAgLy8gd2UgY2hlY2sgaG93IGZhciBhd2F5IHRoZSBzdGlja3kgYmFyIGlzIGZyb20gdGhlIGludGVyc2VjdG9yIGVsZW1lbnQuIFdoZW4gc2Nyb2xsaW5nIGZhc3QsIHRoZVxuICAgIC8vIGRpZmZlcmVuY2UgY2FuIHZhcnkgc2xpZ2h0bHkuIFRvIGFjY291bnQgZm9yIHRoaXMgd2UgYWRkIGEgaGVpZ2h0IHRvbGVyYW5jZS5cbiAgICAvLyBUaGlzIHZhbHVlIHdhcyBmb3VuZCBieSB0cmlhbCBhbmQgZXJyb3IuXG4gICAgY29uc3QgaW50ZXJzZWN0b3JSZWN0ID0gdGhpcy5faW50ZXJzZWN0b3I/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGNvbnN0IHN0aWNreUJhclJlY3QgPSB0aGlzLnNoYWRvd1Jvb3QhLnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAnLnNiYi1zdGlja3ktYmFyX193cmFwcGVyJyxcbiAgICApIS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBIRUlHSFRfVE9MRVJBTkNFID0gMzA7XG5cbiAgICB0aGlzLnRvZ2dsZVN0YXRlKFxuICAgICAgJ3NsaWRlLXZlcnRpY2FsbHknLFxuICAgICAgaXNTdGlja3kgJiZcbiAgICAgICAgdGhpcy5faW50ZXJzZWN0b3IgJiZcbiAgICAgICAgTWF0aC5hYnMoaW50ZXJzZWN0b3JSZWN0IS5ib3R0b20gLSBzdGlja3lCYXJSZWN0LmJvdHRvbSkgPiBIRUlHSFRfVE9MRVJBTkNFLFxuICAgICk7XG5cbiAgICAvLyBUb2dnbGluZyBzdGlja2luZyBoYXMgdG8gYmUgYWZ0ZXIgc2xpZGUtdmVydGljYWxseSAocHJldmVudHMgYmFja2dyb3VuZCBjb2xvciB0cmFuc2l0aW9uKVxuICAgIHRoaXMudG9nZ2xlU3RhdGUoJ3N0aWNraW5nJywgaXNTdGlja3kpO1xuXG4gICAgLy8gU3RpY2t5IGJhciBuZWVkcyB0byBiZSBoaWRkZW4gdW50aWwgZmlyc3Qgb2JzZXJ2ZXIgY2FsbGJhY2tcbiAgICB0aGlzLmNvbXBsZXRlVXBkYXRlKCk7XG4gIH1cblxuICAvKiogQW5pbWF0ZXMgZnJvbSBub3JtYWwgY29udGVudCBmbG93IHBvc2l0aW9uIHRvIGBwb3NpdGlvbjogc3RpY2t5YC4gKi9cbiAgcHVibGljIHN0aWNrKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSAhPT0gJ3Vuc3RpY2t5JyB8fCAhdGhpcy5fZGlzcGF0Y2hCZWZvcmVTdGlja0V2ZW50KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9zdGF0ZSA9ICdzdGlja2luZyc7XG4gICAgaWYgKCF0aGlzLmludGVybmFscy5zdGF0ZXMuaGFzKCdzdGlja2luZycpIHx8IHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgIHRoaXMuX3N0aWNreUNhbGxiYWNrKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEFuaW1hdGVzIGBwb3NpdGlvbjogc3RpY2t5YCB0byBub3JtYWwgY29udGVudCBmbG93IHBvc2l0aW9uLiAqL1xuICBwdWJsaWMgdW5zdGljaygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgIT09ICdzdGlja3knIHx8ICF0aGlzLl9kaXNwYXRjaEJlZm9yZVVuU3RpY2tFdmVudCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fc3RhdGUgPSAndW5zdGlja2luZyc7XG5cbiAgICBpZiAoIXRoaXMuaW50ZXJuYWxzLnN0YXRlcy5oYXMoJ3N0aWNraW5nJykgfHwgdGhpcy5faXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKSkge1xuICAgICAgdGhpcy5fdW5zdGlja3lDYWxsYmFjaygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3N0aWNreUNhbGxiYWNrKCk6IHZvaWQge1xuICAgIHRoaXMuX3N0YXRlID0gJ3N0aWNreSc7XG5cbiAgICAvKiogRW1pdHMgd2hlbiB0aGUgYW5pbWF0aW9uIGZyb20gbm9ybWFsIGNvbnRlbnQgZmxvdyB0byBgcG9zaXRpb246IHN0aWNreWAgZW5kcy4gKi9cbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdzdGljaycpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3Vuc3RpY2t5Q2FsbGJhY2soKTogdm9pZCB7XG4gICAgLyoqIEVtaXRzIHdoZW4gdGhlIGFuaW1hdGlvbiBmcm9tIGBwb3NpdGlvbjogc3RpY2t5YCB0byBub3JtYWwgY29udGVudCBmbG93IGVuZHMuICovXG4gICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgndW5zdGljaycpKTtcbiAgICB0aGlzLl9zdGF0ZSA9ICd1bnN0aWNreSc7XG4gIH1cblxuICBwcml2YXRlIF9vbkFuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICAodGhpcy5fc3RhdGUgPT09ICdzdGlja2luZycgfHwgdGhpcy5fc3RhdGUgPT09ICdzdGlja3knKSAmJlxuICAgICAgZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ3NsaWRlLWluJ1xuICAgICkge1xuICAgICAgdGhpcy5fc3RpY2t5Q2FsbGJhY2soKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuX3N0YXRlID09PSAndW5zdGlja2luZycgJiYgZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ3NsaWRlLW91dCcpIHtcbiAgICAgIHRoaXMuX3Vuc3RpY2t5Q2FsbGJhY2soKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9kaXNwYXRjaEJlZm9yZVN0aWNrRXZlbnQoKTogYm9vbGVhbiB7XG4gICAgLyoqIEVtaXRzIHdoZW4gdGhlIGFuaW1hdGlvbiBmcm9tIG5vcm1hbCBjb250ZW50IGZsb3cgdG8gYHBvc2l0aW9uOiBzdGlja3lgIHN0YXJ0cy4gQ2FuIGJlIGNhbmNlbGVkLiAqL1xuICAgIHJldHVybiB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdiZWZvcmVzdGljaycsIHsgY2FuY2VsYWJsZTogdHJ1ZSB9KSk7XG4gIH1cblxuICBwcml2YXRlIF9kaXNwYXRjaEJlZm9yZVVuU3RpY2tFdmVudCgpOiBib29sZWFuIHtcbiAgICAvKiogRW1pdHMgd2hlbiB0aGUgYW5pbWF0aW9uIGZyb20gYHBvc2l0aW9uOiBzdGlja3lgIHRvIG5vcm1hbCBjb250ZW50IGZsb3cgc3RhcnRzLiBDYW4gYmUgY2FuY2VsZWQuICovXG4gICAgcmV0dXJuIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2JlZm9yZXVuc3RpY2snLCB7IGNhbmNlbGFibGU6IHRydWUgfSkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXN0aWNreS1iYXJfX3dyYXBwZXJcIiBAYW5pbWF0aW9uZW5kPSR7dGhpcy5fb25BbmltYXRpb25FbmR9PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLXN0aWNreS1iYXJcIj5cbiAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXN0aWNreS1iYXJfX2ludGVyc2VjdG9yXCI+PC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXN0aWNreS1iYXInOiBTYmJTdGlja3lCYXJFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
363
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RpY2t5LWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb250YWluZXIvc3RpY2t5LWJhci9zdGlja3ktYmFyLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnRlcnNlY3Rpb25Db250cm9sbGVyIH0gZnJvbSAnQGxpdC1sYWJzL29ic2VydmVycy9pbnRlcnNlY3Rpb24tY29udHJvbGxlci5qcyc7XG5pbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBMaXRFbGVtZW50LFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IGlzTGVhbiwgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24gfSBmcm9tICcuLi8uLi9jb3JlL2RvbS50cyc7XG5pbXBvcnQgeyBTYmJFbGVtZW50SW50ZXJuYWxzTWl4aW4sIFNiYlVwZGF0ZVNjaGVkdWxlck1peGluIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMudHMnO1xuaW1wb3J0IHsgYm94U2l6aW5nU3R5bGVzIH0gZnJvbSAnLi4vLi4vY29yZS9zdHlsZXMudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9zdGlja3ktYmFyLnNjc3M/bGl0JmlubGluZSc7XG5cbnR5cGUgU3RpY2t5U3RhdGUgPSAnc3RpY2tpbmcnIHwgJ3N0aWNreScgfCAndW5zdGlja2luZycgfCAndW5zdGlja3knO1xuXG4vKipcbiAqIEEgY29udGFpbmVyIHRoYXQgc3RpY2tzIHRvIHRoZSBib3R0b20gb2YgdGhlIHBhZ2UgaWYgc2xvdHRlZCBpbnRvIGBzYmItY29udGFpbmVyYC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IHRvIHRoZSBzdGlja3kgYmFyLlxuICogQGNzc3Byb3AgWy0tc2JiLXN0aWNreS1iYXItcGFkZGluZy1ibG9jaz12YXIoLS1zYmItc3BhY2luZy1yZXNwb25zaXZlLXhzKV0gLSBCbG9jayBwYWRkaW5nIG9mIHRoZSBzdGlja3kgYmFyLlxuICogQGNzc3Byb3AgWy0tc2JiLXN0aWNreS1iYXItYm90dG9tLW92ZXJsYXBwaW5nLWhlaWdodD0wcHhdIC0gRGVmaW5lIGFuIGFkZGl0aW9uYWwgYXJlYSB3aGVyZVxuICogdGhlIHN0aWNreSBiYXIgb3ZlcmxhcHMgdGhlIGZvbGxvd2luZyBjb250ZW50IG9uIHRoZSBib3R0b20uXG4gKiBUaGlzIGFyZWEgYmVjb21lcyB2aXNpYmxlIHdoZW4gdGhlIHN0aWNreSBiYXIgdHJhbnNpdGlvbnMgZnJvbSBzdGlja3kgdG8gdGhlIG5vcm1hbCBkb2N1bWVudCBmbG93LlxuICogQGNzc3Byb3AgWy0tc2JiLXN0aWNreS1iYXItei1pbmRleF0gLSBUbyBzcGVjaWZ5IGEgY3VzdG9tIHN0YWNrIG9yZGVyLFxuICogdGhlIGB6LWluZGV4YCBjYW4gYmUgb3ZlcnJpZGRlbiBieSBkZWZpbmluZyB0aGlzIENTUyB2YXJpYWJsZS5cbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLXN0aWNreS1iYXInKVxuY2xhc3MgU2JiU3RpY2t5QmFyRWxlbWVudCBleHRlbmRzIFNiYlVwZGF0ZVNjaGVkdWxlck1peGluKFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpbihMaXRFbGVtZW50KSkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbYm94U2l6aW5nU3R5bGVzLCBzdHlsZV07XG5cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBldmVudHMgPSB7XG4gICAgYmVmb3Jlc3RpY2s6ICdiZWZvcmVzdGljaycsXG4gICAgc3RpY2s6ICdzdGljaycsXG4gICAgYmVmb3JldW5zdGljazogJ2JlZm9yZXVuc3RpY2snLFxuICAgIHVuc3RpY2s6ICd1bnN0aWNrJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKiogQ29sb3Igb2YgdGhlIGNvbnRhaW5lciwgbGlrZSB0cmFuc3BhcmVudCwgd2hpdGUgZXRjLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhY2Nlc3NvciBjb2xvcjpcbiAgICB8ICd3aGl0ZSdcbiAgICB8ICdtaWxrJ1xuICAgIHwgJ21pZG5pZ2h0J1xuICAgIHwgJ2NoYXJjb2FsJ1xuICAgIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFNpemUgb2YgdGhlIGNvbnRhaW5lci5cbiAgICogQGRlZmF1bHQgJ20nIC8gJ3MnIChsZWFuKVxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3Igc2l6ZTogJ20nIHwgJ3MnID0gaXNMZWFuKCkgPyAncycgOiAnbSc7XG5cbiAgLyoqIFRoZSBzdGF0ZSBvZiB0aGUgY29tcG9uZW50LiAqL1xuICBwcml2YXRlIHNldCBfc3RhdGUoc3RhdGU6IFN0aWNreVN0YXRlKSB7XG4gICAgaWYgKHRoaXMuX3N0YXRlSW50ZXJuYWwpIHtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5kZWxldGUoYHN0YXRlLSR7dGhpcy5fc3RhdGVJbnRlcm5hbH1gKTtcbiAgICB9XG4gICAgdGhpcy5fc3RhdGVJbnRlcm5hbCA9IHN0YXRlO1xuICAgIGlmICh0aGlzLl9zdGF0ZUludGVybmFsKSB7XG4gICAgICB0aGlzLmludGVybmFscy5zdGF0ZXMuYWRkKGBzdGF0ZS0ke3RoaXMuX3N0YXRlSW50ZXJuYWx9YCk7XG4gICAgfVxuICB9XG4gIHByaXZhdGUgZ2V0IF9zdGF0ZSgpOiBTdGlja3lTdGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0YXRlSW50ZXJuYWw7XG4gIH1cbiAgcHJpdmF0ZSBfc3RhdGVJbnRlcm5hbCE6IFN0aWNreVN0YXRlO1xuXG4gIHByaXZhdGUgX2ludGVyc2VjdG9yPzogSFRNTFNwYW5FbGVtZW50O1xuICBwcml2YXRlIF9vYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25Db250cm9sbGVyKHRoaXMsIHtcbiAgICAvLyBBbHRob3VnaCBgdGhpc2AgaXMgb2JzZXJ2ZWQsIHdlIGhhdmUgdG8gcG9zdHBvbmUgb2JzZXJ2aW5nXG4gICAgLy8gaW50byBmaXJzdFVwZGF0ZWQoKSB0byBhY2hpZXZlIGEgY29ycmVjdCBpbml0aWFsIHN0YXRlLlxuICAgIHRhcmdldDogbnVsbCxcbiAgICBjYWxsYmFjazogKGVudHJpZXMpID0+IHRoaXMuX2RldGVjdFN0aWNreVN0YXRlKGVudHJpZXNbMF0pLFxuICB9KTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMuX3N0YXRlID0gJ3N0aWNreSc7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLnNsb3QgfHw9ICdzdGlja3ktYmFyJztcblxuICAgIC8vIFN0aWNreSBiYXIgbmVlZHMgdG8gYmUgaGlkZGVuIHVudGlsIGZpcnN0IG9ic2VydmVyIGNhbGxiYWNrXG4gICAgdGhpcy5zdGFydFVwZGF0ZSgpO1xuXG4gICAgY29uc3QgY29udGFpbmVyID0gdGhpcy5jbG9zZXN0KCdzYmItY29udGFpbmVyJyk7XG4gICAgaWYgKGNvbnRhaW5lcikge1xuICAgICAgdGhpcy50b2dnbGVTdGF0ZSgnZXhwYW5kZWQnLCBjb250YWluZXIuZXhwYW5kZWQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5faW50ZXJzZWN0b3IpIHtcbiAgICAgIHRoaXMuX29ic2VydmVyLm9ic2VydmUodGhpcy5faW50ZXJzZWN0b3IpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBkaXNjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5kZWxldGUoJ2luaXRpYWxpemVkJyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLmZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoIXRoaXMuX2ludGVyc2VjdG9yKSB7XG4gICAgICB0aGlzLl9pbnRlcnNlY3RvciA9IHRoaXMuc2hhZG93Um9vdCEucXVlcnlTZWxlY3RvcignLnNiYi1zdGlja3ktYmFyX19pbnRlcnNlY3RvcicpITtcbiAgICAgIHRoaXMuX29ic2VydmVyLm9ic2VydmUodGhpcy5faW50ZXJzZWN0b3IpO1xuICAgIH1cbiAgICB0aGlzLl9vYnNlcnZlci5vYnNlcnZlKHRoaXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKHRoaXMsICctLXNiYi1zdGlja3ktYmFyLXNsaWRlLXZlcnRpY2FsbHktYW5pbWF0aW9uLWR1cmF0aW9uJyk7XG4gIH1cblxuICBwcml2YXRlIF9kZXRlY3RTdGlja3lTdGF0ZShlbnRyeTogSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeSk6IHZvaWQge1xuICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5hZGQoJ2luaXRpYWxpemVkJyk7XG5cbiAgICBjb25zdCBpc1N0aWNreSA9ICFlbnRyeS5pc0ludGVyc2VjdGluZyAmJiBlbnRyeS5ib3VuZGluZ0NsaWVudFJlY3QudG9wID4gMDtcblxuICAgIC8vIFRvIG9wdGltaXplIHRoZSB2aXN1YWwgcGVyY2VwdGlvbiBvZiB0aGUgc3RpY2t5IGJhciwgd2UgaGF2ZSBjZXJ0YWluIGNhc2VzIChlLmcuIG9uIHBhZ2UgbG9hZClcbiAgICAvLyB3aGVyZSB3ZSB3YW50IHRoZSBzdGlja3kgYmFyIHRvIHNsaWRlIGluIGZyb20gdGhlIGJvdHRvbS5cbiAgICAvLyBUbyBkZWNpZGUgd2hldGhlciB0byBzbGlkZSBpbiBmcm9tIHRoZSBib3R0b20gdXAsXG4gICAgLy8gd2UgY2hlY2sgaG93IGZhciBhd2F5IHRoZSBzdGlja3kgYmFyIGlzIGZyb20gdGhlIGludGVyc2VjdG9yIGVsZW1lbnQuIFdoZW4gc2Nyb2xsaW5nIGZhc3QsIHRoZVxuICAgIC8vIGRpZmZlcmVuY2UgY2FuIHZhcnkgc2xpZ2h0bHkuIFRvIGFjY291bnQgZm9yIHRoaXMgd2UgYWRkIGEgaGVpZ2h0IHRvbGVyYW5jZS5cbiAgICAvLyBUaGlzIHZhbHVlIHdhcyBmb3VuZCBieSB0cmlhbCBhbmQgZXJyb3IuXG4gICAgY29uc3QgaW50ZXJzZWN0b3JSZWN0ID0gdGhpcy5faW50ZXJzZWN0b3I/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGNvbnN0IHN0aWNreUJhclJlY3QgPSB0aGlzLnNoYWRvd1Jvb3QhLnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAnLnNiYi1zdGlja3ktYmFyX193cmFwcGVyJyxcbiAgICApIS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBIRUlHSFRfVE9MRVJBTkNFID0gMzA7XG5cbiAgICB0aGlzLnRvZ2dsZVN0YXRlKFxuICAgICAgJ3NsaWRlLXZlcnRpY2FsbHknLFxuICAgICAgaXNTdGlja3kgJiZcbiAgICAgICAgdGhpcy5faW50ZXJzZWN0b3IgJiZcbiAgICAgICAgTWF0aC5hYnMoaW50ZXJzZWN0b3JSZWN0IS5ib3R0b20gLSBzdGlja3lCYXJSZWN0LmJvdHRvbSkgPiBIRUlHSFRfVE9MRVJBTkNFLFxuICAgICk7XG5cbiAgICAvLyBUb2dnbGluZyBzdGlja2luZyBoYXMgdG8gYmUgYWZ0ZXIgc2xpZGUtdmVydGljYWxseSAocHJldmVudHMgYmFja2dyb3VuZCBjb2xvciB0cmFuc2l0aW9uKVxuICAgIHRoaXMudG9nZ2xlU3RhdGUoJ3N0aWNraW5nJywgaXNTdGlja3kpO1xuXG4gICAgLy8gU3RpY2t5IGJhciBuZWVkcyB0byBiZSBoaWRkZW4gdW50aWwgZmlyc3Qgb2JzZXJ2ZXIgY2FsbGJhY2tcbiAgICB0aGlzLmNvbXBsZXRlVXBkYXRlKCk7XG4gIH1cblxuICAvKiogQW5pbWF0ZXMgZnJvbSBub3JtYWwgY29udGVudCBmbG93IHBvc2l0aW9uIHRvIGBwb3NpdGlvbjogc3RpY2t5YC4gKi9cbiAgcHVibGljIHN0aWNrKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSAhPT0gJ3Vuc3RpY2t5JyB8fCAhdGhpcy5fZGlzcGF0Y2hCZWZvcmVTdGlja0V2ZW50KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9zdGF0ZSA9ICdzdGlja2luZyc7XG4gICAgaWYgKCF0aGlzLmludGVybmFscy5zdGF0ZXMuaGFzKCdzdGlja2luZycpIHx8IHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgIHRoaXMuX3N0aWNreUNhbGxiYWNrKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEFuaW1hdGVzIGBwb3NpdGlvbjogc3RpY2t5YCB0byBub3JtYWwgY29udGVudCBmbG93IHBvc2l0aW9uLiAqL1xuICBwdWJsaWMgdW5zdGljaygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgIT09ICdzdGlja3knIHx8ICF0aGlzLl9kaXNwYXRjaEJlZm9yZVVuU3RpY2tFdmVudCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fc3RhdGUgPSAndW5zdGlja2luZyc7XG5cbiAgICBpZiAoIXRoaXMuaW50ZXJuYWxzLnN0YXRlcy5oYXMoJ3N0aWNraW5nJykgfHwgdGhpcy5faXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKSkge1xuICAgICAgdGhpcy5fdW5zdGlja3lDYWxsYmFjaygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3N0aWNreUNhbGxiYWNrKCk6IHZvaWQge1xuICAgIHRoaXMuX3N0YXRlID0gJ3N0aWNreSc7XG5cbiAgICAvKiogRW1pdHMgd2hlbiB0aGUgYW5pbWF0aW9uIGZyb20gbm9ybWFsIGNvbnRlbnQgZmxvdyB0byBgcG9zaXRpb246IHN0aWNreWAgZW5kcy4gKi9cbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdzdGljaycpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3Vuc3RpY2t5Q2FsbGJhY2soKTogdm9pZCB7XG4gICAgLyoqIEVtaXRzIHdoZW4gdGhlIGFuaW1hdGlvbiBmcm9tIGBwb3NpdGlvbjogc3RpY2t5YCB0byBub3JtYWwgY29udGVudCBmbG93IGVuZHMuICovXG4gICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgndW5zdGljaycpKTtcbiAgICB0aGlzLl9zdGF0ZSA9ICd1bnN0aWNreSc7XG4gIH1cblxuICBwcml2YXRlIF9vbkFuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICAodGhpcy5fc3RhdGUgPT09ICdzdGlja2luZycgfHwgdGhpcy5fc3RhdGUgPT09ICdzdGlja3knKSAmJlxuICAgICAgZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ3NsaWRlLWluJ1xuICAgICkge1xuICAgICAgdGhpcy5fc3RpY2t5Q2FsbGJhY2soKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuX3N0YXRlID09PSAndW5zdGlja2luZycgJiYgZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ3NsaWRlLW91dCcpIHtcbiAgICAgIHRoaXMuX3Vuc3RpY2t5Q2FsbGJhY2soKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9kaXNwYXRjaEJlZm9yZVN0aWNrRXZlbnQoKTogYm9vbGVhbiB7XG4gICAgLyoqIEVtaXRzIHdoZW4gdGhlIGFuaW1hdGlvbiBmcm9tIG5vcm1hbCBjb250ZW50IGZsb3cgdG8gYHBvc2l0aW9uOiBzdGlja3lgIHN0YXJ0cy4gQ2FuIGJlIGNhbmNlbGVkLiAqL1xuICAgIHJldHVybiB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdiZWZvcmVzdGljaycsIHsgY2FuY2VsYWJsZTogdHJ1ZSB9KSk7XG4gIH1cblxuICBwcml2YXRlIF9kaXNwYXRjaEJlZm9yZVVuU3RpY2tFdmVudCgpOiBib29sZWFuIHtcbiAgICAvKiogRW1pdHMgd2hlbiB0aGUgYW5pbWF0aW9uIGZyb20gYHBvc2l0aW9uOiBzdGlja3lgIHRvIG5vcm1hbCBjb250ZW50IGZsb3cgc3RhcnRzLiBDYW4gYmUgY2FuY2VsZWQuICovXG4gICAgcmV0dXJuIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2JlZm9yZXVuc3RpY2snLCB7IGNhbmNlbGFibGU6IHRydWUgfSkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXN0aWNreS1iYXJfX3dyYXBwZXJcIiBAYW5pbWF0aW9uZW5kPSR7dGhpcy5fb25BbmltYXRpb25FbmR9PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLXN0aWNreS1iYXJcIj5cbiAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXN0aWNreS1iYXJfX2ludGVyc2VjdG9yXCI+PC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXN0aWNreS1iYXInOiBTYmJTdGlja3lCYXJFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
@@ -1 +1 @@
1
- {"version":3,"file":"focus-trap-controller.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/a11y/focus-trap-controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAItE,qBAAa,sBAAuB,YAAW,kBAAkB;IAkB5C,OAAO,CAAC,KAAK;IAjBhC;;;OAGG;IACH,IAAW,OAAO,CAAC,OAAO,EAAE,OAAO,EAMlC;IACD,IAAW,OAAO,IAAI,OAAO,CAE5B;IAED,OAAO,CAAC,gBAAgB,CAAgC;gBAE7B,KAAK,EAAE,sBAAsB,GAAG,WAAW;IAI/D,gBAAgB,IAAI,IAAI;IAI/B;;;OAGG;IACI,mBAAmB,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO;IAuB3D;;;OAGG;IACI,yBAAyB,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO;IAUjE;;;OAGG;IACI,wBAAwB,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO;IAUhE,OAAO,CAAC,KAAK;IA2Bb,qEAAqE;IACrE,OAAO,CAAC,wBAAwB;IA6BhC,oEAAoE;IACpE,OAAO,CAAC,uBAAuB;IA8B/B,OAAO,CAAC,OAAO;CAIhB"}
1
+ {"version":3,"file":"focus-trap-controller.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/a11y/focus-trap-controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAItE,qBAAa,sBAAuB,YAAW,kBAAkB;IAkB5C,OAAO,CAAC,KAAK;IAjBhC;;;OAGG;IACH,IAAW,OAAO,CAAC,OAAO,EAAE,OAAO,EAMlC;IACD,IAAW,OAAO,IAAI,OAAO,CAE5B;IAED,OAAO,CAAC,gBAAgB,CAAgC;gBAE7B,KAAK,EAAE,sBAAsB,GAAG,WAAW;IAI/D,gBAAgB,IAAI,IAAI;IAI/B;;;OAGG;IACI,mBAAmB,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO;IAuB3D;;;OAGG;IACI,yBAAyB,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO;IAUjE;;;OAGG;IACI,wBAAwB,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO;IAUhE,OAAO,CAAC,KAAK;IA2Bb,qEAAqE;IACrE,OAAO,CAAC,wBAAwB;IA6BhC,oEAAoE;IACpE,OAAO,CAAC,uBAAuB;IAgC/B,OAAO,CAAC,OAAO;CAIhB"}
@@ -98,8 +98,9 @@ class SbbFocusTrapController {
98
98
  }
99
99
  /** Get the last tabbable element from a DOM subtree (inclusive). */
100
100
  _getLastTabbableElement(root) {
101
+ let result = null;
101
102
  if (root !== this._host && interactivityChecker.isFocusable(root) && interactivityChecker.isTabbable(root)) {
102
- return root;
103
+ result = root;
103
104
  }
104
105
  const children = root.shadowRoot ? root.shadowRoot.children : root.localName === "slot" ? root.assignedElements() : root.children;
105
106
  for (let i = children.length - 1; i >= 0; i--) {
@@ -108,7 +109,7 @@ class SbbFocusTrapController {
108
109
  return tabbableChild;
109
110
  }
110
111
  }
111
- return null;
112
+ return result;
112
113
  }
113
114
  _untrap() {
114
115
  this._abortController?.abort();
@@ -118,4 +119,4 @@ class SbbFocusTrapController {
118
119
  export {
119
120
  SbbFocusTrapController
120
121
  };
121
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9jdXMtdHJhcC1jb250cm9sbGVyLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9hMTF5L2ZvY3VzLXRyYXAtY29udHJvbGxlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFJlYWN0aXZlQ29udHJvbGxlciwgUmVhY3RpdmVDb250cm9sbGVySG9zdCB9IGZyb20gJ2xpdCc7XG5cbmltcG9ydCB7IGludGVyYWN0aXZpdHlDaGVja2VyIH0gZnJvbSAnLi9pbnRlcmFjdGl2aXR5LWNoZWNrZXIudHMnO1xuXG5leHBvcnQgY2xhc3MgU2JiRm9jdXNUcmFwQ29udHJvbGxlciBpbXBsZW1lbnRzIFJlYWN0aXZlQ29udHJvbGxlciB7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBmb2N1cyBpcyB0cmFwIGlzIGVuYWJsZWQuXG4gICAqIEBwYXJhbSBlbmFibGVkXG4gICAqL1xuICBwdWJsaWMgc2V0IGVuYWJsZWQoZW5hYmxlZDogYm9vbGVhbikge1xuICAgIGlmIChlbmFibGVkKSB7XG4gICAgICB0aGlzLl90cmFwKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX3VudHJhcCgpO1xuICAgIH1cbiAgfVxuICBwdWJsaWMgZ2V0IGVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5fYWJvcnRDb250cm9sbGVyO1xuICB9XG5cbiAgcHJpdmF0ZSBfYWJvcnRDb250cm9sbGVyOiBBYm9ydENvbnRyb2xsZXIgfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSBfaG9zdDogUmVhY3RpdmVDb250cm9sbGVySG9zdCAmIEhUTUxFbGVtZW50KSB7XG4gICAgdGhpcy5faG9zdC5hZGRDb250cm9sbGVyPy4odGhpcyk7XG4gIH1cblxuICBwdWJsaWMgaG9zdERpc2Nvbm5lY3RlZCgpOiB2b2lkIHtcbiAgICB0aGlzLl91bnRyYXAoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGb2N1c2VzIHRoZSBlbGVtZW50IHRoYXQgc2hvdWxkIGJlIGZvY3VzZWQgd2hlbiB0aGUgZm9jdXMgdHJhcCBpcyBpbml0aWFsaXplZC5cbiAgICogQHJldHVybnMgV2hldGhlciBmb2N1cyB3YXMgbW92ZWQgc3VjY2Vzc2Z1bGx5LlxuICAgKi9cbiAgcHVibGljIGZvY3VzSW5pdGlhbEVsZW1lbnQob3B0aW9ucz86IEZvY3VzT3B0aW9ucyk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHJlZGlyZWN0VG9FbGVtZW50ID0gdGhpcy5faG9zdC5xdWVyeVNlbGVjdG9yPEhUTUxFbGVtZW50PignW3NiYi1mb2N1cy1pbml0aWFsXScpO1xuXG4gICAgaWYgKHJlZGlyZWN0VG9FbGVtZW50KSB7XG4gICAgICAvLyBXYXJuIHRoZSBjb25zdW1lciBpZiB0aGUgZWxlbWVudCB0aGV5J3ZlIHBvaW50ZWQgdG9cbiAgICAgIC8vIGlzbid0IGZvY3VzYWJsZSwgd2hlbiBub3QgaW4gcHJvZHVjdGlvbiBtb2RlLlxuICAgICAgaWYgKGltcG9ydC5tZXRhLmVudi5ERVYgJiYgIWludGVyYWN0aXZpdHlDaGVja2VyLmlzRm9jdXNhYmxlKHJlZGlyZWN0VG9FbGVtZW50KSkge1xuICAgICAgICBjb25zb2xlLndhcm4oYEVsZW1lbnQgbWF0Y2hpbmcgJ1tzYmItZm9jdXMtaW5pdGlhbF0nIGlzIG5vdCBmb2N1c2FibGUuYCwgcmVkaXJlY3RUb0VsZW1lbnQpO1xuICAgICAgfVxuXG4gICAgICBpZiAoIWludGVyYWN0aXZpdHlDaGVja2VyLmlzRm9jdXNhYmxlKHJlZGlyZWN0VG9FbGVtZW50KSkge1xuICAgICAgICBjb25zdCBmb2N1c2FibGVDaGlsZCA9IHRoaXMuX2dldEZpcnN0VGFiYmFibGVFbGVtZW50KHJlZGlyZWN0VG9FbGVtZW50KTtcbiAgICAgICAgZm9jdXNhYmxlQ2hpbGQ/LmZvY3VzKG9wdGlvbnMpO1xuICAgICAgICByZXR1cm4gISFmb2N1c2FibGVDaGlsZDtcbiAgICAgIH1cblxuICAgICAgcmVkaXJlY3RUb0VsZW1lbnQuZm9jdXMob3B0aW9ucyk7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5mb2N1c0ZpcnN0VGFiYmFibGVFbGVtZW50KG9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZvY3VzZXMgdGhlIGZpcnN0IHRhYmJhYmxlIGVsZW1lbnQgd2l0aGluIHRoZSBmb2N1cyB0cmFwIHJlZ2lvbi5cbiAgICogQHJldHVybnMgV2hldGhlciBmb2N1cyB3YXMgbW92ZWQgc3VjY2Vzc2Z1bGx5LlxuICAgKi9cbiAgcHVibGljIGZvY3VzRmlyc3RUYWJiYWJsZUVsZW1lbnQob3B0aW9ucz86IEZvY3VzT3B0aW9ucyk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHJlZGlyZWN0VG9FbGVtZW50ID0gdGhpcy5fZ2V0Rmlyc3RUYWJiYWJsZUVsZW1lbnQodGhpcy5faG9zdCk7XG5cbiAgICBpZiAocmVkaXJlY3RUb0VsZW1lbnQpIHtcbiAgICAgIHJlZGlyZWN0VG9FbGVtZW50LmZvY3VzKG9wdGlvbnMpO1xuICAgIH1cblxuICAgIHJldHVybiAhIXJlZGlyZWN0VG9FbGVtZW50O1xuICB9XG5cbiAgLyoqXG4gICAqIEZvY3VzZXMgdGhlIGxhc3QgdGFiYmFibGUgZWxlbWVudCB3aXRoaW4gdGhlIGZvY3VzIHRyYXAgcmVnaW9uLlxuICAgKiBAcmV0dXJucyBXaGV0aGVyIGZvY3VzIHdhcyBtb3ZlZCBzdWNjZXNzZnVsbHkuXG4gICAqL1xuICBwdWJsaWMgZm9jdXNMYXN0VGFiYmFibGVFbGVtZW50KG9wdGlvbnM/OiBGb2N1c09wdGlvbnMpOiBib29sZWFuIHtcbiAgICBjb25zdCByZWRpcmVjdFRvRWxlbWVudCA9IHRoaXMuX2dldExhc3RUYWJiYWJsZUVsZW1lbnQodGhpcy5faG9zdCk7XG5cbiAgICBpZiAocmVkaXJlY3RUb0VsZW1lbnQpIHtcbiAgICAgIHJlZGlyZWN0VG9FbGVtZW50LmZvY3VzKG9wdGlvbnMpO1xuICAgIH1cblxuICAgIHJldHVybiAhIXJlZGlyZWN0VG9FbGVtZW50O1xuICB9XG5cbiAgcHJpdmF0ZSBfdHJhcCgpOiB2b2lkIHtcbiAgICB0aGlzLl9hYm9ydENvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7XG4gICAgdGhpcy5faG9zdC5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgJ2tleWRvd24nLFxuICAgICAgKGV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChldmVudC5rZXkgIT09ICdUYWInKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFldmVudC5zaGlmdEtleSkge1xuICAgICAgICAgIGNvbnN0IGxhc3RGb2N1c2FibGVFbGVtZW50ID0gdGhpcy5fZ2V0TGFzdFRhYmJhYmxlRWxlbWVudCh0aGlzLl9ob3N0KTtcbiAgICAgICAgICBpZiAobGFzdEZvY3VzYWJsZUVsZW1lbnQgJiYgZXZlbnQuY29tcG9zZWRQYXRoKCkuaW5jbHVkZXMobGFzdEZvY3VzYWJsZUVsZW1lbnQpKSB7XG4gICAgICAgICAgICB0aGlzLl9nZXRGaXJzdFRhYmJhYmxlRWxlbWVudCh0aGlzLl9ob3N0KT8uZm9jdXMoKTtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IGZpcnN0Rm9jdXNhYmxlRWxlbWVudCA9IHRoaXMuX2dldEZpcnN0VGFiYmFibGVFbGVtZW50KHRoaXMuX2hvc3QpO1xuICAgICAgICAgIGlmIChmaXJzdEZvY3VzYWJsZUVsZW1lbnQgJiYgZXZlbnQuY29tcG9zZWRQYXRoKCkuaW5jbHVkZXMoZmlyc3RGb2N1c2FibGVFbGVtZW50KSkge1xuICAgICAgICAgICAgdGhpcy5fZ2V0TGFzdFRhYmJhYmxlRWxlbWVudCh0aGlzLl9ob3N0KT8uZm9jdXMoKTtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgeyBzaWduYWw6IHRoaXMuX2Fib3J0Q29udHJvbGxlci5zaWduYWwgfSxcbiAgICApO1xuICB9XG5cbiAgLyoqIEdldCB0aGUgZmlyc3QgdGFiYmFibGUgZWxlbWVudCBmcm9tIGEgRE9NIHN1YnRyZWUgKGluY2x1c2l2ZSkuICovXG4gIHByaXZhdGUgX2dldEZpcnN0VGFiYmFibGVFbGVtZW50KHJvb3Q6IEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICBpZiAoXG4gICAgICByb290ICE9PSB0aGlzLl9ob3N0ICYmXG4gICAgICBpbnRlcmFjdGl2aXR5Q2hlY2tlci5pc0ZvY3VzYWJsZShyb290KSAmJlxuICAgICAgaW50ZXJhY3Rpdml0eUNoZWNrZXIuaXNUYWJiYWJsZShyb290KVxuICAgICkge1xuICAgICAgcmV0dXJuIHJvb3Q7XG4gICAgfVxuXG4gICAgY29uc3QgY2hpbGRyZW4gPSByb290LnNoYWRvd1Jvb3RcbiAgICAgID8gcm9vdC5zaGFkb3dSb290LmNoaWxkcmVuXG4gICAgICA6IHJvb3QubG9jYWxOYW1lID09PSAnc2xvdCdcbiAgICAgICAgPyAocm9vdCBhcyBIVE1MU2xvdEVsZW1lbnQpLmFzc2lnbmVkRWxlbWVudHMoKVxuICAgICAgICA6IHJvb3QuY2hpbGRyZW47XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCB0YWJiYWJsZUNoaWxkID1cbiAgICAgICAgY2hpbGRyZW5baV0ubm9kZVR5cGUgPT09IGRvY3VtZW50LkVMRU1FTlRfTk9ERVxuICAgICAgICAgID8gdGhpcy5fZ2V0Rmlyc3RUYWJiYWJsZUVsZW1lbnQoY2hpbGRyZW5baV0gYXMgSFRNTEVsZW1lbnQpXG4gICAgICAgICAgOiBudWxsO1xuXG4gICAgICBpZiAodGFiYmFibGVDaGlsZCkge1xuICAgICAgICByZXR1cm4gdGFiYmFibGVDaGlsZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8qKiBHZXQgdGhlIGxhc3QgdGFiYmFibGUgZWxlbWVudCBmcm9tIGEgRE9NIHN1YnRyZWUgKGluY2x1c2l2ZSkuICovXG4gIHByaXZhdGUgX2dldExhc3RUYWJiYWJsZUVsZW1lbnQocm9vdDogSFRNTEVsZW1lbnQpOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICAgIGlmIChcbiAgICAgIHJvb3QgIT09IHRoaXMuX2hvc3QgJiZcbiAgICAgIGludGVyYWN0aXZpdHlDaGVja2VyLmlzRm9jdXNhYmxlKHJvb3QpICYmXG4gICAgICBpbnRlcmFjdGl2aXR5Q2hlY2tlci5pc1RhYmJhYmxlKHJvb3QpXG4gICAgKSB7XG4gICAgICByZXR1cm4gcm9vdDtcbiAgICB9XG5cbiAgICBjb25zdCBjaGlsZHJlbiA9IHJvb3Quc2hhZG93Um9vdFxuICAgICAgPyByb290LnNoYWRvd1Jvb3QuY2hpbGRyZW5cbiAgICAgIDogcm9vdC5sb2NhbE5hbWUgPT09ICdzbG90J1xuICAgICAgICA/IChyb290IGFzIEhUTUxTbG90RWxlbWVudCkuYXNzaWduZWRFbGVtZW50cygpXG4gICAgICAgIDogcm9vdC5jaGlsZHJlbjtcblxuICAgIC8vIEl0ZXJhdGUgaW4gcmV2ZXJzZSBET00gb3JkZXIuXG4gICAgZm9yIChsZXQgaSA9IGNoaWxkcmVuLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgICBjb25zdCB0YWJiYWJsZUNoaWxkID1cbiAgICAgICAgY2hpbGRyZW5baV0ubm9kZVR5cGUgPT09IGRvY3VtZW50LkVMRU1FTlRfTk9ERVxuICAgICAgICAgID8gdGhpcy5fZ2V0TGFzdFRhYmJhYmxlRWxlbWVudChjaGlsZHJlbltpXSBhcyBIVE1MRWxlbWVudClcbiAgICAgICAgICA6IG51bGw7XG5cbiAgICAgIGlmICh0YWJiYWJsZUNoaWxkKSB7XG4gICAgICAgIHJldHVybiB0YWJiYWJsZUNoaWxkO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBfdW50cmFwKCk6IHZvaWQge1xuICAgIHRoaXMuX2Fib3J0Q29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICB0aGlzLl9hYm9ydENvbnRyb2xsZXIgPSBudWxsO1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtNQUlhLHVCQUFzQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLakMsSUFBVyxRQUFRLFNBQWdCO0FBQ2pDLFFBQUksU0FBUztBQUNYLFdBQUssTUFBQTtBQUFBLElBQ1AsT0FBTztBQUNMLFdBQUssUUFBQTtBQUFBLElBQ1A7QUFBQSxFQUNGO0FBQUEsRUFDQSxJQUFXLFVBQU87QUFDaEIsV0FBTyxDQUFDLENBQUMsS0FBSztBQUFBLEVBQ2hCO0FBQUEsRUFJQSxZQUEyQixPQUEyQztBQUEzQyxTQUFBLFFBQUE7QUFGbkIsU0FBQSxtQkFBMkM7QUFHakQsU0FBSyxNQUFNLGdCQUFnQixJQUFJO0FBQUEsRUFDakM7QUFBQSxFQUVPLG1CQUFnQjtBQUNyQixTQUFLLFFBQUE7QUFBQSxFQUNQO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1PLG9CQUFvQixTQUFzQjtBQUMvQyxVQUFNLG9CQUFvQixLQUFLLE1BQU0sY0FBMkIscUJBQXFCO0FBRXJGLFFBQUksbUJBQW1CO0FBT3JCLFVBQUksQ0FBQyxxQkFBcUIsWUFBWSxpQkFBaUIsR0FBRztBQUN4RCxjQUFNLGlCQUFpQixLQUFLLHlCQUF5QixpQkFBaUI7QUFDdEUsd0JBQWdCLE1BQU0sT0FBTztBQUM3QixlQUFPLENBQUMsQ0FBQztBQUFBLE1BQ1g7QUFFQSx3QkFBa0IsTUFBTSxPQUFPO0FBQy9CLGFBQU87QUFBQSxJQUNUO0FBRUEsV0FBTyxLQUFLLDBCQUEwQixPQUFPO0FBQUEsRUFDL0M7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTU8sMEJBQTBCLFNBQXNCO0FBQ3JELFVBQU0sb0JBQW9CLEtBQUsseUJBQXlCLEtBQUssS0FBSztBQUVsRSxRQUFJLG1CQUFtQjtBQUNyQix3QkFBa0IsTUFBTSxPQUFP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
122
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9jdXMtdHJhcC1jb250cm9sbGVyLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9hMTF5L2ZvY3VzLXRyYXAtY29udHJvbGxlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFJlYWN0aXZlQ29udHJvbGxlciwgUmVhY3RpdmVDb250cm9sbGVySG9zdCB9IGZyb20gJ2xpdCc7XG5cbmltcG9ydCB7IGludGVyYWN0aXZpdHlDaGVja2VyIH0gZnJvbSAnLi9pbnRlcmFjdGl2aXR5LWNoZWNrZXIudHMnO1xuXG5leHBvcnQgY2xhc3MgU2JiRm9jdXNUcmFwQ29udHJvbGxlciBpbXBsZW1lbnRzIFJlYWN0aXZlQ29udHJvbGxlciB7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBmb2N1cyBpcyB0cmFwIGlzIGVuYWJsZWQuXG4gICAqIEBwYXJhbSBlbmFibGVkXG4gICAqL1xuICBwdWJsaWMgc2V0IGVuYWJsZWQoZW5hYmxlZDogYm9vbGVhbikge1xuICAgIGlmIChlbmFibGVkKSB7XG4gICAgICB0aGlzLl90cmFwKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX3VudHJhcCgpO1xuICAgIH1cbiAgfVxuICBwdWJsaWMgZ2V0IGVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5fYWJvcnRDb250cm9sbGVyO1xuICB9XG5cbiAgcHJpdmF0ZSBfYWJvcnRDb250cm9sbGVyOiBBYm9ydENvbnRyb2xsZXIgfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSBfaG9zdDogUmVhY3RpdmVDb250cm9sbGVySG9zdCAmIEhUTUxFbGVtZW50KSB7XG4gICAgdGhpcy5faG9zdC5hZGRDb250cm9sbGVyPy4odGhpcyk7XG4gIH1cblxuICBwdWJsaWMgaG9zdERpc2Nvbm5lY3RlZCgpOiB2b2lkIHtcbiAgICB0aGlzLl91bnRyYXAoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGb2N1c2VzIHRoZSBlbGVtZW50IHRoYXQgc2hvdWxkIGJlIGZvY3VzZWQgd2hlbiB0aGUgZm9jdXMgdHJhcCBpcyBpbml0aWFsaXplZC5cbiAgICogQHJldHVybnMgV2hldGhlciBmb2N1cyB3YXMgbW92ZWQgc3VjY2Vzc2Z1bGx5LlxuICAgKi9cbiAgcHVibGljIGZvY3VzSW5pdGlhbEVsZW1lbnQob3B0aW9ucz86IEZvY3VzT3B0aW9ucyk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHJlZGlyZWN0VG9FbGVtZW50ID0gdGhpcy5faG9zdC5xdWVyeVNlbGVjdG9yPEhUTUxFbGVtZW50PignW3NiYi1mb2N1cy1pbml0aWFsXScpO1xuXG4gICAgaWYgKHJlZGlyZWN0VG9FbGVtZW50KSB7XG4gICAgICAvLyBXYXJuIHRoZSBjb25zdW1lciBpZiB0aGUgZWxlbWVudCB0aGV5J3ZlIHBvaW50ZWQgdG9cbiAgICAgIC8vIGlzbid0IGZvY3VzYWJsZSwgd2hlbiBub3QgaW4gcHJvZHVjdGlvbiBtb2RlLlxuICAgICAgaWYgKGltcG9ydC5tZXRhLmVudi5ERVYgJiYgIWludGVyYWN0aXZpdHlDaGVja2VyLmlzRm9jdXNhYmxlKHJlZGlyZWN0VG9FbGVtZW50KSkge1xuICAgICAgICBjb25zb2xlLndhcm4oYEVsZW1lbnQgbWF0Y2hpbmcgJ1tzYmItZm9jdXMtaW5pdGlhbF0nIGlzIG5vdCBmb2N1c2FibGUuYCwgcmVkaXJlY3RUb0VsZW1lbnQpO1xuICAgICAgfVxuXG4gICAgICBpZiAoIWludGVyYWN0aXZpdHlDaGVja2VyLmlzRm9jdXNhYmxlKHJlZGlyZWN0VG9FbGVtZW50KSkge1xuICAgICAgICBjb25zdCBmb2N1c2FibGVDaGlsZCA9IHRoaXMuX2dldEZpcnN0VGFiYmFibGVFbGVtZW50KHJlZGlyZWN0VG9FbGVtZW50KTtcbiAgICAgICAgZm9jdXNhYmxlQ2hpbGQ/LmZvY3VzKG9wdGlvbnMpO1xuICAgICAgICByZXR1cm4gISFmb2N1c2FibGVDaGlsZDtcbiAgICAgIH1cblxuICAgICAgcmVkaXJlY3RUb0VsZW1lbnQuZm9jdXMob3B0aW9ucyk7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5mb2N1c0ZpcnN0VGFiYmFibGVFbGVtZW50KG9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZvY3VzZXMgdGhlIGZpcnN0IHRhYmJhYmxlIGVsZW1lbnQgd2l0aGluIHRoZSBmb2N1cyB0cmFwIHJlZ2lvbi5cbiAgICogQHJldHVybnMgV2hldGhlciBmb2N1cyB3YXMgbW92ZWQgc3VjY2Vzc2Z1bGx5LlxuICAgKi9cbiAgcHVibGljIGZvY3VzRmlyc3RUYWJiYWJsZUVsZW1lbnQob3B0aW9ucz86IEZvY3VzT3B0aW9ucyk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHJlZGlyZWN0VG9FbGVtZW50ID0gdGhpcy5fZ2V0Rmlyc3RUYWJiYWJsZUVsZW1lbnQodGhpcy5faG9zdCk7XG5cbiAgICBpZiAocmVkaXJlY3RUb0VsZW1lbnQpIHtcbiAgICAgIHJlZGlyZWN0VG9FbGVtZW50LmZvY3VzKG9wdGlvbnMpO1xuICAgIH1cblxuICAgIHJldHVybiAhIXJlZGlyZWN0VG9FbGVtZW50O1xuICB9XG5cbiAgLyoqXG4gICAqIEZvY3VzZXMgdGhlIGxhc3QgdGFiYmFibGUgZWxlbWVudCB3aXRoaW4gdGhlIGZvY3VzIHRyYXAgcmVnaW9uLlxuICAgKiBAcmV0dXJucyBXaGV0aGVyIGZvY3VzIHdhcyBtb3ZlZCBzdWNjZXNzZnVsbHkuXG4gICAqL1xuICBwdWJsaWMgZm9jdXNMYXN0VGFiYmFibGVFbGVtZW50KG9wdGlvbnM/OiBGb2N1c09wdGlvbnMpOiBib29sZWFuIHtcbiAgICBjb25zdCByZWRpcmVjdFRvRWxlbWVudCA9IHRoaXMuX2dldExhc3RUYWJiYWJsZUVsZW1lbnQodGhpcy5faG9zdCk7XG5cbiAgICBpZiAocmVkaXJlY3RUb0VsZW1lbnQpIHtcbiAgICAgIHJlZGlyZWN0VG9FbGVtZW50LmZvY3VzKG9wdGlvbnMpO1xuICAgIH1cblxuICAgIHJldHVybiAhIXJlZGlyZWN0VG9FbGVtZW50O1xuICB9XG5cbiAgcHJpdmF0ZSBfdHJhcCgpOiB2b2lkIHtcbiAgICB0aGlzLl9hYm9ydENvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7XG4gICAgdGhpcy5faG9zdC5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgJ2tleWRvd24nLFxuICAgICAgKGV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChldmVudC5rZXkgIT09ICdUYWInKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFldmVudC5zaGlmdEtleSkge1xuICAgICAgICAgIGNvbnN0IGxhc3RGb2N1c2FibGVFbGVtZW50ID0gdGhpcy5fZ2V0TGFzdFRhYmJhYmxlRWxlbWVudCh0aGlzLl9ob3N0KTtcbiAgICAgICAgICBpZiAobGFzdEZvY3VzYWJsZUVsZW1lbnQgJiYgZXZlbnQuY29tcG9zZWRQYXRoKCkuaW5jbHVkZXMobGFzdEZvY3VzYWJsZUVsZW1lbnQpKSB7XG4gICAgICAgICAgICB0aGlzLl9nZXRGaXJzdFRhYmJhYmxlRWxlbWVudCh0aGlzLl9ob3N0KT8uZm9jdXMoKTtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IGZpcnN0Rm9jdXNhYmxlRWxlbWVudCA9IHRoaXMuX2dldEZpcnN0VGFiYmFibGVFbGVtZW50KHRoaXMuX2hvc3QpO1xuICAgICAgICAgIGlmIChmaXJzdEZvY3VzYWJsZUVsZW1lbnQgJiYgZXZlbnQuY29tcG9zZWRQYXRoKCkuaW5jbHVkZXMoZmlyc3RGb2N1c2FibGVFbGVtZW50KSkge1xuICAgICAgICAgICAgdGhpcy5fZ2V0TGFzdFRhYmJhYmxlRWxlbWVudCh0aGlzLl9ob3N0KT8uZm9jdXMoKTtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgeyBzaWduYWw6IHRoaXMuX2Fib3J0Q29udHJvbGxlci5zaWduYWwgfSxcbiAgICApO1xuICB9XG5cbiAgLyoqIEdldCB0aGUgZmlyc3QgdGFiYmFibGUgZWxlbWVudCBmcm9tIGEgRE9NIHN1YnRyZWUgKGluY2x1c2l2ZSkuICovXG4gIHByaXZhdGUgX2dldEZpcnN0VGFiYmFibGVFbGVtZW50KHJvb3Q6IEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICBpZiAoXG4gICAgICByb290ICE9PSB0aGlzLl9ob3N0ICYmXG4gICAgICBpbnRlcmFjdGl2aXR5Q2hlY2tlci5pc0ZvY3VzYWJsZShyb290KSAmJlxuICAgICAgaW50ZXJhY3Rpdml0eUNoZWNrZXIuaXNUYWJiYWJsZShyb290KVxuICAgICkge1xuICAgICAgcmV0dXJuIHJvb3Q7XG4gICAgfVxuXG4gICAgY29uc3QgY2hpbGRyZW4gPSByb290LnNoYWRvd1Jvb3RcbiAgICAgID8gcm9vdC5zaGFkb3dSb290LmNoaWxkcmVuXG4gICAgICA6IHJvb3QubG9jYWxOYW1lID09PSAnc2xvdCdcbiAgICAgICAgPyAocm9vdCBhcyBIVE1MU2xvdEVsZW1lbnQpLmFzc2lnbmVkRWxlbWVudHMoKVxuICAgICAgICA6IHJvb3QuY2hpbGRyZW47XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCB0YWJiYWJsZUNoaWxkID1cbiAgICAgICAgY2hpbGRyZW5baV0ubm9kZVR5cGUgPT09IGRvY3VtZW50LkVMRU1FTlRfTk9ERVxuICAgICAgICAgID8gdGhpcy5fZ2V0Rmlyc3RUYWJiYWJsZUVsZW1lbnQoY2hpbGRyZW5baV0gYXMgSFRNTEVsZW1lbnQpXG4gICAgICAgICAgOiBudWxsO1xuXG4gICAgICBpZiAodGFiYmFibGVDaGlsZCkge1xuICAgICAgICByZXR1cm4gdGFiYmFibGVDaGlsZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8qKiBHZXQgdGhlIGxhc3QgdGFiYmFibGUgZWxlbWVudCBmcm9tIGEgRE9NIHN1YnRyZWUgKGluY2x1c2l2ZSkuICovXG4gIHByaXZhdGUgX2dldExhc3RUYWJiYWJsZUVsZW1lbnQocm9vdDogSFRNTEVsZW1lbnQpOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICAgIGxldCByZXN1bHQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgICBpZiAoXG4gICAgICByb290ICE9PSB0aGlzLl9ob3N0ICYmXG4gICAgICBpbnRlcmFjdGl2aXR5Q2hlY2tlci5pc0ZvY3VzYWJsZShyb290KSAmJlxuICAgICAgaW50ZXJhY3Rpdml0eUNoZWNrZXIuaXNUYWJiYWJsZShyb290KVxuICAgICkge1xuICAgICAgcmVzdWx0ID0gcm9vdDtcbiAgICB9XG5cbiAgICBjb25zdCBjaGlsZHJlbiA9IHJvb3Quc2hhZG93Um9vdFxuICAgICAgPyByb290LnNoYWRvd1Jvb3QuY2hpbGRyZW5cbiAgICAgIDogcm9vdC5sb2NhbE5hbWUgPT09ICdzbG90J1xuICAgICAgICA/IChyb290IGFzIEhUTUxTbG90RWxlbWVudCkuYXNzaWduZWRFbGVtZW50cygpXG4gICAgICAgIDogcm9vdC5jaGlsZHJlbjtcblxuICAgIC8vIEl0ZXJhdGUgaW4gcmV2ZXJzZSBET00gb3JkZXIuXG4gICAgZm9yIChsZXQgaSA9IGNoaWxkcmVuLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgICBjb25zdCB0YWJiYWJsZUNoaWxkID1cbiAgICAgICAgY2hpbGRyZW5baV0ubm9kZVR5cGUgPT09IGRvY3VtZW50LkVMRU1FTlRfTk9ERVxuICAgICAgICAgID8gdGhpcy5fZ2V0TGFzdFRhYmJhYmxlRWxlbWVudChjaGlsZHJlbltpXSBhcyBIVE1MRWxlbWVudClcbiAgICAgICAgICA6IG51bGw7XG5cbiAgICAgIGlmICh0YWJiYWJsZUNoaWxkKSB7XG4gICAgICAgIHJldHVybiB0YWJiYWJsZUNoaWxkO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwcml2YXRlIF91bnRyYXAoKTogdm9pZCB7XG4gICAgdGhpcy5fYWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHRoaXMuX2Fib3J0Q29udHJvbGxlciA9IG51bGw7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO01BSWEsdUJBQXNCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtqQyxJQUFXLFFBQVEsU0FBZ0I7QUFDakMsUUFBSSxTQUFTO0FBQ1gsV0FBSyxNQUFBO0FBQUEsSUFDUCxPQUFPO0FBQ0wsV0FBSyxRQUFBO0FBQUEsSUFDUDtBQUFBLEVBQ0Y7QUFBQSxFQUNBLElBQVcsVUFBTztBQUNoQixXQUFPLENBQUMsQ0FBQyxLQUFLO0FBQUEsRUFDaEI7QUFBQSxFQUlBLFlBQTJCLE9BQTJDO0FBQTNDLFNBQUEsUUFBQTtBQUZuQixTQUFBLG1CQUEyQztBQUdqRCxTQUFLLE1BQU0sZ0JBQWdCLElBQUk7QUFBQSxFQUNqQztBQUFBLEVBRU8sbUJBQWdCO0FBQ3JCLFNBQUssUUFBQTtBQUFBLEVBQ1A7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTU8sb0JBQW9CLFNBQXNCO0FBQy9DLFVBQU0sb0JBQW9CLEtBQUssTUFBTSxjQUEyQixxQkFBcUI7QUFFckYsUUFBSSxtQkFBbUI7QUFPckIsVUFBSSxDQUFDLHFCQUFxQixZQUFZLGlCQUFpQixHQUFHO0FBQ3hELGNBQU0saUJBQWlCLEtBQUsseUJBQXlCLGlCQUFpQjtBQUN0RSx3QkFBZ0IsTUFBTSxPQUFPO0FBQzdCLGVBQU8sQ0FBQyxDQUFDO0FBQUEsTUFDWDtBQUVBLHdCQUFrQixNQUFNLE9BQU87QUFDL0IsYUFBTztBQUFBLElBQ1Q7QUFFQSxXQUFPLEtBQUssMEJBQTBCLE9BQU87QUFBQSxFQUMvQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNTywwQkFBMEIsU0FBc0I7QUFDckQsVUFBTSxvQkFBb0IsS0FBSyx5QkFBeUIs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
@@ -1 +1 @@
1
- {"version":3,"file":"overlay-position-controller.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/controllers/overlay-position-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,kBAAkB,EAAE,KAAK,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAErF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAqDjE;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,4BAA6B,YAAW,kBAAkB;IAyBnE,OAAO,CAAC,YAAY;IAxBtB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAEtB;IACV,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsE;IAC/F,OAAO,CAAC,gBAAgB,CAAC,CAAkB;IAC3C,OAAO,CAAC,OAAO,CAAC,CAAc;IAC9B,OAAO,CAAC,cAAc,CAAC,CAAsB;IAC7C,OAAO,CAAC,MAAM,CAAC,CAA2C;IAC1D,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,aAAa,CAAC,CAAS;IAE/B,oEAAoE;IACpE,IAAW,eAAe,IAAI,MAAM,CAOnC;gBAGC,IAAI,EAAE,sBAAsB,GAAG,WAAW,GAAG,4BAA4B,EACjE,YAAY,UAA8B;IAM7C,aAAa,IAAI,IAAI;IASrB,UAAU,IAAI,IAAI;IAOzB;;;;OAIG;IACI,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAmClC,UAAU,IAAI,IAAI;IAOzB,OAAO,CAAC,yBAAyB;IAOjC,OAAO,CAAC,kBAAkB;IAa1B;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAiL3B,OAAO,CAAC,qBAAqB;IAM7B;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;CA6B9B"}
1
+ {"version":3,"file":"overlay-position-controller.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/controllers/overlay-position-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,kBAAkB,EAAE,KAAK,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAErF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAqDjE;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,4BAA6B,YAAW,kBAAkB;IAyBnE,OAAO,CAAC,YAAY;IAxBtB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAEtB;IACV,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsE;IAC/F,OAAO,CAAC,gBAAgB,CAAC,CAAkB;IAC3C,OAAO,CAAC,OAAO,CAAC,CAAc;IAC9B,OAAO,CAAC,cAAc,CAAC,CAAsB;IAC7C,OAAO,CAAC,MAAM,CAAC,CAA2C;IAC1D,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,aAAa,CAAC,CAAS;IAE/B,oEAAoE;IACpE,IAAW,eAAe,IAAI,MAAM,CAOnC;gBAGC,IAAI,EAAE,sBAAsB,GAAG,WAAW,GAAG,4BAA4B,EACjE,YAAY,UAA8B;IAM7C,aAAa,IAAI,IAAI;IASrB,UAAU,IAAI,IAAI;IAOzB;;;;OAIG;IACI,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAmClC,UAAU,IAAI,IAAI;IAOzB,OAAO,CAAC,yBAAyB;IAOjC,OAAO,CAAC,kBAAkB;IAa1B;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAkL3B,OAAO,CAAC,qBAAqB;IAM7B;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;CA6B9B"}
@@ -284,4 +284,4 @@ class SbbOverlayPositionController {
284
284
  export {
285
285
  SbbOverlayPositionController
286
286
  };
287
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1wb3NpdGlvbi1jb250cm9sbGVyLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9jb250cm9sbGVycy9vdmVybGF5LXBvc2l0aW9uLWNvbnRyb2xsZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNTZXJ2ZXIsIHR5cGUgUmVhY3RpdmVDb250cm9sbGVyLCB0eXBlIFJlYWN0aXZlQ29udHJvbGxlckhvc3QgfSBmcm9tICdsaXQnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpblR5cGUgfSBmcm9tICcuLi9taXhpbnMudHMnO1xuXG5jb25zdCBjc3NBbmNob3JQb3NpdGlvblN1cHBvcnRlZCA9ICFpc1NlcnZlciAmJiBDU1Muc3VwcG9ydHMoJ2FuY2hvci1uYW1lJywgJy0tdGVzdCcpO1xuXG5jb25zdCBwaHlzaWNhbFN1cHBvcnRlZFBvc2l0aW9ucyA9IFtcbiAgJ3RvcCcsXG4gICdib3R0b20nLFxuICAnbGVmdCcsXG4gICdyaWdodCcsXG4gICd0b3Agc3Bhbi1sZWZ0JyxcbiAgJ3RvcCBzcGFuLXJpZ2h0JyxcbiAgJ2JvdHRvbSBzcGFuLWxlZnQnLFxuICAnYm90dG9tIHNwYW4tcmlnaHQnLFxuICAnbGVmdCBzcGFuLXRvcCcsXG4gICdsZWZ0IHNwYW4tYm90dG9tJyxcbiAgJ3JpZ2h0IHNwYW4tdG9wJyxcbiAgJ3JpZ2h0IHNwYW4tYm90dG9tJyxcbl07XG5cbi8vIE5vdGU6IGlmIHlvdSBhZGQgbmV3IGxvZ2ljYWwgc3VwcG9ydGVkIHBvc2l0aW9ucywgdXBkYXRlIGFsc28gdGhlICdydGxQb3NpdGlvbk1hcHBpbmcnXG5jb25zdCBsb2dpY2FsU3VwcG9ydGVkUG9zaXRpb25zID0gW1xuICAnYmxvY2stc3RhcnQnLFxuICAnYmxvY2stZW5kJyxcbiAgJ2lubGluZS1zdGFydCcsXG4gICdpbmxpbmUtZW5kJyxcbiAgJ2Jsb2NrLXN0YXJ0IHNwYW4taW5saW5lLXN0YXJ0JyxcbiAgJ2Jsb2NrLXN0YXJ0IHNwYW4taW5saW5lLWVuZCcsXG4gICdibG9jay1lbmQgc3Bhbi1pbmxpbmUtc3RhcnQnLFxuICAnYmxvY2stZW5kIHNwYW4taW5saW5lLWVuZCcsXG4gICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1zdGFydCcsXG4gICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1lbmQnLFxuICAnaW5saW5lLWVuZCBzcGFuLWJsb2NrLXN0YXJ0JyxcbiAgJ2lubGluZS1lbmQgc3Bhbi1ibG9jay1lbmQnLFxuXTtcblxuY29uc3QgcnRsUG9zaXRpb25NYXBwaW5nOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge1xuICAnYmxvY2stc3RhcnQnOiAnYmxvY2stc3RhcnQnLFxuICAnYmxvY2stZW5kJzogJ2Jsb2NrLWVuZCcsXG4gICdpbmxpbmUtc3RhcnQnOiAnaW5saW5lLWVuZCcsXG4gICdpbmxpbmUtZW5kJzogJ2lubGluZS1zdGFydCcsXG4gICdibG9jay1zdGFydCBzcGFuLWlubGluZS1zdGFydCc6ICdibG9jay1zdGFydCBzcGFuLWlubGluZS1lbmQnLFxuICAnYmxvY2stc3RhcnQgc3Bhbi1pbmxpbmUtZW5kJzogJ2Jsb2NrLXN0YXJ0IHNwYW4taW5saW5lLXN0YXJ0JyxcbiAgJ2Jsb2NrLWVuZCBzcGFuLWlubGluZS1zdGFydCc6ICdibG9jay1lbmQgc3Bhbi1pbmxpbmUtZW5kJyxcbiAgJ2Jsb2NrLWVuZCBzcGFuLWlubGluZS1lbmQnOiAnYmxvY2stZW5kIHNwYW4taW5saW5lLXN0YXJ0JyxcbiAgJ2lubGluZS1zdGFydCBzcGFuLWJsb2NrLXN0YXJ0JzogJ2lubGluZS1lbmQgc3Bhbi1ibG9jay1zdGFydCcsXG4gICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1lbmQnOiAnaW5saW5lLWVuZCBzcGFuLWJsb2NrLWVuZCcsXG4gICdpbmxpbmUtZW5kIHNwYW4tYmxvY2stc3RhcnQnOiAnaW5saW5lLXN0YXJ0IHNwYW4tYmxvY2stc3RhcnQnLFxuICAnaW5saW5lLWVuZCBzcGFuLWJsb2NrLWVuZCc6ICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1lbmQnLFxufTtcblxuY29uc3Qgc3VwcG9ydGVkUG9zaXRpb25zID0gWy4uLnBoeXNpY2FsU3VwcG9ydGVkUG9zaXRpb25zLCAuLi5sb2dpY2FsU3VwcG9ydGVkUG9zaXRpb25zXTtcbmxldCBuZXh0SWQgPSAwO1xuXG4vKipcbiAqIENvbnRyb2xsZXIgZm9yIG1hbmFnaW5nIG92ZXJsYXlzIHBvc2l0aW9uaW5nLiBBbHNvIGFjdHMgYXMgYSBwb2x5ZmlsbCB3aGVuIG5hdGl2ZVxuICogQ1NTIEFuY2hvciBQb3NpdGlvbmluZyBpcyBub3Qgc3VwcG9ydGVkIChlbm91Z2gpLlxuICogQXBwbGllcyB1bmlxdWUgYW5jaG9yIG5hbWVzIHdoZW4gdXNpbmcgbmF0aXZlIENTUyBBbmNob3IgUG9zaXRpb25pbmdcbiAqIG9yIGNhbGN1bGF0ZXMgYW5kIGFwcGxpZXMgY29ycmVjdCBwb3NpdGlvbnMgaW4gcG9seWZpbGwgbW9kZS5cbiAqXG4gKiBBbHNvLCB0aGUgY29udHJvbGxlciBzZXRzIHRoZSAnZGF0YS1wb3NpdGlvbicgYXR0cmlidXRlIG9uIHRoZSBvdmVybGF5IGVsZW1lbnQuXG4gKiBUaGlzIGNhbiBiZSB1c2VkIHRvIGFwcGx5IHNwZWNpZmljIHN0eWxlcyBiYXNlZCBvbiB0aGUgY3VycmVudCBwb3NpdGlvbiBvZiB0aGUgb3ZlcmxheS5cbiAqXG4gKiAjIyMgSW1wbGVtZW50YXRpb25cbiAqIERlZmluZSBhbmQgYXBwbHkgdGhlIGZvbGxvd2luZyBDU1MgdmFyaWFibGVzIG9uIHRoZSBvdmVybGF5IGVsZW1lbnQ6XG4gKiBgYGBzY3NzXG4gKiAgIC0tc2JiLW92ZXJsYXktcG9zaXRpb24tYXJlYTogYmxvY2stZW5kOyAvLyBEZWZhdWx0XG4gKiAgIC0tc2JiLW92ZXJsYXktcG9zaXRpb24tdHJ5LWZhbGxiYWNrczogYmxvY2stc3RhcnQsIGlubGluZS1lbmQsIGlubGluZS1zdGFydDsgLy8gRmFsbGJhY2tzXG4gKlxuICogICBwb3NpdGlvbi1hcmVhOiB2YXIoLS1zYmItb3ZlcmxheS1wb3NpdGlvbi1hcmVhKTtcbiAqICAgcG9zaXRpb24tdHJ5LWZhbGxiYWNrczogdmFyKC0tc2JiLW92ZXJsYXktcG9zaXRpb24tdHJ5LWZhbGxiYWNrcyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIFNiYk92ZXJsYXlQb3NpdGlvbkNvbnRyb2xsZXIgaW1wbGVtZW50cyBSZWFjdGl2ZUNvbnRyb2xsZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IF9yZXNpemVPYnNlcnZlciA9ICFpc1NlcnZlclxuICAgID8gbmV3IFJlc2l6ZU9ic2VydmVyKCgpID0+IHRoaXMuX3JlcXVlc3RDYWxjdWxhdGVQb3NpdGlvbigpKVxuICAgIDogbnVsbCE7XG4gIHByaXZhdGUgcmVhZG9ubHkgX292ZXJsYXk6IFJlYWN0aXZlQ29udHJvbGxlckhvc3QgJiBIVE1MRWxlbWVudCAmIFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpblR5cGU7XG4gIHByaXZhdGUgX2Fib3J0Q29udHJvbGxlcj86IEFib3J0Q29udHJvbGxlcjtcbiAgcHJpdmF0ZSBfYW5jaG9yPzogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX292ZXJsYXlTdHlsZXM/OiBDU1NTdHlsZURlY2xhcmF0aW9uO1xuICBwcml2YXRlIF9mcmFtZT86IFJldHVyblR5cGU8dHlwZW9mIHJlcXVlc3RBbmltYXRpb25GcmFtZT47XG4gIHByaXZhdGUgX2FuY2hvck5hbWUgPSBgLS1zYmItb3ZlcmxheS1hbmNob3ItJHsrK25leHRJZH1gO1xuICBwcml2YXRlIF9wb3NpdGlvbnM6IHN0cmluZ1tdID0gW107XG4gIHByaXZhdGUgX2xhc3RQb3NpdGlvbj86IHN0cmluZztcblxuICAvKiogR2V0IHRoZSBjdXJyZW50IHBvc2l0aW9uLiAoZS5nLiBibG9jay1lbmQsIGJsb2NrLXN0YXJ0LCBldGMuKSAqL1xuICBwdWJsaWMgZ2V0IGN1cnJlbnRQb3NpdGlvbigpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLl91c2VQb2x5ZmlsbCkge1xuICAgICAgcmV0dXJuIHRoaXMuX2xhc3RQb3NpdGlvbiA/PyB0aGlzLl9wb3NpdGlvbnNbMF0gPz8gJyc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX292ZXJsYXlTdHlsZXMgPz89IGdldENvbXB1dGVkU3R5bGUodGhpcy5fb3ZlcmxheSk7XG4gICAgICByZXR1cm4gdGhpcy5fb3ZlcmxheVN0eWxlcy5nZXRQcm9wZXJ0eVZhbHVlKCdwb3NpdGlvbi1hcmVhJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIGhvc3Q6IFJlYWN0aXZlQ29udHJvbGxlckhvc3QgJiBIVE1MRWxlbWVudCAmIFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpblR5cGUsXG4gICAgcHJpdmF0ZSBfdXNlUG9seWZpbGwgPSAhY3NzQW5jaG9yUG9zaXRpb25TdXBwb3J0ZWQsXG4gICkge1xuICAgIGhvc3QuYWRkQ29udHJvbGxlcih0aGlzKTtcbiAgICB0aGlzLl9vdmVybGF5ID0gaG9zdDtcbiAgfVxuXG4gIHB1YmxpYyBob3N0Q29ubmVjdGVkKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fdXNlUG9seWZpbGwpIHtcbiAgICAgIHRoaXMuX292ZXJsYXkuc3R5bGUuc2V0UHJvcGVydHkoJ3Bvc2l0aW9uLWFuY2hvcicsIHRoaXMuX2FuY2hvck5hbWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBSZXNldCB0aGUgJ3Bvc2l0aW9uLWFyZWEnIHZhbHVlIHRvIGF2b2lkIGFueSB1bndhbnRlZCBzaWRlIGVmZmVjdCB3aGVuIHVzaW5nIHRoZSBwb2x5ZmlsbC5cbiAgICAgIHRoaXMuX292ZXJsYXkuc3R5bGUuc2V0UHJvcGVydHkoJ3Bvc2l0aW9uLWFyZWEnLCAnaW5pdGlhbCcpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBob3N0VXBkYXRlKCk6IHZvaWQge1xuICAgIGlmIChpc1NlcnZlcikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9yZWFkUG9zaXRpb25zRnJvbUNzcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbm5lY3RzIHRoZSBvdmVybGF5IHRvIHRoZSBnaXZlbiB0cmlnZ2VyIGVsZW1lbnQgYW5kIGRldGVybWluZXMgdGhlIG9wdGltYWwgcG9zaXRpb24uXG4gICAqIFVzdWFsbHksIHRoaXMgaXMgY2FsbGVkIHdoZW4gdGhlIG92ZXJsYXkgaXMgb3BlbmVkLlxuICAgKiBAcGFyYW0gYW5jaG9yIFRoZSBhbmNob3IgZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyBjb25uZWN0KGFuY2hvcjogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICBpZiAoaXNTZXJ2ZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fYW5jaG9yKSB7XG4gICAgICB0aGlzLmRpc2Nvbm5lY3QoKTtcbiAgICB9XG4gICAgdGhpcy5fYW5jaG9yID0gYW5jaG9yO1xuXG4gICAgaWYgKCF0aGlzLl91c2VQb2x5ZmlsbCkge1xuICAgICAgdGhpcy5fYW5jaG9yLnN0eWxlLnNldFByb3BlcnR5KCdhbmNob3ItbmFtZScsIHRoaXMuX2FuY2hvck5hbWUhKTtcbiAgICB9XG5cbiAgICB0aGlzLl9yZWFkUG9zaXRpb25zRnJvbUNzcygpO1xuICAgIHRoaXMuX2NhbGN1bGF0ZVBvc2l0aW9uKCk7XG4gICAgdGhpcy5fYWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHRoaXMuX2Fib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcblxuICAgIC8vIFdlIG5lZWQgdG8gdXNlIGNhcHR1cmUgaGVyZSB0byByZWFjdCB0byBhbGwgc2Nyb2xsIGV2ZW50cy5cbiAgICAvLyBJZiBjYXB0dXJlIHdhcyBub3QgdXNlZCwgdGhlbiBzY3JvbGwgZXZlbnRzIGluc2lkZSBzZXBhcmF0ZSBzY3JvbGxcbiAgICAvLyBjb250YWluZXJzIHdvdWxkIG5vdCBiZSBjYXVnaHQuXG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgKCkgPT4gdGhpcy5fcmVxdWVzdENhbGN1bGF0ZVBvc2l0aW9uKCksIHtcbiAgICAgIGNhcHR1cmU6IHRydWUsXG4gICAgICBwYXNzaXZlOiB0cnVlLFxuICAgICAgc2lnbmFsOiB0aGlzLl9hYm9ydENvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdyZXNpemUnLCAoKSA9PiB0aGlzLl9yZXF1ZXN0Q2FsY3VsYXRlUG9zaXRpb24oKSwge1xuICAgICAgcGFzc2l2ZTogdHJ1ZSxcbiAgICAgIHNpZ25hbDogdGhpcy5fYWJvcnRDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlci5vYnNlcnZlKGFuY2hvciwgeyBib3g6ICdib3JkZXItYm94JyB9KTtcbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMuX292ZXJsYXksIHsgYm94OiAnYm9yZGVyLWJveCcgfSk7XG4gIH1cblxuICBwdWJsaWMgZGlzY29ubmVjdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9hbmNob3I/LnN0eWxlLnJlbW92ZVByb3BlcnR5KCdhbmNob3ItbmFtZScpO1xuICAgIHRoaXMuX2FuY2hvciA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLl9hYm9ydENvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgdGhpcy5fcmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVxdWVzdENhbGN1bGF0ZVBvc2l0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuX2ZyYW1lID8/PSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgdGhpcy5fY2FsY3VsYXRlUG9zaXRpb24oKTtcbiAgICAgIHRoaXMuX2ZyYW1lID0gdW5kZWZpbmVkO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlUG9zaXRpb24oKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9hbmNob3IpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fdXNlUG9seWZpbGwpIHtcbiAgICAgIGNvbnN0IHBvc2l0aW9uID0gdGhpcy5fZ2V0T3B0aW1hbFBvc2l0aW9uKHRoaXMuX3Bvc2l0aW9ucyk7XG4gICAgICB0aGlzLl9hcHBseU92ZXJsYXlQb3NpdGlvbihwb3NpdGlvbi5wb3NpdGlvbiwgcG9zaXRpb24ubGVmdCwgcG9zaXRpb24udG9wKTtcbiAgICB9XG5cbiAgICB0aGlzLl9vdmVybGF5LnNldEF0dHJpYnV0ZSgnZGF0YS1wb3NpdGlvbicsIHRoaXMuY3VycmVudFBvc2l0aW9uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxjdWxhdGVzIHRoZSBvcHRpbWFsIHBvc2l0aW9uIHRoYXQgZml0cyB0aGUgb3ZlcmxheS5cbiAgICogQHBhcmFtIHBvc2l0aW9ucyBUaGUgbGlzdCBvZiBwb3NpdGlvbnMgdG8gY2hlY2suXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIF9nZXRPcHRpbWFsUG9zaXRpb24ocG9zaXRpb25zOiBzdHJpbmdbXSk6IHtcbiAgICBsZWZ0OiBudW1iZXI7XG4gICAgdG9wOiBudW1iZXI7XG4gICAgcG9zaXRpb246IHN0cmluZztcbiAgICBmaXRzPzogYm9vbGVhbjtcbiAgfSB7XG4gICAgY29uc3QgeyBvZmZzZXRIZWlnaHQ6IG92ZXJsYXlIZWlnaHQsIG9mZnNldFdpZHRoOiBvdmVybGF5V2lkdGggfSA9IHRoaXMuX292ZXJsYXk7XG4gICAgY29uc3QgeyBpbm5lckhlaWdodDogdmlld3BvcnRIZWlnaHQsIGlubmVyV2lkdGg6IHZpZXdwb3J0V2lkdGggfSA9IHdpbmRvdztcbiAgICBjb25zdCB7XG4gICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AsXG4gICAgICBsZWZ0OiB0cmlnZ2VyT2Zmc2V0TGVmdCxcbiAgICAgIGhlaWdodDogdHJpZ2dlckhlaWdodCxcbiAgICAgIHdpZHRoOiB0cmlnZ2VyV2lkdGgsXG4gICAgfSA9IHRoaXMuX2FuY2hvciEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICBjb25zdCBpc1J0bCA9IHRoaXMuX292ZXJsYXkubWF0Y2hlcygnOmRpcihydGwpJyk7XG4gICAgY29uc3QgdG9wU3BhY2UgPSB0cmlnZ2VyT2Zmc2V0VG9wO1xuICAgIGNvbnN0IGJvdHRvbVNwYWNlID0gdmlld3BvcnRIZWlnaHQgLSB0cmlnZ2VySGVpZ2h0IC0gdHJpZ2dlck9mZnNldFRvcDtcbiAgICBjb25zdCBsZWZ0U3BhY2UgPSB0cmlnZ2VyT2Zmc2V0TGVmdDtcbiAgICBjb25zdCByaWdodFNwYWNlID0gdmlld3BvcnRXaWR0aCAtIHRyaWdnZXJXaWR0aCAtIHRyaWdnZXJPZmZzZXRMZWZ0O1xuXG4gICAgLy8gVGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgb3ZlcmxheSBhbmQgdGhlIHRyaWdnZXIgd2lkdGgvaGVpZ2h0LlxuICAgIGNvbnN0IG92ZXJsYXlXaWR0aE5ldCA9IG92ZXJsYXlXaWR0aCAtIHRyaWdnZXJXaWR0aDtcbiAgICBjb25zdCBvdmVybGF5SGVpZ2h0TmV0ID0gb3ZlcmxheUhlaWdodCAtIHRyaWdnZXJIZWlnaHQ7XG5cbiAgICAvLyBUaGUgYW1vdW50IHRoYXQgd291bGQgZXhjZWVkIHRoZSB0cmlnZ2VyIGlmIHRoZSBvdmVybGF5IHdlcmUgY2VudGVyZWQgb24gaXQuXG4gICAgY29uc3Qgb3ZlcmxheVdpZHRoT3ZlcmxhcCA9IG92ZXJsYXlXaWR0aE5ldCAvIDI7XG4gICAgY29uc3Qgb3ZlcmxheUhlaWdodE92ZXJsYXAgPSBvdmVybGF5SGVpZ2h0TmV0IC8gMjtcblxuICAgIHRoaXMuX292ZXJsYXkuc3R5bGUuc2V0UHJvcGVydHkoXG4gICAgICAnLS1zYmItb3ZlcmxheS1jb250cm9sbGVyLXRyaWdnZXItaGVpZ2h0JyxcbiAgICAgIGAke3RyaWdnZXJIZWlnaHR9cHhgLFxuICAgICk7XG4gICAgdGhpcy5fb3ZlcmxheS5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1zYmItb3ZlcmxheS1jb250cm9sbGVyLXRyaWdnZXItd2lkdGgnLCBgJHt0cmlnZ2VyV2lkdGh9cHhgKTtcblxuICAgIGxldCByZXN1bHQ6IFJldHVyblR5cGU8dHlwZW9mIHRoaXMuX2dldE9wdGltYWxQb3NpdGlvbj4gPSB7IGxlZnQ6IDAsIHRvcDogMCwgcG9zaXRpb246ICcnIH07XG4gICAgbGV0IGZpcnN0UG9zaXRpb246IFJldHVyblR5cGU8dHlwZW9mIHRoaXMuX2dldE9wdGltYWxQb3NpdGlvbj4gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgZm9yIChjb25zdCBwb3NpdGlvbiBvZiBwb3NpdGlvbnMpIHtcbiAgICAgIC8vIElmIHJ0bCBpcyBlbmFibGVkLCB3ZSBtYXAgdGhlIGxvZ2ljYWwgcG9zaXRpb24gdG8gdGhlaXIgUlRMIGVxdWl2YWxlbnQuIChlLmcuICdpbmxpbmUtc3RhcnQnIC0+ICdpbmxpbmUtZW5kJylcbiAgICAgIGNvbnN0IHBoeXNpY2FsUG9zaXRpb24gPVxuICAgICAgICBpc1J0bCAmJiBsb2dpY2FsU3VwcG9ydGVkUG9zaXRpb25zLmluY2x1ZGVzKHBvc2l0aW9uKVxuICAgICAgICAgID8gcnRsUG9zaXRpb25NYXBwaW5nW3Bvc2l0aW9uXVxuICAgICAgICAgIDogcG9zaXRpb247XG5cbiAgICAgIHN3aXRjaCAocGh5c2ljYWxQb3NpdGlvbikge1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICBjYXNlICdib3R0b20nOlxuICAgICAgICBjYXNlICdibG9jay1lbmQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQgLSBvdmVybGF5V2lkdGhPdmVybGFwLFxuICAgICAgICAgICAgdG9wOiB0cmlnZ2VyT2Zmc2V0VG9wICsgdHJpZ2dlckhlaWdodCxcbiAgICAgICAgICAgIGZpdHM6XG4gICAgICAgICAgICAgIG92ZXJsYXlIZWlnaHQgPD0gYm90dG9tU3BhY2UgJiZcbiAgICAgICAgICAgICAgb3ZlcmxheVdpZHRoT3ZlcmxhcCA8PSBsZWZ0U3BhY2UgJiZcbiAgICAgICAgICAgICAgb3ZlcmxheVdpZHRoT3ZlcmxhcCA8PSByaWdodFNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3RvcCc6XG4gICAgICAgIGNhc2UgJ2Jsb2NrLXN0YXJ0JzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0IC0gb3ZlcmxheVdpZHRoT3ZlcmxhcCxcbiAgICAgICAgICAgIHRvcDogdHJpZ2dlck9mZnNldFRvcCAtIG92ZXJsYXlIZWlnaHQsXG4gICAgICAgICAgICBmaXRzOlxuICAgICAgICAgICAgICBvdmVybGF5SGVpZ2h0IDw9IHRvcFNwYWNlICYmXG4gICAgICAgICAgICAgIG92ZXJsYXlXaWR0aE92ZXJsYXAgPD0gbGVmdFNwYWNlICYmXG4gICAgICAgICAgICAgIG92ZXJsYXlXaWR0aE92ZXJsYXAgPD0gcmlnaHRTcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdyaWdodCc6XG4gICAgICAgIGNhc2UgJ2lubGluZS1lbmQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQgKyB0cmlnZ2VyV2lkdGgsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AgLSBvdmVybGF5SGVpZ2h0T3ZlcmxhcCxcbiAgICAgICAgICAgIGZpdHM6XG4gICAgICAgICAgICAgIG92ZXJsYXlXaWR0aCA8PSByaWdodFNwYWNlICYmXG4gICAgICAgICAgICAgIG92ZXJsYXlIZWlnaHRPdmVybGFwIDw9IHRvcFNwYWNlICYmXG4gICAgICAgICAgICAgIG92ZXJsYXlIZWlnaHRPdmVybGFwIDw9IGJvdHRvbVNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2xlZnQnOlxuICAgICAgICBjYXNlICdpbmxpbmUtc3RhcnQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQgLSBvdmVybGF5V2lkdGgsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AgLSBvdmVybGF5SGVpZ2h0T3ZlcmxhcCxcbiAgICAgICAgICAgIGZpdHM6XG4gICAgICAgICAgICAgIG92ZXJsYXlXaWR0aCA8PSBsZWZ0U3BhY2UgJiZcbiAgICAgICAgICAgICAgb3ZlcmxheUhlaWdodE92ZXJsYXAgPD0gdG9wU3BhY2UgJiZcbiAgICAgICAgICAgICAgb3ZlcmxheUhlaWdodE92ZXJsYXAgPD0gYm90dG9tU3BhY2UsXG4gICAgICAgICAgfTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAndG9wIHNwYW4tbGVmdCc6XG4gICAgICAgIGNhc2UgJ2Jsb2NrLXN0YXJ0IHNwYW4taW5saW5lLXN0YXJ0JzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0IC0gb3ZlcmxheVdpZHRoTmV0LFxuICAgICAgICAgICAgdG9wOiB0cmlnZ2VyT2Zmc2V0VG9wIC0gb3ZlcmxheUhlaWdodCxcbiAgICAgICAgICAgIGZpdHM6IG92ZXJsYXlIZWlnaHQgPD0gdG9wU3BhY2UgJiYgb3ZlcmxheVdpZHRoTmV0IDw9IGxlZnRTcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICd0b3Agc3Bhbi1yaWdodCc6XG4gICAgICAgIGNhc2UgJ2Jsb2NrLXN0YXJ0IHNwYW4taW5saW5lLWVuZCc6XG4gICAgICAgICAgcmVzdWx0ID0ge1xuICAgICAgICAgICAgcG9zaXRpb24sXG4gICAgICAgICAgICBsZWZ0OiB0cmlnZ2VyT2Zmc2V0TGVmdCxcbiAgICAgICAgICAgIHRvcDogdHJpZ2dlck9mZnNldFRvcCAtIG92ZXJsYXlIZWlnaHQsXG4gICAgICAgICAgICBmaXRzOiBvdmVybGF5SGVpZ2h0IDw9IHRvcFNwYWNlICYmIG92ZXJsYXlXaWR0aE5ldCA8PSByaWdodFNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2JvdHRvbSBzcGFuLWxlZnQnOlxuICAgICAgICBjYXNlICdibG9jay1lbmQgc3Bhbi1pbmxpbmUtc3RhcnQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQgLSBvdmVybGF5V2lkdGhOZXQsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AgKyB0cmlnZ2VySGVpZ2h0LFxuICAgICAgICAgICAgZml0czogb3ZlcmxheUhlaWdodCA8PSBib3R0b21TcGFjZSAmJiBvdmVybGF5V2lkdGhOZXQgPD0gbGVmdFNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2JvdHRvbSBzcGFuLXJpZ2h0JzpcbiAgICAgICAgY2FzZSAnYmxvY2stZW5kIHNwYW4taW5saW5lLWVuZCc6XG4gICAgICAgICAgcmVzdWx0ID0ge1xuICAgICAgICAgICAgcG9zaXRpb24sXG4gICAgICAgICAgICBsZWZ0OiB0cmlnZ2VyT2Zmc2V0TGVmdCxcbiAgICAgICAgICAgIHRvcDogdHJpZ2dlck9mZnNldFRvcCArIHRyaWdnZXJIZWlnaHQsXG4gICAgICAgICAgICBmaXRzOiBvdmVybGF5SGVpZ2h0IDw9IGJvdHRvbVNwYWNlICYmIG92ZXJsYXlXaWR0aE5ldCA8PSByaWdodFNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2xlZnQgc3Bhbi10b3AnOlxuICAgICAgICBjYXNlICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1zdGFydCc6XG4gICAgICAgICAgcmVzdWx0ID0ge1xuICAgICAgICAgICAgcG9zaXRpb24sXG4gICAgICAgICAgICBsZWZ0OiB0cmlnZ2VyT2Zmc2V0TGVmdCAtIG92ZXJsYXlXaWR0aCxcbiAgICAgICAgICAgIHRvcDogdHJpZ2dlck9mZnNldFRvcCArIHRyaWdnZXJIZWlnaHQgLSBvdmVybGF5SGVpZ2h0LFxuICAgICAgICAgICAgZml0czogb3ZlcmxheVdpZHRoIDw9IGxlZnRTcGFjZSAmJiBvdmVybGF5SGVpZ2h0TmV0IDw9IHRvcFNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2xlZnQgc3Bhbi1ib3R0b20nOlxuICAgICAgICBjYXNlICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1lbmQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQgLSBvdmVybGF5V2lkdGgsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AsXG4gICAgICAgICAgICBmaXRzOiBvdmVybGF5V2lkdGggPD0gbGVmdFNwYWNlICYmIG92ZXJsYXlIZWlnaHROZXQgPD0gYm90dG9tU3BhY2UsXG4gICAgICAgICAgfTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAncmlnaHQgc3Bhbi10b3AnOlxuICAgICAgICBjYXNlICdpbmxpbmUtZW5kIHNwYW4tYmxvY2stc3RhcnQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQgKyB0cmlnZ2VyV2lkdGgsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AgKyB0cmlnZ2VySGVpZ2h0IC0gb3ZlcmxheUhlaWdodCxcbiAgICAgICAgICAgIGZpdHM6IG92ZXJsYXlXaWR0aCA8PSByaWdodFNwYWNlICYmIG92ZXJsYXlIZWlnaHROZXQgPD0gdG9wU3BhY2UsXG4gICAgICAgICAgfTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAncmlnaHQgc3Bhbi1ib3R0b20nOlxuICAgICAgICBjYXNlICdpbmxpbmUtZW5kIHNwYW4tYmxvY2stZW5kJzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0ICsgdHJpZ2dlcldpZHRoLFxuICAgICAgICAgICAgdG9wOiB0cmlnZ2VyT2Zmc2V0VG9wLFxuICAgICAgICAgICAgZml0czogb3ZlcmxheVdpZHRoIDw9IHJpZ2h0U3BhY2UgJiYgb3ZlcmxheUhlaWdodE5ldCA8PSBib3R0b21TcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgaWYgKHJlc3VsdC5maXRzKSB7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICB9XG4gICAgICBmaXJzdFBvc2l0aW9uID8/PSByZXN1bHQ7XG4gICAgfVxuXG4gICAgLy8gSWYgbm8gcG9zaXRpb24gZml0cywgd2UgcmV0dXJuIHRoZSBmaXJzdCBvbmUuXG4gICAgcmV0dXJuIGZpcnN0UG9zaXRpb24hO1xuICB9XG5cbiAgcHJpdmF0ZSBfYXBwbHlPdmVybGF5UG9zaXRpb24ocG9zaXRpb246IHN0cmluZywgbGVmdDogbnVtYmVyLCB0b3A6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuX2xhc3RQb3NpdGlvbiA9IHBvc2l0aW9uO1xuICAgIHRoaXMuX292ZXJsYXkuc3R5bGUubGVmdCA9IGAke2xlZnR9cHhgO1xuICAgIHRoaXMuX292ZXJsYXkuc3R5bGUudG9wID0gYCR7dG9wfXB4YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBPbmx5IHVzZWQgaW4gcG9seWZpbGwgbW9kZS5cbiAgICogUmVhZHMgdGhlIGxpc3Qgb2YgdGhlIGNvbmZpZ3VyZWQgcG9zaXRpb25zIGZyb20gdGhlIENTUyB2YXJpYWJsZXMuXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIF9yZWFkUG9zaXRpb25zRnJvbUNzcygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX3VzZVBvbHlmaWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX292ZXJsYXlTdHlsZXMgPz89IGdldENvbXB1dGVkU3R5bGUodGhpcy5fb3ZlcmxheSk7XG4gICAgY29uc3QgcG9zaXRpb25zID0gW1xuICAgICAgdGhpcy5fb3ZlcmxheVN0eWxlcy5nZXRQcm9wZXJ0eVZhbHVlKCctLXNiYi1vdmVybGF5LXBvc2l0aW9uLWFyZWEnKSB8fCAnYmxvY2stZW5kJyxcbiAgICAgIC4uLnRoaXMuX292ZXJsYXlTdHlsZXNcbiAgICAgICAgLmdldFByb3BlcnR5VmFsdWUoJy0tc2JiLW92ZXJsYXktcG9zaXRpb24tdHJ5LWZhbGxiYWNrcycpXG4gICAgICAgIC5zcGxpdCgnLCcpXG4gICAgICAgIC5tYXAoKGYpID0+IGYudHJpbSgpKVxuICAgICAgICAuZmlsdGVyKChmKSA9PiAhIWYpLFxuICAgIF07XG5cbiAgICBpZiAoaW1wb3J0Lm1ldGEuZW52LkRFViAmJiBwb3NpdGlvbnMuc29tZSgocCkgPT4gIXN1cHBvcnRlZFBvc2l0aW9ucy5pbmNsdWRlcyhwKSkpIHtcbiAgICAgIGNvbnN0IHVuc3VwcG9ydGVkUG9zaXRpb25zID0gcG9zaXRpb25zXG4gICAgICAgIC5maWx0ZXIoKHApID0+ICFzdXBwb3J0ZWRQb3NpdGlvbnMuaW5jbHVkZXMocCkpXG4gICAgICAgIC5zb3J0KClcbiAgICAgICAgLmpvaW4oJywgJyk7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBVbnN1cHBvcnRlZCBwb3NpdGlvbi10cnktZmFsbGJhY2tzICR7dW5zdXBwb3J0ZWRQb3NpdGlvbnN9IChTdXBwb3J0ZWQ6ICR7c3VwcG9ydGVkUG9zaXRpb25zLmpvaW4oJywgJyl9KWAsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuX3Bvc2l0aW9ucyA9IHBvc2l0aW9ucztcbiAgICBpZiAodGhpcy5fbGFzdFBvc2l0aW9uICYmICF0aGlzLl9wb3NpdGlvbnMuaW5jbHVkZXModGhpcy5fbGFzdFBvc2l0aW9uKSkge1xuICAgICAgdGhpcy5fbGFzdFBvc2l0aW9uID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFJQSxNQUFNLDZCQUE2QixDQUFDLFlBQVksSUFBSSxTQUFTLGVBQWUsUUFBUTtBQWtCcEYsTUFBTSw0QkFBNEI7QUFBQSxFQUNoQztBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBOztBQUdGLE1BQU0scUJBQWdEO0FBQUEsRUFDcEQsZUFBZTtBQUFBLEVBQ2YsYUFBYTtBQUFBLEVBQ2IsZ0JBQWdCO0FBQUEsRUFDaEIsY0FBYztBQUFBLEVBQ2QsaUNBQWlDO0FBQUEsRUFDakMsK0JBQStCO0FBQUEsRUFDL0IsK0JBQStCO0FBQUEsRUFDL0IsNkJBQTZCO0FBQUEsRUFDN0IsaUNBQWlDO0FBQUEsRUFDakMsK0JBQStCO0FBQUEsRUFDL0IsK0JBQStCO0FBQUEsRUFDL0IsNkJBQTZCOztBQUkvQixJQUFJLFNBQVM7TUFxQkEsNkJBQTRCO0FBQUE7QUFBQSxFQWN2QyxJQUFXLGtCQUFlO0FBQ3hCLFFBQUksS0FBSyxjQUFjO0FBQ3JCLGFBQU8sS0FBSyxpQkFBaUIsS0FBSyxXQUFXLENBQUMsS0FBSztBQUFBLElBQ3JELE9BQU87QUFDTCxXQUFLLG1CQUFtQixpQkFBaUIsS0FBSyxRQUFRO0FBQ3RELGFBQU8sS0FBSyxlQUFlLGlCQUFpQixlQUFlO0FBQUEsSUFDN0Q7QUFBQSxFQUNGO0FBQUEsRUFFQSxZQUNFLE1BQ1EsZUFBZSxDQUFDLDRCQUEw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
287
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1wb3NpdGlvbi1jb250cm9sbGVyLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9jb250cm9sbGVycy9vdmVybGF5LXBvc2l0aW9uLWNvbnRyb2xsZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNTZXJ2ZXIsIHR5cGUgUmVhY3RpdmVDb250cm9sbGVyLCB0eXBlIFJlYWN0aXZlQ29udHJvbGxlckhvc3QgfSBmcm9tICdsaXQnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpblR5cGUgfSBmcm9tICcuLi9taXhpbnMudHMnO1xuXG5jb25zdCBjc3NBbmNob3JQb3NpdGlvblN1cHBvcnRlZCA9ICFpc1NlcnZlciAmJiBDU1Muc3VwcG9ydHMoJ2FuY2hvci1uYW1lJywgJy0tdGVzdCcpO1xuXG5jb25zdCBwaHlzaWNhbFN1cHBvcnRlZFBvc2l0aW9ucyA9IFtcbiAgJ3RvcCcsXG4gICdib3R0b20nLFxuICAnbGVmdCcsXG4gICdyaWdodCcsXG4gICd0b3Agc3Bhbi1sZWZ0JyxcbiAgJ3RvcCBzcGFuLXJpZ2h0JyxcbiAgJ2JvdHRvbSBzcGFuLWxlZnQnLFxuICAnYm90dG9tIHNwYW4tcmlnaHQnLFxuICAnbGVmdCBzcGFuLXRvcCcsXG4gICdsZWZ0IHNwYW4tYm90dG9tJyxcbiAgJ3JpZ2h0IHNwYW4tdG9wJyxcbiAgJ3JpZ2h0IHNwYW4tYm90dG9tJyxcbl07XG5cbi8vIE5vdGU6IGlmIHlvdSBhZGQgbmV3IGxvZ2ljYWwgc3VwcG9ydGVkIHBvc2l0aW9ucywgdXBkYXRlIGFsc28gdGhlICdydGxQb3NpdGlvbk1hcHBpbmcnXG5jb25zdCBsb2dpY2FsU3VwcG9ydGVkUG9zaXRpb25zID0gW1xuICAnYmxvY2stc3RhcnQnLFxuICAnYmxvY2stZW5kJyxcbiAgJ2lubGluZS1zdGFydCcsXG4gICdpbmxpbmUtZW5kJyxcbiAgJ2Jsb2NrLXN0YXJ0IHNwYW4taW5saW5lLXN0YXJ0JyxcbiAgJ2Jsb2NrLXN0YXJ0IHNwYW4taW5saW5lLWVuZCcsXG4gICdibG9jay1lbmQgc3Bhbi1pbmxpbmUtc3RhcnQnLFxuICAnYmxvY2stZW5kIHNwYW4taW5saW5lLWVuZCcsXG4gICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1zdGFydCcsXG4gICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1lbmQnLFxuICAnaW5saW5lLWVuZCBzcGFuLWJsb2NrLXN0YXJ0JyxcbiAgJ2lubGluZS1lbmQgc3Bhbi1ibG9jay1lbmQnLFxuXTtcblxuY29uc3QgcnRsUG9zaXRpb25NYXBwaW5nOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge1xuICAnYmxvY2stc3RhcnQnOiAnYmxvY2stc3RhcnQnLFxuICAnYmxvY2stZW5kJzogJ2Jsb2NrLWVuZCcsXG4gICdpbmxpbmUtc3RhcnQnOiAnaW5saW5lLWVuZCcsXG4gICdpbmxpbmUtZW5kJzogJ2lubGluZS1zdGFydCcsXG4gICdibG9jay1zdGFydCBzcGFuLWlubGluZS1zdGFydCc6ICdibG9jay1zdGFydCBzcGFuLWlubGluZS1lbmQnLFxuICAnYmxvY2stc3RhcnQgc3Bhbi1pbmxpbmUtZW5kJzogJ2Jsb2NrLXN0YXJ0IHNwYW4taW5saW5lLXN0YXJ0JyxcbiAgJ2Jsb2NrLWVuZCBzcGFuLWlubGluZS1zdGFydCc6ICdibG9jay1lbmQgc3Bhbi1pbmxpbmUtZW5kJyxcbiAgJ2Jsb2NrLWVuZCBzcGFuLWlubGluZS1lbmQnOiAnYmxvY2stZW5kIHNwYW4taW5saW5lLXN0YXJ0JyxcbiAgJ2lubGluZS1zdGFydCBzcGFuLWJsb2NrLXN0YXJ0JzogJ2lubGluZS1lbmQgc3Bhbi1ibG9jay1zdGFydCcsXG4gICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1lbmQnOiAnaW5saW5lLWVuZCBzcGFuLWJsb2NrLWVuZCcsXG4gICdpbmxpbmUtZW5kIHNwYW4tYmxvY2stc3RhcnQnOiAnaW5saW5lLXN0YXJ0IHNwYW4tYmxvY2stc3RhcnQnLFxuICAnaW5saW5lLWVuZCBzcGFuLWJsb2NrLWVuZCc6ICdpbmxpbmUtc3RhcnQgc3Bhbi1ibG9jay1lbmQnLFxufTtcblxuY29uc3Qgc3VwcG9ydGVkUG9zaXRpb25zID0gWy4uLnBoeXNpY2FsU3VwcG9ydGVkUG9zaXRpb25zLCAuLi5sb2dpY2FsU3VwcG9ydGVkUG9zaXRpb25zXTtcbmxldCBuZXh0SWQgPSAwO1xuXG4vKipcbiAqIENvbnRyb2xsZXIgZm9yIG1hbmFnaW5nIG92ZXJsYXlzIHBvc2l0aW9uaW5nLiBBbHNvIGFjdHMgYXMgYSBwb2x5ZmlsbCB3aGVuIG5hdGl2ZVxuICogQ1NTIEFuY2hvciBQb3NpdGlvbmluZyBpcyBub3Qgc3VwcG9ydGVkIChlbm91Z2gpLlxuICogQXBwbGllcyB1bmlxdWUgYW5jaG9yIG5hbWVzIHdoZW4gdXNpbmcgbmF0aXZlIENTUyBBbmNob3IgUG9zaXRpb25pbmdcbiAqIG9yIGNhbGN1bGF0ZXMgYW5kIGFwcGxpZXMgY29ycmVjdCBwb3NpdGlvbnMgaW4gcG9seWZpbGwgbW9kZS5cbiAqXG4gKiBBbHNvLCB0aGUgY29udHJvbGxlciBzZXRzIHRoZSAnZGF0YS1wb3NpdGlvbicgYXR0cmlidXRlIG9uIHRoZSBvdmVybGF5IGVsZW1lbnQuXG4gKiBUaGlzIGNhbiBiZSB1c2VkIHRvIGFwcGx5IHNwZWNpZmljIHN0eWxlcyBiYXNlZCBvbiB0aGUgY3VycmVudCBwb3NpdGlvbiBvZiB0aGUgb3ZlcmxheS5cbiAqXG4gKiAjIyMgSW1wbGVtZW50YXRpb25cbiAqIERlZmluZSBhbmQgYXBwbHkgdGhlIGZvbGxvd2luZyBDU1MgdmFyaWFibGVzIG9uIHRoZSBvdmVybGF5IGVsZW1lbnQ6XG4gKiBgYGBzY3NzXG4gKiAgIC0tc2JiLW92ZXJsYXktcG9zaXRpb24tYXJlYTogYmxvY2stZW5kOyAvLyBEZWZhdWx0XG4gKiAgIC0tc2JiLW92ZXJsYXktcG9zaXRpb24tdHJ5LWZhbGxiYWNrczogYmxvY2stc3RhcnQsIGlubGluZS1lbmQsIGlubGluZS1zdGFydDsgLy8gRmFsbGJhY2tzXG4gKlxuICogICBwb3NpdGlvbi1hcmVhOiB2YXIoLS1zYmItb3ZlcmxheS1wb3NpdGlvbi1hcmVhKTtcbiAqICAgcG9zaXRpb24tdHJ5LWZhbGxiYWNrczogdmFyKC0tc2JiLW92ZXJsYXktcG9zaXRpb24tdHJ5LWZhbGxiYWNrcyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIFNiYk92ZXJsYXlQb3NpdGlvbkNvbnRyb2xsZXIgaW1wbGVtZW50cyBSZWFjdGl2ZUNvbnRyb2xsZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IF9yZXNpemVPYnNlcnZlciA9ICFpc1NlcnZlclxuICAgID8gbmV3IFJlc2l6ZU9ic2VydmVyKCgpID0+IHRoaXMuX3JlcXVlc3RDYWxjdWxhdGVQb3NpdGlvbigpKVxuICAgIDogbnVsbCE7XG4gIHByaXZhdGUgcmVhZG9ubHkgX292ZXJsYXk6IFJlYWN0aXZlQ29udHJvbGxlckhvc3QgJiBIVE1MRWxlbWVudCAmIFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpblR5cGU7XG4gIHByaXZhdGUgX2Fib3J0Q29udHJvbGxlcj86IEFib3J0Q29udHJvbGxlcjtcbiAgcHJpdmF0ZSBfYW5jaG9yPzogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX292ZXJsYXlTdHlsZXM/OiBDU1NTdHlsZURlY2xhcmF0aW9uO1xuICBwcml2YXRlIF9mcmFtZT86IFJldHVyblR5cGU8dHlwZW9mIHJlcXVlc3RBbmltYXRpb25GcmFtZT47XG4gIHByaXZhdGUgX2FuY2hvck5hbWUgPSBgLS1zYmItb3ZlcmxheS1hbmNob3ItJHsrK25leHRJZH1gO1xuICBwcml2YXRlIF9wb3NpdGlvbnM6IHN0cmluZ1tdID0gW107XG4gIHByaXZhdGUgX2xhc3RQb3NpdGlvbj86IHN0cmluZztcblxuICAvKiogR2V0IHRoZSBjdXJyZW50IHBvc2l0aW9uLiAoZS5nLiBibG9jay1lbmQsIGJsb2NrLXN0YXJ0LCBldGMuKSAqL1xuICBwdWJsaWMgZ2V0IGN1cnJlbnRQb3NpdGlvbigpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLl91c2VQb2x5ZmlsbCkge1xuICAgICAgcmV0dXJuIHRoaXMuX2xhc3RQb3NpdGlvbiA/PyB0aGlzLl9wb3NpdGlvbnNbMF0gPz8gJyc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX292ZXJsYXlTdHlsZXMgPz89IGdldENvbXB1dGVkU3R5bGUodGhpcy5fb3ZlcmxheSk7XG4gICAgICByZXR1cm4gdGhpcy5fb3ZlcmxheVN0eWxlcy5nZXRQcm9wZXJ0eVZhbHVlKCdwb3NpdGlvbi1hcmVhJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIGhvc3Q6IFJlYWN0aXZlQ29udHJvbGxlckhvc3QgJiBIVE1MRWxlbWVudCAmIFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpblR5cGUsXG4gICAgcHJpdmF0ZSBfdXNlUG9seWZpbGwgPSAhY3NzQW5jaG9yUG9zaXRpb25TdXBwb3J0ZWQsXG4gICkge1xuICAgIGhvc3QuYWRkQ29udHJvbGxlcih0aGlzKTtcbiAgICB0aGlzLl9vdmVybGF5ID0gaG9zdDtcbiAgfVxuXG4gIHB1YmxpYyBob3N0Q29ubmVjdGVkKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fdXNlUG9seWZpbGwpIHtcbiAgICAgIHRoaXMuX292ZXJsYXkuc3R5bGUuc2V0UHJvcGVydHkoJ3Bvc2l0aW9uLWFuY2hvcicsIHRoaXMuX2FuY2hvck5hbWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBSZXNldCB0aGUgJ3Bvc2l0aW9uLWFyZWEnIHZhbHVlIHRvIGF2b2lkIGFueSB1bndhbnRlZCBzaWRlIGVmZmVjdCB3aGVuIHVzaW5nIHRoZSBwb2x5ZmlsbC5cbiAgICAgIHRoaXMuX292ZXJsYXkuc3R5bGUuc2V0UHJvcGVydHkoJ3Bvc2l0aW9uLWFyZWEnLCAnaW5pdGlhbCcpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBob3N0VXBkYXRlKCk6IHZvaWQge1xuICAgIGlmIChpc1NlcnZlcikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9yZWFkUG9zaXRpb25zRnJvbUNzcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbm5lY3RzIHRoZSBvdmVybGF5IHRvIHRoZSBnaXZlbiB0cmlnZ2VyIGVsZW1lbnQgYW5kIGRldGVybWluZXMgdGhlIG9wdGltYWwgcG9zaXRpb24uXG4gICAqIFVzdWFsbHksIHRoaXMgaXMgY2FsbGVkIHdoZW4gdGhlIG92ZXJsYXkgaXMgb3BlbmVkLlxuICAgKiBAcGFyYW0gYW5jaG9yIFRoZSBhbmNob3IgZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyBjb25uZWN0KGFuY2hvcjogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICBpZiAoaXNTZXJ2ZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fYW5jaG9yKSB7XG4gICAgICB0aGlzLmRpc2Nvbm5lY3QoKTtcbiAgICB9XG4gICAgdGhpcy5fYW5jaG9yID0gYW5jaG9yO1xuXG4gICAgaWYgKCF0aGlzLl91c2VQb2x5ZmlsbCkge1xuICAgICAgdGhpcy5fYW5jaG9yLnN0eWxlLnNldFByb3BlcnR5KCdhbmNob3ItbmFtZScsIHRoaXMuX2FuY2hvck5hbWUhKTtcbiAgICB9XG5cbiAgICB0aGlzLl9yZWFkUG9zaXRpb25zRnJvbUNzcygpO1xuICAgIHRoaXMuX2NhbGN1bGF0ZVBvc2l0aW9uKCk7XG4gICAgdGhpcy5fYWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHRoaXMuX2Fib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcblxuICAgIC8vIFdlIG5lZWQgdG8gdXNlIGNhcHR1cmUgaGVyZSB0byByZWFjdCB0byBhbGwgc2Nyb2xsIGV2ZW50cy5cbiAgICAvLyBJZiBjYXB0dXJlIHdhcyBub3QgdXNlZCwgdGhlbiBzY3JvbGwgZXZlbnRzIGluc2lkZSBzZXBhcmF0ZSBzY3JvbGxcbiAgICAvLyBjb250YWluZXJzIHdvdWxkIG5vdCBiZSBjYXVnaHQuXG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgKCkgPT4gdGhpcy5fcmVxdWVzdENhbGN1bGF0ZVBvc2l0aW9uKCksIHtcbiAgICAgIGNhcHR1cmU6IHRydWUsXG4gICAgICBwYXNzaXZlOiB0cnVlLFxuICAgICAgc2lnbmFsOiB0aGlzLl9hYm9ydENvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdyZXNpemUnLCAoKSA9PiB0aGlzLl9yZXF1ZXN0Q2FsY3VsYXRlUG9zaXRpb24oKSwge1xuICAgICAgcGFzc2l2ZTogdHJ1ZSxcbiAgICAgIHNpZ25hbDogdGhpcy5fYWJvcnRDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlci5vYnNlcnZlKGFuY2hvciwgeyBib3g6ICdib3JkZXItYm94JyB9KTtcbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMuX292ZXJsYXksIHsgYm94OiAnYm9yZGVyLWJveCcgfSk7XG4gIH1cblxuICBwdWJsaWMgZGlzY29ubmVjdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9hbmNob3I/LnN0eWxlLnJlbW92ZVByb3BlcnR5KCdhbmNob3ItbmFtZScpO1xuICAgIHRoaXMuX2FuY2hvciA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLl9hYm9ydENvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgdGhpcy5fcmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVxdWVzdENhbGN1bGF0ZVBvc2l0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuX2ZyYW1lID8/PSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgdGhpcy5fY2FsY3VsYXRlUG9zaXRpb24oKTtcbiAgICAgIHRoaXMuX2ZyYW1lID0gdW5kZWZpbmVkO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlUG9zaXRpb24oKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9hbmNob3IpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fdXNlUG9seWZpbGwpIHtcbiAgICAgIGNvbnN0IHBvc2l0aW9uID0gdGhpcy5fZ2V0T3B0aW1hbFBvc2l0aW9uKHRoaXMuX3Bvc2l0aW9ucyk7XG4gICAgICB0aGlzLl9hcHBseU92ZXJsYXlQb3NpdGlvbihwb3NpdGlvbi5wb3NpdGlvbiwgcG9zaXRpb24ubGVmdCwgcG9zaXRpb24udG9wKTtcbiAgICB9XG5cbiAgICB0aGlzLl9vdmVybGF5LnNldEF0dHJpYnV0ZSgnZGF0YS1wb3NpdGlvbicsIHRoaXMuY3VycmVudFBvc2l0aW9uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxjdWxhdGVzIHRoZSBvcHRpbWFsIHBvc2l0aW9uIHRoYXQgZml0cyB0aGUgb3ZlcmxheS5cbiAgICogQHBhcmFtIHBvc2l0aW9ucyBUaGUgbGlzdCBvZiBwb3NpdGlvbnMgdG8gY2hlY2suXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIF9nZXRPcHRpbWFsUG9zaXRpb24ocG9zaXRpb25zOiBzdHJpbmdbXSk6IHtcbiAgICBsZWZ0OiBudW1iZXI7XG4gICAgdG9wOiBudW1iZXI7XG4gICAgcG9zaXRpb246IHN0cmluZztcbiAgICBmaXRzPzogYm9vbGVhbjtcbiAgfSB7XG4gICAgY29uc3QgeyBvZmZzZXRIZWlnaHQ6IG92ZXJsYXlIZWlnaHQsIG9mZnNldFdpZHRoOiBvdmVybGF5V2lkdGggfSA9IHRoaXMuX292ZXJsYXk7XG4gICAgY29uc3QgeyBpbm5lckhlaWdodDogdmlld3BvcnRIZWlnaHQsIGlubmVyV2lkdGg6IHZpZXdwb3J0V2lkdGggfSA9IHdpbmRvdztcbiAgICBjb25zdCB7XG4gICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AsXG4gICAgICBsZWZ0OiB0cmlnZ2VyT2Zmc2V0TGVmdCxcbiAgICAgIGhlaWdodDogdHJpZ2dlckhlaWdodCxcbiAgICAgIHdpZHRoOiB0cmlnZ2VyV2lkdGgsXG4gICAgfSA9IHRoaXMuX2FuY2hvciEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICBjb25zdCBpc1J0bCA9IHRoaXMuX292ZXJsYXkubWF0Y2hlcygnOmRpcihydGwpJyk7XG4gICAgY29uc3QgdG9wU3BhY2UgPSB0cmlnZ2VyT2Zmc2V0VG9wO1xuICAgIGNvbnN0IGJvdHRvbVNwYWNlID0gdmlld3BvcnRIZWlnaHQgLSB0cmlnZ2VySGVpZ2h0IC0gdHJpZ2dlck9mZnNldFRvcDtcbiAgICBjb25zdCBsZWZ0U3BhY2UgPSB0cmlnZ2VyT2Zmc2V0TGVmdDtcbiAgICBjb25zdCByaWdodFNwYWNlID0gdmlld3BvcnRXaWR0aCAtIHRyaWdnZXJXaWR0aCAtIHRyaWdnZXJPZmZzZXRMZWZ0O1xuXG4gICAgLy8gVGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgb3ZlcmxheSBhbmQgdGhlIHRyaWdnZXIgd2lkdGgvaGVpZ2h0LlxuICAgIGNvbnN0IG92ZXJsYXlXaWR0aE5ldCA9IG92ZXJsYXlXaWR0aCAtIHRyaWdnZXJXaWR0aDtcbiAgICBjb25zdCBvdmVybGF5SGVpZ2h0TmV0ID0gb3ZlcmxheUhlaWdodCAtIHRyaWdnZXJIZWlnaHQ7XG5cbiAgICAvLyBUaGUgYW1vdW50IHRoYXQgd291bGQgZXhjZWVkIHRoZSB0cmlnZ2VyIGlmIHRoZSBvdmVybGF5IHdlcmUgY2VudGVyZWQgb24gaXQuXG4gICAgY29uc3Qgb3ZlcmxheVdpZHRoT3ZlcmxhcCA9IG92ZXJsYXlXaWR0aE5ldCAvIDI7XG4gICAgY29uc3Qgb3ZlcmxheUhlaWdodE92ZXJsYXAgPSBvdmVybGF5SGVpZ2h0TmV0IC8gMjtcblxuICAgIHRoaXMuX292ZXJsYXkuc3R5bGUuc2V0UHJvcGVydHkoXG4gICAgICAnLS1zYmItb3ZlcmxheS1jb250cm9sbGVyLXRyaWdnZXItaGVpZ2h0JyxcbiAgICAgIGAke3RyaWdnZXJIZWlnaHR9cHhgLFxuICAgICk7XG4gICAgdGhpcy5fb3ZlcmxheS5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1zYmItb3ZlcmxheS1jb250cm9sbGVyLXRyaWdnZXItd2lkdGgnLCBgJHt0cmlnZ2VyV2lkdGh9cHhgKTtcblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11c2VsZXNzLWFzc2lnbm1lbnRcbiAgICBsZXQgcmVzdWx0OiBSZXR1cm5UeXBlPHR5cGVvZiB0aGlzLl9nZXRPcHRpbWFsUG9zaXRpb24+ID0geyBsZWZ0OiAwLCB0b3A6IDAsIHBvc2l0aW9uOiAnJyB9O1xuICAgIGxldCBmaXJzdFBvc2l0aW9uOiBSZXR1cm5UeXBlPHR5cGVvZiB0aGlzLl9nZXRPcHRpbWFsUG9zaXRpb24+IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIGZvciAoY29uc3QgcG9zaXRpb24gb2YgcG9zaXRpb25zKSB7XG4gICAgICAvLyBJZiBydGwgaXMgZW5hYmxlZCwgd2UgbWFwIHRoZSBsb2dpY2FsIHBvc2l0aW9uIHRvIHRoZWlyIFJUTCBlcXVpdmFsZW50LiAoZS5nLiAnaW5saW5lLXN0YXJ0JyAtPiAnaW5saW5lLWVuZCcpXG4gICAgICBjb25zdCBwaHlzaWNhbFBvc2l0aW9uID1cbiAgICAgICAgaXNSdGwgJiYgbG9naWNhbFN1cHBvcnRlZFBvc2l0aW9ucy5pbmNsdWRlcyhwb3NpdGlvbilcbiAgICAgICAgICA/IHJ0bFBvc2l0aW9uTWFwcGluZ1twb3NpdGlvbl1cbiAgICAgICAgICA6IHBvc2l0aW9uO1xuXG4gICAgICBzd2l0Y2ggKHBoeXNpY2FsUG9zaXRpb24pIHtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgY2FzZSAnYm90dG9tJzpcbiAgICAgICAgY2FzZSAnYmxvY2stZW5kJzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0IC0gb3ZlcmxheVdpZHRoT3ZlcmxhcCxcbiAgICAgICAgICAgIHRvcDogdHJpZ2dlck9mZnNldFRvcCArIHRyaWdnZXJIZWlnaHQsXG4gICAgICAgICAgICBmaXRzOlxuICAgICAgICAgICAgICBvdmVybGF5SGVpZ2h0IDw9IGJvdHRvbVNwYWNlICYmXG4gICAgICAgICAgICAgIG92ZXJsYXlXaWR0aE92ZXJsYXAgPD0gbGVmdFNwYWNlICYmXG4gICAgICAgICAgICAgIG92ZXJsYXlXaWR0aE92ZXJsYXAgPD0gcmlnaHRTcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICd0b3AnOlxuICAgICAgICBjYXNlICdibG9jay1zdGFydCc6XG4gICAgICAgICAgcmVzdWx0ID0ge1xuICAgICAgICAgICAgcG9zaXRpb24sXG4gICAgICAgICAgICBsZWZ0OiB0cmlnZ2VyT2Zmc2V0TGVmdCAtIG92ZXJsYXlXaWR0aE92ZXJsYXAsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AgLSBvdmVybGF5SGVpZ2h0LFxuICAgICAgICAgICAgZml0czpcbiAgICAgICAgICAgICAgb3ZlcmxheUhlaWdodCA8PSB0b3BTcGFjZSAmJlxuICAgICAgICAgICAgICBvdmVybGF5V2lkdGhPdmVybGFwIDw9IGxlZnRTcGFjZSAmJlxuICAgICAgICAgICAgICBvdmVybGF5V2lkdGhPdmVybGFwIDw9IHJpZ2h0U3BhY2UsXG4gICAgICAgICAgfTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAncmlnaHQnOlxuICAgICAgICBjYXNlICdpbmxpbmUtZW5kJzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0ICsgdHJpZ2dlcldpZHRoLFxuICAgICAgICAgICAgdG9wOiB0cmlnZ2VyT2Zmc2V0VG9wIC0gb3ZlcmxheUhlaWdodE92ZXJsYXAsXG4gICAgICAgICAgICBmaXRzOlxuICAgICAgICAgICAgICBvdmVybGF5V2lkdGggPD0gcmlnaHRTcGFjZSAmJlxuICAgICAgICAgICAgICBvdmVybGF5SGVpZ2h0T3ZlcmxhcCA8PSB0b3BTcGFjZSAmJlxuICAgICAgICAgICAgICBvdmVybGF5SGVpZ2h0T3ZlcmxhcCA8PSBib3R0b21TcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdsZWZ0JzpcbiAgICAgICAgY2FzZSAnaW5saW5lLXN0YXJ0JzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0IC0gb3ZlcmxheVdpZHRoLFxuICAgICAgICAgICAgdG9wOiB0cmlnZ2VyT2Zmc2V0VG9wIC0gb3ZlcmxheUhlaWdodE92ZXJsYXAsXG4gICAgICAgICAgICBmaXRzOlxuICAgICAgICAgICAgICBvdmVybGF5V2lkdGggPD0gbGVmdFNwYWNlICYmXG4gICAgICAgICAgICAgIG92ZXJsYXlIZWlnaHRPdmVybGFwIDw9IHRvcFNwYWNlICYmXG4gICAgICAgICAgICAgIG92ZXJsYXlIZWlnaHRPdmVybGFwIDw9IGJvdHRvbVNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3RvcCBzcGFuLWxlZnQnOlxuICAgICAgICBjYXNlICdibG9jay1zdGFydCBzcGFuLWlubGluZS1zdGFydCc6XG4gICAgICAgICAgcmVzdWx0ID0ge1xuICAgICAgICAgICAgcG9zaXRpb24sXG4gICAgICAgICAgICBsZWZ0OiB0cmlnZ2VyT2Zmc2V0TGVmdCAtIG92ZXJsYXlXaWR0aE5ldCxcbiAgICAgICAgICAgIHRvcDogdHJpZ2dlck9mZnNldFRvcCAtIG92ZXJsYXlIZWlnaHQsXG4gICAgICAgICAgICBmaXRzOiBvdmVybGF5SGVpZ2h0IDw9IHRvcFNwYWNlICYmIG92ZXJsYXlXaWR0aE5ldCA8PSBsZWZ0U3BhY2UsXG4gICAgICAgICAgfTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAndG9wIHNwYW4tcmlnaHQnOlxuICAgICAgICBjYXNlICdibG9jay1zdGFydCBzcGFuLWlubGluZS1lbmQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AgLSBvdmVybGF5SGVpZ2h0LFxuICAgICAgICAgICAgZml0czogb3ZlcmxheUhlaWdodCA8PSB0b3BTcGFjZSAmJiBvdmVybGF5V2lkdGhOZXQgPD0gcmlnaHRTcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdib3R0b20gc3Bhbi1sZWZ0JzpcbiAgICAgICAgY2FzZSAnYmxvY2stZW5kIHNwYW4taW5saW5lLXN0YXJ0JzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0IC0gb3ZlcmxheVdpZHRoTmV0LFxuICAgICAgICAgICAgdG9wOiB0cmlnZ2VyT2Zmc2V0VG9wICsgdHJpZ2dlckhlaWdodCxcbiAgICAgICAgICAgIGZpdHM6IG92ZXJsYXlIZWlnaHQgPD0gYm90dG9tU3BhY2UgJiYgb3ZlcmxheVdpZHRoTmV0IDw9IGxlZnRTcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdib3R0b20gc3Bhbi1yaWdodCc6XG4gICAgICAgIGNhc2UgJ2Jsb2NrLWVuZCBzcGFuLWlubGluZS1lbmQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AgKyB0cmlnZ2VySGVpZ2h0LFxuICAgICAgICAgICAgZml0czogb3ZlcmxheUhlaWdodCA8PSBib3R0b21TcGFjZSAmJiBvdmVybGF5V2lkdGhOZXQgPD0gcmlnaHRTcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdsZWZ0IHNwYW4tdG9wJzpcbiAgICAgICAgY2FzZSAnaW5saW5lLXN0YXJ0IHNwYW4tYmxvY2stc3RhcnQnOlxuICAgICAgICAgIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHBvc2l0aW9uLFxuICAgICAgICAgICAgbGVmdDogdHJpZ2dlck9mZnNldExlZnQgLSBvdmVybGF5V2lkdGgsXG4gICAgICAgICAgICB0b3A6IHRyaWdnZXJPZmZzZXRUb3AgKyB0cmlnZ2VySGVpZ2h0IC0gb3ZlcmxheUhlaWdodCxcbiAgICAgICAgICAgIGZpdHM6IG92ZXJsYXlXaWR0aCA8PSBsZWZ0U3BhY2UgJiYgb3ZlcmxheUhlaWdodE5ldCA8PSB0b3BTcGFjZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdsZWZ0IHNwYW4tYm90dG9tJzpcbiAgICAgICAgY2FzZSAnaW5saW5lLXN0YXJ0IHNwYW4tYmxvY2stZW5kJzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0IC0gb3ZlcmxheVdpZHRoLFxuICAgICAgICAgICAgdG9wOiB0cmlnZ2VyT2Zmc2V0VG9wLFxuICAgICAgICAgICAgZml0czogb3ZlcmxheVdpZHRoIDw9IGxlZnRTcGFjZSAmJiBvdmVybGF5SGVpZ2h0TmV0IDw9IGJvdHRvbVNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3JpZ2h0IHNwYW4tdG9wJzpcbiAgICAgICAgY2FzZSAnaW5saW5lLWVuZCBzcGFuLWJsb2NrLXN0YXJ0JzpcbiAgICAgICAgICByZXN1bHQgPSB7XG4gICAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICAgIGxlZnQ6IHRyaWdnZXJPZmZzZXRMZWZ0ICsgdHJpZ2dlcldpZHRoLFxuICAgICAgICAgICAgdG9wOiB0cmlnZ2VyT2Zmc2V0VG9wICsgdHJpZ2dlckhlaWdodCAtIG92ZXJsYXlIZWlnaHQsXG4gICAgICAgICAgICBmaXRzOiBvdmVybGF5V2lkdGggPD0gcmlnaHRTcGFjZSAmJiBvdmVybGF5SGVpZ2h0TmV0IDw9IHRvcFNwYWNlLFxuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3JpZ2h0IHNwYW4tYm90dG9tJzpcbiAgICAgICAgY2FzZSAnaW5saW5lLWVuZCBzcGFuLWJsb2NrLWVuZCc6XG4gICAgICAgICAgcmVzdWx0ID0ge1xuICAgICAgICAgICAgcG9zaXRpb24sXG4gICAgICAgICAgICBsZWZ0OiB0cmlnZ2VyT2Zmc2V0TGVmdCArIHRyaWdnZXJXaWR0aCxcbiAgICAgICAgICAgIHRvcDogdHJpZ2dlck9mZnNldFRvcCxcbiAgICAgICAgICAgIGZpdHM6IG92ZXJsYXlXaWR0aCA8PSByaWdodFNwYWNlICYmIG92ZXJsYXlIZWlnaHROZXQgPD0gYm90dG9tU3BhY2UsXG4gICAgICAgICAgfTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGlmIChyZXN1bHQuZml0cykge1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfVxuICAgICAgZmlyc3RQb3NpdGlvbiA/Pz0gcmVzdWx0O1xuICAgIH1cblxuICAgIC8vIElmIG5vIHBvc2l0aW9uIGZpdHMsIHdlIHJldHVybiB0aGUgZmlyc3Qgb25lLlxuICAgIHJldHVybiBmaXJzdFBvc2l0aW9uITtcbiAgfVxuXG4gIHByaXZhdGUgX2FwcGx5T3ZlcmxheVBvc2l0aW9uKHBvc2l0aW9uOiBzdHJpbmcsIGxlZnQ6IG51bWJlciwgdG9wOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLl9sYXN0UG9zaXRpb24gPSBwb3NpdGlvbjtcbiAgICB0aGlzLl9vdmVybGF5LnN0eWxlLmxlZnQgPSBgJHtsZWZ0fXB4YDtcbiAgICB0aGlzLl9vdmVybGF5LnN0eWxlLnRvcCA9IGAke3RvcH1weGA7XG4gIH1cblxuICAvKipcbiAgICogT25seSB1c2VkIGluIHBvbHlmaWxsIG1vZGUuXG4gICAqIFJlYWRzIHRoZSBsaXN0IG9mIHRoZSBjb25maWd1cmVkIHBvc2l0aW9ucyBmcm9tIHRoZSBDU1MgdmFyaWFibGVzLlxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBfcmVhZFBvc2l0aW9uc0Zyb21Dc3MoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl91c2VQb2x5ZmlsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9vdmVybGF5U3R5bGVzID8/PSBnZXRDb21wdXRlZFN0eWxlKHRoaXMuX292ZXJsYXkpO1xuICAgIGNvbnN0IHBvc2l0aW9ucyA9IFtcbiAgICAgIHRoaXMuX292ZXJsYXlTdHlsZXMuZ2V0UHJvcGVydHlWYWx1ZSgnLS1zYmItb3ZlcmxheS1wb3NpdGlvbi1hcmVhJykgfHwgJ2Jsb2NrLWVuZCcsXG4gICAgICAuLi50aGlzLl9vdmVybGF5U3R5bGVzXG4gICAgICAgIC5nZXRQcm9wZXJ0eVZhbHVlKCctLXNiYi1vdmVybGF5LXBvc2l0aW9uLXRyeS1mYWxsYmFja3MnKVxuICAgICAgICAuc3BsaXQoJywnKVxuICAgICAgICAubWFwKChmKSA9PiBmLnRyaW0oKSlcbiAgICAgICAgLmZpbHRlcigoZikgPT4gISFmKSxcbiAgICBdO1xuXG4gICAgaWYgKGltcG9ydC5tZXRhLmVudi5ERVYgJiYgcG9zaXRpb25zLnNvbWUoKHApID0+ICFzdXBwb3J0ZWRQb3NpdGlvbnMuaW5jbHVkZXMocCkpKSB7XG4gICAgICBjb25zdCB1bnN1cHBvcnRlZFBvc2l0aW9ucyA9IHBvc2l0aW9uc1xuICAgICAgICAuZmlsdGVyKChwKSA9PiAhc3VwcG9ydGVkUG9zaXRpb25zLmluY2x1ZGVzKHApKVxuICAgICAgICAuc29ydCgpXG4gICAgICAgIC5qb2luKCcsICcpO1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgVW5zdXBwb3J0ZWQgcG9zaXRpb24tdHJ5LWZhbGxiYWNrcyAke3Vuc3VwcG9ydGVkUG9zaXRpb25zfSAoU3VwcG9ydGVkOiAke3N1cHBvcnRlZFBvc2l0aW9ucy5qb2luKCcsICcpfSlgLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLl9wb3NpdGlvbnMgPSBwb3NpdGlvbnM7XG4gICAgaWYgKHRoaXMuX2xhc3RQb3NpdGlvbiAmJiAhdGhpcy5fcG9zaXRpb25zLmluY2x1ZGVzKHRoaXMuX2xhc3RQb3NpdGlvbikpIHtcbiAgICAgIHRoaXMuX2xhc3RQb3NpdGlvbiA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBSUEsTUFBTSw2QkFBNkIsQ0FBQyxZQUFZLElBQUksU0FBUyxlQUFlLFFBQVE7QUFrQnBGLE1BQU0sNEJBQTRCO0FBQUEsRUFDaEM7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTs7QUFHRixNQUFNLHFCQUFnRDtBQUFBLEVBQ3BELGVBQWU7QUFBQSxFQUNmLGFBQWE7QUFBQSxFQUNiLGdCQUFnQjtBQUFBLEVBQ2hCLGNBQWM7QUFBQSxFQUNkLGlDQUFpQztBQUFBLEVBQ2pDLCtCQUErQjtBQUFBLEVBQy9CLCtCQUErQjtBQUFBLEVBQy9CLDZCQUE2QjtBQUFBLEVBQzdCLGlDQUFpQztBQUFBLEVBQ2pDLCtCQUErQjtBQUFBLEVBQy9CLCtCQUErQjtBQUFBLEVBQy9CLDZCQUE2Qjs7QUFJL0IsSUFBSSxTQUFTO01BcUJBLDZCQUE0QjtBQUFBO0FBQUEsRUFjdkMsSUFBVyxrQkFBZTtBQUN4QixRQUFJLEtBQUssY0FBYztBQUNyQixhQUFPLEtBQUssaUJBQWlCLEtBQUssV0FBVyxDQUFDLEtBQUs7QUFBQSxJQUNyRCxPQUFPO0FBQ0wsV0FBSyxtQkFBbUIsaUJBQWlCLEtBQUssUUFBUTtBQUN0RCxhQUFPLEtBQUssZUFBZSxpQkFBaUIsZUFBZTtB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