@sbb-esta/lyne-elements 1.8.0 → 1.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (312) hide show
  1. package/accordion/accordion.d.ts +5 -5
  2. package/accordion/accordion.d.ts.map +1 -1
  3. package/accordion.js +17 -17
  4. package/action-group/action-group.d.ts +1 -1
  5. package/action-group/action-group.d.ts.map +1 -1
  6. package/action-group.js +3 -3
  7. package/alert/alert/alert.d.ts +1 -1
  8. package/alert/alert/alert.d.ts.map +1 -1
  9. package/alert/alert.js +3 -3
  10. package/autocomplete/autocomplete-base-element.d.ts +1 -1
  11. package/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  12. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts +1 -1
  13. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts.map +1 -1
  14. package/autocomplete-grid/autocomplete-grid-option.js +1 -1
  15. package/autocomplete-grid/autocomplete-grid.js +18 -18
  16. package/autocomplete.js +9 -9
  17. package/button/button.js +9 -9
  18. package/button/common.js +5 -5
  19. package/button/mini-button/mini-button.d.ts.map +1 -1
  20. package/button/mini-button.js +17 -15
  21. package/button/secondary-button.js +6 -6
  22. package/button/tertiary-button.js +13 -13
  23. package/button/transparent-button.js +8 -8
  24. package/calendar/calendar.d.ts +2 -2
  25. package/calendar/calendar.d.ts.map +1 -1
  26. package/calendar.js +5 -4
  27. package/clock/clock.d.ts +2 -2
  28. package/clock/clock.d.ts.map +1 -1
  29. package/clock.js +5 -5
  30. package/container/container.js +14 -14
  31. package/core/a11y/focus-visible-within-controller.d.ts +1 -1
  32. package/core/a11y/focus-visible-within-controller.d.ts.map +1 -1
  33. package/core/a11y/input-modality-detector.d.ts +2 -2
  34. package/core/a11y/input-modality-detector.d.ts.map +1 -1
  35. package/core/a11y.js +3 -3
  36. package/core/base-elements/action-base-element.d.ts +1 -0
  37. package/core/base-elements/action-base-element.d.ts.map +1 -1
  38. package/core/base-elements/button-base-element.d.ts +1 -1
  39. package/core/base-elements/button-base-element.d.ts.map +1 -1
  40. package/core/base-elements/link-base-element.d.ts.map +1 -1
  41. package/core/base-elements.js +47 -45
  42. package/core/controllers/slot-state-controller.d.ts +1 -1
  43. package/core/controllers/slot-state-controller.d.ts.map +1 -1
  44. package/core/dom/platform.d.ts +2 -3
  45. package/core/dom/platform.d.ts.map +1 -1
  46. package/core/dom.js +38 -40
  47. package/core/mixins/disabled-mixin.d.ts +8 -0
  48. package/core/mixins/disabled-mixin.d.ts.map +1 -1
  49. package/core/mixins.js +97 -89
  50. package/core/styles/core.scss +6 -0
  51. package/core/styles/mixins/lists.scss +11 -1
  52. package/core/styles/mixins/panel.scss +0 -2
  53. package/core/styles/mixins/table.scss +11 -0
  54. package/core/styles/mixins/typo.scss +0 -30
  55. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +1 -0
  56. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +2 -1
  57. package/core/styles/table.scss +6 -1
  58. package/core/testing/wait-for-image-ready.d.ts.map +1 -1
  59. package/core/testing.js +61 -54
  60. package/core.css +7 -14
  61. package/custom-elements.json +493 -299
  62. package/datepicker/datepicker/datepicker.d.ts.map +1 -1
  63. package/datepicker/datepicker-toggle/datepicker-toggle.d.ts +2 -0
  64. package/datepicker/datepicker-toggle/datepicker-toggle.d.ts.map +1 -1
  65. package/datepicker/datepicker-toggle.js +57 -47
  66. package/datepicker/datepicker.js +1 -0
  67. package/development/accordion/accordion.d.ts +5 -5
  68. package/development/accordion/accordion.d.ts.map +1 -1
  69. package/development/accordion.js +25 -38
  70. package/development/action-group/action-group.d.ts +1 -1
  71. package/development/action-group/action-group.d.ts.map +1 -1
  72. package/development/action-group.js +8 -21
  73. package/development/alert/alert/alert.d.ts +1 -1
  74. package/development/alert/alert/alert.d.ts.map +1 -1
  75. package/development/alert/alert-group.js +2 -15
  76. package/development/alert/alert.js +6 -19
  77. package/development/autocomplete/autocomplete-base-element.d.ts +1 -1
  78. package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  79. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts +1 -1
  80. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts.map +1 -1
  81. package/development/autocomplete-grid/autocomplete-grid-button.js +2 -15
  82. package/development/autocomplete-grid/autocomplete-grid-cell.js +2 -15
  83. package/development/autocomplete-grid/autocomplete-grid-option.js +4 -17
  84. package/development/autocomplete-grid/autocomplete-grid-row.js +2 -15
  85. package/development/autocomplete-grid/autocomplete-grid.js +6 -6
  86. package/development/autocomplete.js +7 -20
  87. package/development/breadcrumb/breadcrumb-group.js +2 -15
  88. package/development/breadcrumb/breadcrumb.js +2 -15
  89. package/development/button/button.js +3 -3
  90. package/development/button/common.js +2 -17
  91. package/development/button/mini-button/mini-button.d.ts.map +1 -1
  92. package/development/button/mini-button-group.js +2 -15
  93. package/development/button/mini-button.js +6 -17
  94. package/development/button/secondary-button.js +3 -3
  95. package/development/button/tertiary-button.js +3 -3
  96. package/development/button/transparent-button.js +3 -3
  97. package/development/calendar/calendar.d.ts +2 -2
  98. package/development/calendar/calendar.d.ts.map +1 -1
  99. package/development/calendar.js +7 -19
  100. package/development/card/card-badge.js +2 -15
  101. package/development/card/card.js +2 -15
  102. package/development/card/common.js +2 -15
  103. package/development/checkbox/checkbox-group.js +2 -15
  104. package/development/checkbox/checkbox.js +2 -15
  105. package/development/checkbox/common.js +1 -14
  106. package/development/chip.js +2 -15
  107. package/development/clock/clock.d.ts +2 -2
  108. package/development/clock/clock.d.ts.map +1 -1
  109. package/development/clock.js +3 -16
  110. package/development/container/container.js +2 -15
  111. package/development/container/sticky-bar.js +2 -15
  112. package/development/core/a11y/focus-visible-within-controller.d.ts +1 -1
  113. package/development/core/a11y/focus-visible-within-controller.d.ts.map +1 -1
  114. package/development/core/a11y/input-modality-detector.d.ts +2 -2
  115. package/development/core/a11y/input-modality-detector.d.ts.map +1 -1
  116. package/development/core/a11y.js +6 -6
  117. package/development/core/base-elements/action-base-element.d.ts +1 -0
  118. package/development/core/base-elements/action-base-element.d.ts.map +1 -1
  119. package/development/core/base-elements/button-base-element.d.ts +1 -1
  120. package/development/core/base-elements/button-base-element.d.ts.map +1 -1
  121. package/development/core/base-elements/link-base-element.d.ts.map +1 -1
  122. package/development/core/base-elements.js +11 -2
  123. package/development/core/controllers/slot-state-controller.d.ts +1 -1
  124. package/development/core/controllers/slot-state-controller.d.ts.map +1 -1
  125. package/development/core/controllers.js +1 -1
  126. package/development/core/dom/platform.d.ts +2 -3
  127. package/development/core/dom/platform.d.ts.map +1 -1
  128. package/development/core/dom.js +4 -5
  129. package/development/core/mixins/disabled-mixin.d.ts +8 -0
  130. package/development/core/mixins/disabled-mixin.d.ts.map +1 -1
  131. package/development/core/mixins.js +24 -15
  132. package/development/core/testing/wait-for-image-ready.d.ts.map +1 -1
  133. package/development/core/testing.js +16 -2
  134. package/development/datepicker/datepicker/datepicker.d.ts.map +1 -1
  135. package/development/datepicker/datepicker-next-day.js +2 -15
  136. package/development/datepicker/datepicker-previous-day.js +2 -15
  137. package/development/datepicker/datepicker-toggle/datepicker-toggle.d.ts +2 -0
  138. package/development/datepicker/datepicker-toggle/datepicker-toggle.d.ts.map +1 -1
  139. package/development/datepicker/datepicker-toggle.js +22 -24
  140. package/development/datepicker/datepicker.js +3 -15
  141. package/development/dialog/dialog-actions.js +2 -15
  142. package/development/dialog/dialog-content.js +2 -15
  143. package/development/dialog/dialog-title.js +2 -15
  144. package/development/dialog/dialog.js +3 -16
  145. package/development/divider.js +2 -15
  146. package/development/expansion-panel/expansion-panel-content.js +2 -15
  147. package/development/expansion-panel/expansion-panel-header.js +5 -17
  148. package/development/expansion-panel/expansion-panel.js +2 -15
  149. package/development/file-selector/file-selector.d.ts +4 -4
  150. package/development/file-selector/file-selector.d.ts.map +1 -1
  151. package/development/file-selector.js +2 -17
  152. package/development/flip-card/flip-card-details.js +2 -15
  153. package/development/flip-card/flip-card-summary.js +2 -15
  154. package/development/flip-card/flip-card.js +2 -15
  155. package/development/footer.js +2 -15
  156. package/development/form-error.js +2 -15
  157. package/development/form-field/form-field-clear.js +2 -15
  158. package/development/form-field/form-field.js +1 -14
  159. package/development/header/common.js +2 -15
  160. package/development/header/header.js +2 -15
  161. package/development/icon/icon.d.ts +6 -0
  162. package/development/icon/icon.d.ts.map +1 -1
  163. package/development/icon.js +10 -15
  164. package/development/image.js +4 -17
  165. package/development/journey-header.js +2 -15
  166. package/development/lead-container.js +2 -15
  167. package/development/link/block-link-button.js +3 -3
  168. package/development/link/common.js +4 -43
  169. package/development/link/link-button.js +3 -3
  170. package/development/link-list/common.js +2 -15
  171. package/development/link-list/link-list-anchor.js +2 -15
  172. package/development/link-list/link-list.js +2 -15
  173. package/development/loading-indicator.js +2 -15
  174. package/development/logo.js +2 -15
  175. package/development/map-container.js +2 -15
  176. package/development/menu/common.js +2 -15
  177. package/development/menu/menu/menu.d.ts.map +1 -1
  178. package/development/menu/menu-button.js +3 -3
  179. package/development/menu/menu.js +3 -18
  180. package/development/message.js +2 -15
  181. package/development/navigation/common.js +2 -17
  182. package/development/navigation/navigation-list.js +2 -15
  183. package/development/navigation/navigation-marker.js +2 -17
  184. package/development/navigation/navigation-section.js +2 -19
  185. package/development/navigation/navigation.js +2 -15
  186. package/development/notification.js +2 -15
  187. package/development/option/optgroup/optgroup-base-element.d.ts +2 -2
  188. package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -1
  189. package/development/option/optgroup.js +2 -15
  190. package/development/option/option/option-base-element.d.ts +14 -4
  191. package/development/option/option/option-base-element.d.ts.map +1 -1
  192. package/development/option/option.js +15 -21
  193. package/development/overlay/overlay-base-element.d.ts +1 -1
  194. package/development/overlay/overlay-base-element.d.ts.map +1 -1
  195. package/development/overlay.js +3 -23
  196. package/development/popover/popover-trigger.js +4 -17
  197. package/development/popover/popover.js +2 -15
  198. package/development/radio-button/common.js +2 -15
  199. package/development/radio-button/radio-button-group/radio-button-group.d.ts +1 -1
  200. package/development/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
  201. package/development/radio-button/radio-button-group.js +9 -22
  202. package/development/radio-button/radio-button.js +2 -15
  203. package/development/screen-reader-only.js +2 -15
  204. package/development/select/select.d.ts +3 -1
  205. package/development/select/select.d.ts.map +1 -1
  206. package/development/select.js +49 -48
  207. package/development/selection-expansion-panel/selection-expansion-panel.d.ts +12 -3
  208. package/development/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -1
  209. package/development/selection-expansion-panel.js +38 -18
  210. package/development/signet.js +2 -15
  211. package/development/skiplink-list.js +2 -15
  212. package/development/slider/slider.d.ts.map +1 -1
  213. package/development/slider.js +10 -16
  214. package/development/status.js +2 -15
  215. package/development/stepper/step-label/step-label.d.ts +6 -6
  216. package/development/stepper/step-label/step-label.d.ts.map +1 -1
  217. package/development/stepper/step-label.js +50 -45
  218. package/development/stepper/step.js +2 -15
  219. package/development/stepper/stepper/stepper.d.ts +6 -3
  220. package/development/stepper/stepper/stepper.d.ts.map +1 -1
  221. package/development/stepper/stepper.js +17 -15
  222. package/development/table/table-wrapper.js +2 -15
  223. package/development/tabs/tab-group/tab-group.d.ts +4 -4
  224. package/development/tabs/tab-group/tab-group.d.ts.map +1 -1
  225. package/development/tabs/tab-group.js +22 -35
  226. package/development/tabs/tab-label.js +2 -19
  227. package/development/tabs/tab.js +1 -14
  228. package/development/tag/tag-group.js +2 -15
  229. package/development/tag/tag.js +4 -17
  230. package/development/teaser-hero.js +3 -23
  231. package/development/teaser-product/common.js +2 -15
  232. package/development/teaser-product/teaser-product.js +3 -16
  233. package/development/teaser.js +2 -15
  234. package/development/time-input.js +2 -15
  235. package/development/timetable-occupancy-icon.js +2 -15
  236. package/development/timetable-occupancy.js +2 -15
  237. package/development/title.js +3 -41
  238. package/development/toast.js +2 -17
  239. package/development/toggle/toggle/toggle.d.ts +2 -2
  240. package/development/toggle/toggle/toggle.d.ts.map +1 -1
  241. package/development/toggle/toggle-option/toggle-option.d.ts.map +1 -1
  242. package/development/toggle/toggle-option.js +3 -15
  243. package/development/toggle/toggle.js +23 -36
  244. package/development/toggle-check.js +1 -14
  245. package/development/train/train-blocked-passage.js +2 -15
  246. package/development/train/train-formation.js +2 -15
  247. package/development/train/train-wagon.js +2 -17
  248. package/development/train/train.js +2 -15
  249. package/development/visual-checkbox.js +2 -15
  250. package/dialog/dialog.js +1 -1
  251. package/expansion-panel/expansion-panel-header.js +5 -5
  252. package/file-selector/file-selector.d.ts +4 -4
  253. package/file-selector/file-selector.d.ts.map +1 -1
  254. package/file-selector.js +1 -1
  255. package/icon/icon.d.ts +6 -0
  256. package/icon/icon.d.ts.map +1 -1
  257. package/icon.js +27 -19
  258. package/image.js +2 -2
  259. package/link/block-link-button.js +10 -10
  260. package/link/link-button.js +4 -4
  261. package/lists.css +9 -14
  262. package/menu/menu/menu.d.ts.map +1 -1
  263. package/menu/menu-button.js +13 -13
  264. package/menu/menu.js +7 -9
  265. package/navigation/common.js +1 -1
  266. package/navigation/navigation-marker.js +1 -1
  267. package/navigation/navigation-section.js +1 -1
  268. package/option/optgroup/optgroup-base-element.d.ts +2 -2
  269. package/option/optgroup/optgroup-base-element.d.ts.map +1 -1
  270. package/option/option/option-base-element.d.ts +14 -4
  271. package/option/option/option-base-element.d.ts.map +1 -1
  272. package/option/option.js +32 -25
  273. package/overlay/overlay-base-element.d.ts +1 -1
  274. package/overlay/overlay-base-element.d.ts.map +1 -1
  275. package/overlay.js +1 -1
  276. package/package.json +1 -1
  277. package/popover/popover-trigger.js +1 -1
  278. package/radio-button/radio-button-group/radio-button-group.d.ts +1 -1
  279. package/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
  280. package/radio-button/radio-button-group.js +5 -5
  281. package/select/select.d.ts +3 -1
  282. package/select/select.d.ts.map +1 -1
  283. package/select.js +83 -72
  284. package/selection-expansion-panel/selection-expansion-panel.d.ts +12 -3
  285. package/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -1
  286. package/selection-expansion-panel.js +70 -49
  287. package/slider/slider.d.ts.map +1 -1
  288. package/slider.js +2 -2
  289. package/standard-theme.css +49 -24
  290. package/stepper/step-label/step-label.d.ts +6 -6
  291. package/stepper/step-label/step-label.d.ts.map +1 -1
  292. package/stepper/step-label.js +30 -30
  293. package/stepper/stepper/stepper.d.ts +6 -3
  294. package/stepper/stepper/stepper.d.ts.map +1 -1
  295. package/stepper/stepper.js +34 -25
  296. package/tabs/tab-group/tab-group.d.ts +4 -4
  297. package/tabs/tab-group/tab-group.d.ts.map +1 -1
  298. package/tabs/tab-group.js +15 -15
  299. package/tabs/tab-label.js +12 -12
  300. package/tag/tag.js +19 -19
  301. package/teaser-hero.js +13 -13
  302. package/teaser-product/teaser-product.js +5 -5
  303. package/teaser.js +15 -15
  304. package/title.js +23 -23
  305. package/toast.js +4 -4
  306. package/toggle/toggle/toggle.d.ts +2 -2
  307. package/toggle/toggle/toggle.d.ts.map +1 -1
  308. package/toggle/toggle-option/toggle-option.d.ts.map +1 -1
  309. package/toggle/toggle-option.js +1 -0
  310. package/toggle/toggle.js +10 -10
  311. package/train/train-wagon.js +7 -7
  312. package/typography.css +0 -13
@@ -7,20 +7,7 @@ import { EventEmitter, throttle } from "../core/eventing.js";
7
7
  import { SbbHydrationMixin } from "../core/mixins.js";
8
8
  import { AgnosticMutationObserver, AgnosticResizeObserver } from "../core/observers.js";
9
9
  import { SbbTabElement } from "./tab.js";
10
- const style = css`/**
11
- * Better font rendering (on OS X)
12
- * http://maximilianhoffmann.com/posts/better-font-rendering-on-osx
13
- *
14
- * Usage:
15
- *
16
- * .var_dark_on_light {
17
- * @include font-smoothing;
18
- * }
19
- * .var_light_on_dark {
20
- * @include font-smoothing-reset;
21
- * }
22
- */
23
- /** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
10
+ const style = css`/** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
24
11
  /*
25
12
  * SBB table mixin
26
13
  * Notes:
@@ -133,10 +120,17 @@ let SbbTabGroupElement = class extends SbbHydrationMixin(LitElement) {
133
120
  get size() {
134
121
  return this._size;
135
122
  }
136
- _updateSize() {
137
- for (const tab of this._tabs) {
138
- tab.setAttribute("data-size", this.size);
139
- }
123
+ connectedCallback() {
124
+ super.connectedCallback();
125
+ const signal = this._abort.signal;
126
+ this.addEventListener("keydown", (e) => this._handleKeyDown(e), { signal });
127
+ }
128
+ firstUpdated(changedProperties) {
129
+ super.firstUpdated(changedProperties);
130
+ this._tabs = this._getTabs();
131
+ this._tabs.forEach((tab) => this._configure(tab));
132
+ this._initSelection();
133
+ this._tabGroupResizeObserver.observe(this._tabGroupElement);
140
134
  }
141
135
  /**
142
136
  * Disables a tab by index.
@@ -167,27 +161,20 @@ let SbbTabGroupElement = class extends SbbHydrationMixin(LitElement) {
167
161
  (child) => /^sbb-tab-label$/u.test(child.localName)
168
162
  );
169
163
  }
170
- get _enabledTabs() {
164
+ _enabledTabs() {
171
165
  return this._tabs.filter((t) => !t.hasAttribute("disabled"));
172
166
  }
173
- connectedCallback() {
174
- super.connectedCallback();
175
- const signal = this._abort.signal;
176
- this.addEventListener("keydown", (e) => this._handleKeyDown(e), { signal });
177
- }
178
- firstUpdated(changedProperties) {
179
- super.firstUpdated(changedProperties);
180
- this._tabs = this._getTabs();
181
- this._tabs.forEach((tab) => this._configure(tab));
182
- this._initSelection();
183
- this._tabGroupResizeObserver.observe(this._tabGroupElement);
184
- }
185
167
  disconnectedCallback() {
186
168
  super.disconnectedCallback();
187
169
  this._tabAttributeObserver.disconnect();
188
170
  this._tabContentResizeObserver.disconnect();
189
171
  this._tabGroupResizeObserver.disconnect();
190
172
  }
173
+ _updateSize() {
174
+ for (const tab of this._tabs) {
175
+ tab.setAttribute("data-size", this.size);
176
+ }
177
+ }
191
178
  _assignId() {
192
179
  return `sbb-tab-panel-${++nextId}`;
193
180
  }
@@ -196,7 +183,7 @@ let SbbTabGroupElement = class extends SbbHydrationMixin(LitElement) {
196
183
  if (this.initialSelectedIndex >= 0 && this.initialSelectedIndex < this._tabs.length && !this._tabs[this.initialSelectedIndex].disabled) {
197
184
  (_a = this._tabs[this.initialSelectedIndex].tabGroupActions) == null ? void 0 : _a.select();
198
185
  } else {
199
- (_c = (_b = this._enabledTabs[0]) == null ? void 0 : _b.tabGroupActions) == null ? void 0 : _c.select();
186
+ (_c = (_b = this._enabledTabs()[0]) == null ? void 0 : _b.tabGroupActions) == null ? void 0 : _c.select();
200
187
  }
201
188
  }
202
189
  _onTabAttributesChange(mutationsList) {
@@ -274,7 +261,7 @@ let SbbTabGroupElement = class extends SbbHydrationMixin(LitElement) {
274
261
  if (tabLabel.active) {
275
262
  tabLabel.removeAttribute("active");
276
263
  tabLabel.active = false;
277
- (_c = (_b = this._enabledTabs[0]) == null ? void 0 : _b.tabGroupActions) == null ? void 0 : _c.select();
264
+ (_c = (_b = this._enabledTabs()[0]) == null ? void 0 : _b.tabGroupActions) == null ? void 0 : _c.select();
278
265
  }
279
266
  },
280
267
  enable: () => {
@@ -341,7 +328,7 @@ let SbbTabGroupElement = class extends SbbHydrationMixin(LitElement) {
341
328
  }
342
329
  _handleKeyDown(evt) {
343
330
  var _a, _b, _c;
344
- const enabledTabs = this._enabledTabs;
331
+ const enabledTabs = this._enabledTabs();
345
332
  if (!enabledTabs || // don't trap nested handling
346
333
  evt.target !== this && evt.target.parentElement !== this) {
347
334
  return;
@@ -386,4 +373,4 @@ SbbTabGroupElement = __decorateClass([
386
373
  export {
387
374
  SbbTabGroupElement
388
375
  };
389
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWdyb3VwLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFicy90YWItZ3JvdXAvdGFiLWdyb3VwLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFByb3BlcnR5VmFsdWVzLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sLCBMaXRFbGVtZW50IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgcmVmIH0gZnJvbSAnbGl0L2RpcmVjdGl2ZXMvcmVmLmpzJztcblxuaW1wb3J0IHsgZ2V0TmV4dEVsZW1lbnRJbmRleCwgaXNBcnJvd0tleVByZXNzZWQgfSBmcm9tICcuLi8uLi9jb3JlL2ExMXkuanMnO1xuaW1wb3J0IHsgU2JiQ29ubmVjdGVkQWJvcnRDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIsIHRocm90dGxlIH0gZnJvbSAnLi4vLi4vY29yZS9ldmVudGluZy5qcyc7XG5pbXBvcnQgeyBTYmJIeWRyYXRpb25NaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IEFnbm9zdGljTXV0YXRpb25PYnNlcnZlciwgQWdub3N0aWNSZXNpemVPYnNlcnZlciB9IGZyb20gJy4uLy4uL2NvcmUvb2JzZXJ2ZXJzLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiVGFiTGFiZWxFbGVtZW50IH0gZnJvbSAnLi4vdGFiLWxhYmVsLmpzJztcbmltcG9ydCB7IFNiYlRhYkVsZW1lbnQgfSBmcm9tICcuLi90YWIuanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90YWItZ3JvdXAuc2Nzcz9saXQmaW5saW5lJztcblxuZXhwb3J0IHR5cGUgU2JiVGFiQ2hhbmdlZEV2ZW50RGV0YWlscyA9IHtcbiAgYWN0aXZlSW5kZXg6IG51bWJlcjtcbiAgYWN0aXZlVGFiTGFiZWw6IFNiYlRhYkxhYmVsRWxlbWVudDtcbiAgYWN0aXZlVGFiOiBTYmJUYWJFbGVtZW50O1xuICBwcmV2aW91c0luZGV4OiBudW1iZXI7XG4gIHByZXZpb3VzVGFiTGFiZWw6IFNiYlRhYkxhYmVsRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgcHJldmlvdXNUYWI6IFNiYlRhYkVsZW1lbnQgfCB1bmRlZmluZWQ7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIEludGVyZmFjZVNiYlRhYkdyb3VwQWN0aW9ucyB7XG4gIGFjdGl2YXRlKCk6IHZvaWQ7XG4gIGRlYWN0aXZhdGUoKTogdm9pZDtcbiAgZW5hYmxlKCk6IHZvaWQ7XG4gIGRpc2FibGUoKTogdm9pZDtcbiAgc2VsZWN0KCk6IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW50ZXJmYWNlU2JiVGFiR3JvdXBUYWIgZXh0ZW5kcyBTYmJUYWJMYWJlbEVsZW1lbnQge1xuICBhY3RpdmU/OiBib29sZWFuO1xuICBkaXNhYmxlZDogYm9vbGVhbjtcbiAgdGFiPzogU2JiVGFiRWxlbWVudDtcbiAgaW5kZXg/OiBudW1iZXI7XG4gIHRhYkdyb3VwQWN0aW9ucz86IEludGVyZmFjZVNiYlRhYkdyb3VwQWN0aW9ucztcbiAgc2l6ZTogJ3MnIHwgJ2wnIHwgJ3hsJztcbn1cblxuY29uc3QgdGFiT2JzZXJ2ZXJDb25maWc6IE11dGF0aW9uT2JzZXJ2ZXJJbml0ID0ge1xuICBhdHRyaWJ1dGVGaWx0ZXI6IFsnYWN0aXZlJywgJ2Rpc2FibGVkJ10sXG59O1xuXG5sZXQgbmV4dElkID0gMDtcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBvbmUgb3IgbW9yZSB0YWJzLCBlYWNoIG9uZSB3aXRoIGEgbGFiZWwgYW5kIGEgY29udGVudC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IHRvIHRoZSBgc2JiLXRhYi1ncm91cGAgdmlhXG4gKiBgc2JiLXRhYi1sYWJlbGAgYW5kIGBzYmItdGFiYCBpbnN0YW5jZXMuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PFNiYlRhYkNoYW5nZWRFdmVudERldGFpbHM+fSBkaWRDaGFuZ2UgLSBFbWl0cyBhbiBldmVudCBvbiBzZWxlY3RlZCB0YWIgY2hhbmdlLlxuICovXG5AY3VzdG9tRWxlbWVudCgnc2JiLXRhYi1ncm91cCcpXG5leHBvcnQgY2xhc3MgU2JiVGFiR3JvdXBFbGVtZW50IGV4dGVuZHMgU2JiSHlkcmF0aW9uTWl4aW4oTGl0RWxlbWVudCkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBldmVudHMgPSB7XG4gICAgZGlkQ2hhbmdlOiAnZGlkQ2hhbmdlJyxcbiAgfSBhcyBjb25zdDtcblxuICBwcml2YXRlIF90YWJzOiBJbnRlcmZhY2VTYmJUYWJHcm91cFRhYltdID0gW107XG4gIHByaXZhdGUgX3NlbGVjdGVkVGFiPzogSW50ZXJmYWNlU2JiVGFiR3JvdXBUYWI7XG4gIHByaXZhdGUgX3RhYkdyb3VwRWxlbWVudCE6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIF90YWJDb250ZW50RWxlbWVudCE6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIF9hYm9ydCA9IG5ldyBTYmJDb25uZWN0ZWRBYm9ydENvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX3RhYkF0dHJpYnV0ZU9ic2VydmVyID0gbmV3IEFnbm9zdGljTXV0YXRpb25PYnNlcnZlcigobXV0YXRpb25zTGlzdCkgPT5cbiAgICB0aGlzLl9vblRhYkF0dHJpYnV0ZXNDaGFuZ2UobXV0YXRpb25zTGlzdCksXG4gICk7XG4gIHByaXZhdGUgX3RhYkdyb3VwUmVzaXplT2JzZXJ2ZXIgPSBuZXcgQWdub3N0aWNSZXNpemVPYnNlcnZlcigoZW50cmllcykgPT5cbiAgICB0aGlzLl9vblRhYkdyb3VwRWxlbWVudFJlc2l6ZShlbnRyaWVzKSxcbiAgKTtcbiAgcHJpdmF0ZSBfdGFiQ29udGVudFJlc2l6ZU9ic2VydmVyID0gbmV3IEFnbm9zdGljUmVzaXplT2JzZXJ2ZXIoKGVudHJpZXMpID0+XG4gICAgdGhpcy5fb25UYWJDb250ZW50RWxlbWVudFJlc2l6ZShlbnRyaWVzKSxcbiAgKTtcblxuICAvKiogU2l6ZSB2YXJpYW50LCBlaXRoZXIgcywgbCBvciB4bC4gKi9cbiAgQHByb3BlcnR5KClcbiAgcHVibGljIHNldCBzaXplKHZhbHVlOiBJbnRlcmZhY2VTYmJUYWJHcm91cFRhYlsnc2l6ZSddKSB7XG4gICAgdGhpcy5fc2l6ZSA9IHZhbHVlO1xuICAgIHRoaXMuX3VwZGF0ZVNpemUoKTtcbiAgfVxuICBwdWJsaWMgZ2V0IHNpemUoKTogSW50ZXJmYWNlU2JiVGFiR3JvdXBUYWJbJ3NpemUnXSB7XG4gICAgcmV0dXJuIHRoaXMuX3NpemU7XG4gIH1cbiAgcHJpdmF0ZSBfc2l6ZTogSW50ZXJmYWNlU2JiVGFiR3JvdXBUYWJbJ3NpemUnXSA9ICdsJztcblxuICAvKipcbiAgICogU2V0cyB0aGUgaW5pdGlhbCB0YWIuIElmIGl0IG1hdGNoZXMgYSBkaXNhYmxlZCB0YWIgb3IgZXhjZWVkcyB0aGUgbGVuZ3RoIG9mXG4gICAqIHRoZSB0YWIgZ3JvdXAsIHRoZSBmaXJzdCBlbmFibGVkIHRhYiB3aWxsIGJlIHNlbGVjdGVkLlxuICAgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnaW5pdGlhbC1zZWxlY3RlZC1pbmRleCcsIHR5cGU6IE51bWJlciB9KSBwdWJsaWMgaW5pdGlhbFNlbGVjdGVkSW5kZXggPSAwO1xuXG4gIHByaXZhdGUgX3VwZGF0ZVNpemUoKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCB0YWIgb2YgdGhpcy5fdGFicykge1xuICAgICAgdGFiLnNldEF0dHJpYnV0ZSgnZGF0YS1zaXplJywgdGhpcy5zaXplKTtcbiAgICB9XG4gIH1cblxuICAvKiogRW1pdHMgYW4gZXZlbnQgb24gc2VsZWN0ZWQgdGFiIGNoYW5nZS4gKi9cbiAgcHJpdmF0ZSBfc2VsZWN0ZWRUYWJDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8U2JiVGFiQ2hhbmdlZEV2ZW50RGV0YWlscz4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiVGFiR3JvdXBFbGVtZW50LmV2ZW50cy5kaWRDaGFuZ2UsXG4gICk7XG5cbiAgLyoqXG4gICAqIERpc2FibGVzIGEgdGFiIGJ5IGluZGV4LlxuICAgKiBAcGFyYW0gdGFiSW5kZXggVGhlIGluZGV4IG9mIHRoZSB0YWIgeW91IHdhbnQgdG8gZGlzYWJsZS5cbiAgICovXG4gIHB1YmxpYyBkaXNhYmxlVGFiKHRhYkluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLl90YWJzW3RhYkluZGV4XT8udGFiR3JvdXBBY3Rpb25zPy5kaXNhYmxlKCk7XG4gIH1cblxuICAvKipcbiAgICogRW5hYmxlcyBhIHRhYiBieSBpbmRleC5cbiAgICogQHBhcmFtIHRhYkluZGV4IFRoZSBpbmRleCBvZiB0aGUgdGFiIHlvdSB3YW50IHRvIGVuYWJsZS5cbiAgICovXG4gIHB1YmxpYyBlbmFibGVUYWIodGFiSW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuX3RhYnNbdGFiSW5kZXhdPy50YWJHcm91cEFjdGlvbnM/LmVuYWJsZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFjdGl2YXRlcyBhIHRhYiBieSBpbmRleC5cbiAgICogQHBhcmFtIHRhYkluZGV4IFRoZSBpbmRleCBvZiB0aGUgdGFiIHlvdSB3YW50IHRvIGFjdGl2YXRlLlxuICAgKi9cbiAgcHVibGljIGFjdGl2YXRlVGFiKHRhYkluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLl90YWJzW3RhYkluZGV4XT8udGFiR3JvdXBBY3Rpb25zPy5zZWxlY3QoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldFRhYnMoKTogSW50ZXJmYWNlU2JiVGFiR3JvdXBUYWJbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5jaGlsZHJlbiA/PyBbXSkuZmlsdGVyKChjaGlsZCkgPT5cbiAgICAgIC9ec2JiLXRhYi1sYWJlbCQvdS50ZXN0KGNoaWxkLmxvY2FsTmFtZSksXG4gICAgKSBhcyBJbnRlcmZhY2VTYmJUYWJHcm91cFRhYltdO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX2VuYWJsZWRUYWJzKCk6IEludGVyZmFjZVNiYlRhYkdyb3VwVGFiW10ge1xuICAgIHJldHVybiB0aGlzLl90YWJzLmZpbHRlcigodCkgPT4gIXQuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIGNvbnN0IHNpZ25hbCA9IHRoaXMuX2Fib3J0LnNpZ25hbDtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoZSkgPT4gdGhpcy5faGFuZGxlS2V5RG93bihlKSwgeyBzaWduYWwgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLmZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICB0aGlzLl90YWJzID0gdGhpcy5fZ2V0VGFicygpO1xuICAgIHRoaXMuX3RhYnMuZm9yRWFjaCgodGFiKSA9PiB0aGlzLl9jb25maWd1cmUodGFiKSk7XG4gICAgdGhpcy5faW5pdFNlbGVjdGlvbigpO1xuICAgIHRoaXMuX3RhYkdyb3VwUmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLl90YWJHcm91cEVsZW1lbnQpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fdGFiQXR0cmlidXRlT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgIHRoaXMuX3RhYkNvbnRlbnRSZXNpemVPYnNlcnZlci5kaXNjb25uZWN0KCk7XG4gICAgdGhpcy5fdGFiR3JvdXBSZXNpemVPYnNlcnZlci5kaXNjb25uZWN0KCk7XG4gIH1cblxuICBwcml2YXRlIF9vbkNvbnRlbnRTbG90Q2hhbmdlID0gKCk6IHZvaWQgPT4ge1xuICAgIHRoaXMuX3RhYkNvbnRlbnRFbGVtZW50ID0gdGhpcy5zaGFkb3dSb290IS5xdWVyeVNlbGVjdG9yKCdkaXYudGFiLWNvbnRlbnQnKSE7XG4gICAgY29uc3QgbG9hZGVkVGFicyA9IHRoaXMuX2dldFRhYnMoKS5maWx0ZXIoKHRhYikgPT4gIXRoaXMuX3RhYnMuaW5jbHVkZXModGFiKSk7XG5cbiAgICAvLyBpZiBhIG5ldyB0YWIvY29udGVudCBpcyBhZGRlZCB0byB0aGUgdGFiIGdyb3VwXG4gICAgaWYgKGxvYWRlZFRhYnMubGVuZ3RoKSB7XG4gICAgICBsb2FkZWRUYWJzLmZvckVhY2goKHRhYikgPT4gdGhpcy5fY29uZmlndXJlKHRhYikpO1xuICAgICAgdGhpcy5fdGFicyA9IHRoaXMuX3RhYnMuY29uY2F0KGxvYWRlZFRhYnMpO1xuICAgIH1cbiAgfTtcblxuICBwcml2YXRlIF9vblRhYnNTbG90Q2hhbmdlID0gKCk6IHZvaWQgPT4ge1xuICAgIGNvbnN0IHRhYnMgPSB0aGlzLl9nZXRUYWJzKCk7XG5cbiAgICAvLyBpZiBhIHRhYiBpcyByZW1vdmVkIGZyb20gdGhlIHRhYiBncm91cFxuICAgIGlmICh0YWJzLmxlbmd0aCA8IHRoaXMuX3RhYnMubGVuZ3RoKSB7XG4gICAgICBjb25zdCByZW1vdmVkVGFicyA9IHRoaXMuX3RhYnMuZmlsdGVyKCh0YWIpID0+ICF0YWJzLmluY2x1ZGVzKHRhYikpO1xuXG4gICAgICByZW1vdmVkVGFicy5mb3JFYWNoKChyZW1vdmVkVGFiKSA9PiB7XG4gICAgICAgIHJlbW92ZWRUYWIudGFiPy5yZW1vdmUoKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5fdGFicyA9IHRhYnM7XG4gICAgfVxuICAgIHRoaXMuX3RhYnMuZm9yRWFjaCgodGFiOiBJbnRlcmZhY2VTYmJUYWJHcm91cFRhYikgPT4gdGFiLnNldEF0dHJpYnV0ZSgnZGF0YS1zaXplJywgdGhpcy5zaXplKSk7XG4gIH07XG5cbiAgcHJpdmF0ZSBfYXNzaWduSWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYHNiYi10YWItcGFuZWwtJHsrK25leHRJZH1gO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdFNlbGVjdGlvbigpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICB0aGlzLmluaXRpYWxTZWxlY3RlZEluZGV4ID49IDAgJiZcbiAgICAgIHRoaXMuaW5pdGlhbFNlbGVjdGVkSW5kZXggPCB0aGlzLl90YWJzLmxlbmd0aCAmJlxuICAgICAgIXRoaXMuX3RhYnNbdGhpcy5pbml0aWFsU2VsZWN0ZWRJbmRleF0uZGlzYWJsZWRcbiAgICApIHtcbiAgICAgIHRoaXMuX3RhYnNbdGhpcy5pbml0aWFsU2VsZWN0ZWRJbmRleF0udGFiR3JvdXBBY3Rpb25zPy5zZWxlY3QoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fZW5hYmxlZFRhYnNbMF0/LnRhYkdyb3VwQWN0aW9ucz8uc2VsZWN0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfb25UYWJBdHRyaWJ1dGVzQ2hhbmdlKG11dGF0aW9uc0xpc3Q6IE11dGF0aW9uUmVjb3JkW10pOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IG11dGF0aW9uIG9mIG11dGF0aW9uc0xpc3QpIHtcbiAgICAgIGlmIChtdXRhdGlvbi50eXBlICE9PSAnYXR0cmlidXRlcycpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc3QgdGFiID0gbXV0YXRpb24udGFyZ2V0IGFzIEludGVyZmFjZVNiYlRhYkdyb3VwVGFiO1xuXG4gICAgICBpZiAobXV0YXRpb24uYXR0cmlidXRlTmFtZSA9PT0gJ2Rpc2FibGVkJykge1xuICAgICAgICBpZiAodGFiLmhhc0F0dHJpYnV0ZSgnZGlzYWJsZWQnKSAmJiB0YWIgIT09IHRoaXMuX3NlbGVjdGVkVGFiKSB7XG4gICAgICAgICAgdGFiLnRhYkdyb3VwQWN0aW9ucz8uZGlzYWJsZSgpO1xuICAgICAgICB9IGVsc2UgaWYgKHRhYi5kaXNhYmxlZCkge1xuICAgICAgICAgIHRhYi50YWJHcm91cEFjdGlvbnM/LmVuYWJsZSgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAobXV0YXRpb24uYXR0cmlidXRlTmFtZSA9PT0gJ2FjdGl2ZScpIHtcbiAgICAgICAgaWYgKHRhYi5oYXNBdHRyaWJ1dGUoJ2FjdGl2ZScpICYmICF0YWIuZGlzYWJsZWQpIHtcbiAgICAgICAgICB0YWIudGFiR3JvdXBBY3Rpb25zPy5zZWxlY3QoKTtcbiAgICAgICAgfSBlbHNlIGlmICh0YWIgPT09IHRoaXMuX3NlbGVjdGVkVGFiKSB7XG4gICAgICAgICAgdGFiLnRvZ2dsZUF0dHJpYnV0ZSgnYWN0aXZlJywgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vblRhYkdyb3VwRWxlbWVudFJlc2l6ZShlbnRyaWVzOiBSZXNpemVPYnNlcnZlckVudHJ5W10pOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IGVudHJ5IG9mIGVudHJpZXMpIHtcbiAgICAgIGNvbnN0IHRhYlRpdGxlcyA9IChcbiAgICAgICAgZW50cnkudGFyZ2V0LmZpcnN0RWxlbWVudENoaWxkIGFzIEhUTUxTbG90RWxlbWVudFxuICAgICAgKS5hc3NpZ25lZEVsZW1lbnRzKCkgYXMgU2JiVGFiTGFiZWxFbGVtZW50W107XG5cbiAgICAgIGZvciAoY29uc3QgdGFiIG9mIHRhYlRpdGxlcykge1xuICAgICAgICB0YWIudG9nZ2xlQXR0cmlidXRlKFxuICAgICAgICAgICdkYXRhLWhhcy1kaXZpZGVyJyxcbiAgICAgICAgICB0YWIgPT09IHRhYlRpdGxlc1swXSB8fCB0YWIub2Zmc2V0TGVmdCA9PT0gdGFiVGl0bGVzWzBdLm9mZnNldExlZnQsXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuc3R5bGUuc2V0UHJvcGVydHkoJy0tc2JiLXRhYi1ncm91cC13aWR0aCcsIGAke3RoaXMuX3RhYkdyb3VwRWxlbWVudC5jbGllbnRXaWR0aH1weGApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX29uVGFiQ29udGVudEVsZW1lbnRSZXNpemUoZW50cmllczogUmVzaXplT2JzZXJ2ZXJFbnRyeVtdKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBlbnRyeSBvZiBlbnRyaWVzKSB7XG4gICAgICBjb25zdCBjb250ZW50SGVpZ2h0ID0gTWF0aC5mbG9vcihlbnRyeS5jb250ZW50UmVjdC5oZWlnaHQpO1xuXG4gICAgICAodGhpcy5fdGFiQ29udGVudEVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmhlaWdodCA9IGAke2NvbnRlbnRIZWlnaHR9cHhgO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2NvbmZpZ3VyZSh0YWJMYWJlbDogSW50ZXJmYWNlU2JiVGFiR3JvdXBUYWIpOiB2b2lkIHtcbiAgICB0YWJMYWJlbC50YWJHcm91cEFjdGlvbnMgPSB7XG4gICAgICBhY3RpdmF0ZTogKCk6IHZvaWQgPT4ge1xuICAgICAgICB0YWJMYWJlbC50b2dnbGVBdHRyaWJ1dGUoJ2FjdGl2ZScsIHRydWUpO1xuICAgICAgICB0YWJMYWJlbC5hY3RpdmUgPSB0cnVlO1xuICAgICAgICB0YWJMYWJlbC50YWJJbmRleCA9IDA7XG4gICAgICAgIHRhYkxhYmVsLnNldEF0dHJpYnV0ZSgnYXJpYS1zZWxlY3RlZCcsICd0cnVlJyk7XG4gICAgICAgIHRhYkxhYmVsLnRhYj8udG9nZ2xlQXR0cmlidXRlKCdhY3RpdmUnLCB0cnVlKTtcbiAgICAgIH0sXG4gICAgICBkZWFjdGl2YXRlOiAoKTogdm9pZCA9PiB7XG4gICAgICAgIHRhYkxhYmVsLnJlbW92ZUF0dHJpYnV0ZSgnYWN0aXZlJyk7XG4gICAgICAgIHRhYkxhYmVsLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB0YWJMYWJlbC50YWJJbmRleCA9IC0xO1xuICAgICAgICB0YWJMYWJlbC5zZXRBdHRyaWJ1dGUoJ2FyaWEtc2VsZWN0ZWQnLCAnZmFsc2UnKTtcbiAgICAgICAgdGFiTGFiZWwudGFiPy5yZW1vdmVBdHRyaWJ1dGUoJ2FjdGl2ZScpO1xuICAgICAgfSxcbiAgICAgIGRpc2FibGU6ICgpOiB2b2lkID0+IHtcbiAgICAgICAgaWYgKHRhYkxhYmVsLmRpc2FibGVkKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGFiTGFiZWwuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpKSB7XG4gICAgICAgICAgdGFiTGFiZWwudG9nZ2xlQXR0cmlidXRlKCdkaXNhYmxlZCcsIHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIHRhYkxhYmVsLmRpc2FibGVkID0gdHJ1ZTtcbiAgICAgICAgdGFiTGFiZWwudGFiSW5kZXggPSAtMTtcbiAgICAgICAgdGFiTGFiZWwuc2V0QXR0cmlidXRlKCdhcmlhLXNlbGVjdGVkJywgJ2ZhbHNlJyk7XG4gICAgICAgIHRhYkxhYmVsLnRhYj8ucmVtb3ZlQXR0cmlidXRlKCdhY3RpdmUnKTtcbiAgICAgICAgaWYgKHRhYkxhYmVsLmFjdGl2ZSkge1xuICAgICAgICAgIHRhYkxhYmVsLnJlbW92ZUF0dHJpYnV0ZSgnYWN0aXZlJyk7XG4gICAgICAgICAgdGFiTGFiZWwuYWN0aXZlID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5fZW5hYmxlZFRhYnNbMF0/LnRhYkdyb3VwQWN0aW9ucz8uc2VsZWN0KCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBlbmFibGU6ICgpOiB2b2lkID0+IHtcbiAgICAgICAgaWYgKHRhYkxhYmVsLmRpc2FibGVkKSB7XG4gICAgICAgICAgdGFiTGFiZWwucmVtb3ZlQXR0cmlidXRlKCdkaXNhYmxlZCcpO1xuICAgICAgICAgIHRhYkxhYmVsLmRpc2FibGVkID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBzZWxlY3Q6ICgpOiB2b2lkID0+IHtcbiAgICAgICAgaWYgKHRhYkxhYmVsICE9PSB0aGlzLl9zZWxlY3RlZFRhYiAmJiAhdGFiTGFiZWwuZGlzYWJsZWQpIHtcbiAgICAgICAgICBjb25zdCBwcmV2VGFiID0gdGhpcy5fc2VsZWN0ZWRUYWI7XG5cbiAgICAgICAgICBpZiAocHJldlRhYikge1xuICAgICAgICAgICAgcHJldlRhYi50YWJHcm91cEFjdGlvbnM/LmRlYWN0aXZhdGUoKTtcbiAgICAgICAgICAgIHRoaXMuX3RhYkNvbnRlbnRSZXNpemVPYnNlcnZlci51bm9ic2VydmUocHJldlRhYi50YWIhKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0YWJMYWJlbC50YWJHcm91cEFjdGlvbnM/LmFjdGl2YXRlKCk7XG4gICAgICAgICAgdGhpcy5fc2VsZWN0ZWRUYWIgPSB0YWJMYWJlbDtcblxuICAgICAgICAgIHRoaXMuX3RhYkNvbnRlbnRSZXNpemVPYnNlcnZlci5vYnNlcnZlKHRhYkxhYmVsLnRhYiEpO1xuICAgICAgICAgIGNvbnN0IHRhYnMgPSB0aGlzLl90YWJzO1xuICAgICAgICAgIHRoaXMuX3NlbGVjdGVkVGFiQ2hhbmdlZC5lbWl0KHtcbiAgICAgICAgICAgIGFjdGl2ZUluZGV4OiB0YWJzLmZpbmRJbmRleCgoZSkgPT4gZSA9PT0gdGFiTGFiZWwpLFxuICAgICAgICAgICAgYWN0aXZlVGFiTGFiZWw6IHRhYkxhYmVsLFxuICAgICAgICAgICAgYWN0aXZlVGFiOiB0YWJMYWJlbC50YWIgYXMgU2JiVGFiRWxlbWVudCxcbiAgICAgICAgICAgIHByZXZpb3VzSW5kZXg6IHRhYnMuZmluZEluZGV4KChlKSA9PiBlID09PSBwcmV2VGFiKSxcbiAgICAgICAgICAgIHByZXZpb3VzVGFiTGFiZWw6IHByZXZUYWIsXG4gICAgICAgICAgICBwcmV2aW91c1RhYjogcHJldlRhYj8udGFiIGFzIFNiYlRhYkVsZW1lbnQsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSBpZiAoaW1wb3J0Lm1ldGEuZW52LkRFViAmJiB0YWJMYWJlbC5kaXNhYmxlZCkge1xuICAgICAgICAgIGNvbnNvbGUud2FybignWW91IGNhbm5vdCBhY3RpdmF0ZSBhIGRpc2FibGVkIHRhYicpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgIH07XG4gICAgaWYgKHRhYkxhYmVsLm5leHRFbGVtZW50U2libGluZz8ubG9jYWxOYW1lID09PSAnc2JiLXRhYicpIHtcbiAgICAgIHRhYkxhYmVsLnRhYiA9IHRhYkxhYmVsLm5leHRFbGVtZW50U2libGluZyBhcyBTYmJUYWJFbGVtZW50O1xuICAgICAgdGFiTGFiZWwudGFiLmlkID0gdGhpcy5fYXNzaWduSWQoKTtcbiAgICAgIGlmICh0YWJMYWJlbC50YWIgaW5zdGFuY2VvZiBTYmJUYWJFbGVtZW50KSB7XG4gICAgICAgIHRhYkxhYmVsLnRhYi50YWJJbmRleCA9IDA7XG4gICAgICAgIHRhYkxhYmVsLnRhYi5jb25maWd1cmUoKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGltcG9ydC5tZXRhLmVudi5ERVYpIHtcbiAgICAgIHRhYkxhYmVsLmluc2VydEFkamFjZW50SFRNTCgnYWZ0ZXJlbmQnLCAnPHNiYi10YWI+Tm8gY29udGVudC48L3NiYi10YWI+Jyk7XG4gICAgICB0YWJMYWJlbC50YWIgPSB0YWJMYWJlbC5uZXh0RWxlbWVudFNpYmxpbmcgYXMgU2JiVGFiRWxlbWVudDtcbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgYE1pc3NpbmcgY29udGVudDogeW91IHNob3VsZCBwcm92aWRlIGEgcmVsYXRlZCBjb250ZW50IGZvciB0aGUgdGFiICR7dGFiTGFiZWwub3V0ZXJIVE1MfS5gLFxuICAgICAgKTtcbiAgICB9XG4gICAgdGFiTGFiZWwudGFiSW5kZXggPSAtMTtcbiAgICB0YWJMYWJlbC5kaXNhYmxlZCA9IHRhYkxhYmVsLmhhc0F0dHJpYnV0ZSgnZGlzYWJsZWQnKTtcbiAgICB0YWJMYWJlbC5hY3RpdmUgPSB0YWJMYWJlbC5oYXNBdHRyaWJ1dGUoJ2FjdGl2ZScpICYmICF0YWJMYWJlbC5kaXNhYmxlZDtcbiAgICB0YWJMYWJlbC5zZXRBdHRyaWJ1dGUoJ3JvbGUnLCAndGFiJyk7XG4gICAgdGFiTGFiZWwuc2V0QXR0cmlidXRlKCdhcmlhLXNlbGVjdGVkJywgJ2ZhbHNlJyk7XG4gICAgdGFiTGFiZWwuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7XG4gICAgICB0YWJMYWJlbC50YWJHcm91cEFjdGlvbnM/LnNlbGVjdCgpO1xuICAgIH0pO1xuICAgIGlmICh0YWJMYWJlbC50YWIpIHtcbiAgICAgIHRhYkxhYmVsLnNldEF0dHJpYnV0ZSgnYXJpYS1jb250cm9scycsIHRhYkxhYmVsLnRhYi5pZCk7XG4gICAgICB0YWJMYWJlbC50YWIuc2V0QXR0cmlidXRlKCdyb2xlJywgJ3RhYnBhbmVsJyk7XG4gICAgICB0YWJMYWJlbC50YWIudG9nZ2xlQXR0cmlidXRlKCdhY3RpdmUnLCB0YWJMYWJlbC5hY3RpdmUpO1xuICAgIH1cblxuICAgIHRoaXMuX3RhYkF0dHJpYnV0ZU9ic2VydmVyLm9ic2VydmUodGFiTGFiZWwsIHRhYk9ic2VydmVyQ29uZmlnKTtcbiAgICB0YWJMYWJlbC5zbG90ID0gJ3RhYi1iYXInO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlS2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBlbmFibGVkVGFiczogSW50ZXJmYWNlU2JiVGFiR3JvdXBUYWJbXSA9IHRoaXMuX2VuYWJsZWRUYWJzO1xuXG4gICAgaWYgKFxuICAgICAgIWVuYWJsZWRUYWJzIHx8XG4gICAgICAvLyBkb24ndCB0cmFwIG5lc3RlZCBoYW5kbGluZ1xuICAgICAgKChldnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KSAhPT0gdGhpcyAmJiAoZXZ0LnRhcmdldCBhcyBIVE1MRWxlbWVudCkucGFyZW50RWxlbWVudCAhPT0gdGhpcylcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoaXNBcnJvd0tleVByZXNzZWQoZXZ0KSkge1xuICAgICAgY29uc3QgY3VycmVudDogbnVtYmVyID0gZW5hYmxlZFRhYnMuZmluZEluZGV4KCh0OiBJbnRlcmZhY2VTYmJUYWJHcm91cFRhYikgPT4gdC5hY3RpdmUpO1xuICAgICAgY29uc3QgbmV4dEluZGV4OiBudW1iZXIgPSBnZXROZXh0RWxlbWVudEluZGV4KGV2dCwgY3VycmVudCwgZW5hYmxlZFRhYnMubGVuZ3RoKTtcbiAgICAgIGVuYWJsZWRUYWJzW25leHRJbmRleF0/LnRhYkdyb3VwQWN0aW9ucz8uc2VsZWN0KCk7XG4gICAgICBlbmFibGVkVGFic1tuZXh0SW5kZXhdPy5mb2N1cygpO1xuICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwidGFiLWdyb3VwXCJcbiAgICAgICAgcm9sZT1cInRhYmxpc3RcIlxuICAgICAgICAke3JlZigoZWw/OiBFbGVtZW50KSA9PiAodGhpcy5fdGFiR3JvdXBFbGVtZW50ID0gZWwgYXMgSFRNTEVsZW1lbnQpKX1cbiAgICAgID5cbiAgICAgICAgPHNsb3QgbmFtZT1cInRhYi1iYXJcIiBAc2xvdGNoYW5nZT0ke3RoaXMuX29uVGFic1Nsb3RDaGFuZ2V9Pjwvc2xvdD5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwidGFiLWNvbnRlbnRcIj5cbiAgICAgICAgPHNsb3QgQHNsb3RjaGFuZ2U9JHt0aHJvdHRsZSh0aGlzLl9vbkNvbnRlbnRTbG90Q2hhbmdlLCAxNTApfT48L3Nsb3Q+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdGFiLWdyb3VwJzogU2JiVGFiR3JvdXBFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOlsiX2EiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBeUNBLE1BQU0sb0JBQTBDO0FBQUEsRUFDOUMsaUJBQWlCLENBQUMsVUFBVSxVQUFVO0FBQ3hDO0FBRUEsSUFBSSxTQUFTO0FBVU4sSUFBTSxxQkFBTixjQUFpQyxrQkFBa0IsVUFBVSxFQUFFO0FBQUEsRUFBL0QsY0FBQTtBQUFBLFVBQUEsR0FBQSxTQUFBO0FBTUwsU0FBUSxRQUFtQztBQUluQyxTQUFBLFNBQVMsSUFBSSw0QkFBNEIsSUFBSTtBQUNyRCxTQUFRLHdCQUF3QixJQUFJO0FBQUEsTUFBeUIsQ0FBQyxrQkFDNUQsS0FBSyx1QkFBdUIsYUFBYTtBQUFBLElBQUE7QUFFM0MsU0FBUSwwQkFBMEIsSUFBSTtBQUFBLE1BQXVCLENBQUMsWUFDNUQsS0FBSyx5QkFBeUIsT0FBTztBQUFBLElBQUE7QUFFdkMsU0FBUSw0QkFBNEIsSUFBSTtBQUFBLE1BQXVCLENBQUMsWUFDOUQsS0FBSywyQkFBMkIsT0FBTztBQUFBLElBQUE7QUFZekMsU0FBUSxRQUF5QztBQU1nQixTQUFPLHVCQUF1QjtBQVMvRixTQUFRLHNCQUErRCxJQUFJO0FBQUEsTUFDekU7QUFBQSxNQUNBLG1CQUFtQixPQUFPO0FBQUEsSUFBQTtBQTJENUIsU0FBUSx1QkFBdUIsTUFBWTtBQUN6QyxXQUFLLHFCQUFxQixLQUFLLFdBQVksY0FBYyxpQkFBaUI7QUFDMUUsWUFBTSxhQUFhLEtBQUssU0FBUyxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxNQUFNLFNBQVMsR0FBRyxDQUFDO0FBRzVFLFVBQUksV0FBVyxRQUFRO0FB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
376
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWdyb3VwLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFicy90YWItZ3JvdXAvdGFiLWdyb3VwLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFByb3BlcnR5VmFsdWVzLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sLCBMaXRFbGVtZW50IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgcmVmIH0gZnJvbSAnbGl0L2RpcmVjdGl2ZXMvcmVmLmpzJztcblxuaW1wb3J0IHsgZ2V0TmV4dEVsZW1lbnRJbmRleCwgaXNBcnJvd0tleVByZXNzZWQgfSBmcm9tICcuLi8uLi9jb3JlL2ExMXkuanMnO1xuaW1wb3J0IHsgU2JiQ29ubmVjdGVkQWJvcnRDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIsIHRocm90dGxlIH0gZnJvbSAnLi4vLi4vY29yZS9ldmVudGluZy5qcyc7XG5pbXBvcnQgeyBTYmJIeWRyYXRpb25NaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IEFnbm9zdGljTXV0YXRpb25PYnNlcnZlciwgQWdub3N0aWNSZXNpemVPYnNlcnZlciB9IGZyb20gJy4uLy4uL2NvcmUvb2JzZXJ2ZXJzLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiVGFiTGFiZWxFbGVtZW50IH0gZnJvbSAnLi4vdGFiLWxhYmVsLmpzJztcbmltcG9ydCB7IFNiYlRhYkVsZW1lbnQgfSBmcm9tICcuLi90YWIuanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90YWItZ3JvdXAuc2Nzcz9saXQmaW5saW5lJztcblxuZXhwb3J0IHR5cGUgU2JiVGFiQ2hhbmdlZEV2ZW50RGV0YWlscyA9IHtcbiAgYWN0aXZlSW5kZXg6IG51bWJlcjtcbiAgYWN0aXZlVGFiTGFiZWw6IFNiYlRhYkxhYmVsRWxlbWVudDtcbiAgYWN0aXZlVGFiOiBTYmJUYWJFbGVtZW50O1xuICBwcmV2aW91c0luZGV4OiBudW1iZXI7XG4gIHByZXZpb3VzVGFiTGFiZWw6IFNiYlRhYkxhYmVsRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgcHJldmlvdXNUYWI6IFNiYlRhYkVsZW1lbnQgfCB1bmRlZmluZWQ7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIEludGVyZmFjZVNiYlRhYkdyb3VwQWN0aW9ucyB7XG4gIGFjdGl2YXRlKCk6IHZvaWQ7XG4gIGRlYWN0aXZhdGUoKTogdm9pZDtcbiAgZW5hYmxlKCk6IHZvaWQ7XG4gIGRpc2FibGUoKTogdm9pZDtcbiAgc2VsZWN0KCk6IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW50ZXJmYWNlU2JiVGFiR3JvdXBUYWIgZXh0ZW5kcyBTYmJUYWJMYWJlbEVsZW1lbnQge1xuICBhY3RpdmU/OiBib29sZWFuO1xuICBkaXNhYmxlZDogYm9vbGVhbjtcbiAgdGFiPzogU2JiVGFiRWxlbWVudDtcbiAgaW5kZXg/OiBudW1iZXI7XG4gIHRhYkdyb3VwQWN0aW9ucz86IEludGVyZmFjZVNiYlRhYkdyb3VwQWN0aW9ucztcbiAgc2l6ZTogJ3MnIHwgJ2wnIHwgJ3hsJztcbn1cblxuY29uc3QgdGFiT2JzZXJ2ZXJDb25maWc6IE11dGF0aW9uT2JzZXJ2ZXJJbml0ID0ge1xuICBhdHRyaWJ1dGVGaWx0ZXI6IFsnYWN0aXZlJywgJ2Rpc2FibGVkJ10sXG59O1xuXG5sZXQgbmV4dElkID0gMDtcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBvbmUgb3IgbW9yZSB0YWJzLCBlYWNoIG9uZSB3aXRoIGEgbGFiZWwgYW5kIGEgY29udGVudC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IHRvIHRoZSBgc2JiLXRhYi1ncm91cGAgdmlhXG4gKiBgc2JiLXRhYi1sYWJlbGAgYW5kIGBzYmItdGFiYCBpbnN0YW5jZXMuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PFNiYlRhYkNoYW5nZWRFdmVudERldGFpbHM+fSBkaWRDaGFuZ2UgLSBFbWl0cyBhbiBldmVudCBvbiBzZWxlY3RlZCB0YWIgY2hhbmdlLlxuICovXG5AY3VzdG9tRWxlbWVudCgnc2JiLXRhYi1ncm91cCcpXG5leHBvcnQgY2xhc3MgU2JiVGFiR3JvdXBFbGVtZW50IGV4dGVuZHMgU2JiSHlkcmF0aW9uTWl4aW4oTGl0RWxlbWVudCkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBldmVudHMgPSB7XG4gICAgZGlkQ2hhbmdlOiAnZGlkQ2hhbmdlJyxcbiAgfSBhcyBjb25zdDtcblxuICBwcml2YXRlIF90YWJzOiBJbnRlcmZhY2VTYmJUYWJHcm91cFRhYltdID0gW107XG4gIHByaXZhdGUgX3NlbGVjdGVkVGFiPzogSW50ZXJmYWNlU2JiVGFiR3JvdXBUYWI7XG4gIHByaXZhdGUgX3RhYkdyb3VwRWxlbWVudCE6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIF90YWJDb250ZW50RWxlbWVudCE6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIF9hYm9ydCA9IG5ldyBTYmJDb25uZWN0ZWRBYm9ydENvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX3RhYkF0dHJpYnV0ZU9ic2VydmVyID0gbmV3IEFnbm9zdGljTXV0YXRpb25PYnNlcnZlcigobXV0YXRpb25zTGlzdCkgPT5cbiAgICB0aGlzLl9vblRhYkF0dHJpYnV0ZXNDaGFuZ2UobXV0YXRpb25zTGlzdCksXG4gICk7XG4gIHByaXZhdGUgX3RhYkdyb3VwUmVzaXplT2JzZXJ2ZXIgPSBuZXcgQWdub3N0aWNSZXNpemVPYnNlcnZlcigoZW50cmllcykgPT5cbiAgICB0aGlzLl9vblRhYkdyb3VwRWxlbWVudFJlc2l6ZShlbnRyaWVzKSxcbiAgKTtcbiAgcHJpdmF0ZSBfdGFiQ29udGVudFJlc2l6ZU9ic2VydmVyID0gbmV3IEFnbm9zdGljUmVzaXplT2JzZXJ2ZXIoKGVudHJpZXMpID0+XG4gICAgdGhpcy5fb25UYWJDb250ZW50RWxlbWVudFJlc2l6ZShlbnRyaWVzKSxcbiAgKTtcblxuICAvKiogU2l6ZSB2YXJpYW50LCBlaXRoZXIgcywgbCBvciB4bC4gKi9cbiAgQHByb3BlcnR5KClcbiAgcHVibGljIHNldCBzaXplKHZhbHVlOiBJbnRlcmZhY2VTYmJUYWJHcm91cFRhYlsnc2l6ZSddKSB7XG4gICAgdGhpcy5fc2l6ZSA9IHZhbHVlO1xuICAgIHRoaXMuX3VwZGF0ZVNpemUoKTtcbiAgfVxuICBwdWJsaWMgZ2V0IHNpemUoKTogSW50ZXJmYWNlU2JiVGFiR3JvdXBUYWJbJ3NpemUnXSB7XG4gICAgcmV0dXJuIHRoaXMuX3NpemU7XG4gIH1cbiAgcHJpdmF0ZSBfc2l6ZTogSW50ZXJmYWNlU2JiVGFiR3JvdXBUYWJbJ3NpemUnXSA9ICdsJztcblxuICAvKipcbiAgICogU2V0cyB0aGUgaW5pdGlhbCB0YWIuIElmIGl0IG1hdGNoZXMgYSBkaXNhYmxlZCB0YWIgb3IgZXhjZWVkcyB0aGUgbGVuZ3RoIG9mXG4gICAqIHRoZSB0YWIgZ3JvdXAsIHRoZSBmaXJzdCBlbmFibGVkIHRhYiB3aWxsIGJlIHNlbGVjdGVkLlxuICAgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnaW5pdGlhbC1zZWxlY3RlZC1pbmRleCcsIHR5cGU6IE51bWJlciB9KSBwdWJsaWMgaW5pdGlhbFNlbGVjdGVkSW5kZXggPSAwO1xuXG4gIC8qKiBFbWl0cyBhbiBldmVudCBvbiBzZWxlY3RlZCB0YWIgY2hhbmdlLiAqL1xuICBwcml2YXRlIF9zZWxlY3RlZFRhYkNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxTYmJUYWJDaGFuZ2VkRXZlbnREZXRhaWxzPiA9IG5ldyBFdmVudEVtaXR0ZXIoXG4gICAgdGhpcyxcbiAgICBTYmJUYWJHcm91cEVsZW1lbnQuZXZlbnRzLmRpZENoYW5nZSxcbiAgKTtcblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICBjb25zdCBzaWduYWwgPSB0aGlzLl9hYm9ydC5zaWduYWw7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgKGUpID0+IHRoaXMuX2hhbmRsZUtleURvd24oZSksIHsgc2lnbmFsIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci5maXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgdGhpcy5fdGFicyA9IHRoaXMuX2dldFRhYnMoKTtcbiAgICB0aGlzLl90YWJzLmZvckVhY2goKHRhYikgPT4gdGhpcy5fY29uZmlndXJlKHRhYikpO1xuICAgIHRoaXMuX2luaXRTZWxlY3Rpb24oKTtcbiAgICB0aGlzLl90YWJHcm91cFJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcy5fdGFiR3JvdXBFbGVtZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEaXNhYmxlcyBhIHRhYiBieSBpbmRleC5cbiAgICogQHBhcmFtIHRhYkluZGV4IFRoZSBpbmRleCBvZiB0aGUgdGFiIHlvdSB3YW50IHRvIGRpc2FibGUuXG4gICAqL1xuICBwdWJsaWMgZGlzYWJsZVRhYih0YWJJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5fdGFic1t0YWJJbmRleF0/LnRhYkdyb3VwQWN0aW9ucz8uZGlzYWJsZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEVuYWJsZXMgYSB0YWIgYnkgaW5kZXguXG4gICAqIEBwYXJhbSB0YWJJbmRleCBUaGUgaW5kZXggb2YgdGhlIHRhYiB5b3Ugd2FudCB0byBlbmFibGUuXG4gICAqL1xuICBwdWJsaWMgZW5hYmxlVGFiKHRhYkluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLl90YWJzW3RhYkluZGV4XT8udGFiR3JvdXBBY3Rpb25zPy5lbmFibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBY3RpdmF0ZXMgYSB0YWIgYnkgaW5kZXguXG4gICAqIEBwYXJhbSB0YWJJbmRleCBUaGUgaW5kZXggb2YgdGhlIHRhYiB5b3Ugd2FudCB0byBhY3RpdmF0ZS5cbiAgICovXG4gIHB1YmxpYyBhY3RpdmF0ZVRhYih0YWJJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5fdGFic1t0YWJJbmRleF0/LnRhYkdyb3VwQWN0aW9ucz8uc2VsZWN0KCk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRUYWJzKCk6IEludGVyZmFjZVNiYlRhYkdyb3VwVGFiW10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuY2hpbGRyZW4gPz8gW10pLmZpbHRlcigoY2hpbGQpID0+XG4gICAgICAvXnNiYi10YWItbGFiZWwkL3UudGVzdChjaGlsZC5sb2NhbE5hbWUpLFxuICAgICkgYXMgSW50ZXJmYWNlU2JiVGFiR3JvdXBUYWJbXTtcbiAgfVxuXG4gIHByaXZhdGUgX2VuYWJsZWRUYWJzKCk6IEludGVyZmFjZVNiYlRhYkdyb3VwVGFiW10ge1xuICAgIHJldHVybiB0aGlzLl90YWJzLmZpbHRlcigodCkgPT4gIXQuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBkaXNjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuX3RhYkF0dHJpYnV0ZU9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcbiAgICB0aGlzLl90YWJDb250ZW50UmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgIHRoaXMuX3RhYkdyb3VwUmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlU2l6ZSgpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IHRhYiBvZiB0aGlzLl90YWJzKSB7XG4gICAgICB0YWIuc2V0QXR0cmlidXRlKCdkYXRhLXNpemUnLCB0aGlzLnNpemUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX29uQ29udGVudFNsb3RDaGFuZ2UgPSAoKTogdm9pZCA9PiB7XG4gICAgdGhpcy5fdGFiQ29udGVudEVsZW1lbnQgPSB0aGlzLnNoYWRvd1Jvb3QhLnF1ZXJ5U2VsZWN0b3IoJ2Rpdi50YWItY29udGVudCcpITtcbiAgICBjb25zdCBsb2FkZWRUYWJzID0gdGhpcy5fZ2V0VGFicygpLmZpbHRlcigodGFiKSA9PiAhdGhpcy5fdGFicy5pbmNsdWRlcyh0YWIpKTtcblxuICAgIC8vIGlmIGEgbmV3IHRhYi9jb250ZW50IGlzIGFkZGVkIHRvIHRoZSB0YWIgZ3JvdXBcbiAgICBpZiAobG9hZGVkVGFicy5sZW5ndGgpIHtcbiAgICAgIGxvYWRlZFRhYnMuZm9yRWFjaCgodGFiKSA9PiB0aGlzLl9jb25maWd1cmUodGFiKSk7XG4gICAgICB0aGlzLl90YWJzID0gdGhpcy5fdGFicy5jb25jYXQobG9hZGVkVGFicyk7XG4gICAgfVxuICB9O1xuXG4gIHByaXZhdGUgX29uVGFic1Nsb3RDaGFuZ2UgPSAoKTogdm9pZCA9PiB7XG4gICAgY29uc3QgdGFicyA9IHRoaXMuX2dldFRhYnMoKTtcblxuICAgIC8vIGlmIGEgdGFiIGlzIHJlbW92ZWQgZnJvbSB0aGUgdGFiIGdyb3VwXG4gICAgaWYgKHRhYnMubGVuZ3RoIDwgdGhpcy5fdGFicy5sZW5ndGgpIHtcbiAgICAgIGNvbnN0IHJlbW92ZWRUYWJzID0gdGhpcy5fdGFicy5maWx0ZXIoKHRhYikgPT4gIXRhYnMuaW5jbHVkZXModGFiKSk7XG5cbiAgICAgIHJlbW92ZWRUYWJzLmZvckVhY2goKHJlbW92ZWRUYWIpID0+IHtcbiAgICAgICAgcmVtb3ZlZFRhYi50YWI/LnJlbW92ZSgpO1xuICAgICAgfSk7XG4gICAgICB0aGlzLl90YWJzID0gdGFicztcbiAgICB9XG4gICAgdGhpcy5fdGFicy5mb3JFYWNoKCh0YWI6IEludGVyZmFjZVNiYlRhYkdyb3VwVGFiKSA9PiB0YWIuc2V0QXR0cmlidXRlKCdkYXRhLXNpemUnLCB0aGlzLnNpemUpKTtcbiAgfTtcblxuICBwcml2YXRlIF9hc3NpZ25JZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgc2JiLXRhYi1wYW5lbC0keysrbmV4dElkfWA7XG4gIH1cblxuICBwcml2YXRlIF9pbml0U2VsZWN0aW9uKCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIHRoaXMuaW5pdGlhbFNlbGVjdGVkSW5kZXggPj0gMCAmJlxuICAgICAgdGhpcy5pbml0aWFsU2VsZWN0ZWRJbmRleCA8IHRoaXMuX3RhYnMubGVuZ3RoICYmXG4gICAgICAhdGhpcy5fdGFic1t0aGlzLmluaXRpYWxTZWxlY3RlZEluZGV4XS5kaXNhYmxlZFxuICAgICkge1xuICAgICAgdGhpcy5fdGFic1t0aGlzLmluaXRpYWxTZWxlY3RlZEluZGV4XS50YWJHcm91cEFjdGlvbnM/LnNlbGVjdCgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9lbmFibGVkVGFicygpWzBdPy50YWJHcm91cEFjdGlvbnM/LnNlbGVjdCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX29uVGFiQXR0cmlidXRlc0NoYW5nZShtdXRhdGlvbnNMaXN0OiBNdXRhdGlvblJlY29yZFtdKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBtdXRhdGlvbiBvZiBtdXRhdGlvbnNMaXN0KSB7XG4gICAgICBpZiAobXV0YXRpb24udHlwZSAhPT0gJ2F0dHJpYnV0ZXMnKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHRhYiA9IG11dGF0aW9uLnRhcmdldCBhcyBJbnRlcmZhY2VTYmJUYWJHcm91cFRhYjtcblxuICAgICAgaWYgKG11dGF0aW9uLmF0dHJpYnV0ZU5hbWUgPT09ICdkaXNhYmxlZCcpIHtcbiAgICAgICAgaWYgKHRhYi5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJykgJiYgdGFiICE9PSB0aGlzLl9zZWxlY3RlZFRhYikge1xuICAgICAgICAgIHRhYi50YWJHcm91cEFjdGlvbnM/LmRpc2FibGUoKTtcbiAgICAgICAgfSBlbHNlIGlmICh0YWIuZGlzYWJsZWQpIHtcbiAgICAgICAgICB0YWIudGFiR3JvdXBBY3Rpb25zPy5lbmFibGUoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKG11dGF0aW9uLmF0dHJpYnV0ZU5hbWUgPT09ICdhY3RpdmUnKSB7XG4gICAgICAgIGlmICh0YWIuaGFzQXR0cmlidXRlKCdhY3RpdmUnKSAmJiAhdGFiLmRpc2FibGVkKSB7XG4gICAgICAgICAgdGFiLnRhYkdyb3VwQWN0aW9ucz8uc2VsZWN0KCk7XG4gICAgICAgIH0gZWxzZSBpZiAodGFiID09PSB0aGlzLl9zZWxlY3RlZFRhYikge1xuICAgICAgICAgIHRhYi50b2dnbGVBdHRyaWJ1dGUoJ2FjdGl2ZScsIHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfb25UYWJHcm91cEVsZW1lbnRSZXNpemUoZW50cmllczogUmVzaXplT2JzZXJ2ZXJFbnRyeVtdKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBlbnRyeSBvZiBlbnRyaWVzKSB7XG4gICAgICBjb25zdCB0YWJUaXRsZXMgPSAoXG4gICAgICAgIGVudHJ5LnRhcmdldC5maXJzdEVsZW1lbnRDaGlsZCBhcyBIVE1MU2xvdEVsZW1lbnRcbiAgICAgICkuYXNzaWduZWRFbGVtZW50cygpIGFzIFNiYlRhYkxhYmVsRWxlbWVudFtdO1xuXG4gICAgICBmb3IgKGNvbnN0IHRhYiBvZiB0YWJUaXRsZXMpIHtcbiAgICAgICAgdGFiLnRvZ2dsZUF0dHJpYnV0ZShcbiAgICAgICAgICAnZGF0YS1oYXMtZGl2aWRlcicsXG4gICAgICAgICAgdGFiID09PSB0YWJUaXRsZXNbMF0gfHwgdGFiLm9mZnNldExlZnQgPT09IHRhYlRpdGxlc1swXS5vZmZzZXRMZWZ0LFxuICAgICAgICApO1xuICAgICAgICB0aGlzLnN0eWxlLnNldFByb3BlcnR5KCctLXNiYi10YWItZ3JvdXAtd2lkdGgnLCBgJHt0aGlzLl90YWJHcm91cEVsZW1lbnQuY2xpZW50V2lkdGh9cHhgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vblRhYkNvbnRlbnRFbGVtZW50UmVzaXplKGVudHJpZXM6IFJlc2l6ZU9ic2VydmVyRW50cnlbXSk6IHZvaWQge1xuICAgIGZvciAoY29uc3QgZW50cnkgb2YgZW50cmllcykge1xuICAgICAgY29uc3QgY29udGVudEhlaWdodCA9IE1hdGguZmxvb3IoZW50cnkuY29udGVudFJlY3QuaGVpZ2h0KTtcblxuICAgICAgKHRoaXMuX3RhYkNvbnRlbnRFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5zdHlsZS5oZWlnaHQgPSBgJHtjb250ZW50SGVpZ2h0fXB4YDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9jb25maWd1cmUodGFiTGFiZWw6IEludGVyZmFjZVNiYlRhYkdyb3VwVGFiKTogdm9pZCB7XG4gICAgdGFiTGFiZWwudGFiR3JvdXBBY3Rpb25zID0ge1xuICAgICAgYWN0aXZhdGU6ICgpOiB2b2lkID0+IHtcbiAgICAgICAgdGFiTGFiZWwudG9nZ2xlQXR0cmlidXRlKCdhY3RpdmUnLCB0cnVlKTtcbiAgICAgICAgdGFiTGFiZWwuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgdGFiTGFiZWwudGFiSW5kZXggPSAwO1xuICAgICAgICB0YWJMYWJlbC5zZXRBdHRyaWJ1dGUoJ2FyaWEtc2VsZWN0ZWQnLCAndHJ1ZScpO1xuICAgICAgICB0YWJMYWJlbC50YWI/LnRvZ2dsZUF0dHJpYnV0ZSgnYWN0aXZlJywgdHJ1ZSk7XG4gICAgICB9LFxuICAgICAgZGVhY3RpdmF0ZTogKCk6IHZvaWQgPT4ge1xuICAgICAgICB0YWJMYWJlbC5yZW1vdmVBdHRyaWJ1dGUoJ2FjdGl2ZScpO1xuICAgICAgICB0YWJMYWJlbC5hY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgdGFiTGFiZWwudGFiSW5kZXggPSAtMTtcbiAgICAgICAgdGFiTGFiZWwuc2V0QXR0cmlidXRlKCdhcmlhLXNlbGVjdGVkJywgJ2ZhbHNlJyk7XG4gICAgICAgIHRhYkxhYmVsLnRhYj8ucmVtb3ZlQXR0cmlidXRlKCdhY3RpdmUnKTtcbiAgICAgIH0sXG4gICAgICBkaXNhYmxlOiAoKTogdm9pZCA9PiB7XG4gICAgICAgIGlmICh0YWJMYWJlbC5kaXNhYmxlZCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRhYkxhYmVsLmhhc0F0dHJpYnV0ZSgnZGlzYWJsZWQnKSkge1xuICAgICAgICAgIHRhYkxhYmVsLnRvZ2dsZUF0dHJpYnV0ZSgnZGlzYWJsZWQnLCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgICB0YWJMYWJlbC5kaXNhYmxlZCA9IHRydWU7XG4gICAgICAgIHRhYkxhYmVsLnRhYkluZGV4ID0gLTE7XG4gICAgICAgIHRhYkxhYmVsLnNldEF0dHJpYnV0ZSgnYXJpYS1zZWxlY3RlZCcsICdmYWxzZScpO1xuICAgICAgICB0YWJMYWJlbC50YWI/LnJlbW92ZUF0dHJpYnV0ZSgnYWN0aXZlJyk7XG4gICAgICAgIGlmICh0YWJMYWJlbC5hY3RpdmUpIHtcbiAgICAgICAgICB0YWJMYWJlbC5yZW1vdmVBdHRyaWJ1dGUoJ2FjdGl2ZScpO1xuICAgICAgICAgIHRhYkxhYmVsLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMuX2VuYWJsZWRUYWJzKClbMF0/LnRhYkdyb3VwQWN0aW9ucz8uc2VsZWN0KCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBlbmFibGU6ICgpOiB2b2lkID0+IHtcbiAgICAgICAgaWYgKHRhYkxhYmVsLmRpc2FibGVkKSB7XG4gICAgICAgICAgdGFiTGFiZWwucmVtb3ZlQXR0cmlidXRlKCdkaXNhYmxlZCcpO1xuICAgICAgICAgIHRhYkxhYmVsLmRpc2FibGVkID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBzZWxlY3Q6ICgpOiB2b2lkID0+IHtcbiAgICAgICAgaWYgKHRhYkxhYmVsICE9PSB0aGlzLl9zZWxlY3RlZFRhYiAmJiAhdGFiTGFiZWwuZGlzYWJsZWQpIHtcbiAgICAgICAgICBjb25zdCBwcmV2VGFiID0gdGhpcy5fc2VsZWN0ZWRUYWI7XG5cbiAgICAgICAgICBpZiAocHJldlRhYikge1xuICAgICAgICAgICAgcHJldlRhYi50YWJHcm91cEFjdGlvbnM/LmRlYWN0aXZhdGUoKTtcbiAgICAgICAgICAgIHRoaXMuX3RhYkNvbnRlbnRSZXNpemVPYnNlcnZlci51bm9ic2VydmUocHJldlRhYi50YWIhKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0YWJMYWJlbC50YWJHcm91cEFjdGlvbnM/LmFjdGl2YXRlKCk7XG4gICAgICAgICAgdGhpcy5fc2VsZWN0ZWRUYWIgPSB0YWJMYWJlbDtcblxuICAgICAgICAgIHRoaXMuX3RhYkNvbnRlbnRSZXNpemVPYnNlcnZlci5vYnNlcnZlKHRhYkxhYmVsLnRhYiEpO1xuICAgICAgICAgIGNvbnN0IHRhYnMgPSB0aGlzLl90YWJzO1xuICAgICAgICAgIHRoaXMuX3NlbGVjdGVkVGFiQ2hhbmdlZC5lbWl0KHtcbiAgICAgICAgICAgIGFjdGl2ZUluZGV4OiB0YWJzLmZpbmRJbmRleCgoZSkgPT4gZSA9PT0gdGFiTGFiZWwpLFxuICAgICAgICAgICAgYWN0aXZlVGFiTGFiZWw6IHRhYkxhYmVsLFxuICAgICAgICAgICAgYWN0aXZlVGFiOiB0YWJMYWJlbC50YWIgYXMgU2JiVGFiRWxlbWVudCxcbiAgICAgICAgICAgIHByZXZpb3VzSW5kZXg6IHRhYnMuZmluZEluZGV4KChlKSA9PiBlID09PSBwcmV2VGFiKSxcbiAgICAgICAgICAgIHByZXZpb3VzVGFiTGFiZWw6IHByZXZUYWIsXG4gICAgICAgICAgICBwcmV2aW91c1RhYjogcHJldlRhYj8udGFiIGFzIFNiYlRhYkVsZW1lbnQsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSBpZiAoaW1wb3J0Lm1ldGEuZW52LkRFViAmJiB0YWJMYWJlbC5kaXNhYmxlZCkge1xuICAgICAgICAgIGNvbnNvbGUud2FybignWW91IGNhbm5vdCBhY3RpdmF0ZSBhIGRpc2FibGVkIHRhYicpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgIH07XG4gICAgaWYgKHRhYkxhYmVsLm5leHRFbGVtZW50U2libGluZz8ubG9jYWxOYW1lID09PSAnc2JiLXRhYicpIHtcbiAgICAgIHRhYkxhYmVsLnRhYiA9IHRhYkxhYmVsLm5leHRFbGVtZW50U2libGluZyBhcyBTYmJUYWJFbGVtZW50O1xuICAgICAgdGFiTGFiZWwudGFiLmlkID0gdGhpcy5fYXNzaWduSWQoKTtcbiAgICAgIGlmICh0YWJMYWJlbC50YWIgaW5zdGFuY2VvZiBTYmJUYWJFbGVtZW50KSB7XG4gICAgICAgIHRhYkxhYmVsLnRhYi50YWJJbmRleCA9IDA7XG4gICAgICAgIHRhYkxhYmVsLnRhYi5jb25maWd1cmUoKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGltcG9ydC5tZXRhLmVudi5ERVYpIHtcbiAgICAgIHRhYkxhYmVsLmluc2VydEFkamFjZW50SFRNTCgnYWZ0ZXJlbmQnLCAnPHNiYi10YWI+Tm8gY29udGVudC48L3NiYi10YWI+Jyk7XG4gICAgICB0YWJMYWJlbC50YWIgPSB0YWJMYWJlbC5uZXh0RWxlbWVudFNpYmxpbmcgYXMgU2JiVGFiRWxlbWVudDtcbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgYE1pc3NpbmcgY29udGVudDogeW91IHNob3VsZCBwcm92aWRlIGEgcmVsYXRlZCBjb250ZW50IGZvciB0aGUgdGFiICR7dGFiTGFiZWwub3V0ZXJIVE1MfS5gLFxuICAgICAgKTtcbiAgICB9XG4gICAgdGFiTGFiZWwudGFiSW5kZXggPSAtMTtcbiAgICB0YWJMYWJlbC5kaXNhYmxlZCA9IHRhYkxhYmVsLmhhc0F0dHJpYnV0ZSgnZGlzYWJsZWQnKTtcbiAgICB0YWJMYWJlbC5hY3RpdmUgPSB0YWJMYWJlbC5oYXNBdHRyaWJ1dGUoJ2FjdGl2ZScpICYmICF0YWJMYWJlbC5kaXNhYmxlZDtcbiAgICB0YWJMYWJlbC5zZXRBdHRyaWJ1dGUoJ3JvbGUnLCAndGFiJyk7XG4gICAgdGFiTGFiZWwuc2V0QXR0cmlidXRlKCdhcmlhLXNlbGVjdGVkJywgJ2ZhbHNlJyk7XG4gICAgdGFiTGFiZWwuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7XG4gICAgICB0YWJMYWJlbC50YWJHcm91cEFjdGlvbnM/LnNlbGVjdCgpO1xuICAgIH0pO1xuICAgIGlmICh0YWJMYWJlbC50YWIpIHtcbiAgICAgIHRhYkxhYmVsLnNldEF0dHJpYnV0ZSgnYXJpYS1jb250cm9scycsIHRhYkxhYmVsLnRhYi5pZCk7XG4gICAgICB0YWJMYWJlbC50YWIuc2V0QXR0cmlidXRlKCdyb2xlJywgJ3RhYnBhbmVsJyk7XG4gICAgICB0YWJMYWJlbC50YWIudG9nZ2xlQXR0cmlidXRlKCdhY3RpdmUnLCB0YWJMYWJlbC5hY3RpdmUpO1xuICAgIH1cblxuICAgIHRoaXMuX3RhYkF0dHJpYnV0ZU9ic2VydmVyLm9ic2VydmUodGFiTGFiZWwsIHRhYk9ic2VydmVyQ29uZmlnKTtcbiAgICB0YWJMYWJlbC5zbG90ID0gJ3RhYi1iYXInO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlS2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBlbmFibGVkVGFiczogSW50ZXJmYWNlU2JiVGFiR3JvdXBUYWJbXSA9IHRoaXMuX2VuYWJsZWRUYWJzKCk7XG5cbiAgICBpZiAoXG4gICAgICAhZW5hYmxlZFRhYnMgfHxcbiAgICAgIC8vIGRvbid0IHRyYXAgbmVzdGVkIGhhbmRsaW5nXG4gICAgICAoKGV2dC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpICE9PSB0aGlzICYmIChldnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5wYXJlbnRFbGVtZW50ICE9PSB0aGlzKVxuICAgICkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChpc0Fycm93S2V5UHJlc3NlZChldnQpKSB7XG4gICAgICBjb25zdCBjdXJyZW50OiBudW1iZXIgPSBlbmFibGVkVGFicy5maW5kSW5kZXgoKHQ6IEludGVyZmFjZVNiYlRhYkdyb3VwVGFiKSA9PiB0LmFjdGl2ZSk7XG4gICAgICBjb25zdCBuZXh0SW5kZXg6IG51bWJlciA9IGdldE5leHRFbGVtZW50SW5kZXgoZXZ0LCBjdXJyZW50LCBlbmFibGVkVGFicy5sZW5ndGgpO1xuICAgICAgZW5hYmxlZFRhYnNbbmV4dEluZGV4XT8udGFiR3JvdXBBY3Rpb25zPy5zZWxlY3QoKTtcbiAgICAgIGVuYWJsZWRUYWJzW25leHRJbmRleF0/LmZvY3VzKCk7XG4gICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJ0YWItZ3JvdXBcIlxuICAgICAgICByb2xlPVwidGFibGlzdFwiXG4gICAgICAgICR7cmVmKChlbD86IEVsZW1lbnQpID0+ICh0aGlzLl90YWJHcm91cEVsZW1lbnQgPSBlbCBhcyBIVE1MRWxlbWVudCkpfVxuICAgICAgPlxuICAgICAgICA8c2xvdCBuYW1lPVwidGFiLWJhclwiIEBzbG90Y2hhbmdlPSR7dGhpcy5fb25UYWJzU2xvdENoYW5nZX0+PC9zbG90PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJ0YWItY29udGVudFwiPlxuICAgICAgICA8c2xvdCBAc2xvdGNoYW5nZT0ke3Rocm90dGxlKHRoaXMuX29uQ29udGVudFNsb3RDaGFuZ2UsIDE1MCl9Pjwvc2xvdD5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi10YWItZ3JvdXAnOiBTYmJUYWJHcm91cEVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJfYSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXlDQSxNQUFNLG9CQUEwQztBQUFBLEVBQzlDLGlCQUFpQixDQUFDLFVBQVUsVUFBVTtBQUN4QztBQUVBLElBQUksU0FBUztBQVVOLElBQU0scUJBQU4sY0FBaUMsa0JBQWtCLFVBQVUsRUFBRTtBQUFBLEVBQS9ELGNBQUE7QUFBQSxVQUFBLEdBQUEsU0FBQTtBQU1MLFNBQVEsUUFBbUM7QUFJbkMsU0FBQSxTQUFTLElBQUksNEJBQTRCLElBQUk7QUFDckQsU0FBUSx3QkFBd0IsSUFBSTtBQUFBLE1BQXlCLENBQUMsa0JBQzVELEtBQUssdUJBQXVCLGFBQWE7QUFBQSxJQUFBO0FBRTNDLFNBQVEsMEJBQTBCLElBQUk7QUFBQSxNQUF1QixDQUFDLFlBQzVELEtBQUsseUJBQXlCLE9BQU87QUFBQSxJQUFBO0FBRXZDLFNBQVEsNEJBQTRCLElBQUk7QUFBQSxNQUF1QixDQUFDLFlBQzlELEtBQUssMkJBQTJCLE9BQU87QUFBQSxJQUFBO0FBWXpDLFNBQVEsUUFBeUM7QUFNZ0IsU0FBTyx1QkFBdUI7QUFHL0YsU0FBUSxzQkFBK0QsSUFBSTtBQUFBLE1BQ3pFO0FBQUEsTUFDQSxtQkFBbUIsT0FBTztBQUFBLElBQUE7QUFpRTVCLFNBQVEsdUJBQXVCLE1BQVk7QUFDekMsV0FBSyxxQkFBcUIsS0FBSyxXQUFZLGNBQWMsaUJBQWlCO0FBQzFFLFlBQU0sYUFBYSxLQUFLLFNBQVMsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUssTUFBTSxTQUFTLEdBQUcsQ0FBQztBQUc1RSxVQUFJLFdBQVcsUUFBUTtBQUNyQixtQkFBVyxR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
@@ -4,20 +4,7 @@ import { html, unsafeStatic } from "lit/static-html.js";
4
4
  import { slotState } from "../core/decorators.js";
5
5
  import { SbbDisabledMixin } from "../core/mixins.js";
6
6
  import { SbbIconNameMixin } from "../icon.js";
7
- const style = css`/**
8
- * Better font rendering (on OS X)
9
- * http://maximilianhoffmann.com/posts/better-font-rendering-on-osx
10
- *
11
- * Usage:
12
- *
13
- * .var_dark_on_light {
14
- * @include font-smoothing;
15
- * }
16
- * .var_light_on_dark {
17
- * @include font-smoothing-reset;
18
- * }
19
- */
20
- /** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
7
+ const style = css`/** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
21
8
  /*
22
9
  * SBB table mixin
23
10
  * Notes:
@@ -175,8 +162,6 @@ const style = css`/**
175
162
  .sbb-tab-label__text {
176
163
  color: var(--sbb-tab-label-color);
177
164
  transition: color var(--sbb-tab-label-animation-duration) var(--sbb-tab-label-animation-easing);
178
- -webkit-font-smoothing: antialiased;
179
- -moz-osx-font-smoothing: grayscale;
180
165
  overflow: hidden;
181
166
  white-space: nowrap;
182
167
  text-overflow: ellipsis;
@@ -217,8 +202,6 @@ const style = css`/**
217
202
  line-height: var(--sbb-typo-line-height-body-text);
218
203
  letter-spacing: var(--sbb-typo-letter-spacing-body-text);
219
204
  font-size: var(--sbb-text-font-size);
220
- -webkit-font-smoothing: antialiased;
221
- -moz-osx-font-smoothing: grayscale;
222
205
  }
223
206
  :host(:not([data-slot-names~=amount], [amount])) .sbb-tab-label__amount {
224
207
  display: none;
@@ -290,4 +273,4 @@ SbbTabLabelElement = __decorateClass([
290
273
  export {
291
274
  SbbTabLabelElement
292
275
  };
293
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWxhYmVsLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFicy90YWItbGFiZWwvdGFiLWxhYmVsLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBodG1sLCB1bnNhZmVTdGF0aWMgfSBmcm9tICdsaXQvc3RhdGljLWh0bWwuanMnO1xuXG5pbXBvcnQgeyBzbG90U3RhdGUgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgU2JiRGlzYWJsZWRNaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IFNiYkljb25OYW1lTWl4aW4gfSBmcm9tICcuLi8uLi9pY29uLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiVGl0bGVMZXZlbCB9IGZyb20gJy4uLy4uL3RpdGxlLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vdGFiLWxhYmVsLnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKlxuICogQ29tYmluZWQgd2l0aCBhIGBzYmItdGFiLWdyb3VwYCwgaXQgZGlzcGxheXMgYSB0YWIncyB0aXRsZS5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IHRvIHRoZSB0YWIgdGl0bGUuXG4gKiBAc2xvdCBpY29uIC0gVXNlIHRoaXMgc2xvdCB0byBkaXNwbGF5IGFuIGljb24gdG8gdGhlIGxlZnQgb2YgdGhlIHRpdGxlLCBieSBwcm92aWRpbmcgdGhlIGBzYmItaWNvbmAgY29tcG9uZW50LlxuICogQHNsb3QgYW1vdW50IC0gUHJvdmlkZSBhIG51bWJlciB0byBzaG93IGFuIGFtb3VudCB0byB0aGUgcmlnaHQgb2YgdGhlIHRpdGxlLlxuICovXG5AY3VzdG9tRWxlbWVudCgnc2JiLXRhYi1sYWJlbCcpXG5Ac2xvdFN0YXRlKClcbmV4cG9ydCBjbGFzcyBTYmJUYWJMYWJlbEVsZW1lbnQgZXh0ZW5kcyBTYmJEaXNhYmxlZE1peGluKFNiYkljb25OYW1lTWl4aW4oTGl0RWxlbWVudCkpIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgLyoqXG4gICAqIFRoZSBsZXZlbCB3aWxsIGNvcnJlc3BvbmQgdG8gdGhlIGhlYWRpbmcgdGFnIGdlbmVyYXRlZCBpbiB0aGUgdGl0bGUuXG4gICAqIFVzZSB0aGlzIHByb3BlcnR5IHRvIGdlbmVyYXRlIHRoZSBhcHByb3ByaWF0ZSBoZWFkZXIgdGFnLCB0YWtpbmcgU0VPIGludG8gY29uc2lkZXJhdGlvbi5cbiAgICovXG4gIEBwcm9wZXJ0eSgpIHB1YmxpYyBsZXZlbDogU2JiVGl0bGVMZXZlbCA9ICcxJztcblxuICAvKiogQWN0aXZlIHRhYiBzdGF0ZSAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBhY3RpdmU/OiBib29sZWFuO1xuXG4gIC8qKiBBbW91bnQgZGlzcGxheWVkIGluc2lkZSB0aGUgdGFiLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhbW91bnQ/OiBzdHJpbmc7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgY29uc3QgVEFHTkFNRSA9IGBoJHtOdW1iZXIodGhpcy5sZXZlbCkgPCA3ID8gdGhpcy5sZXZlbCA6ICcxJ31gO1xuXG4gICAgLyogZXNsaW50LWRpc2FibGUgbGl0L2JpbmRpbmctcG9zaXRpb25zICovXG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXRhYi1sYWJlbF9fd3JhcHBlclwiPlxuICAgICAgICA8JHt1bnNhZmVTdGF0aWMoVEFHTkFNRSl9IGNsYXNzPVwic2JiLXRhYi1sYWJlbFwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRhYi1sYWJlbF9faWNvblwiPlxuICAgICAgICAgICAgJHt0aGlzLnJlbmRlckljb25TbG90KCl9XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRhYi1sYWJlbF9fdGV4dFwiPlxuICAgICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi10YWItbGFiZWxfX2Ftb3VudFwiPlxuICAgICAgICAgICAgPHNsb3QgbmFtZT1cImFtb3VudFwiPiR7dGhpcy5hbW91bnR9PC9zbG90PlxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC8ke3Vuc2FmZVN0YXRpYyhUQUdOQU1FKX0+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdGFiLWxhYmVsJzogU2JiVGFiTGFiZWxFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFxQk8sSUFBTSxxQkFBTixjQUFpQyxpQkFBaUIsaUJBQWlCLFVBQVUsQ0FBQyxFQUFFO0FBQUEsRUFBaEYsY0FBQTtBQUFBLFVBQUEsR0FBQSxTQUFBO0FBT08sU0FBTyxRQUF1QjtBQUFBLEVBQUE7QUFBQSxFQVF2QixTQUF5QjtBQUNwQyxVQUFBLFVBQVUsSUFBSSxPQUFPLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxRQUFRLEdBQUc7QUFHdEQsV0FBQTtBQUFBO0FBQUEsV0FFQSxhQUFhLE9BQU8sQ0FBQztBQUFBO0FBQUEsY0FFbEIsS0FBSyxnQkFBZ0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsa0NBTUQsS0FBSyxNQUFNO0FBQUE7QUFBQSxZQUVqQyxhQUFhLE9BQU8sQ0FBQztBQUFBO0FBQUE7QUFBQSxFQUcvQjtBQUNGO0FBbkNhLG1CQUNZLFNBQXlCO0FBTTdCLGdCQUFBO0FBQUEsRUFBbEIsU0FBUztBQUFBLEdBUEMsbUJBT1EsV0FBQSxTQUFBLENBQUE7QUFHZ0MsZ0JBQUE7QUFBQSxFQUFsRCxTQUFTLEVBQUUsU0FBUyxNQUFNLE1BQU0sU0FBUztBQUFBLEdBVi9CLG1CQVV3QyxXQUFBLFVBQUEsQ0FBQTtBQUdmLGdCQUFBO0FBQUEsRUFBbkMsU0FBUyxFQUFFLFNBQVMsTUFBTTtBQUFBLEdBYmhCLG1CQWF5QixXQUFBLFVBQUEsQ0FBQTtBQWJ6QixxQkFBTixnQkFBQTtBQUFBLEVBRk4sY0FBYyxlQUFlO0FBQUEsRUFDN0IsVUFBVTtBQUFBLEdBQ0Usa0JBQUE7In0=
276
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWxhYmVsLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFicy90YWItbGFiZWwvdGFiLWxhYmVsLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBodG1sLCB1bnNhZmVTdGF0aWMgfSBmcm9tICdsaXQvc3RhdGljLWh0bWwuanMnO1xuXG5pbXBvcnQgeyBzbG90U3RhdGUgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgU2JiRGlzYWJsZWRNaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IFNiYkljb25OYW1lTWl4aW4gfSBmcm9tICcuLi8uLi9pY29uLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiVGl0bGVMZXZlbCB9IGZyb20gJy4uLy4uL3RpdGxlLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vdGFiLWxhYmVsLnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKlxuICogQ29tYmluZWQgd2l0aCBhIGBzYmItdGFiLWdyb3VwYCwgaXQgZGlzcGxheXMgYSB0YWIncyB0aXRsZS5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IHRvIHRoZSB0YWIgdGl0bGUuXG4gKiBAc2xvdCBpY29uIC0gVXNlIHRoaXMgc2xvdCB0byBkaXNwbGF5IGFuIGljb24gdG8gdGhlIGxlZnQgb2YgdGhlIHRpdGxlLCBieSBwcm92aWRpbmcgdGhlIGBzYmItaWNvbmAgY29tcG9uZW50LlxuICogQHNsb3QgYW1vdW50IC0gUHJvdmlkZSBhIG51bWJlciB0byBzaG93IGFuIGFtb3VudCB0byB0aGUgcmlnaHQgb2YgdGhlIHRpdGxlLlxuICovXG5AY3VzdG9tRWxlbWVudCgnc2JiLXRhYi1sYWJlbCcpXG5Ac2xvdFN0YXRlKClcbmV4cG9ydCBjbGFzcyBTYmJUYWJMYWJlbEVsZW1lbnQgZXh0ZW5kcyBTYmJEaXNhYmxlZE1peGluKFNiYkljb25OYW1lTWl4aW4oTGl0RWxlbWVudCkpIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgLyoqXG4gICAqIFRoZSBsZXZlbCB3aWxsIGNvcnJlc3BvbmQgdG8gdGhlIGhlYWRpbmcgdGFnIGdlbmVyYXRlZCBpbiB0aGUgdGl0bGUuXG4gICAqIFVzZSB0aGlzIHByb3BlcnR5IHRvIGdlbmVyYXRlIHRoZSBhcHByb3ByaWF0ZSBoZWFkZXIgdGFnLCB0YWtpbmcgU0VPIGludG8gY29uc2lkZXJhdGlvbi5cbiAgICovXG4gIEBwcm9wZXJ0eSgpIHB1YmxpYyBsZXZlbDogU2JiVGl0bGVMZXZlbCA9ICcxJztcblxuICAvKiogQWN0aXZlIHRhYiBzdGF0ZSAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBhY3RpdmU/OiBib29sZWFuO1xuXG4gIC8qKiBBbW91bnQgZGlzcGxheWVkIGluc2lkZSB0aGUgdGFiLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhbW91bnQ/OiBzdHJpbmc7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgY29uc3QgVEFHTkFNRSA9IGBoJHtOdW1iZXIodGhpcy5sZXZlbCkgPCA3ID8gdGhpcy5sZXZlbCA6ICcxJ31gO1xuXG4gICAgLyogZXNsaW50LWRpc2FibGUgbGl0L2JpbmRpbmctcG9zaXRpb25zICovXG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXRhYi1sYWJlbF9fd3JhcHBlclwiPlxuICAgICAgICA8JHt1bnNhZmVTdGF0aWMoVEFHTkFNRSl9IGNsYXNzPVwic2JiLXRhYi1sYWJlbFwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRhYi1sYWJlbF9faWNvblwiPlxuICAgICAgICAgICAgJHt0aGlzLnJlbmRlckljb25TbG90KCl9XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRhYi1sYWJlbF9fdGV4dFwiPlxuICAgICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi10YWItbGFiZWxfX2Ftb3VudFwiPlxuICAgICAgICAgICAgPHNsb3QgbmFtZT1cImFtb3VudFwiPiR7dGhpcy5hbW91bnR9PC9zbG90PlxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC8ke3Vuc2FmZVN0YXRpYyhUQUdOQU1FKX0+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdGFiLWxhYmVsJzogU2JiVGFiTGFiZWxFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBcUJPLElBQU0scUJBQU4sY0FBaUMsaUJBQWlCLGlCQUFpQixVQUFVLENBQUMsRUFBRTtBQUFBLEVBQWhGLGNBQUE7QUFBQSxVQUFBLEdBQUEsU0FBQTtBQU9PLFNBQU8sUUFBdUI7QUFBQSxFQUFBO0FBQUEsRUFRdkIsU0FBeUI7QUFDcEMsVUFBQSxVQUFVLElBQUksT0FBTyxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssUUFBUSxHQUFHO0FBR3RELFdBQUE7QUFBQTtBQUFBLFdBRUEsYUFBYSxPQUFPLENBQUM7QUFBQTtBQUFBLGNBRWxCLEtBQUssZ0JBQWdCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLGtDQU1ELEtBQUssTUFBTTtBQUFBO0FBQUEsWUFFakMsYUFBYSxPQUFPLENBQUM7QUFBQTtBQUFBO0FBQUEsRUFHL0I7QUFDRjtBQW5DYSxtQkFDWSxTQUF5QjtBQU03QixnQkFBQTtBQUFBLEVBQWxCLFNBQVM7QUFBQSxHQVBDLG1CQU9RLFdBQUEsU0FBQSxDQUFBO0FBR2dDLGdCQUFBO0FBQUEsRUFBbEQsU0FBUyxFQUFFLFNBQVMsTUFBTSxNQUFNLFNBQVM7QUFBQSxHQVYvQixtQkFVd0MsV0FBQSxVQUFBLENBQUE7QUFHZixnQkFBQTtBQUFBLEVBQW5DLFNBQVMsRUFBRSxTQUFTLE1BQU07QUFBQSxHQWJoQixtQkFheUIsV0FBQSxVQUFBLENBQUE7QUFiekIscUJBQU4sZ0JBQUE7QUFBQSxFQUZOLGNBQWMsZUFBZTtBQUFBLEVBQzdCLFVBQVU7QUFBQSxHQUNFLGtCQUFBOyJ9
@@ -1,19 +1,6 @@
1
1
  import { css, LitElement, html } from "lit";
2
2
  import { customElement } from "lit/decorators.js";
3
3
  const style = css`@charset "UTF-8";
4
- /**
5
- * Better font rendering (on OS X)
6
- * http://maximilianhoffmann.com/posts/better-font-rendering-on-osx
7
- *
8
- * Usage:
9
- *
10
- * .var_dark_on_light {
11
- * @include font-smoothing;
12
- * }
13
- * .var_light_on_dark {
14
- * @include font-smoothing-reset;
15
- * }
16
- */
17
4
  /** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
18
5
  /*
19
6
  * SBB table mixin
@@ -82,4 +69,4 @@ SbbTabElement = __decorateClass([
82
69
  export {
83
70
  SbbTabElement
84
71
  };
85
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFicy90YWIvdGFiLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJUYWJMYWJlbEVsZW1lbnQgfSBmcm9tICcuLi90YWItbGFiZWwuanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90YWIuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBDb21iaW5lZCB3aXRoIGEgYHNiYi10YWItZ3JvdXBgLCBpdCBkaXNwbGF5cyBhIHRhYidzIGNvbnRlbnQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBwcm92aWRlIGNvbnRlbnQuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItdGFiJylcbmV4cG9ydCBjbGFzcyBTYmJUYWJFbGVtZW50IGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKiBUaGUgYHNiYi10YWItbGFiZWxgIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFiLiAqL1xuICBwdWJsaWMgZ2V0IGxhYmVsKCk6IFNiYlRhYkxhYmVsRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9sYWJlbDtcbiAgfVxuICBwcml2YXRlIF9sYWJlbDogU2JiVGFiTGFiZWxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBfZ2V0VGFiTGFiZWwoKTogU2JiVGFiTGFiZWxFbGVtZW50IHwgbnVsbCB7XG4gICAgbGV0IHByZXZpb3VzU2libGluZyA9IHRoaXMucHJldmlvdXNFbGVtZW50U2libGluZztcbiAgICB3aGlsZSAocHJldmlvdXNTaWJsaW5nICYmIHByZXZpb3VzU2libGluZy5sb2NhbE5hbWUgIT09ICdzYmItdGFiLWxhYmVsJykge1xuICAgICAgcHJldmlvdXNTaWJsaW5nID0gcHJldmlvdXNTaWJsaW5nLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7XG4gICAgfVxuICAgIHJldHVybiBwcmV2aW91c1NpYmxpbmcgYXMgU2JiVGFiTGFiZWxFbGVtZW50O1xuICB9XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBwdWJsaWMgY29uZmlndXJlKCk6IHZvaWQge1xuICAgIHRoaXMuX2xhYmVsID0gdGhpcy5fZ2V0VGFiTGFiZWwoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi10YWJcIj5cbiAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRhYic6IFNiYlRhYkVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBY2EsSUFBQSxnQkFBTixjQUE0QixXQUFXO0FBQUEsRUFBdkMsY0FBQTtBQUFBLFVBQUEsR0FBQSxTQUFBO0FBT0wsU0FBUSxTQUFvQztBQUFBLEVBQUE7QUFBQTtBQUFBLEVBSDVDLElBQVcsUUFBbUM7QUFDNUMsV0FBTyxLQUFLO0FBQUEsRUFDZDtBQUFBLEVBR1EsZUFBMEM7QUFDaEQsUUFBSSxrQkFBa0IsS0FBSztBQUNwQixXQUFBLG1CQUFtQixnQkFBZ0IsY0FBYyxpQkFBaUI7QUFDdkUsd0JBQWtCLGdCQUFnQjtBQUFBLElBQ3BDO0FBQ08sV0FBQTtBQUFBLEVBQ1Q7QUFBQTtBQUFBLEVBR08sWUFBa0I7QUFDbEIsU0FBQSxTQUFTLEtBQUs7RUFDckI7QUFBQSxFQUVtQixTQUF5QjtBQUNuQyxXQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtUO0FBQ0Y7QUE3QmEsY0FDWSxTQUF5QjtBQURyQyxnQkFBTixnQkFBQTtBQUFBLEVBRE4sY0FBYyxTQUFTO0FBQUEsR0FDWCxhQUFBOyJ9
72
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFicy90YWIvdGFiLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJUYWJMYWJlbEVsZW1lbnQgfSBmcm9tICcuLi90YWItbGFiZWwuanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90YWIuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBDb21iaW5lZCB3aXRoIGEgYHNiYi10YWItZ3JvdXBgLCBpdCBkaXNwbGF5cyBhIHRhYidzIGNvbnRlbnQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBwcm92aWRlIGNvbnRlbnQuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItdGFiJylcbmV4cG9ydCBjbGFzcyBTYmJUYWJFbGVtZW50IGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKiBUaGUgYHNiYi10YWItbGFiZWxgIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFiLiAqL1xuICBwdWJsaWMgZ2V0IGxhYmVsKCk6IFNiYlRhYkxhYmVsRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9sYWJlbDtcbiAgfVxuICBwcml2YXRlIF9sYWJlbDogU2JiVGFiTGFiZWxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBfZ2V0VGFiTGFiZWwoKTogU2JiVGFiTGFiZWxFbGVtZW50IHwgbnVsbCB7XG4gICAgbGV0IHByZXZpb3VzU2libGluZyA9IHRoaXMucHJldmlvdXNFbGVtZW50U2libGluZztcbiAgICB3aGlsZSAocHJldmlvdXNTaWJsaW5nICYmIHByZXZpb3VzU2libGluZy5sb2NhbE5hbWUgIT09ICdzYmItdGFiLWxhYmVsJykge1xuICAgICAgcHJldmlvdXNTaWJsaW5nID0gcHJldmlvdXNTaWJsaW5nLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7XG4gICAgfVxuICAgIHJldHVybiBwcmV2aW91c1NpYmxpbmcgYXMgU2JiVGFiTGFiZWxFbGVtZW50O1xuICB9XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBwdWJsaWMgY29uZmlndXJlKCk6IHZvaWQge1xuICAgIHRoaXMuX2xhYmVsID0gdGhpcy5fZ2V0VGFiTGFiZWwoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi10YWJcIj5cbiAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRhYic6IFNiYlRhYkVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFjYSxJQUFBLGdCQUFOLGNBQTRCLFdBQVc7QUFBQSxFQUF2QyxjQUFBO0FBQUEsVUFBQSxHQUFBLFNBQUE7QUFPTCxTQUFRLFNBQW9DO0FBQUEsRUFBQTtBQUFBO0FBQUEsRUFINUMsSUFBVyxRQUFtQztBQUM1QyxXQUFPLEtBQUs7QUFBQSxFQUNkO0FBQUEsRUFHUSxlQUEwQztBQUNoRCxRQUFJLGtCQUFrQixLQUFLO0FBQ3BCLFdBQUEsbUJBQW1CLGdCQUFnQixjQUFjLGlCQUFpQjtBQUN2RSx3QkFBa0IsZ0JBQWdCO0FBQUEsSUFDcEM7QUFDTyxXQUFBO0FBQUEsRUFDVDtBQUFBO0FBQUEsRUFHTyxZQUFrQjtBQUNsQixTQUFBLFNBQVMsS0FBSztFQUNyQjtBQUFBLEVBRW1CLFNBQXlCO0FBQ25DLFdBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS1Q7QUFDRjtBQTdCYSxjQUNZLFNBQXlCO0FBRHJDLGdCQUFOLGdCQUFBO0FBQUEsRUFETixjQUFjLFNBQVM7QUFBQSxHQUNYLGFBQUE7In0=
@@ -2,20 +2,7 @@ import { css, LitElement, isServer, html } from "lit";
2
2
  import { property, customElement } from "lit/decorators.js";
3
3
  import { setOrRemoveAttribute } from "../core/dom.js";
4
4
  import { SbbNamedSlotListMixin } from "../core/mixins.js";
5
- const style = css`/**
6
- * Better font rendering (on OS X)
7
- * http://maximilianhoffmann.com/posts/better-font-rendering-on-osx
8
- *
9
- * Usage:
10
- *
11
- * .var_dark_on_light {
12
- * @include font-smoothing;
13
- * }
14
- * .var_light_on_dark {
15
- * @include font-smoothing-reset;
16
- * }
17
- */
18
- /** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
5
+ const style = css`/** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
19
6
  /*
20
7
  * SBB table mixin
21
8
  * Notes:
@@ -145,4 +132,4 @@ SbbTagGroupElement = __decorateClass([
145
132
  export {
146
133
  SbbTagGroupElement
147
134
  };
148
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLWdyb3VwLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy1ncm91cC90YWctZ3JvdXAudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBDU1NSZXN1bHRHcm91cCxcbiAgaHRtbCxcbiAgaXNTZXJ2ZXIsXG4gIExpdEVsZW1lbnQsXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgc2V0T3JSZW1vdmVBdHRyaWJ1dGUgfSBmcm9tICcuLi8uLi9jb3JlL2RvbS5qcyc7XG5pbXBvcnQgeyBTYmJOYW1lZFNsb3RMaXN0TWl4aW4sIHR5cGUgV2l0aExpc3RDaGlsZHJlbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiVGFnRWxlbWVudCwgU2JiVGFnU2l6ZSB9IGZyb20gJy4uL3RhZy5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3RhZy1ncm91cC5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGNhbiBiZSB1c2VkIGFzIGEgY29udGFpbmVyIGZvciBvbmUgb3IgbW9yZSBgc2JiLXRhZ2AuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgb25lIG9yIG1vcmUgJ3NiYi10YWcnIGVsZW1lbnRzIHRvIHRoZSBgc2JiLXRhZy1ncm91cGAuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItdGFnLWdyb3VwJylcbmV4cG9ydCBjbGFzcyBTYmJUYWdHcm91cEVsZW1lbnQgZXh0ZW5kcyBTYmJOYW1lZFNsb3RMaXN0TWl4aW48U2JiVGFnRWxlbWVudCwgdHlwZW9mIExpdEVsZW1lbnQ+KFxuICBMaXRFbGVtZW50LFxuKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuICAvLyBESVYgaXMgYWRkZWQgaGVyZSBkdWUgdG8gc3BlY2lhbCByZXF1aXJlbWVudHMgZnJvbSBzYmIuY2guXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZWFkb25seSBsaXN0Q2hpbGRMb2NhbE5hbWVzID0gWydzYmItdGFnJywgJ2RpdiddO1xuXG4gIC8qKlxuICAgKiBUaGlzIHdpbGwgYmUgZm9yd2FyZGVkIGFzIGFyaWEtbGFiZWwgdG8gdGhlIGlubmVyIGxpc3QuXG4gICAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdsaXN0LWFjY2Vzc2liaWxpdHktbGFiZWwnIH0pIHB1YmxpYyBsaXN0QWNjZXNzaWJpbGl0eUxhYmVsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZiBzZXQgbXVsdGlwbGUgdG8gZmFsc2UsIHRoZSBzZWxlY3Rpb24gaXMgZXhjbHVzaXZlIGFuZCB0aGUgdmFsdWUgaXMgYSBzdHJpbmcgKG9yIG51bGwpLlxuICAgKiBJZiBzZXQgbXVsdGlwbGUgdG8gdHJ1ZSwgdGhlIHNlbGVjdGlvbiBjYW4gaGF2ZSBtdWx0aXBsZSB2YWx1ZXMgYW5kIHRoZXJlZm9yZSB2YWx1ZSBpcyBhbiBhcnJheS5cbiAgICpcbiAgICogQ2hhbmdpbmcgbXVsdGlwbGUgZHVyaW5nIHJ1biB0aW1lIGlzIG5vdCBzdXBwb3J0ZWQuXG4gICAqL1xuICBAcHJvcGVydHkoeyB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBtdWx0aXBsZSA9IGZhbHNlO1xuXG4gIC8qKiBUYWcgZ3JvdXAgc2l6ZS4gKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgc2l6ZTogU2JiVGFnU2l6ZSA9ICdtJztcblxuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIHNiYi10YWctZ3JvdXAuXG4gICAqIElmIHNldCBtdWx0aXBsZSB0byBmYWxzZSwgdGhlIHZhbHVlIGlzIGEgc3RyaW5nIChvciBudWxsKS5cbiAgICogSWYgc2V0IG11bHRpcGxlIHRvIHRydWUsIHRoZSB2YWx1ZSBpcyBhbiBhcnJheS5cbiAgICovXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBzZXQgdmFsdWUodmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbCkge1xuICAgIGNvbnN0IHRhZ3MgPSB0aGlzLnRhZ3M7XG4gICAgaWYgKGlzU2VydmVyKSB7XG4gICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIH0gZWxzZSBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHRhZ3MuZm9yRWFjaCgodCkgPT4gKHQuY2hlY2tlZCA9IGZhbHNlKSk7XG4gICAgfSBlbHNlIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWUpICYmIHRhZ3MuZXZlcnkoKHQpID0+IHQudmFsdWUgIT09IHZhbHVlKSkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIC8vIElmIGl0IGlzIG11bHRpcGxlIG1vZGUgYW5kIG5vIHRhZyBtYXRjaGVzIHRoZSB2YWx1ZSwgd2UgdHJ5IHRvIHBhcnNlIHRoZSB2YWx1ZSBhcyBKU09OLlxuICAgICAgICAgIC8vIFRoaXMgYWxsb3dzIHNlcnZlciBzaWRlIHJlbmRlcmluZyB0byB1c2UgYXJyYXkgdmFsdWVzIHRvIGJlIHBhc3NlZCB0byB0aGUgY2xpZW50IHNpZGUuXG4gICAgICAgICAgdmFsdWUgPSBKU09OLnBhcnNlKHZhbHVlKTtcbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgLyogZW1wdHkgKi9cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3QgdmFsdWVBc0FycmF5ID0gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZSA6IFt2YWx1ZV07XG4gICAgICB0YWdzLmZvckVhY2goKHQpID0+ICh0LmNoZWNrZWQgPSB2YWx1ZUFzQXJyYXkuaW5jbHVkZXModC52YWx1ZSA/PyB0LmdldEF0dHJpYnV0ZSgndmFsdWUnKSkpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICB0YWdzLmZvckVhY2goKHQpID0+ICh0LmNoZWNrZWQgPSAodC52YWx1ZSA/PyB0LmdldEF0dHJpYnV0ZSgndmFsdWUnKSkgPT09IHZhbHVlKSk7XG4gICAgICB9IGVsc2UgaWYgKGltcG9ydC5tZXRhLmVudi5ERVYpIHtcbiAgICAgICAgY29uc29sZS53YXJuKCd2YWx1ZSBtdXN0IG5vdCBiZSBzZXQgYXMgYW4gYXJyYXkgaW4gc2luZ3VsYXIgbW9kZS4nLCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHB1YmxpYyBnZXQgdmFsdWUoKTogc3RyaW5nIHwgc3RyaW5nW10gfCBudWxsIHtcbiAgICByZXR1cm4gaXNTZXJ2ZXJcbiAgICAgID8gdGhpcy5fdmFsdWVcbiAgICAgIDogdGhpcy5tdWx0aXBsZVxuICAgICAgICA/IHRoaXMudGFncy5maWx0ZXIoKHQpID0+IHQuY2hlY2tlZCkubWFwKCh0KSA9PiB0LnZhbHVlKVxuICAgICAgICA6ICh0aGlzLnRhZ3MuZmluZCgodCkgPT4gdC5jaGVja2VkKT8udmFsdWUgPz8gbnVsbCk7XG4gIH1cbiAgcHJpdmF0ZSBfdmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIFRoZSBjaGlsZCBpbnN0YW5jZXMgb2Ygc2JiLXRhZyBhcyBhbiBhcnJheS4gKi9cbiAgcHVibGljIGdldCB0YWdzKCk6IFNiYlRhZ0VsZW1lbnRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5xdWVyeVNlbGVjdG9yQWxsPy4oJ3NiYi10YWcnKSA/PyBbXSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8V2l0aExpc3RDaGlsZHJlbjx0aGlzPj4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3NpemUnKSkge1xuICAgICAgdGhpcy50YWdzLmZvckVhY2goKHQpID0+IHQucmVxdWVzdFVwZGF0ZT8uKCdzaXplJykpO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2xpc3RDaGlsZHJlbicpIHx8IGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbXVsdGlwbGUnKSkgJiZcbiAgICAgICF0aGlzLm11bHRpcGxlXG4gICAgKSB7XG4gICAgICAvLyBFbnN1cmUgb25seSBvbmUgdGFnIGNoZWNrZWRcbiAgICAgIHRoaXMudGFnc1xuICAgICAgICAuZmlsdGVyKCh0YWcpID0+IHRhZy5jaGVja2VkKVxuICAgICAgICAuc2xpY2UoMSlcbiAgICAgICAgLmZvckVhY2goKHRhZykgPT4gKHRhZy5jaGVja2VkID0gZmFsc2UpKTtcbiAgICB9XG4gICAgc2V0T3JSZW1vdmVBdHRyaWJ1dGUoXG4gICAgICB0aGlzLFxuICAgICAgJ3JvbGUnLFxuICAgICAgY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdsaXN0QWNjZXNzaWJpbGl0eUxhYmVsJykgJiYgdGhpcy5saXN0QWNjZXNzaWJpbGl0eUxhYmVsXG4gICAgICAgID8gbnVsbFxuICAgICAgICA6ICdncm91cCcsXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi10YWctZ3JvdXBcIj5cbiAgICAgICAgJHt0aGlzLnJlbmRlckxpc3Qoe1xuICAgICAgICAgIGNsYXNzOiAnc2JiLXRhZy1ncm91cF9fbGlzdCcsXG4gICAgICAgICAgYXJpYUxhYmVsOiB0aGlzLmxpc3RBY2Nlc3NpYmlsaXR5TGFiZWwsXG4gICAgICAgIH0pfVxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRhZy1ncm91cCc6IFNiYlRhZ0dyb3VwRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFzQk8sSUFBTSxxQkFBTixjQUFpQztBQUFBLEVBQ3RDO0FBQ0YsRUFBRTtBQUFBLEVBRkssY0FBQTtBQUFBLFVBQUEsR0FBQSxTQUFBO0FBS3VCLFNBQUEsc0JBQXNCLENBQUMsV0FBVyxLQUFLO0FBYXRDLFNBQU8sV0FBVztBQUdsQixTQUFPLE9BQW1CO0FBeUN2RCxTQUFRLFNBQW1DO0FBQUEsRUFBQTtBQUFBLEVBakMzQyxJQUFXLE1BQU0sT0FBaUM7QUFDaEQsVUFBTSxPQUFPLEtBQUs7QUFDbEIsUUFBSSxVQUFVO0FBQ1osV0FBSyxTQUFTO0FBQUEsSUFBQSxXQUNMLFVBQVUsTUFBTTtBQUN6QixXQUFLLFFBQVEsQ0FBQyxNQUFPLEVBQUUsVUFBVSxLQUFNO0FBQUEsSUFBQSxXQUM5QixLQUFLLFVBQVU7QUFDeEIsVUFBSSxDQUFDLE1BQU0sUUFBUSxLQUFLLEtBQUssS0FBSyxNQUFNLENBQUMsTUFBTSxFQUFFLFVBQVUsS0FBSyxHQUFHO0FBQzdELFlBQUE7QUFHTSxrQkFBQSxLQUFLLE1BQU0sS0FBSztBQUFBLFFBQUEsUUFDbEI7QUFBQSxRQUVSO0FBQUEsTUFDRjtBQUNBLFlBQU0sZUFBZSxNQUFNLFFBQVEsS0FBSyxJQUFJLFFBQVEsQ0FBQyxLQUFLO0FBQzFELFdBQUssUUFBUSxDQUFDLE1BQU8sRUFBRSxVQUFVLGFBQWEsU0FBUyxFQUFFLFNBQVMsRUFBRSxhQUFhLE9BQU8sQ0FBQyxDQUFFO0FBQUEsSUFBQSxPQUN0RjtBQUNMLFVBQUksQ0FBQyxNQUFNLFFBQVEsS0FBSyxHQUFHO0FBQ3BCLGFBQUEsUUFBUSxDQUFDLE1BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLGFBQWEsT0FBTyxPQUFPLEtBQU07QUFBQSxNQUFBLE9BQ2xEO0FBQ3RCLGdCQUFBLEtBQUssdURBQXVELEtBQUs7QUFBQSxNQUMzRTtBQUFBLElBQ0Y7QUFBQSxFQUNGO0FBQUEsRUFDQSxJQUFXLFFBQWtDOztBQUNwQyxXQUFBLFdBQ0gsS0FBSyxTQUNMLEtBQUssV0FDSCxLQUFLLEtBQUssT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLLE1BQ3BELFVBQUssS0FBSyxLQUFLLENBQUMsTUFBTSxFQUFFLE9BQU8sTUFBL0IsbUJBQWtDLFVBQVM7QUFBQSxFQUNwRDtBQUFBO0FBQUEsRUFJQSxJQUFXLE9BQXdCOztBQUNqQyxXQUFPLE1BQU0sT0FBSyxVQUFLLHFCQUFMLDhCQUF3QixlQUFjLENBQUEsQ0FBRTtBQUFBLEVBQzVEO0FBQUEsRUFFbUIsV0FBVyxtQkFBaUU7QUFDN0YsVUFBTSxXQUFXLGlCQUFpQjtBQUU5QixRQUFBLGtCQUFrQixJQUFJLE1BQU0sR0FBRztBQUNqQyxXQUFLLEtBQUssUUFBUSxDQUFDLE1BQU07O0FBQUEsdUJBQUUsa0JBQUYsMkJBQWtCO0FBQUEsT0FBTztBQUFBLElBQ3BEO0FBR0csU0FBQSxrQkFBa0IsSUFBSSxjQUFjLEtBQUssa0JBQWtCLElBQUksVUFBVSxNQUMxRSxDQUFDLEtBQUssVUFDTjtBQUVBLFdBQUssS0FDRixPQUFPLENBQUMsUUFBUSxJQUFJLE9BQU8sRUFDM0IsTUFBTSxDQUFDLEVBQ1AsUUFBUSxDQUFDLFFBQVMsSUFBSSxVQUFVLEtBQU07QUFBQSxJQUMzQztBQUNBO0FBQUEsTUFDRTtBQUFBLE1BQ0E7QUFBQSxNQUNBLGtCQUFrQixJQUFJLHdCQUF3QixLQUFLLEtBQUsseUJBQ3BELE9BQ0E7QUFBQSxJQUFBO0FBQUEsRUFFUjtBQUFBLEVBRW1CLFNBQXlCO0FBQ25DLFdBQUE7QUFBQTtBQUFBLFVBRUQsS0FBSyxXQUFXO0FBQUEsTUFDaEIsT0FBTztBQUFBLE1BQ1AsV0FBVyxLQUFLO0FBQUEsSUFBQSxDQUNqQixDQUFDO0FBQUE7QUFBQTtBQUFBLEVBR1I7QUFDRjtBQXpHYSxtQkFHWSxTQUF5QjtBQU9ZLGdCQUFBO0FBQUEsRUFBM0QsU0FBUyxFQUFFLFdBQVcsNEJBQTRCO0FBQUEsR0FWeEMsbUJBVWlELFdBQUEsMEJBQUEsQ0FBQTtBQVF4QixnQkFBQTtBQUFBLEVBQW5DLFNBQVMsRUFBRSxNQUFNLFNBQVM7QUFBQSxHQWxCaEIsbUJBa0J5QixXQUFBLFlBQUEsQ0FBQTtBQUdBLGdCQUFBO0FBQUEsRUFBbkMsU0FBUyxFQUFFLFNBQVMsTUFBTTtBQUFBLEdBckJoQixtQkFxQnlCLFdBQUEsUUFBQSxDQUFBO0FBUXpCLGdCQUFBO0FBQUEsRUFEVixTQUFTO0FBQUEsR0E1QkMsbUJBNkJBLFdBQUEsU0FBQSxDQUFBO0FBN0JBLHFCQUFOLGdCQUFBO0FBQUEsRUFETixjQUFjLGVBQWU7QUFBQSxHQUNqQixrQkFBQTsifQ==
135
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLWdyb3VwLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy1ncm91cC90YWctZ3JvdXAudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBDU1NSZXN1bHRHcm91cCxcbiAgaHRtbCxcbiAgaXNTZXJ2ZXIsXG4gIExpdEVsZW1lbnQsXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgc2V0T3JSZW1vdmVBdHRyaWJ1dGUgfSBmcm9tICcuLi8uLi9jb3JlL2RvbS5qcyc7XG5pbXBvcnQgeyBTYmJOYW1lZFNsb3RMaXN0TWl4aW4sIHR5cGUgV2l0aExpc3RDaGlsZHJlbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiVGFnRWxlbWVudCwgU2JiVGFnU2l6ZSB9IGZyb20gJy4uL3RhZy5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3RhZy1ncm91cC5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGNhbiBiZSB1c2VkIGFzIGEgY29udGFpbmVyIGZvciBvbmUgb3IgbW9yZSBgc2JiLXRhZ2AuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgb25lIG9yIG1vcmUgJ3NiYi10YWcnIGVsZW1lbnRzIHRvIHRoZSBgc2JiLXRhZy1ncm91cGAuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItdGFnLWdyb3VwJylcbmV4cG9ydCBjbGFzcyBTYmJUYWdHcm91cEVsZW1lbnQgZXh0ZW5kcyBTYmJOYW1lZFNsb3RMaXN0TWl4aW48U2JiVGFnRWxlbWVudCwgdHlwZW9mIExpdEVsZW1lbnQ+KFxuICBMaXRFbGVtZW50LFxuKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuICAvLyBESVYgaXMgYWRkZWQgaGVyZSBkdWUgdG8gc3BlY2lhbCByZXF1aXJlbWVudHMgZnJvbSBzYmIuY2guXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZWFkb25seSBsaXN0Q2hpbGRMb2NhbE5hbWVzID0gWydzYmItdGFnJywgJ2RpdiddO1xuXG4gIC8qKlxuICAgKiBUaGlzIHdpbGwgYmUgZm9yd2FyZGVkIGFzIGFyaWEtbGFiZWwgdG8gdGhlIGlubmVyIGxpc3QuXG4gICAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdsaXN0LWFjY2Vzc2liaWxpdHktbGFiZWwnIH0pIHB1YmxpYyBsaXN0QWNjZXNzaWJpbGl0eUxhYmVsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZiBzZXQgbXVsdGlwbGUgdG8gZmFsc2UsIHRoZSBzZWxlY3Rpb24gaXMgZXhjbHVzaXZlIGFuZCB0aGUgdmFsdWUgaXMgYSBzdHJpbmcgKG9yIG51bGwpLlxuICAgKiBJZiBzZXQgbXVsdGlwbGUgdG8gdHJ1ZSwgdGhlIHNlbGVjdGlvbiBjYW4gaGF2ZSBtdWx0aXBsZSB2YWx1ZXMgYW5kIHRoZXJlZm9yZSB2YWx1ZSBpcyBhbiBhcnJheS5cbiAgICpcbiAgICogQ2hhbmdpbmcgbXVsdGlwbGUgZHVyaW5nIHJ1biB0aW1lIGlzIG5vdCBzdXBwb3J0ZWQuXG4gICAqL1xuICBAcHJvcGVydHkoeyB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBtdWx0aXBsZSA9IGZhbHNlO1xuXG4gIC8qKiBUYWcgZ3JvdXAgc2l6ZS4gKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgc2l6ZTogU2JiVGFnU2l6ZSA9ICdtJztcblxuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIHNiYi10YWctZ3JvdXAuXG4gICAqIElmIHNldCBtdWx0aXBsZSB0byBmYWxzZSwgdGhlIHZhbHVlIGlzIGEgc3RyaW5nIChvciBudWxsKS5cbiAgICogSWYgc2V0IG11bHRpcGxlIHRvIHRydWUsIHRoZSB2YWx1ZSBpcyBhbiBhcnJheS5cbiAgICovXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBzZXQgdmFsdWUodmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbCkge1xuICAgIGNvbnN0IHRhZ3MgPSB0aGlzLnRhZ3M7XG4gICAgaWYgKGlzU2VydmVyKSB7XG4gICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIH0gZWxzZSBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHRhZ3MuZm9yRWFjaCgodCkgPT4gKHQuY2hlY2tlZCA9IGZhbHNlKSk7XG4gICAgfSBlbHNlIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWUpICYmIHRhZ3MuZXZlcnkoKHQpID0+IHQudmFsdWUgIT09IHZhbHVlKSkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIC8vIElmIGl0IGlzIG11bHRpcGxlIG1vZGUgYW5kIG5vIHRhZyBtYXRjaGVzIHRoZSB2YWx1ZSwgd2UgdHJ5IHRvIHBhcnNlIHRoZSB2YWx1ZSBhcyBKU09OLlxuICAgICAgICAgIC8vIFRoaXMgYWxsb3dzIHNlcnZlciBzaWRlIHJlbmRlcmluZyB0byB1c2UgYXJyYXkgdmFsdWVzIHRvIGJlIHBhc3NlZCB0byB0aGUgY2xpZW50IHNpZGUuXG4gICAgICAgICAgdmFsdWUgPSBKU09OLnBhcnNlKHZhbHVlKTtcbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgLyogZW1wdHkgKi9cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3QgdmFsdWVBc0FycmF5ID0gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZSA6IFt2YWx1ZV07XG4gICAgICB0YWdzLmZvckVhY2goKHQpID0+ICh0LmNoZWNrZWQgPSB2YWx1ZUFzQXJyYXkuaW5jbHVkZXModC52YWx1ZSA/PyB0LmdldEF0dHJpYnV0ZSgndmFsdWUnKSkpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICB0YWdzLmZvckVhY2goKHQpID0+ICh0LmNoZWNrZWQgPSAodC52YWx1ZSA/PyB0LmdldEF0dHJpYnV0ZSgndmFsdWUnKSkgPT09IHZhbHVlKSk7XG4gICAgICB9IGVsc2UgaWYgKGltcG9ydC5tZXRhLmVudi5ERVYpIHtcbiAgICAgICAgY29uc29sZS53YXJuKCd2YWx1ZSBtdXN0IG5vdCBiZSBzZXQgYXMgYW4gYXJyYXkgaW4gc2luZ3VsYXIgbW9kZS4nLCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHB1YmxpYyBnZXQgdmFsdWUoKTogc3RyaW5nIHwgc3RyaW5nW10gfCBudWxsIHtcbiAgICByZXR1cm4gaXNTZXJ2ZXJcbiAgICAgID8gdGhpcy5fdmFsdWVcbiAgICAgIDogdGhpcy5tdWx0aXBsZVxuICAgICAgICA/IHRoaXMudGFncy5maWx0ZXIoKHQpID0+IHQuY2hlY2tlZCkubWFwKCh0KSA9PiB0LnZhbHVlKVxuICAgICAgICA6ICh0aGlzLnRhZ3MuZmluZCgodCkgPT4gdC5jaGVja2VkKT8udmFsdWUgPz8gbnVsbCk7XG4gIH1cbiAgcHJpdmF0ZSBfdmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIFRoZSBjaGlsZCBpbnN0YW5jZXMgb2Ygc2JiLXRhZyBhcyBhbiBhcnJheS4gKi9cbiAgcHVibGljIGdldCB0YWdzKCk6IFNiYlRhZ0VsZW1lbnRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5xdWVyeVNlbGVjdG9yQWxsPy4oJ3NiYi10YWcnKSA/PyBbXSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8V2l0aExpc3RDaGlsZHJlbjx0aGlzPj4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3NpemUnKSkge1xuICAgICAgdGhpcy50YWdzLmZvckVhY2goKHQpID0+IHQucmVxdWVzdFVwZGF0ZT8uKCdzaXplJykpO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2xpc3RDaGlsZHJlbicpIHx8IGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbXVsdGlwbGUnKSkgJiZcbiAgICAgICF0aGlzLm11bHRpcGxlXG4gICAgKSB7XG4gICAgICAvLyBFbnN1cmUgb25seSBvbmUgdGFnIGNoZWNrZWRcbiAgICAgIHRoaXMudGFnc1xuICAgICAgICAuZmlsdGVyKCh0YWcpID0+IHRhZy5jaGVja2VkKVxuICAgICAgICAuc2xpY2UoMSlcbiAgICAgICAgLmZvckVhY2goKHRhZykgPT4gKHRhZy5jaGVja2VkID0gZmFsc2UpKTtcbiAgICB9XG4gICAgc2V0T3JSZW1vdmVBdHRyaWJ1dGUoXG4gICAgICB0aGlzLFxuICAgICAgJ3JvbGUnLFxuICAgICAgY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdsaXN0QWNjZXNzaWJpbGl0eUxhYmVsJykgJiYgdGhpcy5saXN0QWNjZXNzaWJpbGl0eUxhYmVsXG4gICAgICAgID8gbnVsbFxuICAgICAgICA6ICdncm91cCcsXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi10YWctZ3JvdXBcIj5cbiAgICAgICAgJHt0aGlzLnJlbmRlckxpc3Qoe1xuICAgICAgICAgIGNsYXNzOiAnc2JiLXRhZy1ncm91cF9fbGlzdCcsXG4gICAgICAgICAgYXJpYUxhYmVsOiB0aGlzLmxpc3RBY2Nlc3NpYmlsaXR5TGFiZWwsXG4gICAgICAgIH0pfVxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRhZy1ncm91cCc6IFNiYlRhZ0dyb3VwRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXNCTyxJQUFNLHFCQUFOLGNBQWlDO0FBQUEsRUFDdEM7QUFDRixFQUFFO0FBQUEsRUFGSyxjQUFBO0FBQUEsVUFBQSxHQUFBLFNBQUE7QUFLdUIsU0FBQSxzQkFBc0IsQ0FBQyxXQUFXLEtBQUs7QUFhdEMsU0FBTyxXQUFXO0FBR2xCLFNBQU8sT0FBbUI7QUF5Q3ZELFNBQVEsU0FBbUM7QUFBQSxFQUFBO0FBQUEsRUFqQzNDLElBQVcsTUFBTSxPQUFpQztBQUNoRCxVQUFNLE9BQU8sS0FBSztBQUNsQixRQUFJLFVBQVU7QUFDWixXQUFLLFNBQVM7QUFBQSxJQUFBLFdBQ0wsVUFBVSxNQUFNO0FBQ3pCLFdBQUssUUFBUSxDQUFDLE1BQU8sRUFBRSxVQUFVLEtBQU07QUFBQSxJQUFBLFdBQzlCLEtBQUssVUFBVTtBQUN4QixVQUFJLENBQUMsTUFBTSxRQUFRLEtBQUssS0FBSyxLQUFLLE1BQU0sQ0FBQyxNQUFNLEVBQUUsVUFBVSxLQUFLLEdBQUc7QUFDN0QsWUFBQTtBQUdNLGtCQUFBLEtBQUssTUFBTSxLQUFLO0FBQUEsUUFBQSxRQUNsQjtBQUFBLFFBRVI7QUFBQSxNQUNGO0FBQ0EsWUFBTSxlQUFlLE1BQU0sUUFBUSxLQUFLLElBQUksUUFBUSxDQUFDLEtBQUs7QUFDMUQsV0FBSyxRQUFRLENBQUMsTUFBTyxFQUFFLFVBQVUsYUFBYSxTQUFTLEVBQUUsU0FBUyxFQUFFLGFBQWEsT0FBTyxDQUFDLENBQUU7QUFBQSxJQUFBLE9BQ3RGO0FBQ0wsVUFBSSxDQUFDLE1BQU0sUUFBUSxLQUFLLEdBQUc7QUFDcEIsYUFBQSxRQUFRLENBQUMsTUFBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsYUFBYSxPQUFPLE9BQU8sS0FBTTtBQUFBLE1BQUEsT0FDbEQ7QUFDdEIsZ0JBQUEsS0FBSyx1REFBdUQsS0FBSztBQUFBLE1BQzNFO0FBQUEsSUFDRjtBQUFBLEVBQ0Y7QUFBQSxFQUNBLElBQVcsUUFBa0M7O0FBQ3BDLFdBQUEsV0FDSCxLQUFLLFNBQ0wsS0FBSyxXQUNILEtBQUssS0FBSyxPQUFPLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLEtBQUssTUFDcEQsVUFBSyxLQUFLLEtBQUssQ0FBQyxNQUFNLEVBQUUsT0FBTyxNQUEvQixtQkFBa0MsVUFBUztBQUFBLEVBQ3BEO0FBQUE7QUFBQSxFQUlBLElBQVcsT0FBd0I7O0FBQ2pDLFdBQU8sTUFBTSxPQUFLLFVBQUsscUJBQUwsOEJBQXdCLGVBQWMsQ0FBQSxDQUFFO0FBQUEsRUFDNUQ7QUFBQSxFQUVtQixXQUFXLG1CQUFpRTtBQUM3RixVQUFNLFdBQVcsaUJBQWlCO0FBRTlCLFFBQUEsa0JBQWtCLElBQUksTUFBTSxHQUFHO0FBQ2pDLFdBQUssS0FBSyxRQUFRLENBQUMsTUFBTTs7QUFBQSx1QkFBRSxrQkFBRiwyQkFBa0I7QUFBQSxPQUFPO0FBQUEsSUFDcEQ7QUFHRyxTQUFBLGtCQUFrQixJQUFJLGNBQWMsS0FBSyxrQkFBa0IsSUFBSSxVQUFVLE1BQzFFLENBQUMsS0FBSyxVQUNOO0FBRUEsV0FBSyxLQUNGLE9BQU8sQ0FBQyxRQUFRLElBQUksT0FBTyxFQUMzQixNQUFNLENBQUMsRUFDUCxRQUFRLENBQUMsUUFBUyxJQUFJLFVBQVUsS0FBTTtBQUFBLElBQzNDO0FBQ0E7QUFBQSxNQUNFO0FBQUEsTUFDQTtBQUFBLE1BQ0Esa0JBQWtCLElBQUksd0JBQXdCLEtBQUssS0FBSyx5QkFDcEQsT0FDQTtBQUFBLElBQUE7QUFBQSxFQUVSO0FBQUEsRUFFbUIsU0FBeUI7QUFDbkMsV0FBQTtBQUFBO0FBQUEsVUFFRCxLQUFLLFdBQVc7QUFBQSxNQUNoQixPQUFPO0FBQUEsTUFDUCxXQUFXLEtBQUs7QUFBQSxJQUFBLENBQ2pCLENBQUM7QUFBQTtBQUFBO0FBQUEsRUFHUjtBQUNGO0FBekdhLG1CQUdZLFNBQXlCO0FBT1ksZ0JBQUE7QUFBQSxFQUEzRCxTQUFTLEVBQUUsV0FBVyw0QkFBNEI7QUFBQSxHQVZ4QyxtQkFVaUQsV0FBQSwwQkFBQSxDQUFBO0FBUXhCLGdCQUFBO0FBQUEsRUFBbkMsU0FBUyxFQUFFLE1BQU0sU0FBUztBQUFBLEdBbEJoQixtQkFrQnlCLFdBQUEsWUFBQSxDQUFBO0FBR0EsZ0JBQUE7QUFBQSxFQUFuQyxTQUFTLEVBQUUsU0FBUyxNQUFNO0FBQUEsR0FyQmhCLG1CQXFCeUIsV0FBQSxRQUFBLENBQUE7QUFRekIsZ0JBQUE7QUFBQSxFQURWLFNBQVM7QUFBQSxHQTVCQyxtQkE2QkEsV0FBQSxTQUFBLENBQUE7QUE3QkEscUJBQU4sZ0JBQUE7QUFBQSxFQUROLGNBQWMsZUFBZTtBQUFBLEdBQ2pCLGtCQUFBOyJ9
@@ -4,22 +4,9 @@ import { SbbButtonBaseElement } from "../core/base-elements.js";
4
4
  import { SbbConnectedAbortController } from "../core/controllers.js";
5
5
  import { slotState } from "../core/decorators.js";
6
6
  import { EventEmitter } from "../core/eventing.js";
7
- import { SbbDisabledTabIndexActionMixin } from "../core/mixins.js";
7
+ import { SbbFocusableDisabledActionMixin } from "../core/mixins.js";
8
8
  import { SbbIconNameMixin } from "../icon.js";
9
- const style = css`/**
10
- * Better font rendering (on OS X)
11
- * http://maximilianhoffmann.com/posts/better-font-rendering-on-osx
12
- *
13
- * Usage:
14
- *
15
- * .var_dark_on_light {
16
- * @include font-smoothing;
17
- * }
18
- * .var_light_on_dark {
19
- * @include font-smoothing-reset;
20
- * }
21
- */
22
- /** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
9
+ const style = css`/** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
23
10
  /*
24
11
  * SBB table mixin
25
12
  * Notes:
@@ -211,7 +198,7 @@ var __decorateClass = (decorators, target, key, kind) => {
211
198
  return result;
212
199
  };
213
200
  let SbbTagElement = class extends SbbIconNameMixin(
214
- SbbDisabledTabIndexActionMixin(SbbButtonBaseElement)
201
+ SbbFocusableDisabledActionMixin(SbbButtonBaseElement)
215
202
  ) {
216
203
  constructor() {
217
204
  super(...arguments);
@@ -301,4 +288,4 @@ SbbTagElement = __decorateClass([
301
288
  export {
302
289
  SbbTagElement
303
290
  };
304
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy90YWcudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgUHJvcGVydHlWYWx1ZXMsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IFNiYkJ1dHRvbkJhc2VFbGVtZW50IH0gZnJvbSAnLi4vLi4vY29yZS9iYXNlLWVsZW1lbnRzLmpzJztcbmltcG9ydCB7IFNiYkNvbm5lY3RlZEFib3J0Q29udHJvbGxlciB9IGZyb20gJy4uLy4uL2NvcmUvY29udHJvbGxlcnMuanMnO1xuaW1wb3J0IHsgc2xvdFN0YXRlIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJy4uLy4uL2NvcmUvZXZlbnRpbmcuanMnO1xuaW1wb3J0IHsgU2JiRGlzYWJsZWRUYWJJbmRleEFjdGlvbk1peGluIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMuanMnO1xuaW1wb3J0IHsgU2JiSWNvbk5hbWVNaXhpbiB9IGZyb20gJy4uLy4uL2ljb24uanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJUYWdHcm91cEVsZW1lbnQgfSBmcm9tICcuLi90YWctZ3JvdXAuanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90YWcuc2Nzcz9saXQmaW5saW5lJztcblxuZXhwb3J0IHR5cGUgU2JiVGFnU2l6ZSA9ICdzJyB8ICdtJztcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhIHNlbGVjdGFibGUgZWxlbWVudCB3aGljaCBjYW4gYmUgdXNlZCBhcyBhIGZpbHRlci5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IHRvIHRoZSB0YWcgbGFiZWwuXG4gKiBAc2xvdCBpY29uIC0gVXNlIHRoaXMgc2xvdCB0byBkaXNwbGF5IGFuIGljb24gYXQgdGhlIGNvbXBvbmVudCBzdGFydCwgYnkgcHJvdmlkaW5nIGEgYHNiYi1pY29uYCBjb21wb25lbnQuXG4gKiBAc2xvdCBhbW91bnQgLSBQcm92aWRlIGFuIGFtb3VudCB0byBzaG93IGl0IGF0IHRoZSBjb21wb25lbnQgZW5kLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gaW5wdXQgLSBJbnB1dCBldmVudCBlbWl0dGVyXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSBkaWRDaGFuZ2UgLSBEZXByZWNhdGVkLiB1c2VkIGZvciBSZWFjdC4gV2lsbCBwcm9iYWJseSBiZSByZW1vdmVkIG9uY2UgUmVhY3QgMTkgaXMgYXZhaWxhYmxlLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gY2hhbmdlIC0gQ2hhbmdlIGV2ZW50IGVtaXR0ZXJcbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi10YWcnKVxuQHNsb3RTdGF0ZSgpXG5leHBvcnQgY2xhc3MgU2JiVGFnRWxlbWVudCBleHRlbmRzIFNiYkljb25OYW1lTWl4aW4oXG4gIFNiYkRpc2FibGVkVGFiSW5kZXhBY3Rpb25NaXhpbihTYmJCdXR0b25CYXNlRWxlbWVudCksXG4pIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgIGlucHV0OiAnaW5wdXQnLFxuICAgIGRpZENoYW5nZTogJ2RpZENoYW5nZScsXG4gICAgY2hhbmdlOiAnY2hhbmdlJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKiogQW1vdW50IGRpc3BsYXllZCBpbnNpZGUgdGhlIHRhZy4gKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYW1vdW50Pzogc3RyaW5nO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSB0YWcgaXMgY2hlY2tlZC4gKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgdHlwZTogQm9vbGVhbiB9KSBwdWJsaWMgY2hlY2tlZCA9IGZhbHNlO1xuXG4gIC8qKiBUYWcgc2l6ZS4gKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KVxuICBwdWJsaWMgc2V0IHNpemUodmFsdWU6IFNiYlRhZ1NpemUpIHtcbiAgICB0aGlzLl9zaXplID0gdmFsdWU7XG4gIH1cbiAgcHVibGljIGdldCBzaXplKCk6IFNiYlRhZ1NpemUge1xuICAgIHJldHVybiB0aGlzLl9ncm91cD8uc2l6ZSA/PyB0aGlzLl9zaXplO1xuICB9XG4gIHByaXZhdGUgX3NpemU6IFNiYlRhZ1NpemUgPSAnbSc7XG5cbiAgLyoqIFJlZmVyZW5jZSB0byB0aGUgY29ubmVjdGVkIHRhZyBncm91cC4gKi9cbiAgcHJpdmF0ZSBfZ3JvdXA6IFNiYlRhZ0dyb3VwRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBJbnB1dCBldmVudCBlbWl0dGVyICovXG4gIHByaXZhdGUgX2lucHV0OiBFdmVudEVtaXR0ZXIgPSBuZXcgRXZlbnRFbWl0dGVyKHRoaXMsIFNiYlRhZ0VsZW1lbnQuZXZlbnRzLmlucHV0LCB7XG4gICAgYnViYmxlczogdHJ1ZSxcbiAgICBjb21wb3NlZDogdHJ1ZSxcbiAgfSk7XG5cbiAgLyoqIEBkZXByZWNhdGVkIG9ubHkgdXNlZCBmb3IgUmVhY3QuIFdpbGwgcHJvYmFibHkgYmUgcmVtb3ZlZCBvbmNlIFJlYWN0IDE5IGlzIGF2YWlsYWJsZS4gKi9cbiAgcHJpdmF0ZSBfZGlkQ2hhbmdlOiBFdmVudEVtaXR0ZXIgPSBuZXcgRXZlbnRFbWl0dGVyKHRoaXMsIFNiYlRhZ0VsZW1lbnQuZXZlbnRzLmRpZENoYW5nZSwge1xuICAgIGJ1YmJsZXM6IHRydWUsXG4gIH0pO1xuXG4gIC8qKiBDaGFuZ2UgZXZlbnQgZW1pdHRlciAqL1xuICBwcml2YXRlIF9jaGFuZ2U6IEV2ZW50RW1pdHRlciA9IG5ldyBFdmVudEVtaXR0ZXIodGhpcywgU2JiVGFnRWxlbWVudC5ldmVudHMuY2hhbmdlLCB7XG4gICAgYnViYmxlczogdHJ1ZSxcbiAgfSk7XG5cbiAgcHJpdmF0ZSBfYWJvcnQgPSBuZXcgU2JiQ29ubmVjdGVkQWJvcnRDb250cm9sbGVyKHRoaXMpO1xuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuX2dyb3VwID0gdGhpcy5jbG9zZXN0KCdzYmItdGFnLWdyb3VwJykgYXMgU2JiVGFnR3JvdXBFbGVtZW50O1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB0aGlzLl9oYW5kbGVDbGljaygpLCB7IHNpZ25hbDogdGhpcy5fYWJvcnQuc2lnbmFsIH0pO1xuICB9XG5cbiAgLyoqIE1ldGhvZCB0cmlnZ2VyZWQgb24gYnV0dG9uIGNsaWNrLiBJbnZlcnRzIHRoZSBjaGVja2VkIHZhbHVlIGFuZCBlbWl0cyBldmVudHMuICovXG4gIHByaXZhdGUgX2hhbmRsZUNsaWNrKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gUHJldmVudCBkZWFjdGl2YXRpbmcgb24gZXhjbHVzaXZlIC8gcmFkaW8gbW9kZVxuICAgIGNvbnN0IHRhZ0dyb3VwID0gdGhpcy5jbG9zZXN0KCdzYmItdGFnLWdyb3VwJyk7XG4gICAgaWYgKHRhZ0dyb3VwICYmICF0YWdHcm91cC5tdWx0aXBsZSAmJiB0aGlzLmNoZWNrZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jaGVja2VkID0gIXRoaXMuY2hlY2tlZDtcbiAgICB0aGlzLl9pbnB1dC5lbWl0KCk7XG4gICAgdGhpcy5fY2hhbmdlLmVtaXQoKTtcbiAgICB0aGlzLl9kaWRDaGFuZ2UuZW1pdCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdjaGVja2VkJykpIHtcbiAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCdhcmlhLXByZXNzZWQnLCBgJHt0aGlzLmNoZWNrZWR9YCk7XG4gICAgfVxuXG4gICAgY29uc3QgdGFnR3JvdXAgPSB0aGlzLmNsb3Nlc3Q/Lignc2JiLXRhZy1ncm91cCcpO1xuICAgIGlmICh0YWdHcm91cCAmJiAhdGFnR3JvdXAubXVsdGlwbGUgJiYgY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdjaGVja2VkJykgJiYgdGhpcy5jaGVja2VkKSB7XG4gICAgICB0YWdHcm91cD8udGFncy5maWx0ZXIoKHQpID0+IHQgIT09IHRoaXMpLmZvckVhY2goKHQpID0+ICh0LmNoZWNrZWQgPSBmYWxzZSkpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXJUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8c3BhbiBjbGFzcz1cInNiYi10YWdfX2ljb24gc2JiLXRhZy0tc2hpZnRcIj4gJHt0aGlzLnJlbmRlckljb25TbG90KCl9IDwvc3Bhbj5cbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRhZ19fdGV4dCBzYmItdGFnLS1zaGlmdFwiPlxuICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICA8L3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cInNiYi10YWdfX2Ftb3VudCBzYmItdGFnLS1zaGlmdFwiPlxuICAgICAgICA8c2xvdCBuYW1lPVwiYW1vdW50XCI+JHt0aGlzLmFtb3VudH08L3Nsb3Q+XG4gICAgICA8L3NwYW4+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRhZyc6IFNiYlRhZ0VsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTRCTyxJQUFNLGdCQUFOLGNBQTRCO0FBQUEsRUFDakMsK0JBQStCLG9CQUFvQjtBQUNyRCxFQUFFO0FBQUEsRUFGSyxjQUFBO0FBQUEsVUFBQSxHQUFBLFNBQUE7QUFjdUMsU0FBTyxVQUFVO0FBVTdELFNBQVEsUUFBb0I7QUFHNUIsU0FBUSxTQUFvQztBQUc1QyxTQUFRLFNBQXVCLElBQUksYUFBYSxNQUFNLGNBQWMsT0FBTyxPQUFPO0FBQUEsTUFDaEYsU0FBUztBQUFBLE1BQ1QsVUFBVTtBQUFBLElBQUEsQ0FDWDtBQUdELFNBQVEsYUFBMkIsSUFBSSxhQUFhLE1BQU0sY0FBYyxPQUFPLFdBQVc7QUFBQSxNQUN4RixTQUFTO0FBQUEsSUFBQSxDQUNWO0FBR0QsU0FBUSxVQUF3QixJQUFJLGFBQWEsTUFBTSxjQUFjLE9BQU8sUUFBUTtBQUFBLE1BQ2xGLFNBQVM7QUFBQSxJQUFBLENBQ1Y7QUFFTyxTQUFBLFNBQVMsSUFBSSw0QkFBNEIsSUFBSTtBQUFBLEVBQUE7QUFBQSxFQTNCckQsSUFBVyxLQUFLLE9BQW1CO0FBQ2pDLFNBQUssUUFBUTtBQUFBLEVBQ2Y7QUFBQSxFQUNBLElBQVcsT0FBbUI7O0FBQ3JCLGFBQUEsVUFBSyxXQUFMLG1CQUFhLFNBQVEsS0FBSztBQUFBLEVBQ25DO0FBQUEsRUF3QmdCLG9CQUEwQjtBQUN4QyxVQUFNLGtCQUFrQjtBQUNuQixTQUFBLFNBQVMsS0FBSyxRQUFRLGVBQWU7QUFDckMsU0FBQSxpQkFBaUIsU0FBUyxNQUFNLEtBQUssYUFBQSxHQUFnQixFQUFFLFFBQVEsS0FBSyxPQUFPLE9BQVEsQ0FBQTtBQUFBLEVBQzFGO0FBQUE7QUFBQSxFQUdRLGVBQXFCO0FBQzNCLFFBQUksS0FBSyxVQUFVO0FBQ2pCO0FBQUEsSUFDRjtBQUdNLFVBQUEsV0FBVyxLQUFLLFFBQVEsZUFBZTtBQUM3QyxRQUFJLFlBQVksQ0FBQyxTQUFTLFlBQVksS0FBSyxTQUFTO0FBQ2xEO0FBQUEsSUFDRjtBQUNLLFNBQUEsVUFBVSxDQUFDLEtBQUs7QUFDckIsU0FBSyxPQUFPO0FBQ1osU0FBSyxRQUFRO0FBQ2IsU0FBSyxXQUFXO0VBQ2xCO0FBQUEsRUFFbUIsV0FBVyxtQkFBK0M7O0FBQzNFLFVBQU0sV0FBVyxpQkFBaUI7QUFFOUIsUUFBQSxrQkFBa0IsSUFBSSxTQUFTLEdBQUc7QUFDcEMsV0FBSyxhQUFhLGdCQUFnQixHQUFHLEtBQUssT0FBTyxFQUFFO0FBQUEsSUFDckQ7QUFFTSxVQUFBLFlBQVcsVUFBSyxZQUFMLDhCQUFlO0FBQzVCLFFBQUEsWUFBWSxDQUFDLFNBQVMsWUFBWSxrQkFBa0IsSUFBSSxTQUFTLEtBQUssS0FBSyxTQUFTO0FBQ3RGLDJDQUFVLEtBQUssT0FBTyxDQUFDLE1BQU0sTUFBTSxNQUFNLFFBQVEsQ0FBQyxNQUFPLEVBQUUsVUFBVTtBQUFBLElBQ3ZFO0FBQUEsRUFDRjtBQUFBLEVBRW1CLGlCQUFpQztBQUMzQyxXQUFBO0FBQUEsb0RBQ3lDLEtBQUssZ0JBQWdCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSw4QkFLM0MsS0FBSyxNQUFNO0FBQUE7QUFBQTtBQUFBLEVBR3ZDO0FBQ0Y7QUE5RmEsY0FHWSxTQUF5QjtBQUhyQyxjQUlZLFNBQVM7QUFBQSxFQUM5QixPQUFPO0FBQUEsRUFDUCxXQUFXO0FBQUEsRUFDWCxRQUFRO0FBQ1Y7QUFHb0MsZ0JBQUE7QUFBQSxFQUFuQyxTQUFTLEVBQUUsU0FBUyxNQUFNO0FBQUEsR0FYaEIsY0FXeUIsV0FBQSxVQUFBLENBQUE7QUFHZSxnQkFBQTtBQUFBLEVBQWxELFNBQVMsRUFBRSxTQUFTLE1BQU0sTUFBTSxTQUFTO0FBQUEsR0FkL0IsY0Fjd0MsV0FBQSxXQUFBLENBQUE7QUFJeEMsZ0JBQUE7QUFBQSxFQURWLFNBQVMsRUFBRSxTQUFTLE1BQU07QUFBQSxHQWpCaEIsY0FrQkEsV0FBQSxRQUFBLENBQUE7QUFsQkEsZ0JBQU4sZ0JBQUE7QUFBQSxFQUZOLGNBQWMsU0FBUztBQUFBLEVBQ3ZCLFVBQVU7QUFBQSxHQUNFLGFBQUE7In0=
291
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvdGFnL3RhZy90YWcudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgUHJvcGVydHlWYWx1ZXMsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IFNiYkJ1dHRvbkJhc2VFbGVtZW50IH0gZnJvbSAnLi4vLi4vY29yZS9iYXNlLWVsZW1lbnRzLmpzJztcbmltcG9ydCB7IFNiYkNvbm5lY3RlZEFib3J0Q29udHJvbGxlciB9IGZyb20gJy4uLy4uL2NvcmUvY29udHJvbGxlcnMuanMnO1xuaW1wb3J0IHsgc2xvdFN0YXRlIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJy4uLy4uL2NvcmUvZXZlbnRpbmcuanMnO1xuaW1wb3J0IHsgU2JiRm9jdXNhYmxlRGlzYWJsZWRBY3Rpb25NaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IFNiYkljb25OYW1lTWl4aW4gfSBmcm9tICcuLi8uLi9pY29uLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiVGFnR3JvdXBFbGVtZW50IH0gZnJvbSAnLi4vdGFnLWdyb3VwLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vdGFnLnNjc3M/bGl0JmlubGluZSc7XG5cbmV4cG9ydCB0eXBlIFNiYlRhZ1NpemUgPSAncycgfCAnbSc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBzZWxlY3RhYmxlIGVsZW1lbnQgd2hpY2ggY2FuIGJlIHVzZWQgYXMgYSBmaWx0ZXIuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgY29udGVudCB0byB0aGUgdGFnIGxhYmVsLlxuICogQHNsb3QgaWNvbiAtIFVzZSB0aGlzIHNsb3QgdG8gZGlzcGxheSBhbiBpY29uIGF0IHRoZSBjb21wb25lbnQgc3RhcnQsIGJ5IHByb3ZpZGluZyBhIGBzYmItaWNvbmAgY29tcG9uZW50LlxuICogQHNsb3QgYW1vdW50IC0gUHJvdmlkZSBhbiBhbW91bnQgdG8gc2hvdyBpdCBhdCB0aGUgY29tcG9uZW50IGVuZC5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IGlucHV0IC0gSW5wdXQgZXZlbnQgZW1pdHRlclxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkQ2hhbmdlIC0gRGVwcmVjYXRlZC4gdXNlZCBmb3IgUmVhY3QuIFdpbGwgcHJvYmFibHkgYmUgcmVtb3ZlZCBvbmNlIFJlYWN0IDE5IGlzIGF2YWlsYWJsZS5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IGNoYW5nZSAtIENoYW5nZSBldmVudCBlbWl0dGVyXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItdGFnJylcbkBzbG90U3RhdGUoKVxuZXhwb3J0IGNsYXNzIFNiYlRhZ0VsZW1lbnQgZXh0ZW5kcyBTYmJJY29uTmFtZU1peGluKFxuICBTYmJGb2N1c2FibGVEaXNhYmxlZEFjdGlvbk1peGluKFNiYkJ1dHRvbkJhc2VFbGVtZW50KSxcbikge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBldmVudHMgPSB7XG4gICAgaW5wdXQ6ICdpbnB1dCcsXG4gICAgZGlkQ2hhbmdlOiAnZGlkQ2hhbmdlJyxcbiAgICBjaGFuZ2U6ICdjaGFuZ2UnLFxuICB9IGFzIGNvbnN0O1xuXG4gIC8qKiBBbW91bnQgZGlzcGxheWVkIGluc2lkZSB0aGUgdGFnLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhbW91bnQ/OiBzdHJpbmc7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHRhZyBpcyBjaGVja2VkLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBjaGVja2VkID0gZmFsc2U7XG5cbiAgLyoqIFRhZyBzaXplLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pXG4gIHB1YmxpYyBzZXQgc2l6ZSh2YWx1ZTogU2JiVGFnU2l6ZSkge1xuICAgIHRoaXMuX3NpemUgPSB2YWx1ZTtcbiAgfVxuICBwdWJsaWMgZ2V0IHNpemUoKTogU2JiVGFnU2l6ZSB7XG4gICAgcmV0dXJuIHRoaXMuX2dyb3VwPy5zaXplID8/IHRoaXMuX3NpemU7XG4gIH1cbiAgcHJpdmF0ZSBfc2l6ZTogU2JiVGFnU2l6ZSA9ICdtJztcblxuICAvKiogUmVmZXJlbmNlIHRvIHRoZSBjb25uZWN0ZWQgdGFnIGdyb3VwLiAqL1xuICBwcml2YXRlIF9ncm91cDogU2JiVGFnR3JvdXBFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIElucHV0IGV2ZW50IGVtaXR0ZXIgKi9cbiAgcHJpdmF0ZSBfaW5wdXQ6IEV2ZW50RW1pdHRlciA9IG5ldyBFdmVudEVtaXR0ZXIodGhpcywgU2JiVGFnRWxlbWVudC5ldmVudHMuaW5wdXQsIHtcbiAgICBidWJibGVzOiB0cnVlLFxuICAgIGNvbXBvc2VkOiB0cnVlLFxuICB9KTtcblxuICAvKiogQGRlcHJlY2F0ZWQgb25seSB1c2VkIGZvciBSZWFjdC4gV2lsbCBwcm9iYWJseSBiZSByZW1vdmVkIG9uY2UgUmVhY3QgMTkgaXMgYXZhaWxhYmxlLiAqL1xuICBwcml2YXRlIF9kaWRDaGFuZ2U6IEV2ZW50RW1pdHRlciA9IG5ldyBFdmVudEVtaXR0ZXIodGhpcywgU2JiVGFnRWxlbWVudC5ldmVudHMuZGlkQ2hhbmdlLCB7XG4gICAgYnViYmxlczogdHJ1ZSxcbiAgfSk7XG5cbiAgLyoqIENoYW5nZSBldmVudCBlbWl0dGVyICovXG4gIHByaXZhdGUgX2NoYW5nZTogRXZlbnRFbWl0dGVyID0gbmV3IEV2ZW50RW1pdHRlcih0aGlzLCBTYmJUYWdFbGVtZW50LmV2ZW50cy5jaGFuZ2UsIHtcbiAgICBidWJibGVzOiB0cnVlLFxuICB9KTtcblxuICBwcml2YXRlIF9hYm9ydCA9IG5ldyBTYmJDb25uZWN0ZWRBYm9ydENvbnRyb2xsZXIodGhpcyk7XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fZ3JvdXAgPSB0aGlzLmNsb3Nlc3QoJ3NiYi10YWctZ3JvdXAnKSBhcyBTYmJUYWdHcm91cEVsZW1lbnQ7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHRoaXMuX2hhbmRsZUNsaWNrKCksIHsgc2lnbmFsOiB0aGlzLl9hYm9ydC5zaWduYWwgfSk7XG4gIH1cblxuICAvKiogTWV0aG9kIHRyaWdnZXJlZCBvbiBidXR0b24gY2xpY2suIEludmVydHMgdGhlIGNoZWNrZWQgdmFsdWUgYW5kIGVtaXRzIGV2ZW50cy4gKi9cbiAgcHJpdmF0ZSBfaGFuZGxlQ2xpY2soKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBQcmV2ZW50IGRlYWN0aXZhdGluZyBvbiBleGNsdXNpdmUgLyByYWRpbyBtb2RlXG4gICAgY29uc3QgdGFnR3JvdXAgPSB0aGlzLmNsb3Nlc3QoJ3NiYi10YWctZ3JvdXAnKTtcbiAgICBpZiAodGFnR3JvdXAgJiYgIXRhZ0dyb3VwLm11bHRpcGxlICYmIHRoaXMuY2hlY2tlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNoZWNrZWQgPSAhdGhpcy5jaGVja2VkO1xuICAgIHRoaXMuX2lucHV0LmVtaXQoKTtcbiAgICB0aGlzLl9jaGFuZ2UuZW1pdCgpO1xuICAgIHRoaXMuX2RpZENoYW5nZS5lbWl0KCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2NoZWNrZWQnKSkge1xuICAgICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ2FyaWEtcHJlc3NlZCcsIGAke3RoaXMuY2hlY2tlZH1gKTtcbiAgICB9XG5cbiAgICBjb25zdCB0YWdHcm91cCA9IHRoaXMuY2xvc2VzdD8uKCdzYmItdGFnLWdyb3VwJyk7XG4gICAgaWYgKHRhZ0dyb3VwICYmICF0YWdHcm91cC5tdWx0aXBsZSAmJiBjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2NoZWNrZWQnKSAmJiB0aGlzLmNoZWNrZWQpIHtcbiAgICAgIHRhZ0dyb3VwPy50YWdzLmZpbHRlcigodCkgPT4gdCAhPT0gdGhpcykuZm9yRWFjaCgodCkgPT4gKHQuY2hlY2tlZCA9IGZhbHNlKSk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlclRlbXBsYXRlKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRhZ19faWNvbiBzYmItdGFnLS1zaGlmdFwiPiAke3RoaXMucmVuZGVySWNvblNsb3QoKX0gPC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItdGFnX190ZXh0IHNiYi10YWctLXNoaWZ0XCI+XG4gICAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgIDwvc3Bhbj5cbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRhZ19fYW1vdW50IHNiYi10YWctLXNoaWZ0XCI+XG4gICAgICAgIDxzbG90IG5hbWU9XCJhbW91bnRcIj4ke3RoaXMuYW1vdW50fTwvc2xvdD5cbiAgICAgIDwvc3Bhbj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdGFnJzogU2JiVGFnRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUE0Qk8sSUFBTSxnQkFBTixjQUE0QjtBQUFBLEVBQ2pDLGdDQUFnQyxvQkFBb0I7QUFDdEQsRUFBRTtBQUFBLEVBRkssY0FBQTtBQUFBLFVBQUEsR0FBQSxTQUFBO0FBY3VDLFNBQU8sVUFBVTtBQVU3RCxTQUFRLFFBQW9CO0FBRzVCLFNBQVEsU0FBb0M7QUFHNUMsU0FBUSxTQUF1QixJQUFJLGFBQWEsTUFBTSxjQUFjLE9BQU8sT0FBTztBQUFBLE1BQ2hGLFNBQVM7QUFBQSxNQUNULFVBQVU7QUFBQSxJQUFBLENBQ1g7QUFHRCxTQUFRLGFBQTJCLElBQUksYUFBYSxNQUFNLGNBQWMsT0FBTyxXQUFXO0FBQUEsTUFDeEYsU0FBUztBQUFBLElBQUEsQ0FDVjtBQUdELFNBQVEsVUFBd0IsSUFBSSxhQUFhLE1BQU0sY0FBYyxPQUFPLFFBQVE7QUFBQSxNQUNsRixTQUFTO0FBQUEsSUFBQSxDQUNWO0FBRU8sU0FBQSxTQUFTLElBQUksNEJBQTRCLElBQUk7QUFBQSxFQUFBO0FBQUEsRUEzQnJELElBQVcsS0FBSyxPQUFtQjtBQUNqQyxTQUFLLFFBQVE7QUFBQSxFQUNmO0FBQUEsRUFDQSxJQUFXLE9BQW1COztBQUNyQixhQUFBLFVBQUssV0FBTCxtQkFBYSxTQUFRLEtBQUs7QUFBQSxFQUNuQztBQUFBLEVBd0JnQixvQkFBMEI7QUFDeEMsVUFBTSxrQkFBa0I7QUFDbkIsU0FBQSxTQUFTLEtBQUssUUFBUSxlQUFlO0FBQ3JDLFNBQUEsaUJBQWlCLFNBQVMsTUFBTSxLQUFLLGFBQUEsR0FBZ0IsRUFBRSxRQUFRLEtBQUssT0FBTyxPQUFRLENBQUE7QUFBQSxFQUMxRjtBQUFBO0FBQUEsRUFHUSxlQUFxQjtBQUMzQixRQUFJLEtBQUssVUFBVTtBQUNqQjtBQUFBLElBQ0Y7QUFHTSxVQUFBLFdBQVcsS0FBSyxRQUFRLGVBQWU7QUFDN0MsUUFBSSxZQUFZLENBQUMsU0FBUyxZQUFZLEtBQUssU0FBUztBQUNsRDtBQUFBLElBQ0Y7QUFDSyxTQUFBLFVBQVUsQ0FBQyxLQUFLO0FBQ3JCLFNBQUssT0FBTztBQUNaLFNBQUssUUFBUTtBQUNiLFNBQUssV0FBVztFQUNsQjtBQUFBLEVBRW1CLFdBQVcsbUJBQStDOztBQUMzRSxVQUFNLFdBQVcsaUJBQWlCO0FBRTlCLFFBQUEsa0JBQWtCLElBQUksU0FBUyxHQUFHO0FBQ3BDLFdBQUssYUFBYSxnQkFBZ0IsR0FBRyxLQUFLLE9BQU8sRUFBRTtBQUFBLElBQ3JEO0FBRU0sVUFBQSxZQUFXLFVBQUssWUFBTCw4QkFBZTtBQUM1QixRQUFBLFlBQVksQ0FBQyxTQUFTLFlBQVksa0JBQWtCLElBQUksU0FBUyxLQUFLLEtBQUssU0FBUztBQUN0RiwyQ0FBVSxLQUFLLE9BQU8sQ0FBQyxNQUFNLE1BQU0sTUFBTSxRQUFRLENBQUMsTUFBTyxFQUFFLFVBQVU7QUFBQSxJQUN2RTtBQUFBLEVBQ0Y7QUFBQSxFQUVtQixpQkFBaUM7QUFDM0MsV0FBQTtBQUFBLG9EQUN5QyxLQUFLLGdCQUFnQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsOEJBSzNDLEtBQUssTUFBTTtBQUFBO0FBQUE7QUFBQSxFQUd2QztBQUNGO0FBOUZhLGNBR1ksU0FBeUI7QUFIckMsY0FJWSxTQUFTO0FBQUEsRUFDOUIsT0FBTztBQUFBLEVBQ1AsV0FBVztBQUFBLEVBQ1gsUUFBUTtBQUNWO0FBR29DLGdCQUFBO0FBQUEsRUFBbkMsU0FBUyxFQUFFLFNBQVMsTUFBTTtBQUFBLEdBWGhCLGNBV3lCLFdBQUEsVUFBQSxDQUFBO0FBR2UsZ0JBQUE7QUFBQSxFQUFsRCxTQUFTLEVBQUUsU0FBUyxNQUFNLE1BQU0sU0FBUztBQUFBLEdBZC9CLGNBY3dDLFdBQUEsV0FBQSxDQUFBO0FBSXhDLGdCQUFBO0FBQUEsRUFEVixTQUFTLEVBQUUsU0FBUyxNQUFNO0FBQUEsR0FqQmhCLGNBa0JBLFdBQUEsUUFBQSxDQUFBO0FBbEJBLGdCQUFOLGdCQUFBO0FBQUEsRUFGTixjQUFjLFNBQVM7QUFBQSxFQUN2QixVQUFVO0FBQUEsR0FDRSxhQUFBOyJ9
@@ -5,20 +5,7 @@ import { SbbLinkBaseElement } from "./core/base-elements.js";
5
5
  import { slotState } from "./core/decorators.js";
6
6
  import "./image.js";
7
7
  import "./link/block-link-static.js";
8
- const style = css`/**
9
- * Better font rendering (on OS X)
10
- * http://maximilianhoffmann.com/posts/better-font-rendering-on-osx
11
- *
12
- * Usage:
13
- *
14
- * .var_dark_on_light {
15
- * @include font-smoothing;
16
- * }
17
- * .var_light_on_dark {
18
- * @include font-smoothing-reset;
19
- * }
20
- */
21
- /** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
8
+ const style = css`/** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
22
9
  /*
23
10
  * SBB table mixin
24
11
  * Notes:
@@ -34,7 +21,7 @@ const style = css`/**
34
21
  :host {
35
22
  display: block;
36
23
  outline: none !important;
37
- --sbb-teaser-hero-brightness-hover: 1.075;
24
+ --sbb-teaser-hero-brightness-hover: var(--sbb-hover-image-brightness);
38
25
  --sbb-teaser-hero-chip-inset: var(--sbb-spacing-responsive-xxxs) auto auto
39
26
  var(--sbb-spacing-responsive-xxxs);
40
27
  --sbb-panel-width: 13.9375rem;
@@ -118,8 +105,6 @@ const style = css`/**
118
105
  }
119
106
 
120
107
  .sbb-teaser-hero__panel-text {
121
- -webkit-font-smoothing: antialiased;
122
- -moz-osx-font-smoothing: grayscale;
123
108
  font-family: var(--sbb-typo-font-family);
124
109
  font-size: var(--sbb-panel-font-size);
125
110
  font-weight: 300;
@@ -132,11 +117,6 @@ const style = css`/**
132
117
  padding: 0;
133
118
  }
134
119
 
135
- .sbb-teaser-hero__panel-link {
136
- -webkit-font-smoothing: antialiased;
137
- -moz-osx-font-smoothing: grayscale;
138
- }
139
-
140
120
  ::slotted([slot=image]),
141
121
  sbb-image {
142
122
  will-change: filter;
@@ -204,4 +184,4 @@ SbbTeaserHeroElement = __decorateClass([
204
184
  export {
205
185
  SbbTeaserHeroElement
206
186
  };
207
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVhc2VyLWhlcm8uanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50cy90ZWFzZXItaGVyby90ZWFzZXItaGVyby50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIENTU1Jlc3VsdEdyb3VwLCBub3RoaW5nLCB0eXBlIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgaHRtbCB9IGZyb20gJ2xpdC9zdGF0aWMtaHRtbC5qcyc7XG5cbmltcG9ydCB7IFNiYkxpbmtCYXNlRWxlbWVudCB9IGZyb20gJy4uL2NvcmUvYmFzZS1lbGVtZW50cy5qcyc7XG5pbXBvcnQgeyBzbG90U3RhdGUgfSBmcm9tICcuLi9jb3JlL2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90ZWFzZXItaGVyby5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJy4uL2ltYWdlLmpzJztcbmltcG9ydCAnLi4vbGluay9ibG9jay1saW5rLXN0YXRpYy5qcyc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYW4gaW1hZ2UgYW5kIGFuIGFjdGlvbiBjYWxsIHdpdGhpbiBhIHBhbmVsLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIHRleHQgY29udGVudCB0byB0aGUgcGFuZWxcbiAqIEBzbG90IGxpbmstY29udGVudCAtIExpbmsgY29udGVudCBvZiB0aGUgcGFuZWxcbiAqIEBzbG90IGltYWdlIC0gVGhlIGJhY2tncm91bmQgaW1hZ2UgdGhhdCBjYW4gYmUgYSBgc2JiLWltYWdlYFxuICogQHNsb3QgY2hpcCAtIFRoZSBgc2JiLWNoaXBgIGNvbXBvbmVudCB0aGF0IHdpbGwgYmUgZGlzcGxheWVkIG9uIHRvcC1sZWZ0IGNvcm5lclxuICovXG5AY3VzdG9tRWxlbWVudCgnc2JiLXRlYXNlci1oZXJvJylcbkBzbG90U3RhdGUoKVxuZXhwb3J0IGNsYXNzIFNiYlRlYXNlckhlcm9FbGVtZW50IGV4dGVuZHMgU2JiTGlua0Jhc2VFbGVtZW50IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgLyoqIFBhbmVsIGxpbmsgdGV4dC4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnbGluay1jb250ZW50JywgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgbGlua0NvbnRlbnQ/OiBzdHJpbmc7XG5cbiAgLyoqIEltYWdlIHNyYyB3aWxsIGJlIHBhc3NlZCB0byBgc2JiLWltYWdlYC4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnaW1hZ2Utc3JjJyB9KSBwdWJsaWMgaW1hZ2VTcmM/OiBzdHJpbmc7XG5cbiAgLyoqIEltYWdlIGFsdCB0ZXh0IHdpbGwgYmUgcGFzc2VkIHRvIGBzYmItaW1hZ2VgLiAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdpbWFnZS1hbHQnIH0pIHB1YmxpYyBpbWFnZUFsdD86IHN0cmluZztcblxuICBwcml2YXRlIF9jaGlwU2xvdENoYW5nZWQoKTogdm9pZCB7XG4gICAgdGhpcy5xdWVyeVNlbGVjdG9yKCdzYmItY2hpcCcpPy5zZXRBdHRyaWJ1dGUoJ2NvbG9yJywgJ2NoYXJjb2FsJyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPHNsb3QgbmFtZT1cImNoaXBcIiBAc2xvdGNoYW5nZT0keygpID0+IHRoaXMuX2NoaXBTbG90Q2hhbmdlZCgpfT48L3Nsb3Q+XG4gICAgICA8c3BhbiBjbGFzcz1cInNiYi10ZWFzZXItaGVyb19fcGFuZWxcIj5cbiAgICAgICAgPHAgY2xhc3M9XCJzYmItdGVhc2VyLWhlcm9fX3BhbmVsLXRleHRcIj5cbiAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgIDwvcD5cbiAgICAgICAgJHt0aGlzLmhyZWZcbiAgICAgICAgICA/IGh0bWxgPHNiYi1ibG9jay1saW5rLXN0YXRpY1xuICAgICAgICAgICAgICBjbGFzcz1cInNiYi10ZWFzZXItaGVyb19fcGFuZWwtbGlua1wiXG4gICAgICAgICAgICAgIGljb24tbmFtZT1cImNoZXZyb24tc21hbGwtcmlnaHQtc21hbGxcIlxuICAgICAgICAgICAgICBpY29uLXBsYWNlbWVudD1cImVuZFwiXG4gICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgbmVnYXRpdmVcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHNsb3QgbmFtZT1cImxpbmstY29udGVudFwiPiR7dGhpcy5saW5rQ29udGVudH08L3Nsb3Q+XG4gICAgICAgICAgICA8L3NiYi1ibG9jay1saW5rLXN0YXRpYz5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgPC9zcGFuPlxuICAgICAgPHNsb3QgbmFtZT1cImltYWdlXCI+XG4gICAgICAgICR7dGhpcy5pbWFnZVNyY1xuICAgICAgICAgID8gaHRtbGA8c2JiLWltYWdlIGltYWdlLXNyYz0ke3RoaXMuaW1hZ2VTcmN9IGFsdD0ke3RoaXMuaW1hZ2VBbHQgPz8gbm90aGluZ30+PC9zYmItaW1hZ2U+YFxuICAgICAgICAgIDogbm90aGluZ31cbiAgICAgIDwvc2xvdD5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdGVhc2VyLWhlcm8nOiBTYmJUZWFzZXJIZXJvRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBc0JhLElBQUEsdUJBQU4sY0FBbUMsbUJBQW1CO0FBQUEsRUFZbkQsbUJBQXlCOztBQUMvQixlQUFLLGNBQWMsVUFBVSxNQUE3QixtQkFBZ0MsYUFBYSxTQUFTO0FBQUEsRUFDeEQ7QUFBQSxFQUVtQixpQkFBaUM7QUFDM0MsV0FBQTtBQUFBLHNDQUMyQixNQUFNLEtBQUssa0JBQWtCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxVQUt6RCxLQUFLLE9BQ0g7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSwwQ0FPOEIsS0FBSyxXQUFXO0FBQUEsd0NBRTlDLE9BQU87QUFBQTtBQUFBO0FBQUEsVUFHVCxLQUFLLFdBQ0gsNEJBQTRCLEtBQUssUUFBUSxRQUFRLEtBQUssWUFBWSxPQUFPLGtCQUN6RSxPQUFPO0FBQUE7QUFBQTtBQUFBLEVBR2pCO0FBQ0Y7QUExQ2EscUJBQ1ksU0FBeUI7QUFHZSxnQkFBQTtBQUFBLEVBQTlELFNBQVMsRUFBRSxXQUFXLGdCQUFnQixTQUFTLE1BQU07QUFBQSxHQUozQyxxQkFJb0QsV0FBQSxlQUFBLENBQUE7QUFHbEIsZ0JBQUE7QUFBQSxFQUE1QyxTQUFTLEVBQUUsV0FBVyxhQUFhO0FBQUEsR0FQekIscUJBT2tDLFdBQUEsWUFBQSxDQUFBO0FBR0EsZ0JBQUE7QUFBQSxFQUE1QyxTQUFTLEVBQUUsV0FBVyxhQUFhO0FBQUEsR0FWekIscUJBVWtDLFdBQUEsWUFBQSxDQUFBO0FBVmxDLHVCQUFOLGdCQUFBO0FBQUEsRUFGTixjQUFjLGlCQUFpQjtBQUFBLEVBQy9CLFVBQVU7QUFBQSxHQUNFLG9CQUFBOyJ9
187
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVhc2VyLWhlcm8uanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50cy90ZWFzZXItaGVyby90ZWFzZXItaGVyby50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIENTU1Jlc3VsdEdyb3VwLCBub3RoaW5nLCB0eXBlIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgaHRtbCB9IGZyb20gJ2xpdC9zdGF0aWMtaHRtbC5qcyc7XG5cbmltcG9ydCB7IFNiYkxpbmtCYXNlRWxlbWVudCB9IGZyb20gJy4uL2NvcmUvYmFzZS1lbGVtZW50cy5qcyc7XG5pbXBvcnQgeyBzbG90U3RhdGUgfSBmcm9tICcuLi9jb3JlL2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90ZWFzZXItaGVyby5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJy4uL2ltYWdlLmpzJztcbmltcG9ydCAnLi4vbGluay9ibG9jay1saW5rLXN0YXRpYy5qcyc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYW4gaW1hZ2UgYW5kIGFuIGFjdGlvbiBjYWxsIHdpdGhpbiBhIHBhbmVsLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIHRleHQgY29udGVudCB0byB0aGUgcGFuZWxcbiAqIEBzbG90IGxpbmstY29udGVudCAtIExpbmsgY29udGVudCBvZiB0aGUgcGFuZWxcbiAqIEBzbG90IGltYWdlIC0gVGhlIGJhY2tncm91bmQgaW1hZ2UgdGhhdCBjYW4gYmUgYSBgc2JiLWltYWdlYFxuICogQHNsb3QgY2hpcCAtIFRoZSBgc2JiLWNoaXBgIGNvbXBvbmVudCB0aGF0IHdpbGwgYmUgZGlzcGxheWVkIG9uIHRvcC1sZWZ0IGNvcm5lclxuICovXG5AY3VzdG9tRWxlbWVudCgnc2JiLXRlYXNlci1oZXJvJylcbkBzbG90U3RhdGUoKVxuZXhwb3J0IGNsYXNzIFNiYlRlYXNlckhlcm9FbGVtZW50IGV4dGVuZHMgU2JiTGlua0Jhc2VFbGVtZW50IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgLyoqIFBhbmVsIGxpbmsgdGV4dC4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnbGluay1jb250ZW50JywgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgbGlua0NvbnRlbnQ/OiBzdHJpbmc7XG5cbiAgLyoqIEltYWdlIHNyYyB3aWxsIGJlIHBhc3NlZCB0byBgc2JiLWltYWdlYC4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnaW1hZ2Utc3JjJyB9KSBwdWJsaWMgaW1hZ2VTcmM/OiBzdHJpbmc7XG5cbiAgLyoqIEltYWdlIGFsdCB0ZXh0IHdpbGwgYmUgcGFzc2VkIHRvIGBzYmItaW1hZ2VgLiAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdpbWFnZS1hbHQnIH0pIHB1YmxpYyBpbWFnZUFsdD86IHN0cmluZztcblxuICBwcml2YXRlIF9jaGlwU2xvdENoYW5nZWQoKTogdm9pZCB7XG4gICAgdGhpcy5xdWVyeVNlbGVjdG9yKCdzYmItY2hpcCcpPy5zZXRBdHRyaWJ1dGUoJ2NvbG9yJywgJ2NoYXJjb2FsJyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPHNsb3QgbmFtZT1cImNoaXBcIiBAc2xvdGNoYW5nZT0keygpID0+IHRoaXMuX2NoaXBTbG90Q2hhbmdlZCgpfT48L3Nsb3Q+XG4gICAgICA8c3BhbiBjbGFzcz1cInNiYi10ZWFzZXItaGVyb19fcGFuZWxcIj5cbiAgICAgICAgPHAgY2xhc3M9XCJzYmItdGVhc2VyLWhlcm9fX3BhbmVsLXRleHRcIj5cbiAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgIDwvcD5cbiAgICAgICAgJHt0aGlzLmhyZWZcbiAgICAgICAgICA/IGh0bWxgPHNiYi1ibG9jay1saW5rLXN0YXRpY1xuICAgICAgICAgICAgICBjbGFzcz1cInNiYi10ZWFzZXItaGVyb19fcGFuZWwtbGlua1wiXG4gICAgICAgICAgICAgIGljb24tbmFtZT1cImNoZXZyb24tc21hbGwtcmlnaHQtc21hbGxcIlxuICAgICAgICAgICAgICBpY29uLXBsYWNlbWVudD1cImVuZFwiXG4gICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgbmVnYXRpdmVcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHNsb3QgbmFtZT1cImxpbmstY29udGVudFwiPiR7dGhpcy5saW5rQ29udGVudH08L3Nsb3Q+XG4gICAgICAgICAgICA8L3NiYi1ibG9jay1saW5rLXN0YXRpYz5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgPC9zcGFuPlxuICAgICAgPHNsb3QgbmFtZT1cImltYWdlXCI+XG4gICAgICAgICR7dGhpcy5pbWFnZVNyY1xuICAgICAgICAgID8gaHRtbGA8c2JiLWltYWdlIGltYWdlLXNyYz0ke3RoaXMuaW1hZ2VTcmN9IGFsdD0ke3RoaXMuaW1hZ2VBbHQgPz8gbm90aGluZ30+PC9zYmItaW1hZ2U+YFxuICAgICAgICAgIDogbm90aGluZ31cbiAgICAgIDwvc2xvdD5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdGVhc2VyLWhlcm8nOiBTYmJUZWFzZXJIZXJvRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXNCYSxJQUFBLHVCQUFOLGNBQW1DLG1CQUFtQjtBQUFBLEVBWW5ELG1CQUF5Qjs7QUFDL0IsZUFBSyxjQUFjLFVBQVUsTUFBN0IsbUJBQWdDLGFBQWEsU0FBUztBQUFBLEVBQ3hEO0FBQUEsRUFFbUIsaUJBQWlDO0FBQzNDLFdBQUE7QUFBQSxzQ0FDMkIsTUFBTSxLQUFLLGtCQUFrQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsVUFLekQsS0FBSyxPQUNIO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsMENBTzhCLEtBQUssV0FBVztBQUFBLHdDQUU5QyxPQUFPO0FBQUE7QUFBQTtBQUFBLFVBR1QsS0FBSyxXQUNILDRCQUE0QixLQUFLLFFBQVEsUUFBUSxLQUFLLFlBQVksT0FBTyxrQkFDekUsT0FBTztBQUFBO0FBQUE7QUFBQSxFQUdqQjtBQUNGO0FBMUNhLHFCQUNZLFNBQXlCO0FBR2UsZ0JBQUE7QUFBQSxFQUE5RCxTQUFTLEVBQUUsV0FBVyxnQkFBZ0IsU0FBUyxNQUFNO0FBQUEsR0FKM0MscUJBSW9ELFdBQUEsZUFBQSxDQUFBO0FBR2xCLGdCQUFBO0FBQUEsRUFBNUMsU0FBUyxFQUFFLFdBQVcsYUFBYTtBQUFBLEdBUHpCLHFCQU9rQyxXQUFBLFlBQUEsQ0FBQTtBQUdBLGdCQUFBO0FBQUEsRUFBNUMsU0FBUyxFQUFFLFdBQVcsYUFBYTtBQUFBLEdBVnpCLHFCQVVrQyxXQUFBLFlBQUEsQ0FBQTtBQVZsQyx1QkFBTixnQkFBQTtBQUFBLEVBRk4sY0FBYyxpQkFBaUI7QUFBQSxFQUMvQixVQUFVO0FBQUEsR0FDRSxvQkFBQTsifQ==
@@ -40,20 +40,7 @@ const SbbTeaserProductCommonElementMixin = (superClass) => {
40
40
  ], SbbTeaserProductCommonElement);
41
41
  return SbbTeaserProductCommonElement;
42
42
  };
43
- const teaserProductCommon = css`/**
44
- * Better font rendering (on OS X)
45
- * http://maximilianhoffmann.com/posts/better-font-rendering-on-osx
46
- *
47
- * Usage:
48
- *
49
- * .var_dark_on_light {
50
- * @include font-smoothing;
51
- * }
52
- * .var_light_on_dark {
53
- * @include font-smoothing-reset;
54
- * }
55
- */
56
- /** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
43
+ const teaserProductCommon = css`/** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
57
44
  /*
58
45
  * SBB table mixin
59
46
  * Notes:
@@ -216,4 +203,4 @@ export {
216
203
  SbbTeaserProductCommonElementMixin,
217
204
  teaserProductCommon as teaserProductCommonStyle
218
205
  };
219
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvdGVhc2VyLXByb2R1Y3QvY29tbW9uL3RlYXNlci1wcm9kdWN0LWNvbW1vbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBodG1sLCB0eXBlIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYkFjdGlvbkJhc2VFbGVtZW50IH0gZnJvbSAnLi4vLi4vY29yZS9iYXNlLWVsZW1lbnRzLmpzJztcbmltcG9ydCB7IHNsb3RTdGF0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQge1xuICBTYmJOZWdhdGl2ZU1peGluLFxuICB0eXBlIFNiYk5lZ2F0aXZlTWl4aW5UeXBlLFxuICB0eXBlIEFic3RyYWN0Q29uc3RydWN0b3IsXG59IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcblxuZXhwb3J0IGRlY2xhcmUgY2xhc3MgU2JiVGVhc2VyUHJvZHVjdENvbW1vbkVsZW1lbnRNaXhpblR5cGUgZXh0ZW5kcyBTYmJOZWdhdGl2ZU1peGluVHlwZSB7XG4gIHB1YmxpYyBpbWFnZUFsaWdubWVudD86ICdhZnRlcicgfCAnYmVmb3JlJztcbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuZXhwb3J0IGNvbnN0IFNiYlRlYXNlclByb2R1Y3RDb21tb25FbGVtZW50TWl4aW4gPSA8XG4gIFQgZXh0ZW5kcyBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYkFjdGlvbkJhc2VFbGVtZW50Pixcbj4oXG4gIHN1cGVyQ2xhc3M6IFQsXG4pOiBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYlRlYXNlclByb2R1Y3RDb21tb25FbGVtZW50TWl4aW5UeXBlPiAmIFQgPT4ge1xuICBAc2xvdFN0YXRlKClcbiAgYWJzdHJhY3QgY2xhc3MgU2JiVGVhc2VyUHJvZHVjdENvbW1vbkVsZW1lbnRcbiAgICBleHRlbmRzIFNiYk5lZ2F0aXZlTWl4aW4oc3VwZXJDbGFzcylcbiAgICBpbXBsZW1lbnRzIFNiYlRlYXNlclByb2R1Y3RDb21tb25FbGVtZW50TWl4aW5UeXBlXG4gIHtcbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoZSBmdWxseSB2aXNpYmxlIHBhcnQgb2YgdGhlIGltYWdlIGlzIGFsaWduZWQgJ2JlZm9yZScgb3IgJ2FmdGVyJyB0aGUgY29udGVudC5cbiAgICAgKiBPbmx5IHJlbGV2YW50IHN0YXJ0aW5nIGZyb20gbGFyZ2UgYnJlYWtwb2ludC5cbiAgICAgKi9cbiAgICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdpbWFnZS1hbGlnbm1lbnQnLCByZWZsZWN0OiB0cnVlIH0pXG4gICAgcHVibGljIGltYWdlQWxpZ25tZW50OiAnYWZ0ZXInIHwgJ2JlZm9yZScgPSAnYWZ0ZXInO1xuXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlclRlbXBsYXRlKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICAgIHJldHVybiBodG1sYFxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi10ZWFzZXItcHJvZHVjdF9faW1hZ2UtY29udGFpbmVyXCI+PHNsb3QgbmFtZT1cImltYWdlXCI+PC9zbG90Pjwvc3Bhbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItdGVhc2VyLXByb2R1Y3RfX2NvbnRhaW5lclwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRlYXNlci1wcm9kdWN0X19jb250ZW50XCI+XG4gICAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRlYXNlci1wcm9kdWN0X19mb290bm90ZVwiPlxuICAgICAgICAgICAgPHNsb3QgbmFtZT1cImZvb3Rub3RlXCI+PC9zbG90PlxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgYDtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIFNiYlRlYXNlclByb2R1Y3RDb21tb25FbGVtZW50IGFzIEFic3RyYWN0Q29uc3RydWN0b3I8U2JiVGVhc2VyUHJvZHVjdENvbW1vbkVsZW1lbnRNaXhpblR5cGU+ICZcbiAgICBUO1xufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQWdCYSxNQUFBLHFDQUFxQyxDQUdoRCxlQUNvRTtBQUVwRSxNQUFlLGdDQUFmLGNBQ1UsaUJBQWlCLFVBQVUsRUFFckM7QUFBQSxJQUhBLGNBQUE7QUFBQSxZQUFBLEdBQUEsU0FBQTtBQVNFLFdBQU8saUJBQXFDO0FBQUEsSUFBQTtBQUFBLElBRXpCLGlCQUFpQztBQUMzQyxhQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQVdUO0FBQUEsRUFBQTtBQWRPLGtCQUFBO0FBQUEsSUFETixTQUFTLEVBQUUsV0FBVyxtQkFBbUIsU0FBUyxNQUFNO0FBQUEsRUFBQSxHQVI1Qyw4QkFTTixXQUFBLGtCQUFBLENBQUE7QUFUVCxrQ0FBQSxnQkFBQTtBQUFBLElBREMsVUFBVTtBQUFBLEVBQ0ksR0FBQSw2QkFBQTtBQXlCUixTQUFBO0FBRVQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyJ9
206
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvdGVhc2VyLXByb2R1Y3QvY29tbW9uL3RlYXNlci1wcm9kdWN0LWNvbW1vbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBodG1sLCB0eXBlIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYkFjdGlvbkJhc2VFbGVtZW50IH0gZnJvbSAnLi4vLi4vY29yZS9iYXNlLWVsZW1lbnRzLmpzJztcbmltcG9ydCB7IHNsb3RTdGF0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQge1xuICBTYmJOZWdhdGl2ZU1peGluLFxuICB0eXBlIFNiYk5lZ2F0aXZlTWl4aW5UeXBlLFxuICB0eXBlIEFic3RyYWN0Q29uc3RydWN0b3IsXG59IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcblxuZXhwb3J0IGRlY2xhcmUgY2xhc3MgU2JiVGVhc2VyUHJvZHVjdENvbW1vbkVsZW1lbnRNaXhpblR5cGUgZXh0ZW5kcyBTYmJOZWdhdGl2ZU1peGluVHlwZSB7XG4gIHB1YmxpYyBpbWFnZUFsaWdubWVudD86ICdhZnRlcicgfCAnYmVmb3JlJztcbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuZXhwb3J0IGNvbnN0IFNiYlRlYXNlclByb2R1Y3RDb21tb25FbGVtZW50TWl4aW4gPSA8XG4gIFQgZXh0ZW5kcyBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYkFjdGlvbkJhc2VFbGVtZW50Pixcbj4oXG4gIHN1cGVyQ2xhc3M6IFQsXG4pOiBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYlRlYXNlclByb2R1Y3RDb21tb25FbGVtZW50TWl4aW5UeXBlPiAmIFQgPT4ge1xuICBAc2xvdFN0YXRlKClcbiAgYWJzdHJhY3QgY2xhc3MgU2JiVGVhc2VyUHJvZHVjdENvbW1vbkVsZW1lbnRcbiAgICBleHRlbmRzIFNiYk5lZ2F0aXZlTWl4aW4oc3VwZXJDbGFzcylcbiAgICBpbXBsZW1lbnRzIFNiYlRlYXNlclByb2R1Y3RDb21tb25FbGVtZW50TWl4aW5UeXBlXG4gIHtcbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoZSBmdWxseSB2aXNpYmxlIHBhcnQgb2YgdGhlIGltYWdlIGlzIGFsaWduZWQgJ2JlZm9yZScgb3IgJ2FmdGVyJyB0aGUgY29udGVudC5cbiAgICAgKiBPbmx5IHJlbGV2YW50IHN0YXJ0aW5nIGZyb20gbGFyZ2UgYnJlYWtwb2ludC5cbiAgICAgKi9cbiAgICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdpbWFnZS1hbGlnbm1lbnQnLCByZWZsZWN0OiB0cnVlIH0pXG4gICAgcHVibGljIGltYWdlQWxpZ25tZW50OiAnYWZ0ZXInIHwgJ2JlZm9yZScgPSAnYWZ0ZXInO1xuXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlclRlbXBsYXRlKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICAgIHJldHVybiBodG1sYFxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi10ZWFzZXItcHJvZHVjdF9faW1hZ2UtY29udGFpbmVyXCI+PHNsb3QgbmFtZT1cImltYWdlXCI+PC9zbG90Pjwvc3Bhbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItdGVhc2VyLXByb2R1Y3RfX2NvbnRhaW5lclwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRlYXNlci1wcm9kdWN0X19jb250ZW50XCI+XG4gICAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRlYXNlci1wcm9kdWN0X19mb290bm90ZVwiPlxuICAgICAgICAgICAgPHNsb3QgbmFtZT1cImZvb3Rub3RlXCI+PC9zbG90PlxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgYDtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIFNiYlRlYXNlclByb2R1Y3RDb21tb25FbGVtZW50IGFzIEFic3RyYWN0Q29uc3RydWN0b3I8U2JiVGVhc2VyUHJvZHVjdENvbW1vbkVsZW1lbnRNaXhpblR5cGU+ICZcbiAgICBUO1xufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQWdCYSxNQUFBLHFDQUFxQyxDQUdoRCxlQUNvRTtBQUVwRSxNQUFlLGdDQUFmLGNBQ1UsaUJBQWlCLFVBQVUsRUFFckM7QUFBQSxJQUhBLGNBQUE7QUFBQSxZQUFBLEdBQUEsU0FBQTtBQVNFLFdBQU8saUJBQXFDO0FBQUEsSUFBQTtBQUFBLElBRXpCLGlCQUFpQztBQUMzQyxhQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQVdUO0FBQUEsRUFBQTtBQWRPLGtCQUFBO0FBQUEsSUFETixTQUFTLEVBQUUsV0FBVyxtQkFBbUIsU0FBUyxNQUFNO0FBQUEsRUFBQSxHQVI1Qyw4QkFTTixXQUFBLGtCQUFBLENBQUE7QUFUVCxrQ0FBQSxnQkFBQTtBQUFBLElBREMsVUFBVTtBQUFBLEVBQ0ksR0FBQSw2QkFBQTtBQXlCUixTQUFBO0FBRVQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7In0=