@sbb-esta/lyne-elements 1.9.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 (291) 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/core/a11y/focus-visible-within-controller.d.ts +1 -1
  30. package/core/a11y/focus-visible-within-controller.d.ts.map +1 -1
  31. package/core/a11y/input-modality-detector.d.ts +2 -2
  32. package/core/a11y/input-modality-detector.d.ts.map +1 -1
  33. package/core/a11y.js +3 -3
  34. package/core/base-elements/action-base-element.d.ts +1 -0
  35. package/core/base-elements/action-base-element.d.ts.map +1 -1
  36. package/core/base-elements/button-base-element.d.ts +1 -1
  37. package/core/base-elements/button-base-element.d.ts.map +1 -1
  38. package/core/base-elements/link-base-element.d.ts.map +1 -1
  39. package/core/base-elements.js +47 -45
  40. package/core/controllers/slot-state-controller.d.ts +1 -1
  41. package/core/controllers/slot-state-controller.d.ts.map +1 -1
  42. package/core/mixins/disabled-mixin.d.ts +8 -0
  43. package/core/mixins/disabled-mixin.d.ts.map +1 -1
  44. package/core/mixins.js +97 -89
  45. package/core/styles/mixins/panel.scss +0 -2
  46. package/core/styles/mixins/table.scss +11 -0
  47. package/core/styles/mixins/typo.scss +0 -30
  48. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +1 -0
  49. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +2 -1
  50. package/core/styles/table.scss +6 -1
  51. package/core.css +2 -14
  52. package/custom-elements.json +370 -298
  53. package/datepicker/datepicker/datepicker.d.ts.map +1 -1
  54. package/datepicker/datepicker-toggle/datepicker-toggle.d.ts +2 -0
  55. package/datepicker/datepicker-toggle/datepicker-toggle.d.ts.map +1 -1
  56. package/datepicker/datepicker-toggle.js +56 -46
  57. package/datepicker/datepicker.js +1 -0
  58. package/development/accordion/accordion.d.ts +5 -5
  59. package/development/accordion/accordion.d.ts.map +1 -1
  60. package/development/accordion.js +25 -38
  61. package/development/action-group/action-group.d.ts +1 -1
  62. package/development/action-group/action-group.d.ts.map +1 -1
  63. package/development/action-group.js +8 -21
  64. package/development/alert/alert/alert.d.ts +1 -1
  65. package/development/alert/alert/alert.d.ts.map +1 -1
  66. package/development/alert/alert-group.js +2 -15
  67. package/development/alert/alert.js +6 -19
  68. package/development/autocomplete/autocomplete-base-element.d.ts +1 -1
  69. package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  70. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts +1 -1
  71. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts.map +1 -1
  72. package/development/autocomplete-grid/autocomplete-grid-button.js +2 -15
  73. package/development/autocomplete-grid/autocomplete-grid-cell.js +2 -15
  74. package/development/autocomplete-grid/autocomplete-grid-option.js +4 -17
  75. package/development/autocomplete-grid/autocomplete-grid-row.js +2 -15
  76. package/development/autocomplete-grid/autocomplete-grid.js +6 -6
  77. package/development/autocomplete.js +7 -20
  78. package/development/breadcrumb/breadcrumb-group.js +2 -15
  79. package/development/breadcrumb/breadcrumb.js +2 -15
  80. package/development/button/button.js +3 -3
  81. package/development/button/common.js +2 -17
  82. package/development/button/mini-button/mini-button.d.ts.map +1 -1
  83. package/development/button/mini-button-group.js +2 -15
  84. package/development/button/mini-button.js +6 -17
  85. package/development/button/secondary-button.js +3 -3
  86. package/development/button/tertiary-button.js +3 -3
  87. package/development/button/transparent-button.js +3 -3
  88. package/development/calendar/calendar.d.ts +2 -2
  89. package/development/calendar/calendar.d.ts.map +1 -1
  90. package/development/calendar.js +7 -19
  91. package/development/card/card-badge.js +2 -15
  92. package/development/card/card.js +2 -15
  93. package/development/card/common.js +2 -15
  94. package/development/checkbox/checkbox-group.js +2 -15
  95. package/development/checkbox/checkbox.js +2 -15
  96. package/development/checkbox/common.js +1 -14
  97. package/development/chip.js +2 -15
  98. package/development/clock/clock.d.ts +2 -2
  99. package/development/clock/clock.d.ts.map +1 -1
  100. package/development/clock.js +2 -15
  101. package/development/container/container.js +1 -14
  102. package/development/container/sticky-bar.js +2 -15
  103. package/development/core/a11y/focus-visible-within-controller.d.ts +1 -1
  104. package/development/core/a11y/focus-visible-within-controller.d.ts.map +1 -1
  105. package/development/core/a11y/input-modality-detector.d.ts +2 -2
  106. package/development/core/a11y/input-modality-detector.d.ts.map +1 -1
  107. package/development/core/a11y.js +6 -6
  108. package/development/core/base-elements/action-base-element.d.ts +1 -0
  109. package/development/core/base-elements/action-base-element.d.ts.map +1 -1
  110. package/development/core/base-elements/button-base-element.d.ts +1 -1
  111. package/development/core/base-elements/button-base-element.d.ts.map +1 -1
  112. package/development/core/base-elements/link-base-element.d.ts.map +1 -1
  113. package/development/core/base-elements.js +11 -2
  114. package/development/core/controllers/slot-state-controller.d.ts +1 -1
  115. package/development/core/controllers/slot-state-controller.d.ts.map +1 -1
  116. package/development/core/controllers.js +1 -1
  117. package/development/core/mixins/disabled-mixin.d.ts +8 -0
  118. package/development/core/mixins/disabled-mixin.d.ts.map +1 -1
  119. package/development/core/mixins.js +24 -15
  120. package/development/datepicker/datepicker/datepicker.d.ts.map +1 -1
  121. package/development/datepicker/datepicker-next-day.js +2 -15
  122. package/development/datepicker/datepicker-previous-day.js +2 -15
  123. package/development/datepicker/datepicker-toggle/datepicker-toggle.d.ts +2 -0
  124. package/development/datepicker/datepicker-toggle/datepicker-toggle.d.ts.map +1 -1
  125. package/development/datepicker/datepicker-toggle.js +20 -22
  126. package/development/datepicker/datepicker.js +3 -15
  127. package/development/dialog/dialog-actions.js +2 -15
  128. package/development/dialog/dialog-content.js +2 -15
  129. package/development/dialog/dialog-title.js +2 -15
  130. package/development/dialog/dialog.js +3 -16
  131. package/development/divider.js +2 -15
  132. package/development/expansion-panel/expansion-panel-content.js +2 -15
  133. package/development/expansion-panel/expansion-panel-header.js +5 -17
  134. package/development/expansion-panel/expansion-panel.js +2 -15
  135. package/development/file-selector/file-selector.d.ts +4 -4
  136. package/development/file-selector/file-selector.d.ts.map +1 -1
  137. package/development/file-selector.js +2 -17
  138. package/development/flip-card/flip-card-details.js +2 -15
  139. package/development/flip-card/flip-card-summary.js +2 -15
  140. package/development/flip-card/flip-card.js +2 -15
  141. package/development/footer.js +2 -15
  142. package/development/form-error.js +2 -15
  143. package/development/form-field/form-field-clear.js +2 -15
  144. package/development/form-field/form-field.js +1 -14
  145. package/development/header/common.js +2 -15
  146. package/development/header/header.js +2 -15
  147. package/development/icon/icon.d.ts +6 -0
  148. package/development/icon/icon.d.ts.map +1 -1
  149. package/development/icon.js +10 -15
  150. package/development/image.js +4 -17
  151. package/development/journey-header.js +2 -15
  152. package/development/lead-container.js +2 -15
  153. package/development/link/block-link-button.js +3 -3
  154. package/development/link/common.js +4 -43
  155. package/development/link/link-button.js +3 -3
  156. package/development/link-list/common.js +2 -15
  157. package/development/link-list/link-list-anchor.js +2 -15
  158. package/development/link-list/link-list.js +2 -15
  159. package/development/loading-indicator.js +2 -15
  160. package/development/logo.js +2 -15
  161. package/development/map-container.js +2 -15
  162. package/development/menu/common.js +2 -15
  163. package/development/menu/menu/menu.d.ts.map +1 -1
  164. package/development/menu/menu-button.js +3 -3
  165. package/development/menu/menu.js +3 -18
  166. package/development/message.js +2 -15
  167. package/development/navigation/common.js +2 -17
  168. package/development/navigation/navigation-list.js +2 -15
  169. package/development/navigation/navigation-marker.js +2 -17
  170. package/development/navigation/navigation-section.js +2 -19
  171. package/development/navigation/navigation.js +2 -15
  172. package/development/notification.js +2 -15
  173. package/development/option/optgroup/optgroup-base-element.d.ts +2 -2
  174. package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -1
  175. package/development/option/optgroup.js +2 -15
  176. package/development/option/option/option-base-element.d.ts +14 -4
  177. package/development/option/option/option-base-element.d.ts.map +1 -1
  178. package/development/option/option.js +15 -21
  179. package/development/overlay/overlay-base-element.d.ts +1 -1
  180. package/development/overlay/overlay-base-element.d.ts.map +1 -1
  181. package/development/overlay.js +2 -15
  182. package/development/popover/popover-trigger.js +4 -17
  183. package/development/popover/popover.js +2 -15
  184. package/development/radio-button/common.js +2 -15
  185. package/development/radio-button/radio-button-group/radio-button-group.d.ts +1 -1
  186. package/development/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
  187. package/development/radio-button/radio-button-group.js +9 -22
  188. package/development/radio-button/radio-button.js +2 -15
  189. package/development/screen-reader-only.js +2 -15
  190. package/development/select/select.d.ts.map +1 -1
  191. package/development/select.js +30 -43
  192. package/development/selection-expansion-panel/selection-expansion-panel.d.ts +12 -3
  193. package/development/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -1
  194. package/development/selection-expansion-panel.js +38 -18
  195. package/development/signet.js +2 -15
  196. package/development/skiplink-list.js +2 -15
  197. package/development/slider/slider.d.ts.map +1 -1
  198. package/development/slider.js +10 -16
  199. package/development/status.js +2 -15
  200. package/development/stepper/step-label/step-label.d.ts +6 -6
  201. package/development/stepper/step-label/step-label.d.ts.map +1 -1
  202. package/development/stepper/step-label.js +31 -44
  203. package/development/stepper/step.js +2 -15
  204. package/development/stepper/stepper/stepper.d.ts +3 -3
  205. package/development/stepper/stepper/stepper.d.ts.map +1 -1
  206. package/development/stepper/stepper.js +2 -15
  207. package/development/table/table-wrapper.js +2 -15
  208. package/development/tabs/tab-group/tab-group.d.ts +4 -4
  209. package/development/tabs/tab-group/tab-group.d.ts.map +1 -1
  210. package/development/tabs/tab-group.js +22 -35
  211. package/development/tabs/tab-label.js +2 -19
  212. package/development/tabs/tab.js +1 -14
  213. package/development/tag/tag-group.js +2 -15
  214. package/development/tag/tag.js +4 -17
  215. package/development/teaser-hero.js +3 -23
  216. package/development/teaser-product/common.js +2 -15
  217. package/development/teaser-product/teaser-product.js +3 -16
  218. package/development/teaser.js +2 -15
  219. package/development/time-input.js +2 -15
  220. package/development/timetable-occupancy-icon.js +2 -15
  221. package/development/timetable-occupancy.js +2 -15
  222. package/development/title.js +3 -41
  223. package/development/toast.js +2 -17
  224. package/development/toggle/toggle/toggle.d.ts +2 -2
  225. package/development/toggle/toggle/toggle.d.ts.map +1 -1
  226. package/development/toggle/toggle-option.js +2 -15
  227. package/development/toggle/toggle.js +23 -36
  228. package/development/toggle-check.js +1 -14
  229. package/development/train/train-blocked-passage.js +2 -15
  230. package/development/train/train-formation.js +2 -15
  231. package/development/train/train-wagon.js +2 -17
  232. package/development/train/train.js +2 -15
  233. package/development/visual-checkbox.js +2 -15
  234. package/dialog/dialog.js +1 -1
  235. package/expansion-panel/expansion-panel-header.js +5 -5
  236. package/file-selector/file-selector.d.ts +4 -4
  237. package/file-selector/file-selector.d.ts.map +1 -1
  238. package/file-selector.js +1 -1
  239. package/icon/icon.d.ts +6 -0
  240. package/icon/icon.d.ts.map +1 -1
  241. package/icon.js +27 -19
  242. package/image.js +2 -2
  243. package/link/block-link-button.js +10 -10
  244. package/link/link-button.js +4 -4
  245. package/lists.css +0 -13
  246. package/menu/menu/menu.d.ts.map +1 -1
  247. package/menu/menu-button.js +13 -13
  248. package/menu/menu.js +7 -9
  249. package/navigation/common.js +1 -1
  250. package/navigation/navigation-marker.js +1 -1
  251. package/navigation/navigation-section.js +1 -1
  252. package/option/optgroup/optgroup-base-element.d.ts +2 -2
  253. package/option/optgroup/optgroup-base-element.d.ts.map +1 -1
  254. package/option/option/option-base-element.d.ts +14 -4
  255. package/option/option/option-base-element.d.ts.map +1 -1
  256. package/option/option.js +32 -25
  257. package/overlay/overlay-base-element.d.ts +1 -1
  258. package/overlay/overlay-base-element.d.ts.map +1 -1
  259. package/package.json +1 -1
  260. package/popover/popover-trigger.js +1 -1
  261. package/radio-button/radio-button-group/radio-button-group.d.ts +1 -1
  262. package/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
  263. package/radio-button/radio-button-group.js +5 -5
  264. package/select/select.d.ts.map +1 -1
  265. package/select.js +23 -23
  266. package/selection-expansion-panel/selection-expansion-panel.d.ts +12 -3
  267. package/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -1
  268. package/selection-expansion-panel.js +70 -49
  269. package/slider/slider.d.ts.map +1 -1
  270. package/slider.js +2 -2
  271. package/standard-theme.css +35 -23
  272. package/stepper/step-label/step-label.d.ts +6 -6
  273. package/stepper/step-label/step-label.d.ts.map +1 -1
  274. package/stepper/step-label.js +20 -20
  275. package/stepper/stepper/stepper.d.ts +3 -3
  276. package/stepper/stepper/stepper.d.ts.map +1 -1
  277. package/tabs/tab-group/tab-group.d.ts +4 -4
  278. package/tabs/tab-group/tab-group.d.ts.map +1 -1
  279. package/tabs/tab-group.js +15 -15
  280. package/tabs/tab-label.js +12 -12
  281. package/tag/tag.js +19 -19
  282. package/teaser-hero.js +13 -13
  283. package/teaser-product/teaser-product.js +5 -5
  284. package/teaser.js +15 -15
  285. package/title.js +23 -23
  286. package/toast.js +4 -4
  287. package/toggle/toggle/toggle.d.ts +2 -2
  288. package/toggle/toggle/toggle.d.ts.map +1 -1
  289. package/toggle/toggle.js +10 -10
  290. package/train/train-wagon.js +7 -7
  291. package/typography.css +0 -13
@@ -5,20 +5,7 @@ import { SbbConnectedAbortController } from "../core/controllers.js";
5
5
  import { hostAttributes } from "../core/decorators.js";
6
6
  import { EventEmitter } from "../core/eventing.js";
7
7
  import { AgnosticResizeObserver } from "../core/observers.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:
@@ -235,4 +222,4 @@ SbbStepElement = __decorateClass([
235
222
  export {
236
223
  SbbStepElement
237
224
  };
238
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3N0ZXBwZXIvc3RlcC9zdGVwLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIExpdEVsZW1lbnQsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgcmVmIH0gZnJvbSAnbGl0L2RpcmVjdGl2ZXMvcmVmLmpzJztcblxuaW1wb3J0IHsgU2JiQ29ubmVjdGVkQWJvcnRDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBob3N0QXR0cmlidXRlcyB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2V2ZW50aW5nLmpzJztcbmltcG9ydCB7IEFnbm9zdGljUmVzaXplT2JzZXJ2ZXIgfSBmcm9tICcuLi8uLi9jb3JlL29ic2VydmVycy5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYlN0ZXBMYWJlbEVsZW1lbnQgfSBmcm9tICcuLi9zdGVwLWxhYmVsLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiU3RlcHBlckVsZW1lbnQgfSBmcm9tICcuLi9zdGVwcGVyLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vc3RlcC5zY3NzP2xpdCZpbmxpbmUnO1xuXG5sZXQgbmV4dElkID0gMDtcblxuZXhwb3J0IHR5cGUgU2JiU3RlcFZhbGlkYXRlRXZlbnREZXRhaWxzID0ge1xuICBjdXJyZW50SW5kZXg/OiBudW1iZXI7XG4gIGN1cnJlbnRTdGVwPzogU2JiU3RlcEVsZW1lbnQ7XG4gIG5leHRJbmRleD86IG51bWJlcjtcbiAgbmV4dFN0ZXA/OiBTYmJTdGVwRWxlbWVudDtcbn07XG5cbi8qKlxuICogQ29tYmluZWQgd2l0aCBhIGBzYmItc3RlcHBlcmAsIGl0IGRpc3BsYXlzIGEgc3RlcCdzIGNvbnRlbnQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBwcm92aWRlIGNvbnRlbnQuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PFNiYlN0ZXBWYWxpZGF0ZUV2ZW50RGV0YWlscz59IHZhbGlkYXRlIC0gRW1pdHMgd2hlbmV2ZXIgc3RlcCBzd2l0Y2ggaXMgdHJpZ2dlcmVkLiBDYW4gYmUgY2FuY2VsZWQuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItc3RlcCcpXG5AaG9zdEF0dHJpYnV0ZXMoe1xuICBzbG90OiAnc3RlcCcsXG4gIHJvbGU6ICd0YWJwYW5lbCcsXG59KVxuZXhwb3J0IGNsYXNzIFNiYlN0ZXBFbGVtZW50IGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICB2YWxpZGF0ZTogJ3ZhbGlkYXRlJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKiogRW1pdHMgd2hlbmV2ZXIgc3RlcCBzd2l0Y2ggaXMgdHJpZ2dlcmVkLiAqL1xuICBwcml2YXRlIF92YWxpZGF0ZTogRXZlbnRFbWl0dGVyPFNiYlN0ZXBWYWxpZGF0ZUV2ZW50RGV0YWlscz4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiU3RlcEVsZW1lbnQuZXZlbnRzLnZhbGlkYXRlLFxuICApO1xuXG4gIHByaXZhdGUgX2xvYWRlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIF9hYm9ydCA9IG5ldyBTYmJDb25uZWN0ZWRBYm9ydENvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX3N0ZXBwZXI6IFNiYlN0ZXBwZXJFbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX2xhYmVsOiBTYmJTdGVwTGFiZWxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3N0ZXBSZXNpemVPYnNlcnZlciA9IG5ldyBBZ25vc3RpY1Jlc2l6ZU9ic2VydmVyKChlbnRyaWVzKSA9PlxuICAgIHRoaXMuX29uU3RlcEVsZW1lbnRSZXNpemUoZW50cmllcyksXG4gICk7XG5cbiAgLyoqIFRoZSBsYWJlbCBvZiB0aGUgc3RlcC4gKi9cbiAgcHVibGljIGdldCBsYWJlbCgpOiBTYmJTdGVwTGFiZWxFbGVtZW50IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2xhYmVsO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlbGVjdHMgYW5kIGNvbmZpZ3VyZXMgdGhlIHN0ZXAuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHNlbGVjdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2xvYWRlZCB8fCAhdGhpcy5sYWJlbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1zZWxlY3RlZCcsIHRydWUpO1xuICAgIHRoaXMubGFiZWwuc2VsZWN0KCk7XG4gIH1cblxuICAvKipcbiAgICogRGVzZWxlY3RzIGFuZCBjb25maWd1cmVzIHRoZSBzdGVwLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBkZXNlbGVjdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubGFiZWwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtc2VsZWN0ZWQnLCBmYWxzZSk7XG4gICAgdGhpcy5sYWJlbC5kZXNlbGVjdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEVtaXRzIGEgdmFsaWRhdGUgZXZlbnQgd2hlbmV2ZXIgc3RlcCBzd2l0Y2ggaXMgdHJpZ2dlcmVkLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyB2YWxpZGF0ZShldmVudERhdGE6IFNiYlN0ZXBWYWxpZGF0ZUV2ZW50RGV0YWlscyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuX3ZhbGlkYXRlLmVtaXQoZXZlbnREYXRhKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25maWd1cmVzIHRoZSBzdGVwLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBjb25maWd1cmUoc3RlcHBlckxvYWRlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmIChzdGVwcGVyTG9hZGVkKSB7XG4gICAgICB0aGlzLl9sYWJlbCA9IHRoaXMuX2dldFN0ZXBMYWJlbCgpO1xuICAgIH1cbiAgICBpZiAodGhpcy5sYWJlbCkge1xuICAgICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWxsZWRieScsIHRoaXMubGFiZWwuaWQpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBXYXRjaGVzIGZvciBjbGlja2VkIGVsZW1lbnRzIHdpdGggYHNiYi1zdGVwcGVyLW5leHRgIG9yIGBzYmItc3RlcHBlci1wcmV2aW91c2AgYXR0cmlidXRlcy4gKi9cbiAgcHJpdmF0ZSBfaGFuZGxlQ2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgY29tcG9zZWRQYXRoRWxlbWVudHMgPSBldmVudFxuICAgICAgLmNvbXBvc2VkUGF0aCgpXG4gICAgICAuZmlsdGVyKChlbCkgPT4gZWwgaW5zdGFuY2VvZiB3aW5kb3cuSFRNTEVsZW1lbnQpO1xuICAgIGlmIChjb21wb3NlZFBhdGhFbGVtZW50cy5zb21lKChlbCkgPT4gdGhpcy5faXNHb05leHRFbGVtZW50KGVsIGFzIEhUTUxFbGVtZW50KSkpIHtcbiAgICAgIHRoaXMuX3N0ZXBwZXI/Lm5leHQoKTtcbiAgICB9IGVsc2UgaWYgKGNvbXBvc2VkUGF0aEVsZW1lbnRzLnNvbWUoKGVsKSA9PiB0aGlzLl9pc0dvUHJldmlvdXNFbGVtZW50KGVsIGFzIEhUTUxFbGVtZW50KSkpIHtcbiAgICAgIHRoaXMuX3N0ZXBwZXI/LnByZXZpb3VzKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaXNHb05leHRFbGVtZW50KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGVsZW1lbnQuaGFzQXR0cmlidXRlKCdzYmItc3RlcHBlci1uZXh0JykgJiYgIWVsZW1lbnQuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNHb1ByZXZpb3VzRWxlbWVudChlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnc2JiLXN0ZXBwZXItcHJldmlvdXMnKSAmJiAhZWxlbWVudC5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJyk7XG4gIH1cblxuICBwcml2YXRlIF9vblN0ZXBFbGVtZW50UmVzaXplKGVudHJpZXM6IFJlc2l6ZU9ic2VydmVyRW50cnlbXSk6IHZvaWQge1xuICAgIGlmICghdGhpcy5oYXNBdHRyaWJ1dGUoJ2RhdGEtc2VsZWN0ZWQnKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBjb250ZW50SGVpZ2h0ID0gTWF0aC5mbG9vcihlbnRyaWVzWzBdLmNvbnRlbnRSZWN0LmhlaWdodCk7XG4gICAgdGhpcy5fc3RlcHBlcj8uc3R5bGU/LnNldFByb3BlcnR5KCctLXNiYi1zdGVwcGVyLWNvbnRlbnQtaGVpZ2h0JywgYCR7Y29udGVudEhlaWdodH1weGApO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0U3RlcExhYmVsKCk6IFNiYlN0ZXBMYWJlbEVsZW1lbnQgfCBudWxsIHtcbiAgICBsZXQgcHJldmlvdXNTaWJsaW5nID0gdGhpcy5wcmV2aW91c0VsZW1lbnRTaWJsaW5nO1xuICAgIHdoaWxlIChwcmV2aW91c1NpYmxpbmcgJiYgcHJldmlvdXNTaWJsaW5nLmxvY2FsTmFtZSAhPT0gJ3NiYi1zdGVwLWxhYmVsJykge1xuICAgICAgcHJldmlvdXNTaWJsaW5nID0gcHJldmlvdXNTaWJsaW5nLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7XG4gICAgfVxuICAgIHJldHVybiBwcmV2aW91c1NpYmxpbmcgYXMgU2JiU3RlcExhYmVsRWxlbWVudDtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIGNvbnN0IHNpZ25hbCA9IHRoaXMuX2Fib3J0LnNpZ25hbDtcbiAgICB0aGlzLmlkID0gdGhpcy5pZCB8fCBgc2JiLXN0ZXAtJHtuZXh0SWQrK31gO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoZSkgPT4gdGhpcy5faGFuZGxlQ2xpY2soZSksIHsgc2lnbmFsIH0pO1xuICAgIHRoaXMuX3N0ZXBwZXIgPSB0aGlzLmNsb3Nlc3QoJ3NiYi1zdGVwcGVyJyk7XG4gICAgdGhpcy5fbGFiZWwgPSB0aGlzLl9nZXRTdGVwTGFiZWwoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcbiAgICB0aGlzLl9sb2FkZWQgPSB0cnVlO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fc3RlcFJlc2l6ZU9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1zdGVwLS13cmFwcGVyXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cInNiYi1zdGVwXCJcbiAgICAgICAgICAke3JlZigoc3RlcCkgPT4gc3RlcCAmJiB0aGlzLl9zdGVwUmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZShzdGVwIGFzIEhUTUxFbGVtZW50KSl9XG4gICAgICAgID5cbiAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXN0ZXAnOiBTYmJTdGVwRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW1CQSxJQUFJLFNBQVM7QUFvQkEsSUFBQSxpQkFBTixjQUE2QixXQUFXO0FBQUEsRUFBeEMsY0FBQTtBQUFBLFVBQUEsR0FBQSxTQUFBO0FBT0wsU0FBUSxZQUF1RCxJQUFJO0FBQUEsTUFDakU7QUFBQSxNQUNBLGVBQWUsT0FBTztBQUFBLElBQUE7QUFHeEIsU0FBUSxVQUFtQjtBQUNuQixTQUFBLFNBQVMsSUFBSSw0QkFBNEIsSUFBSTtBQUNyRCxTQUFRLFdBQXFDO0FBQzdDLFNBQVEsU0FBcUM7QUFDN0MsU0FBUSxzQkFBc0IsSUFBSTtBQUFBLE1BQXVCLENBQUMsWUFDeEQsS0FBSyxxQkFBcUIsT0FBTztBQUFBLElBQUE7QUFBQSxFQUNuQztBQUFBO0FBQUEsRUFHQSxJQUFXLFFBQW9DO0FBQzdDLFdBQU8sS0FBSztBQUFBLEVBQ2Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTU8sU0FBZTtBQUNwQixRQUFJLENBQUMsS0FBSyxXQUFXLENBQUMsS0FBSyxPQUFPO0FBQ2hDO0FBQUEsSUFDRjtBQUNLLFNBQUEsZ0JBQWdCLGlCQUFpQixJQUFJO0FBQzFDLFNBQUssTUFBTTtFQUNiO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1PLFdBQWlCO0FBQ2xCLFFBQUEsQ0FBQyxLQUFLLE9BQU87QUFDZjtBQUFBLElBQ0Y7QUFDSyxTQUFBLGdCQUFnQixpQkFBaUIsS0FBSztBQUMzQyxTQUFLLE1BQU07RUFDYjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNTyxTQUFTLFdBQWlEO0FBQy9ELFdBQU8sQ0FBQyxDQUFDLEtBQUssVUFBVSxLQUFLLFNBQVM7QUFBQSxFQUN4QztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNTyxVQUFVLGVBQThCO0FBQzdDLFFBQUksZUFBZTtBQUNaLFdBQUEsU0FBUyxLQUFLO0lBQ3JCO0FBQ0EsUUFBSSxLQUFLLE9BQU87QUFDZCxXQUFLLGFBQWEsbUJBQW1CLEtBQUssTUFBTSxFQUFFO0FBQUEsSUFDcEQ7QUFBQSxFQUNGO0FBQUE7QUFBQSxFQUdRLGFBQWEsT0FBb0I7O0FBQ2pDLFVBQUEsdUJBQXVCLE1BQzFCLGVBQ0EsT0FBTyxDQUFDLE9BQU8sY0FBYyxPQUFPLFdBQVc7QUFDOUMsUUFBQSxxQkFBcUIsS0FBSyxDQUFDLE9BQU8sS0FBSyxpQkFBaUIsRUFBaUIsQ0FBQyxHQUFHO0FBQy9FLGlCQUFLLGFBQUwsbUJBQWU7QUFBQSxJQUFLLFdBQ1gscUJBQXFCLEtBQUssQ0FBQyxPQUFPLEtBQUsscUJBQXFCLEVBQWlCLENBQUMsR0FBRztBQUMxRixpQkFBSyxhQUFMLG1CQUFlO0FBQUEsSUFDakI7QUFBQSxFQUNGO0FBQUEsRUFFUSxpQkFBaUIsU0FBK0I7QUFDdEQsV0FBTyxRQUFRLGFBQWEsa0JBQWtCLEtBQUssQ0FBQyxRQUFRLGFBQWEsVUFBVTtBQUFBLEVBQ3JGO0FBQUEsRUFFUSxxQkFBcUIsU0FBK0I7QUFDMUQsV0FBTyxRQUFRLGFBQWEsc0JBQXNCLEtBQUssQ0FBQyxRQUFRLGFBQWEsVUFBVTtBQUFBLEVBQ3pGO0FBQUEsRUFFUSxxQkFBcUIsU0FBc0M7O0FBQ2pFLFFBQUksQ0FBQyxLQUFLLGFBQWEsZUFBZSxHQUFHO0FBQ3ZDO0FBQUEsSUFDRjtBQUNBLFVBQU0sZ0JBQWdCLEtBQUssTUFBTSxRQUFRLENBQUMsRUFBRSxZQUFZLE1BQU07QUFDOUQscUJBQUssYUFBTCxtQkFBZSxVQUFmLG1CQUFzQixZQUFZLGdDQUFnQyxHQUFHLGFBQWE7QUFBQSxFQUNwRjtBQUFBLEVBRVEsZ0JBQTRDO0FBQ2xELFFBQUksa0JBQWtCLEtBQUs7QUFDcEIsV0FBQSxtQkFBbUIsZ0JBQWdCLGNBQWMsa0JBQWtCO0FBQ3hFLHdCQUFrQixnQkFBZ0I7QUFBQSxJQUNwQztBQUNPLFdBQUE7QUFBQSxFQUNUO0FBQUEsRUFFZ0Isb0JBQTBCO0FBQ3hDLFVBQU0sa0JBQWtCO0FBQ2xCLFVBQUEsU0FBUyxLQUFLLE9BQU87QUFDM0IsU0FBSyxLQUFLLEtBQUssTUFBTSxZQUFZLFFBQVE7QUFDcEMsU0FBQSxpQkFBaUIsU0FBUyxDQUFDLE1BQU0sS0FBSyxhQUFhLENBQUMsR0FBRyxFQUFFLE9BQUEsQ0FBUTtBQUNqRSxTQUFBLFdBQVcsS0FBSyxRQUFRLGFBQWE7QUFDckMsU0FBQSxTQUFTLEtBQUs7RUFDckI7QUFBQSxFQUVtQixhQUFhLG1CQUErQztBQUM3RSxVQUFNLGFBQWEsaUJBQWlCO0FBQ3BDLFNBQUssVUFBVTtBQUFBLEVBQ2pCO0FBQUEsRUFFZ0IsdUJBQTZCO0FBQzNDLFVBQU0scUJBQXFCO0FBQzNCLFNBQUssb0JBQW9CO0VBQzNCO0FBQUEsRUFFbUIsU0FBeUI7QUFDbkMsV0FBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLFlBSUMsSUFBSSxDQUFDLFNBQVMsUUFBUSxLQUFLLG9CQUFvQixRQUFRLElBQW1CLENBQUMsQ0FBQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU10RjtBQUNGO0FBeklhLGVBQ1ksU0FBeUI7QUFEckMsZUFFWSxTQUFTO0FBQUEsRUFDOUIsVUFBVTtBQUNaO0FBSlcsaUJBQU4sZ0JBQUE7QUFBQSxFQUxOLGNBQWMsVUFBVTtBQUFBLEVBQ3hCLGVBQWU7QUFBQSxJQUNkLE1BQU07QUFBQSxJQUNOLE1BQU07QUFBQSxFQUFBLENBQ1A7QUFBQSxHQUNZLGNBQUE7In0=
225
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3N0ZXBwZXIvc3RlcC9zdGVwLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIExpdEVsZW1lbnQsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgcmVmIH0gZnJvbSAnbGl0L2RpcmVjdGl2ZXMvcmVmLmpzJztcblxuaW1wb3J0IHsgU2JiQ29ubmVjdGVkQWJvcnRDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBob3N0QXR0cmlidXRlcyB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2V2ZW50aW5nLmpzJztcbmltcG9ydCB7IEFnbm9zdGljUmVzaXplT2JzZXJ2ZXIgfSBmcm9tICcuLi8uLi9jb3JlL29ic2VydmVycy5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYlN0ZXBMYWJlbEVsZW1lbnQgfSBmcm9tICcuLi9zdGVwLWxhYmVsLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiU3RlcHBlckVsZW1lbnQgfSBmcm9tICcuLi9zdGVwcGVyLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vc3RlcC5zY3NzP2xpdCZpbmxpbmUnO1xuXG5sZXQgbmV4dElkID0gMDtcblxuZXhwb3J0IHR5cGUgU2JiU3RlcFZhbGlkYXRlRXZlbnREZXRhaWxzID0ge1xuICBjdXJyZW50SW5kZXg/OiBudW1iZXI7XG4gIGN1cnJlbnRTdGVwPzogU2JiU3RlcEVsZW1lbnQ7XG4gIG5leHRJbmRleD86IG51bWJlcjtcbiAgbmV4dFN0ZXA/OiBTYmJTdGVwRWxlbWVudDtcbn07XG5cbi8qKlxuICogQ29tYmluZWQgd2l0aCBhIGBzYmItc3RlcHBlcmAsIGl0IGRpc3BsYXlzIGEgc3RlcCdzIGNvbnRlbnQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBwcm92aWRlIGNvbnRlbnQuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PFNiYlN0ZXBWYWxpZGF0ZUV2ZW50RGV0YWlscz59IHZhbGlkYXRlIC0gRW1pdHMgd2hlbmV2ZXIgc3RlcCBzd2l0Y2ggaXMgdHJpZ2dlcmVkLiBDYW4gYmUgY2FuY2VsZWQuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItc3RlcCcpXG5AaG9zdEF0dHJpYnV0ZXMoe1xuICBzbG90OiAnc3RlcCcsXG4gIHJvbGU6ICd0YWJwYW5lbCcsXG59KVxuZXhwb3J0IGNsYXNzIFNiYlN0ZXBFbGVtZW50IGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICB2YWxpZGF0ZTogJ3ZhbGlkYXRlJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKiogRW1pdHMgd2hlbmV2ZXIgc3RlcCBzd2l0Y2ggaXMgdHJpZ2dlcmVkLiAqL1xuICBwcml2YXRlIF92YWxpZGF0ZTogRXZlbnRFbWl0dGVyPFNiYlN0ZXBWYWxpZGF0ZUV2ZW50RGV0YWlscz4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiU3RlcEVsZW1lbnQuZXZlbnRzLnZhbGlkYXRlLFxuICApO1xuXG4gIHByaXZhdGUgX2xvYWRlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIF9hYm9ydCA9IG5ldyBTYmJDb25uZWN0ZWRBYm9ydENvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX3N0ZXBwZXI6IFNiYlN0ZXBwZXJFbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX2xhYmVsOiBTYmJTdGVwTGFiZWxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3N0ZXBSZXNpemVPYnNlcnZlciA9IG5ldyBBZ25vc3RpY1Jlc2l6ZU9ic2VydmVyKChlbnRyaWVzKSA9PlxuICAgIHRoaXMuX29uU3RlcEVsZW1lbnRSZXNpemUoZW50cmllcyksXG4gICk7XG5cbiAgLyoqIFRoZSBsYWJlbCBvZiB0aGUgc3RlcC4gKi9cbiAgcHVibGljIGdldCBsYWJlbCgpOiBTYmJTdGVwTGFiZWxFbGVtZW50IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2xhYmVsO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlbGVjdHMgYW5kIGNvbmZpZ3VyZXMgdGhlIHN0ZXAuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHNlbGVjdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2xvYWRlZCB8fCAhdGhpcy5sYWJlbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1zZWxlY3RlZCcsIHRydWUpO1xuICAgIHRoaXMubGFiZWwuc2VsZWN0KCk7XG4gIH1cblxuICAvKipcbiAgICogRGVzZWxlY3RzIGFuZCBjb25maWd1cmVzIHRoZSBzdGVwLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBkZXNlbGVjdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubGFiZWwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtc2VsZWN0ZWQnLCBmYWxzZSk7XG4gICAgdGhpcy5sYWJlbC5kZXNlbGVjdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEVtaXRzIGEgdmFsaWRhdGUgZXZlbnQgd2hlbmV2ZXIgc3RlcCBzd2l0Y2ggaXMgdHJpZ2dlcmVkLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyB2YWxpZGF0ZShldmVudERhdGE6IFNiYlN0ZXBWYWxpZGF0ZUV2ZW50RGV0YWlscyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuX3ZhbGlkYXRlLmVtaXQoZXZlbnREYXRhKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25maWd1cmVzIHRoZSBzdGVwLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBjb25maWd1cmUoc3RlcHBlckxvYWRlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmIChzdGVwcGVyTG9hZGVkKSB7XG4gICAgICB0aGlzLl9sYWJlbCA9IHRoaXMuX2dldFN0ZXBMYWJlbCgpO1xuICAgIH1cbiAgICBpZiAodGhpcy5sYWJlbCkge1xuICAgICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWxsZWRieScsIHRoaXMubGFiZWwuaWQpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBXYXRjaGVzIGZvciBjbGlja2VkIGVsZW1lbnRzIHdpdGggYHNiYi1zdGVwcGVyLW5leHRgIG9yIGBzYmItc3RlcHBlci1wcmV2aW91c2AgYXR0cmlidXRlcy4gKi9cbiAgcHJpdmF0ZSBfaGFuZGxlQ2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgY29tcG9zZWRQYXRoRWxlbWVudHMgPSBldmVudFxuICAgICAgLmNvbXBvc2VkUGF0aCgpXG4gICAgICAuZmlsdGVyKChlbCkgPT4gZWwgaW5zdGFuY2VvZiB3aW5kb3cuSFRNTEVsZW1lbnQpO1xuICAgIGlmIChjb21wb3NlZFBhdGhFbGVtZW50cy5zb21lKChlbCkgPT4gdGhpcy5faXNHb05leHRFbGVtZW50KGVsIGFzIEhUTUxFbGVtZW50KSkpIHtcbiAgICAgIHRoaXMuX3N0ZXBwZXI/Lm5leHQoKTtcbiAgICB9IGVsc2UgaWYgKGNvbXBvc2VkUGF0aEVsZW1lbnRzLnNvbWUoKGVsKSA9PiB0aGlzLl9pc0dvUHJldmlvdXNFbGVtZW50KGVsIGFzIEhUTUxFbGVtZW50KSkpIHtcbiAgICAgIHRoaXMuX3N0ZXBwZXI/LnByZXZpb3VzKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaXNHb05leHRFbGVtZW50KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGVsZW1lbnQuaGFzQXR0cmlidXRlKCdzYmItc3RlcHBlci1uZXh0JykgJiYgIWVsZW1lbnQuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNHb1ByZXZpb3VzRWxlbWVudChlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnc2JiLXN0ZXBwZXItcHJldmlvdXMnKSAmJiAhZWxlbWVudC5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJyk7XG4gIH1cblxuICBwcml2YXRlIF9vblN0ZXBFbGVtZW50UmVzaXplKGVudHJpZXM6IFJlc2l6ZU9ic2VydmVyRW50cnlbXSk6IHZvaWQge1xuICAgIGlmICghdGhpcy5oYXNBdHRyaWJ1dGUoJ2RhdGEtc2VsZWN0ZWQnKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBjb250ZW50SGVpZ2h0ID0gTWF0aC5mbG9vcihlbnRyaWVzWzBdLmNvbnRlbnRSZWN0LmhlaWdodCk7XG4gICAgdGhpcy5fc3RlcHBlcj8uc3R5bGU/LnNldFByb3BlcnR5KCctLXNiYi1zdGVwcGVyLWNvbnRlbnQtaGVpZ2h0JywgYCR7Y29udGVudEhlaWdodH1weGApO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0U3RlcExhYmVsKCk6IFNiYlN0ZXBMYWJlbEVsZW1lbnQgfCBudWxsIHtcbiAgICBsZXQgcHJldmlvdXNTaWJsaW5nID0gdGhpcy5wcmV2aW91c0VsZW1lbnRTaWJsaW5nO1xuICAgIHdoaWxlIChwcmV2aW91c1NpYmxpbmcgJiYgcHJldmlvdXNTaWJsaW5nLmxvY2FsTmFtZSAhPT0gJ3NiYi1zdGVwLWxhYmVsJykge1xuICAgICAgcHJldmlvdXNTaWJsaW5nID0gcHJldmlvdXNTaWJsaW5nLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7XG4gICAgfVxuICAgIHJldHVybiBwcmV2aW91c1NpYmxpbmcgYXMgU2JiU3RlcExhYmVsRWxlbWVudDtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIGNvbnN0IHNpZ25hbCA9IHRoaXMuX2Fib3J0LnNpZ25hbDtcbiAgICB0aGlzLmlkID0gdGhpcy5pZCB8fCBgc2JiLXN0ZXAtJHtuZXh0SWQrK31gO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoZSkgPT4gdGhpcy5faGFuZGxlQ2xpY2soZSksIHsgc2lnbmFsIH0pO1xuICAgIHRoaXMuX3N0ZXBwZXIgPSB0aGlzLmNsb3Nlc3QoJ3NiYi1zdGVwcGVyJyk7XG4gICAgdGhpcy5fbGFiZWwgPSB0aGlzLl9nZXRTdGVwTGFiZWwoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcbiAgICB0aGlzLl9sb2FkZWQgPSB0cnVlO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fc3RlcFJlc2l6ZU9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1zdGVwLS13cmFwcGVyXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cInNiYi1zdGVwXCJcbiAgICAgICAgICAke3JlZigoc3RlcCkgPT4gc3RlcCAmJiB0aGlzLl9zdGVwUmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZShzdGVwIGFzIEhUTUxFbGVtZW50KSl9XG4gICAgICAgID5cbiAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXN0ZXAnOiBTYmJTdGVwRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBbUJBLElBQUksU0FBUztBQW9CQSxJQUFBLGlCQUFOLGNBQTZCLFdBQVc7QUFBQSxFQUF4QyxjQUFBO0FBQUEsVUFBQSxHQUFBLFNBQUE7QUFPTCxTQUFRLFlBQXVELElBQUk7QUFBQSxNQUNqRTtBQUFBLE1BQ0EsZUFBZSxPQUFPO0FBQUEsSUFBQTtBQUd4QixTQUFRLFVBQW1CO0FBQ25CLFNBQUEsU0FBUyxJQUFJLDRCQUE0QixJQUFJO0FBQ3JELFNBQVEsV0FBcUM7QUFDN0MsU0FBUSxTQUFxQztBQUM3QyxTQUFRLHNCQUFzQixJQUFJO0FBQUEsTUFBdUIsQ0FBQyxZQUN4RCxLQUFLLHFCQUFxQixPQUFPO0FBQUEsSUFBQTtBQUFBLEVBQ25DO0FBQUE7QUFBQSxFQUdBLElBQVcsUUFBb0M7QUFDN0MsV0FBTyxLQUFLO0FBQUEsRUFDZDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNTyxTQUFlO0FBQ3BCLFFBQUksQ0FBQyxLQUFLLFdBQVcsQ0FBQyxLQUFLLE9BQU87QUFDaEM7QUFBQSxJQUNGO0FBQ0ssU0FBQSxnQkFBZ0IsaUJBQWlC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
@@ -29,15 +29,15 @@ export declare class SbbStepperElement extends SbbStepperElement_base {
29
29
  /** The steps of the stepper. */
30
30
  get steps(): SbbStepElement[];
31
31
  private get _enabledSteps();
32
+ private _loaded;
33
+ private _abort;
34
+ private _resizeObserverTimeout;
32
35
  /** Selects the next step. */
33
36
  next(): void;
34
37
  /** Selects the previous step. */
35
38
  previous(): void;
36
39
  /** Resets the form in which the stepper is nested or every form of each step, if any. */
37
40
  reset(): void;
38
- private _loaded;
39
- private _abort;
40
- private _resizeObserverTimeout;
41
41
  private _isValidStep;
42
42
  private _select;
43
43
  private _setMarkerSize;
@@ -1 +1 @@
1
- {"version":3,"file":"stepper.d.ts","sourceRoot":"","sources":["../../../../../src/elements/stepper/stepper/stepper.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAMb,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAElF,OAAO,KAAK,EAAE,cAAc,EAA+B,MAAM,YAAY,CAAC;;AAM9E;;;;;GAKG;AACH,qBACa,iBAAkB,SAAQ,sBAA6B;IAClE,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,wFAAwF;IACpD,MAAM,UAAS;IAEnD,yDAAyD;IACzD,IACW,cAAc,CAAC,KAAK,EAAE,iBAAiB,EAKjD;IACD,IAAW,cAAc,IAAI,iBAAiB,GAAG,SAAS,CAEzD;IACD,OAAO,CAAC,eAAe,CAAC,CAAgC;IAExD,wDAAwD;IAEjD,WAAW,EAAE,cAAc,CAAgB;IAElD,mCAAmC;IACC,IAAI,EAAE,GAAG,GAAG,GAAG,CAAO;IAE1D,mCAAmC;IACnC,IACW,QAAQ,CAAC,IAAI,EAAE,cAAc,EAIvC;IACD,IAAW,QAAQ,IAAI,cAAc,GAAG,SAAS,CAEhD;IAED,yCAAyC;IACzC,IACW,aAAa,CAAC,KAAK,EAAE,MAAM,EAIrC;IACD,IAAW,aAAa,IAAI,MAAM,GAAG,SAAS,CAE7C;IAED,gCAAgC;IAChC,IAAW,KAAK,IAAI,cAAc,EAAE,CAEnC;IAED,OAAO,KAAK,aAAa,GAExB;IAED,6BAA6B;IACtB,IAAI,IAAI,IAAI;IAMnB,iCAAiC;IAC1B,QAAQ,IAAI,IAAI;IAMvB,yFAAyF;IAClF,KAAK,IAAI,IAAI;IAcpB,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,MAAM,CAAyC;IACvD,OAAO,CAAC,sBAAsB,CAA8C;IAE5E,OAAO,CAAC,YAAY;IAiBpB,OAAO,CAAC,OAAO;IAwBf,OAAO,CAAC,cAAc;IAiBtB,OAAO,CAAC,wBAAwB;IAoBhC,OAAO,CAAC,UAAU;IAalB,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,oBAAoB;IAUZ,iBAAiB,IAAI,IAAI;cAWhB,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;cAU1E,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAgB5E,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,cAAc;cAmBH,MAAM,IAAI,cAAc;CAY5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,aAAa,EAAE,iBAAiB,CAAC;KAClC;CACF"}
1
+ {"version":3,"file":"stepper.d.ts","sourceRoot":"","sources":["../../../../../src/elements/stepper/stepper/stepper.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAMb,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAElF,OAAO,KAAK,EAAE,cAAc,EAA+B,MAAM,YAAY,CAAC;;AAM9E;;;;;GAKG;AACH,qBACa,iBAAkB,SAAQ,sBAA6B;IAClE,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,wFAAwF;IACpD,MAAM,UAAS;IAEnD,yDAAyD;IACzD,IACW,cAAc,CAAC,KAAK,EAAE,iBAAiB,EAKjD;IACD,IAAW,cAAc,IAAI,iBAAiB,GAAG,SAAS,CAEzD;IACD,OAAO,CAAC,eAAe,CAAC,CAAgC;IAExD,wDAAwD;IAEjD,WAAW,EAAE,cAAc,CAAgB;IAElD,mCAAmC;IACC,IAAI,EAAE,GAAG,GAAG,GAAG,CAAO;IAE1D,mCAAmC;IACnC,IACW,QAAQ,CAAC,IAAI,EAAE,cAAc,EAIvC;IACD,IAAW,QAAQ,IAAI,cAAc,GAAG,SAAS,CAEhD;IAED,yCAAyC;IACzC,IACW,aAAa,CAAC,KAAK,EAAE,MAAM,EAIrC;IACD,IAAW,aAAa,IAAI,MAAM,GAAG,SAAS,CAE7C;IAED,gCAAgC;IAChC,IAAW,KAAK,IAAI,cAAc,EAAE,CAEnC;IAED,OAAO,KAAK,aAAa,GAExB;IAED,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,MAAM,CAAyC;IACvD,OAAO,CAAC,sBAAsB,CAA8C;IAE5E,6BAA6B;IACtB,IAAI,IAAI,IAAI;IAMnB,iCAAiC;IAC1B,QAAQ,IAAI,IAAI;IAMvB,yFAAyF;IAClF,KAAK,IAAI,IAAI;IAcpB,OAAO,CAAC,YAAY;IAiBpB,OAAO,CAAC,OAAO;IAwBf,OAAO,CAAC,cAAc;IAiBtB,OAAO,CAAC,wBAAwB;IAoBhC,OAAO,CAAC,UAAU;IAalB,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,oBAAoB;IAUZ,iBAAiB,IAAI,IAAI;cAWhB,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;cAU1E,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAgB5E,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,cAAc;cAmBH,MAAM,IAAI,cAAc;CAY5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,aAAa,EAAE,iBAAiB,CAAC;KAClC;CACF"}
@@ -4,20 +4,7 @@ import { isArrowKeyPressed, getNextElementIndex } from "../core/a11y.js";
4
4
  import { SbbConnectedAbortController } from "../core/controllers.js";
5
5
  import { breakpoints, isBreakpoint } from "../core/dom.js";
6
6
  import { SbbHydrationMixin } from "../core/mixins.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:
@@ -382,4 +369,4 @@ SbbStepperElement = __decorateClass([
382
369
  export {
383
370
  SbbStepperElement
384
371
  };
385
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3N0ZXBwZXIvc3RlcHBlci9zdGVwcGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIExpdEVsZW1lbnQsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgZ2V0TmV4dEVsZW1lbnRJbmRleCwgaXNBcnJvd0tleVByZXNzZWQgfSBmcm9tICcuLi8uLi9jb3JlL2ExMXkuanMnO1xuaW1wb3J0IHsgU2JiQ29ubmVjdGVkQWJvcnRDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBicmVha3BvaW50cywgaXNCcmVha3BvaW50IH0gZnJvbSAnLi4vLi4vY29yZS9kb20uanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJIb3Jpem9udGFsRnJvbSwgU2JiT3JpZW50YXRpb24gfSBmcm9tICcuLi8uLi9jb3JlL2ludGVyZmFjZXMuanMnO1xuaW1wb3J0IHsgU2JiSHlkcmF0aW9uTWl4aW4gfSBmcm9tICcuLi8uLi9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYlN0ZXBFbGVtZW50LCBTYmJTdGVwVmFsaWRhdGVFdmVudERldGFpbHMgfSBmcm9tICcuLi9zdGVwLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vc3RlcHBlci5zY3NzP2xpdCZpbmxpbmUnO1xuXG5jb25zdCBERUJPVU5DRV9USU1FID0gMTUwO1xuXG4vKipcbiAqIFByb3ZpZGVzIGEgc3RydWN0dXJlZCwgc3RlcC1ieS1zdGVwIHdvcmtmbG93IGZvciB1c2VyIGludGVyYWN0aW9ucy5cbiAqIEBzbG90IC0gUHJvdmlkZSBhIGBzYmItZXhwYW5zaW9uLXBhbmVsLWhlYWRlcmAgYW5kIGEgYHNiYi1leHBhbnNpb24tcGFuZWwtY29udGVudGAgdG8gdGhlIHN0ZXBwZXIuXG4gKiBAc2xvdCBzdGVwLWxhYmVsIC0gVXNlIHRoaXMgc2xvdCB0byBwcm92aWRlIGFuIGBzYmItc3RlcC1sYWJlbGAuXG4gKiBAc2xvdCBzdGVwIC0gVXNlIHRoaXMgc2xvdCB0byBwcm92aWRlIGFuIGBzYmItc3RlcGAuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItc3RlcHBlcicpXG5leHBvcnQgY2xhc3MgU2JiU3RlcHBlckVsZW1lbnQgZXh0ZW5kcyBTYmJIeWRyYXRpb25NaXhpbihMaXRFbGVtZW50KSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKiBJZiBzZXQgdG8gdHJ1ZSwgb25seSB0aGUgY3VycmVudCBhbmQgcHJldmlvdXMgbGFiZWxzIGNhbiBiZSBjbGlja2VkIGFuZCBzZWxlY3RlZC4gKi9cbiAgQHByb3BlcnR5KHsgdHlwZTogQm9vbGVhbiB9KSBwdWJsaWMgbGluZWFyID0gZmFsc2U7XG5cbiAgLyoqIE92ZXJyaWRlcyB0aGUgYmVoYXZpb3VyIG9mIGBvcmllbnRhdGlvbmAgcHJvcGVydHkuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2hvcml6b250YWwtZnJvbScsIHJlZmxlY3Q6IHRydWUgfSlcbiAgcHVibGljIHNldCBob3Jpem9udGFsRnJvbSh2YWx1ZTogU2JiSG9yaXpvbnRhbEZyb20pIHtcbiAgICB0aGlzLl9ob3Jpem9udGFsRnJvbSA9IGJyZWFrcG9pbnRzLmluY2x1ZGVzKHZhbHVlKSA/IHZhbHVlIDogdW5kZWZpbmVkO1xuICAgIGlmICh0aGlzLl9ob3Jpem9udGFsRnJvbSAmJiB0aGlzLl9sb2FkZWQpIHtcbiAgICAgIHRoaXMuX2NoZWNrT3JpZW50YXRpb24oKTtcbiAgICB9XG4gIH1cbiAgcHVibGljIGdldCBob3Jpem9udGFsRnJvbSgpOiBTYmJIb3Jpem9udGFsRnJvbSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX2hvcml6b250YWxGcm9tO1xuICB9XG4gIHByaXZhdGUgX2hvcml6b250YWxGcm9tPzogU2JiSG9yaXpvbnRhbEZyb20gfCB1bmRlZmluZWQ7XG5cbiAgLyoqIFN0ZXBzIG9yaWVudGF0aW9uLCBlaXRoZXIgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4gKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KVxuICBwdWJsaWMgb3JpZW50YXRpb246IFNiYk9yaWVudGF0aW9uID0gJ2hvcml6b250YWwnO1xuXG4gIC8qKiBTaXplIHZhcmlhbnQsIGVpdGhlciBzIG9yIG0uICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIHNpemU6ICdzJyB8ICdtJyA9ICdtJztcblxuICAvKiogVGhlIGN1cnJlbnRseSBzZWxlY3RlZCBzdGVwLiAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6IGZhbHNlIH0pXG4gIHB1YmxpYyBzZXQgc2VsZWN0ZWQoc3RlcDogU2JiU3RlcEVsZW1lbnQpIHtcbiAgICBpZiAodGhpcy5fbG9hZGVkKSB7XG4gICAgICB0aGlzLl9zZWxlY3Qoc3RlcCk7XG4gICAgfVxuICB9XG4gIHB1YmxpYyBnZXQgc2VsZWN0ZWQoKTogU2JiU3RlcEVsZW1lbnQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnF1ZXJ5U2VsZWN0b3I/LjxTYmJTdGVwRWxlbWVudD4oJ3NiYi1zdGVwW2RhdGEtc2VsZWN0ZWRdJykgPz8gdW5kZWZpbmVkO1xuICB9XG5cbiAgLyoqIFRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgc3RlcCBpbmRleC4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnc2VsZWN0ZWQtaW5kZXgnLCB0eXBlOiBOdW1iZXIgfSlcbiAgcHVibGljIHNldCBzZWxlY3RlZEluZGV4KGluZGV4OiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5fbG9hZGVkKSB7XG4gICAgICB0aGlzLl9zZWxlY3QodGhpcy5zdGVwc1tpbmRleF0pO1xuICAgIH1cbiAgfVxuICBwdWJsaWMgZ2V0IHNlbGVjdGVkSW5kZXgoKTogbnVtYmVyIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZCA/IHRoaXMuc3RlcHMuaW5kZXhPZih0aGlzLnNlbGVjdGVkKSA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8qKiBUaGUgc3RlcHMgb2YgdGhlIHN0ZXBwZXIuICovXG4gIHB1YmxpYyBnZXQgc3RlcHMoKTogU2JiU3RlcEVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5xdWVyeVNlbGVjdG9yQWxsPy4oJ3NiYi1zdGVwJykgPz8gW10pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX2VuYWJsZWRTdGVwcygpOiBTYmJTdGVwRWxlbWVudFtdIHtcbiAgICByZXR1cm4gdGhpcy5zdGVwcy5maWx0ZXIoKHMpID0+ICFzLmxhYmVsPy5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJykpO1xuICB9XG5cbiAgLyoqIFNlbGVjdHMgdGhlIG5leHQgc3RlcC4gKi9cbiAgcHVibGljIG5leHQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRJbmRleCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLl9zZWxlY3QodGhpcy5zdGVwc1t0aGlzLnNlbGVjdGVkSW5kZXggKyAxXSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIFNlbGVjdHMgdGhlIHByZXZpb3VzIHN0ZXAuICovXG4gIHB1YmxpYyBwcmV2aW91cygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zZWxlY3RlZEluZGV4ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuX3NlbGVjdCh0aGlzLnN0ZXBzW3RoaXMuc2VsZWN0ZWRJbmRleCAtIDFdKTtcbiAgICB9XG4gIH1cblxuICAvKiogUmVzZXRzIHRoZSBmb3JtIGluIHdoaWNoIHRoZSBzdGVwcGVyIGlzIG5lc3RlZCBvciBldmVyeSBmb3JtIG9mIGVhY2ggc3RlcCwgaWYgYW55LiAqL1xuICBwdWJsaWMgcmVzZXQoKTogdm9pZCB7XG4gICAgY29uc3QgY2xvc2VzdEZvcm0gPSB0aGlzLmNsb3Nlc3QoJ2Zvcm0nKTtcbiAgICBpZiAoY2xvc2VzdEZvcm0pIHtcbiAgICAgIGNsb3Nlc3RGb3JtLnJlc2V0KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucXVlcnlTZWxlY3RvckFsbCgnZm9ybScpLmZvckVhY2goKGZvcm0pID0+IGZvcm0ucmVzZXQoKSk7XG4gICAgfVxuICAgIHRoaXMuc2VsZWN0ZWRJbmRleCA9IDA7XG4gICAgLy8gSW4gY2FzZSB0aGUgZm9jdXMgaXMgY3VycmVudGx5IGluc2lkZSB0aGUgc3RlcHBlciwgd2UgcmVzZXQgdGhlIGZvY3VzIHRvIHRoZSBmaXJzdC9zZWxlY3RlZCBzdGVwIGxhYmVsLlxuICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50Py5jbG9zZXN0KCdzYmItc3RlcHBlcicpID09PSB0aGlzKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkPy5sYWJlbD8uZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9sb2FkZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBfYWJvcnQgPSBuZXcgU2JiQ29ubmVjdGVkQWJvcnRDb250cm9sbGVyKHRoaXMpO1xuICBwcml2YXRlIF9yZXNpemVPYnNlcnZlclRpbWVvdXQ6IFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+IHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBfaXNWYWxpZFN0ZXAoc3RlcDogU2JiU3RlcEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICBpZiAoIXN0ZXAgfHwgKCF0aGlzLmxpbmVhciAmJiBzdGVwLmxhYmVsPy5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJykpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubGluZWFyICYmICF0aGlzLnNlbGVjdGVkKSB7XG4gICAgICByZXR1cm4gc3RlcCA9PT0gdGhpcy5zdGVwc1swXTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5saW5lYXIgJiYgdGhpcy5zZWxlY3RlZEluZGV4ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5zdGVwcy5pbmRleE9mKHN0ZXApO1xuICAgICAgcmV0dXJuIGluZGV4IDwgdGhpcy5zZWxlY3RlZEluZGV4IHx8IGluZGV4ID09PSB0aGlzLnNlbGVjdGVkSW5kZXggKyAxO1xuICAgIH1cblxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2VsZWN0KHN0ZXA6IFNiYlN0ZXBFbGVtZW50KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9pc1ZhbGlkU3RlcChzdGVwKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCB2YWxpZGF0ZVBheWxvYWQ6IFNiYlN0ZXBWYWxpZGF0ZUV2ZW50RGV0YWlscyA9IHtcbiAgICAgIGN1cnJlbnRJbmRleDogdGhpcy5zZWxlY3RlZEluZGV4LFxuICAgICAgY3VycmVudFN0ZXA6IHRoaXMuc2VsZWN0ZWQsXG4gICAgICBuZXh0SW5kZXg6IHRoaXMuc2VsZWN0ZWRJbmRleCAhPT0gdW5kZWZpbmVkID8gdGhpcy5zZWxlY3RlZEluZGV4ICsgMSA6IHVuZGVmaW5lZCxcbiAgICAgIG5leHRTdGVwOiB0aGlzLnNlbGVjdGVkSW5kZXggIT09IHVuZGVmaW5lZCA/IHRoaXMuc3RlcHNbdGhpcy5zZWxlY3RlZEluZGV4ICsgMV0gOiB1bmRlZmluZWQsXG4gICAgfTtcbiAgICBpZiAodGhpcy5zZWxlY3RlZCAmJiAhdGhpcy5zZWxlY3RlZC52YWxpZGF0ZSh2YWxpZGF0ZVBheWxvYWQpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLnNlbGVjdGVkO1xuICAgIGN1cnJlbnQ/LmRlc2VsZWN0KCk7XG4gICAgc3RlcC5zZWxlY3QoKTtcbiAgICB0aGlzLl9zZXRNYXJrZXJTaXplKCk7XG4gICAgdGhpcy5fY29uZmlndXJlTGluZWFyTW9kZSgpO1xuICAgIC8vIEluIGNhc2UgdGhlIGZvY3VzIGlzIGN1cnJlbnRseSBpbnNpZGUgdGhlIHN0ZXBwZXIsIHdlIGZvY3VzIHRoZSBzZWxlY3RlZCBzdGVwIGxhYmVsLlxuICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50Py5jbG9zZXN0KCdzYmItc3RlcHBlcicpID09PSB0aGlzKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkPy5sYWJlbD8uZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9zZXRNYXJrZXJTaXplKCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgICF0aGlzLl9sb2FkZWQgfHxcbiAgICAgICF0aGlzLnNlbGVjdGVkIHx8XG4gICAgICB0aGlzLnNlbGVjdGVkSW5kZXggPT09IHVuZGVmaW5lZCB8fFxuICAgICAgIXRoaXMuc2VsZWN0ZWQubGFiZWxcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3Qgb2Zmc2V0ID1cbiAgICAgIHRoaXMub3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJ1xuICAgICAgICA/IHRoaXMuc2VsZWN0ZWQubGFiZWwub2Zmc2V0TGVmdCArIHRoaXMuc2VsZWN0ZWQubGFiZWwub2Zmc2V0V2lkdGhcbiAgICAgICAgOiB0aGlzLl9jYWxjdWxhdGVMYWJlbE9mZnNldFRvcCgpO1xuXG4gICAgdGhpcy5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1zYmItc3RlcHBlci1tYXJrZXItc2l6ZScsIGAke29mZnNldH1weGApO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlTGFiZWxPZmZzZXRUb3AoKTogbnVtYmVyIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodGhpcy5zZWxlY3RlZEluZGV4ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgbGV0IG9mZnNldCA9IDA7XG4gICAgZm9yIChjb25zdCBzdGVwIG9mIHRoaXMuc3RlcHMpIHtcbiAgICAgIGlmIChzdGVwID09PSB0aGlzLnNlbGVjdGVkKSB7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgb2Zmc2V0ID0gc3RlcC5sYWJlbCEub2Zmc2V0SGVpZ2h0ICsgb2Zmc2V0O1xuICAgIH1cbiAgICByZXR1cm4gKFxuICAgICAgb2Zmc2V0ICtcbiAgICAgIHRoaXMuc2VsZWN0ZWQhLmxhYmVsIS5vZmZzZXRIZWlnaHQhICtcbiAgICAgIHBhcnNlRmxvYXQoZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzKS5nZXRQcm9wZXJ0eVZhbHVlKCctLXNiYi1zcGFjaW5nLWZpeGVkLTZ4JykpICpcbiAgICAgICAgMTYgKlxuICAgICAgICB0aGlzLnNlbGVjdGVkSW5kZXhcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfY29uZmlndXJlKCk6IHZvaWQge1xuICAgIGNvbnN0IHN0ZXBzID0gdGhpcy5zdGVwcztcbiAgICBzdGVwcy5mb3JFYWNoKChzKSA9PiBzLmNvbmZpZ3VyZSh0aGlzLl9sb2FkZWQpKTtcbiAgICBzdGVwc1xuICAgICAgLmZpbHRlcigocykgPT4gcy5sYWJlbClcbiAgICAgIC5tYXAoKHMpID0+IHMubGFiZWwhKVxuICAgICAgLmZvckVhY2goKGxhYmVsLCBpLCBhcnJheSkgPT4ge1xuICAgICAgICBsYWJlbC5jb25maWd1cmUoaSArIDEsIGFycmF5Lmxlbmd0aCwgdGhpcy5fbG9hZGVkKTtcbiAgICAgIH0pO1xuICAgIHRoaXMuX3NlbGVjdCh0aGlzLnNlbGVjdGVkIHx8IHRoaXMuX2VuYWJsZWRTdGVwc1swXSk7XG4gICAgdGhpcy5fcHJveHlTaXplKCk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVMYWJlbHMoKTogdm9pZCB7XG4gICAgdGhpcy5zdGVwcy5mb3JFYWNoKChzdGVwKSA9PiB7XG4gICAgICBzdGVwLnNsb3QgPSB0aGlzLm9yaWVudGF0aW9uID09PSAnaG9yaXpvbnRhbCcgPyAnc3RlcCcgOiAnc3RlcC1sYWJlbCc7XG4gICAgICBzdGVwLnNldEF0dHJpYnV0ZSgnZGF0YS1vcmllbnRhdGlvbicsIHRoaXMub3JpZW50YXRpb24pO1xuICAgICAgc3RlcC5sYWJlbD8uc2V0QXR0cmlidXRlKCdkYXRhLW9yaWVudGF0aW9uJywgdGhpcy5vcmllbnRhdGlvbik7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja09yaWVudGF0aW9uKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmhvcml6b250YWxGcm9tKSB7XG4gICAgICB0aGlzLm9yaWVudGF0aW9uID0gaXNCcmVha3BvaW50KHRoaXMuaG9yaXpvbnRhbEZyb20pID8gJ2hvcml6b250YWwnIDogJ3ZlcnRpY2FsJztcbiAgICAgIHRoaXMuX3VwZGF0ZUxhYmVscygpO1xuICAgIH1cbiAgICAvLyBUaGUgdGltZW91dCBpcyBuZWVkZWQgdG8gbWFrZSBzdXJlIHRoYXQgdGhlIG1hcmtlciB0YWtlcyB0aGUgY29ycmVjdCBzdGVwLWxhYmVsIHNpemUuXG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLl9zZXRNYXJrZXJTaXplKCksIDApO1xuICB9XG5cbiAgcHJpdmF0ZSBfb25TdGVwcGVyUmVzaXplKCk6IHZvaWQge1xuICAgIHRoaXMuX2NoZWNrT3JpZW50YXRpb24oKTtcbiAgICBjbGVhclRpbWVvdXQodGhpcy5fcmVzaXplT2JzZXJ2ZXJUaW1lb3V0ISk7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtZGlzYWJsZS1hbmltYXRpb24nLCB0cnVlKTtcblxuICAgIC8vIERpc2FibGUgdGhlIGFuaW1hdGlvbiB3aGVuIHJlc2l6aW5nIHRvIGF2b2lkIHN0cmFuZ2UgdHJhbnNpdGlvbiBlZmZlY3RzLlxuICAgIHRoaXMuX3Jlc2l6ZU9ic2VydmVyVGltZW91dCA9IHNldFRpbWVvdXQoXG4gICAgICAoKSA9PiB0aGlzLnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1kaXNhYmxlLWFuaW1hdGlvbicsIGZhbHNlKSxcbiAgICAgIERFQk9VTkNFX1RJTUUsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NvbmZpZ3VyZUxpbmVhck1vZGUoKTogdm9pZCB7XG4gICAgdGhpcy5zdGVwcy5mb3JFYWNoKChzdGVwLCBpbmRleCkgPT4ge1xuICAgICAgc3RlcC5sYWJlbD8udG9nZ2xlQXR0cmlidXRlKFxuICAgICAgICAnZGlzYWJsZWQnLFxuICAgICAgICAodGhpcy5saW5lYXIgJiYgaW5kZXggPiB0aGlzLnNlbGVjdGVkSW5kZXghKSB8fFxuICAgICAgICAgICghdGhpcy5saW5lYXIgJiYgc3RlcC5sYWJlbC5oYXNBdHRyaWJ1dGUoJ2RhdGEtZGlzYWJsZWQnKSksXG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgY29uc3Qgc2lnbmFsID0gdGhpcy5fYWJvcnQuc2lnbmFsO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIChlKSA9PiB0aGlzLl9oYW5kbGVLZXlEb3duKGUpLCB7IHNpZ25hbCB9KTtcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgKCkgPT4gdGhpcy5fb25TdGVwcGVyUmVzaXplKCksIHtcbiAgICAgIHNpZ25hbCxcbiAgICAgIHBhc3NpdmU6IHRydWUsXG4gICAgfSk7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtZGlzYWJsZS1hbmltYXRpb24nLCAhdGhpcy5fbG9hZGVkKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBhc3luYyBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcbiAgICBhd2FpdCB0aGlzLnVwZGF0ZUNvbXBsZXRlO1xuICAgIHRoaXMuX2xvYWRlZCA9IHRydWU7XG4gICAgdGhpcy5zZWxlY3RlZEluZGV4ID0gIXRoaXMubGluZWFyID8gTnVtYmVyKHRoaXMuZ2V0QXR0cmlidXRlKCdzZWxlY3RlZC1pbmRleCcpKSB8fCAwIDogMDtcbiAgICB0aGlzLl9jaGVja09yaWVudGF0aW9uKCk7XG4gICAgLy8gUmVtb3ZlIFtkYXRhLWRpc2FibGUtYW5pbWF0aW9uXSBhZnRlciBjb21wb25lbnQgaW5pdFxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtZGlzYWJsZS1hbmltYXRpb24nLCBmYWxzZSksIERFQk9VTkNFX1RJTUUpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnb3JpZW50YXRpb24nKSAmJiAhdGhpcy5ob3Jpem9udGFsRnJvbSkge1xuICAgICAgdGhpcy5fdXBkYXRlTGFiZWxzKCk7XG4gICAgICB0aGlzLl9zZXRNYXJrZXJTaXplKCk7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2xpbmVhcicpICYmIHRoaXMuX2xvYWRlZCkge1xuICAgICAgdGhpcy5fY29uZmlndXJlTGluZWFyTW9kZSgpO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3NpemUnKSkge1xuICAgICAgdGhpcy5fcHJveHlTaXplKCk7XG4gICAgICB0aGlzLl9zZXRNYXJrZXJTaXplKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcHJveHlTaXplKCk6IHZvaWQge1xuICAgIHRoaXMuc3RlcHMuZm9yRWFjaCgoc3RlcCkgPT4ge1xuICAgICAgc3RlcC5sYWJlbD8uc2V0QXR0cmlidXRlKCdkYXRhLXNpemUnLCB0aGlzLnNpemUpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlS2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBlbmFibGVkU3RlcHM6IFNiYlN0ZXBFbGVtZW50W10gPSB0aGlzLl9lbmFibGVkU3RlcHM7XG5cbiAgICBpZiAoXG4gICAgICAhZW5hYmxlZFN0ZXBzIHx8XG4gICAgICAvLyBkb24ndCB0cmFwIG5lc3RlZCBoYW5kbGluZ1xuICAgICAgKChldnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KSAhPT0gdGhpcyAmJiAoZXZ0LnRhcmdldCBhcyBIVE1MRWxlbWVudCkucGFyZW50RWxlbWVudCAhPT0gdGhpcylcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoaXNBcnJvd0tleVByZXNzZWQoZXZ0KSkge1xuICAgICAgY29uc3QgY3VycmVudDogbnVtYmVyID0gZW5hYmxlZFN0ZXBzLmluZGV4T2YodGhpcy5zZWxlY3RlZCEpO1xuICAgICAgY29uc3QgbmV4dEluZGV4OiBudW1iZXIgPSBnZXROZXh0RWxlbWVudEluZGV4KGV2dCwgY3VycmVudCwgZW5hYmxlZFN0ZXBzLmxlbmd0aCk7XG4gICAgICB0aGlzLl9zZWxlY3QoZW5hYmxlZFN0ZXBzW25leHRJbmRleF0pO1xuICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXN0ZXBwZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1zdGVwcGVyX19sYWJlbHNcIiByb2xlPVwidGFibGlzdFwiPlxuICAgICAgICAgIDxzbG90IG5hbWU9XCJzdGVwLWxhYmVsXCIgQHNsb3RjaGFuZ2U9JHt0aGlzLl9jb25maWd1cmV9Pjwvc2xvdD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItc3RlcHBlcl9fc3RlcHNcIj5cbiAgICAgICAgICA8c2xvdCBuYW1lPVwic3RlcFwiIEBzbG90Y2hhbmdlPSR7dGhpcy5fY29uZmlndXJlfT48L3Nsb3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXN0ZXBwZXInOiBTYmJTdGVwcGVyRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBa0JBLE1BQU0sZ0JBQWdCO0FBU2YsSUFBTSxvQkFBTixjQUFnQyxrQkFBa0IsVUFBVSxFQUFFO0FBQUEsRUFBOUQsY0FBQTtBQUFBLFVBQUEsR0FBQSxTQUFBO0FBSXdCLFNBQU8sU0FBUztBQWlCN0MsU0FBTyxjQUE4QjtBQUdSLFNBQU8sT0FBa0I7QUE4RHRELFNBQVEsVUFBbUI7QUFDbkIsU0FBQSxTQUFTLElBQUksNEJBQTRCLElBQUk7QUFDckQsU0FBUSx5QkFBK0Q7QUFBQSxFQUFBO0FBQUEsRUFoRnZFLElBQVcsZUFBZSxPQUEwQjtBQUNsRCxTQUFLLGtCQUFrQixZQUFZLFNBQVMsS0FBSyxJQUFJLFFBQVE7QUFDekQsUUFBQSxLQUFLLG1CQUFtQixLQUFLLFNBQVM7QUFDeEMsV0FBSyxrQkFBa0I7QUFBQSxJQUN6QjtBQUFBLEVBQ0Y7QUFBQSxFQUNBLElBQVcsaUJBQWdEO0FBQ3pELFdBQU8sS0FBSztBQUFBLEVBQ2Q7QUFBQSxFQVlBLElBQVcsU0FBUyxNQUFzQjtBQUN4QyxRQUFJLEtBQUssU0FBUztBQUNo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
372
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3N0ZXBwZXIvc3RlcHBlci9zdGVwcGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIExpdEVsZW1lbnQsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgZ2V0TmV4dEVsZW1lbnRJbmRleCwgaXNBcnJvd0tleVByZXNzZWQgfSBmcm9tICcuLi8uLi9jb3JlL2ExMXkuanMnO1xuaW1wb3J0IHsgU2JiQ29ubmVjdGVkQWJvcnRDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBicmVha3BvaW50cywgaXNCcmVha3BvaW50IH0gZnJvbSAnLi4vLi4vY29yZS9kb20uanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJIb3Jpem9udGFsRnJvbSwgU2JiT3JpZW50YXRpb24gfSBmcm9tICcuLi8uLi9jb3JlL2ludGVyZmFjZXMuanMnO1xuaW1wb3J0IHsgU2JiSHlkcmF0aW9uTWl4aW4gfSBmcm9tICcuLi8uLi9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYlN0ZXBFbGVtZW50LCBTYmJTdGVwVmFsaWRhdGVFdmVudERldGFpbHMgfSBmcm9tICcuLi9zdGVwLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vc3RlcHBlci5zY3NzP2xpdCZpbmxpbmUnO1xuXG5jb25zdCBERUJPVU5DRV9USU1FID0gMTUwO1xuXG4vKipcbiAqIFByb3ZpZGVzIGEgc3RydWN0dXJlZCwgc3RlcC1ieS1zdGVwIHdvcmtmbG93IGZvciB1c2VyIGludGVyYWN0aW9ucy5cbiAqIEBzbG90IC0gUHJvdmlkZSBhIGBzYmItZXhwYW5zaW9uLXBhbmVsLWhlYWRlcmAgYW5kIGEgYHNiYi1leHBhbnNpb24tcGFuZWwtY29udGVudGAgdG8gdGhlIHN0ZXBwZXIuXG4gKiBAc2xvdCBzdGVwLWxhYmVsIC0gVXNlIHRoaXMgc2xvdCB0byBwcm92aWRlIGFuIGBzYmItc3RlcC1sYWJlbGAuXG4gKiBAc2xvdCBzdGVwIC0gVXNlIHRoaXMgc2xvdCB0byBwcm92aWRlIGFuIGBzYmItc3RlcGAuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItc3RlcHBlcicpXG5leHBvcnQgY2xhc3MgU2JiU3RlcHBlckVsZW1lbnQgZXh0ZW5kcyBTYmJIeWRyYXRpb25NaXhpbihMaXRFbGVtZW50KSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKiBJZiBzZXQgdG8gdHJ1ZSwgb25seSB0aGUgY3VycmVudCBhbmQgcHJldmlvdXMgbGFiZWxzIGNhbiBiZSBjbGlja2VkIGFuZCBzZWxlY3RlZC4gKi9cbiAgQHByb3BlcnR5KHsgdHlwZTogQm9vbGVhbiB9KSBwdWJsaWMgbGluZWFyID0gZmFsc2U7XG5cbiAgLyoqIE92ZXJyaWRlcyB0aGUgYmVoYXZpb3VyIG9mIGBvcmllbnRhdGlvbmAgcHJvcGVydHkuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2hvcml6b250YWwtZnJvbScsIHJlZmxlY3Q6IHRydWUgfSlcbiAgcHVibGljIHNldCBob3Jpem9udGFsRnJvbSh2YWx1ZTogU2JiSG9yaXpvbnRhbEZyb20pIHtcbiAgICB0aGlzLl9ob3Jpem9udGFsRnJvbSA9IGJyZWFrcG9pbnRzLmluY2x1ZGVzKHZhbHVlKSA/IHZhbHVlIDogdW5kZWZpbmVkO1xuICAgIGlmICh0aGlzLl9ob3Jpem9udGFsRnJvbSAmJiB0aGlzLl9sb2FkZWQpIHtcbiAgICAgIHRoaXMuX2NoZWNrT3JpZW50YXRpb24oKTtcbiAgICB9XG4gIH1cbiAgcHVibGljIGdldCBob3Jpem9udGFsRnJvbSgpOiBTYmJIb3Jpem9udGFsRnJvbSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX2hvcml6b250YWxGcm9tO1xuICB9XG4gIHByaXZhdGUgX2hvcml6b250YWxGcm9tPzogU2JiSG9yaXpvbnRhbEZyb20gfCB1bmRlZmluZWQ7XG5cbiAgLyoqIFN0ZXBzIG9yaWVudGF0aW9uLCBlaXRoZXIgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4gKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KVxuICBwdWJsaWMgb3JpZW50YXRpb246IFNiYk9yaWVudGF0aW9uID0gJ2hvcml6b250YWwnO1xuXG4gIC8qKiBTaXplIHZhcmlhbnQsIGVpdGhlciBzIG9yIG0uICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIHNpemU6ICdzJyB8ICdtJyA9ICdtJztcblxuICAvKiogVGhlIGN1cnJlbnRseSBzZWxlY3RlZCBzdGVwLiAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6IGZhbHNlIH0pXG4gIHB1YmxpYyBzZXQgc2VsZWN0ZWQoc3RlcDogU2JiU3RlcEVsZW1lbnQpIHtcbiAgICBpZiAodGhpcy5fbG9hZGVkKSB7XG4gICAgICB0aGlzLl9zZWxlY3Qoc3RlcCk7XG4gICAgfVxuICB9XG4gIHB1YmxpYyBnZXQgc2VsZWN0ZWQoKTogU2JiU3RlcEVsZW1lbnQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnF1ZXJ5U2VsZWN0b3I/LjxTYmJTdGVwRWxlbWVudD4oJ3NiYi1zdGVwW2RhdGEtc2VsZWN0ZWRdJykgPz8gdW5kZWZpbmVkO1xuICB9XG5cbiAgLyoqIFRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgc3RlcCBpbmRleC4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnc2VsZWN0ZWQtaW5kZXgnLCB0eXBlOiBOdW1iZXIgfSlcbiAgcHVibGljIHNldCBzZWxlY3RlZEluZGV4KGluZGV4OiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5fbG9hZGVkKSB7XG4gICAgICB0aGlzLl9zZWxlY3QodGhpcy5zdGVwc1tpbmRleF0pO1xuICAgIH1cbiAgfVxuICBwdWJsaWMgZ2V0IHNlbGVjdGVkSW5kZXgoKTogbnVtYmVyIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZCA/IHRoaXMuc3RlcHMuaW5kZXhPZih0aGlzLnNlbGVjdGVkKSA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8qKiBUaGUgc3RlcHMgb2YgdGhlIHN0ZXBwZXIuICovXG4gIHB1YmxpYyBnZXQgc3RlcHMoKTogU2JiU3RlcEVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5xdWVyeVNlbGVjdG9yQWxsPy4oJ3NiYi1zdGVwJykgPz8gW10pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX2VuYWJsZWRTdGVwcygpOiBTYmJTdGVwRWxlbWVudFtdIHtcbiAgICByZXR1cm4gdGhpcy5zdGVwcy5maWx0ZXIoKHMpID0+ICFzLmxhYmVsPy5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJykpO1xuICB9XG5cbiAgcHJpdmF0ZSBfbG9hZGVkOiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgX2Fib3J0ID0gbmV3IFNiYkNvbm5lY3RlZEFib3J0Q29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfcmVzaXplT2JzZXJ2ZXJUaW1lb3V0OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PiB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBTZWxlY3RzIHRoZSBuZXh0IHN0ZXAuICovXG4gIHB1YmxpYyBuZXh0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNlbGVjdGVkSW5kZXggIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5fc2VsZWN0KHRoaXMuc3RlcHNbdGhpcy5zZWxlY3RlZEluZGV4ICsgMV0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBTZWxlY3RzIHRoZSBwcmV2aW91cyBzdGVwLiAqL1xuICBwdWJsaWMgcHJldmlvdXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRJbmRleCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLl9zZWxlY3QodGhpcy5zdGVwc1t0aGlzLnNlbGVjdGVkSW5kZXggLSAxXSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIFJlc2V0cyB0aGUgZm9ybSBpbiB3aGljaCB0aGUgc3RlcHBlciBpcyBuZXN0ZWQgb3IgZXZlcnkgZm9ybSBvZiBlYWNoIHN0ZXAsIGlmIGFueS4gKi9cbiAgcHVibGljIHJlc2V0KCk6IHZvaWQge1xuICAgIGNvbnN0IGNsb3Nlc3RGb3JtID0gdGhpcy5jbG9zZXN0KCdmb3JtJyk7XG4gICAgaWYgKGNsb3Nlc3RGb3JtKSB7XG4gICAgICBjbG9zZXN0Rm9ybS5yZXNldCgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnF1ZXJ5U2VsZWN0b3JBbGwoJ2Zvcm0nKS5mb3JFYWNoKChmb3JtKSA9PiBmb3JtLnJlc2V0KCkpO1xuICAgIH1cbiAgICB0aGlzLnNlbGVjdGVkSW5kZXggPSAwO1xuICAgIC8vIEluIGNhc2UgdGhlIGZvY3VzIGlzIGN1cnJlbnRseSBpbnNpZGUgdGhlIHN0ZXBwZXIsIHdlIHJlc2V0IHRoZSBmb2N1cyB0byB0aGUgZmlyc3Qvc2VsZWN0ZWQgc3RlcCBsYWJlbC5cbiAgICBpZiAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudD8uY2xvc2VzdCgnc2JiLXN0ZXBwZXInKSA9PT0gdGhpcykge1xuICAgICAgdGhpcy5zZWxlY3RlZD8ubGFiZWw/LmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaXNWYWxpZFN0ZXAoc3RlcDogU2JiU3RlcEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICBpZiAoIXN0ZXAgfHwgKCF0aGlzLmxpbmVhciAmJiBzdGVwLmxhYmVsPy5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJykpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubGluZWFyICYmICF0aGlzLnNlbGVjdGVkKSB7XG4gICAgICByZXR1cm4gc3RlcCA9PT0gdGhpcy5zdGVwc1swXTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5saW5lYXIgJiYgdGhpcy5zZWxlY3RlZEluZGV4ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5zdGVwcy5pbmRleE9mKHN0ZXApO1xuICAgICAgcmV0dXJuIGluZGV4IDwgdGhpcy5zZWxlY3RlZEluZGV4IHx8IGluZGV4ID09PSB0aGlzLnNlbGVjdGVkSW5kZXggKyAxO1xuICAgIH1cblxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2VsZWN0KHN0ZXA6IFNiYlN0ZXBFbGVtZW50KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9pc1ZhbGlkU3RlcChzdGVwKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCB2YWxpZGF0ZVBheWxvYWQ6IFNiYlN0ZXBWYWxpZGF0ZUV2ZW50RGV0YWlscyA9IHtcbiAgICAgIGN1cnJlbnRJbmRleDogdGhpcy5zZWxlY3RlZEluZGV4LFxuICAgICAgY3VycmVudFN0ZXA6IHRoaXMuc2VsZWN0ZWQsXG4gICAgICBuZXh0SW5kZXg6IHRoaXMuc2VsZWN0ZWRJbmRleCAhPT0gdW5kZWZpbmVkID8gdGhpcy5zZWxlY3RlZEluZGV4ICsgMSA6IHVuZGVmaW5lZCxcbiAgICAgIG5leHRTdGVwOiB0aGlzLnNlbGVjdGVkSW5kZXggIT09IHVuZGVmaW5lZCA/IHRoaXMuc3RlcHNbdGhpcy5zZWxlY3RlZEluZGV4ICsgMV0gOiB1bmRlZmluZWQsXG4gICAgfTtcbiAgICBpZiAodGhpcy5zZWxlY3RlZCAmJiAhdGhpcy5zZWxlY3RlZC52YWxpZGF0ZSh2YWxpZGF0ZVBheWxvYWQpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLnNlbGVjdGVkO1xuICAgIGN1cnJlbnQ/LmRlc2VsZWN0KCk7XG4gICAgc3RlcC5zZWxlY3QoKTtcbiAgICB0aGlzLl9zZXRNYXJrZXJTaXplKCk7XG4gICAgdGhpcy5fY29uZmlndXJlTGluZWFyTW9kZSgpO1xuICAgIC8vIEluIGNhc2UgdGhlIGZvY3VzIGlzIGN1cnJlbnRseSBpbnNpZGUgdGhlIHN0ZXBwZXIsIHdlIGZvY3VzIHRoZSBzZWxlY3RlZCBzdGVwIGxhYmVsLlxuICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50Py5jbG9zZXN0KCdzYmItc3RlcHBlcicpID09PSB0aGlzKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkPy5sYWJlbD8uZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9zZXRNYXJrZXJTaXplKCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgICF0aGlzLl9sb2FkZWQgfHxcbiAgICAgICF0aGlzLnNlbGVjdGVkIHx8XG4gICAgICB0aGlzLnNlbGVjdGVkSW5kZXggPT09IHVuZGVmaW5lZCB8fFxuICAgICAgIXRoaXMuc2VsZWN0ZWQubGFiZWxcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3Qgb2Zmc2V0ID1cbiAgICAgIHRoaXMub3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJ1xuICAgICAgICA/IHRoaXMuc2VsZWN0ZWQubGFiZWwub2Zmc2V0TGVmdCArIHRoaXMuc2VsZWN0ZWQubGFiZWwub2Zmc2V0V2lkdGhcbiAgICAgICAgOiB0aGlzLl9jYWxjdWxhdGVMYWJlbE9mZnNldFRvcCgpO1xuXG4gICAgdGhpcy5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1zYmItc3RlcHBlci1tYXJrZXItc2l6ZScsIGAke29mZnNldH1weGApO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlTGFiZWxPZmZzZXRUb3AoKTogbnVtYmVyIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodGhpcy5zZWxlY3RlZEluZGV4ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgbGV0IG9mZnNldCA9IDA7XG4gICAgZm9yIChjb25zdCBzdGVwIG9mIHRoaXMuc3RlcHMpIHtcbiAgICAgIGlmIChzdGVwID09PSB0aGlzLnNlbGVjdGVkKSB7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgb2Zmc2V0ID0gc3RlcC5sYWJlbCEub2Zmc2V0SGVpZ2h0ICsgb2Zmc2V0O1xuICAgIH1cbiAgICByZXR1cm4gKFxuICAgICAgb2Zmc2V0ICtcbiAgICAgIHRoaXMuc2VsZWN0ZWQhLmxhYmVsIS5vZmZzZXRIZWlnaHQhICtcbiAgICAgIHBhcnNlRmxvYXQoZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzKS5nZXRQcm9wZXJ0eVZhbHVlKCctLXNiYi1zcGFjaW5nLWZpeGVkLTZ4JykpICpcbiAgICAgICAgMTYgKlxuICAgICAgICB0aGlzLnNlbGVjdGVkSW5kZXhcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfY29uZmlndXJlKCk6IHZvaWQge1xuICAgIGNvbnN0IHN0ZXBzID0gdGhpcy5zdGVwcztcbiAgICBzdGVwcy5mb3JFYWNoKChzKSA9PiBzLmNvbmZpZ3VyZSh0aGlzLl9sb2FkZWQpKTtcbiAgICBzdGVwc1xuICAgICAgLmZpbHRlcigocykgPT4gcy5sYWJlbClcbiAgICAgIC5tYXAoKHMpID0+IHMubGFiZWwhKVxuICAgICAgLmZvckVhY2goKGxhYmVsLCBpLCBhcnJheSkgPT4ge1xuICAgICAgICBsYWJlbC5jb25maWd1cmUoaSArIDEsIGFycmF5Lmxlbmd0aCwgdGhpcy5fbG9hZGVkKTtcbiAgICAgIH0pO1xuICAgIHRoaXMuX3NlbGVjdCh0aGlzLnNlbGVjdGVkIHx8IHRoaXMuX2VuYWJsZWRTdGVwc1swXSk7XG4gICAgdGhpcy5fcHJveHlTaXplKCk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVMYWJlbHMoKTogdm9pZCB7XG4gICAgdGhpcy5zdGVwcy5mb3JFYWNoKChzdGVwKSA9PiB7XG4gICAgICBzdGVwLnNsb3QgPSB0aGlzLm9yaWVudGF0aW9uID09PSAnaG9yaXpvbnRhbCcgPyAnc3RlcCcgOiAnc3RlcC1sYWJlbCc7XG4gICAgICBzdGVwLnNldEF0dHJpYnV0ZSgnZGF0YS1vcmllbnRhdGlvbicsIHRoaXMub3JpZW50YXRpb24pO1xuICAgICAgc3RlcC5sYWJlbD8uc2V0QXR0cmlidXRlKCdkYXRhLW9yaWVudGF0aW9uJywgdGhpcy5vcmllbnRhdGlvbik7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja09yaWVudGF0aW9uKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmhvcml6b250YWxGcm9tKSB7XG4gICAgICB0aGlzLm9yaWVudGF0aW9uID0gaXNCcmVha3BvaW50KHRoaXMuaG9yaXpvbnRhbEZyb20pID8gJ2hvcml6b250YWwnIDogJ3ZlcnRpY2FsJztcbiAgICAgIHRoaXMuX3VwZGF0ZUxhYmVscygpO1xuICAgIH1cbiAgICAvLyBUaGUgdGltZW91dCBpcyBuZWVkZWQgdG8gbWFrZSBzdXJlIHRoYXQgdGhlIG1hcmtlciB0YWtlcyB0aGUgY29ycmVjdCBzdGVwLWxhYmVsIHNpemUuXG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLl9zZXRNYXJrZXJTaXplKCksIDApO1xuICB9XG5cbiAgcHJpdmF0ZSBfb25TdGVwcGVyUmVzaXplKCk6IHZvaWQge1xuICAgIHRoaXMuX2NoZWNrT3JpZW50YXRpb24oKTtcbiAgICBjbGVhclRpbWVvdXQodGhpcy5fcmVzaXplT2JzZXJ2ZXJUaW1lb3V0ISk7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtZGlzYWJsZS1hbmltYXRpb24nLCB0cnVlKTtcblxuICAgIC8vIERpc2FibGUgdGhlIGFuaW1hdGlvbiB3aGVuIHJlc2l6aW5nIHRvIGF2b2lkIHN0cmFuZ2UgdHJhbnNpdGlvbiBlZmZlY3RzLlxuICAgIHRoaXMuX3Jlc2l6ZU9ic2VydmVyVGltZW91dCA9IHNldFRpbWVvdXQoXG4gICAgICAoKSA9PiB0aGlzLnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1kaXNhYmxlLWFuaW1hdGlvbicsIGZhbHNlKSxcbiAgICAgIERFQk9VTkNFX1RJTUUsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NvbmZpZ3VyZUxpbmVhck1vZGUoKTogdm9pZCB7XG4gICAgdGhpcy5zdGVwcy5mb3JFYWNoKChzdGVwLCBpbmRleCkgPT4ge1xuICAgICAgc3RlcC5sYWJlbD8udG9nZ2xlQXR0cmlidXRlKFxuICAgICAgICAnZGlzYWJsZWQnLFxuICAgICAgICAodGhpcy5saW5lYXIgJiYgaW5kZXggPiB0aGlzLnNlbGVjdGVkSW5kZXghKSB8fFxuICAgICAgICAgICghdGhpcy5saW5lYXIgJiYgc3RlcC5sYWJlbC5oYXNBdHRyaWJ1dGUoJ2RhdGEtZGlzYWJsZWQnKSksXG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgY29uc3Qgc2lnbmFsID0gdGhpcy5fYWJvcnQuc2lnbmFsO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIChlKSA9PiB0aGlzLl9oYW5kbGVLZXlEb3duKGUpLCB7IHNpZ25hbCB9KTtcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgKCkgPT4gdGhpcy5fb25TdGVwcGVyUmVzaXplKCksIHtcbiAgICAgIHNpZ25hbCxcbiAgICAgIHBhc3NpdmU6IHRydWUsXG4gICAgfSk7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtZGlzYWJsZS1hbmltYXRpb24nLCAhdGhpcy5fbG9hZGVkKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBhc3luYyBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcbiAgICBhd2FpdCB0aGlzLnVwZGF0ZUNvbXBsZXRlO1xuICAgIHRoaXMuX2xvYWRlZCA9IHRydWU7XG4gICAgdGhpcy5zZWxlY3RlZEluZGV4ID0gIXRoaXMubGluZWFyID8gTnVtYmVyKHRoaXMuZ2V0QXR0cmlidXRlKCdzZWxlY3RlZC1pbmRleCcpKSB8fCAwIDogMDtcbiAgICB0aGlzLl9jaGVja09yaWVudGF0aW9uKCk7XG4gICAgLy8gUmVtb3ZlIFtkYXRhLWRpc2FibGUtYW5pbWF0aW9uXSBhZnRlciBjb21wb25lbnQgaW5pdFxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtZGlzYWJsZS1hbmltYXRpb24nLCBmYWxzZSksIERFQk9VTkNFX1RJTUUpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnb3JpZW50YXRpb24nKSAmJiAhdGhpcy5ob3Jpem9udGFsRnJvbSkge1xuICAgICAgdGhpcy5fdXBkYXRlTGFiZWxzKCk7XG4gICAgICB0aGlzLl9zZXRNYXJrZXJTaXplKCk7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2xpbmVhcicpICYmIHRoaXMuX2xvYWRlZCkge1xuICAgICAgdGhpcy5fY29uZmlndXJlTGluZWFyTW9kZSgpO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3NpemUnKSkge1xuICAgICAgdGhpcy5fcHJveHlTaXplKCk7XG4gICAgICB0aGlzLl9zZXRNYXJrZXJTaXplKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcHJveHlTaXplKCk6IHZvaWQge1xuICAgIHRoaXMuc3RlcHMuZm9yRWFjaCgoc3RlcCkgPT4ge1xuICAgICAgc3RlcC5sYWJlbD8uc2V0QXR0cmlidXRlKCdkYXRhLXNpemUnLCB0aGlzLnNpemUpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlS2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBlbmFibGVkU3RlcHM6IFNiYlN0ZXBFbGVtZW50W10gPSB0aGlzLl9lbmFibGVkU3RlcHM7XG5cbiAgICBpZiAoXG4gICAgICAhZW5hYmxlZFN0ZXBzIHx8XG4gICAgICAvLyBkb24ndCB0cmFwIG5lc3RlZCBoYW5kbGluZ1xuICAgICAgKChldnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KSAhPT0gdGhpcyAmJiAoZXZ0LnRhcmdldCBhcyBIVE1MRWxlbWVudCkucGFyZW50RWxlbWVudCAhPT0gdGhpcylcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoaXNBcnJvd0tleVByZXNzZWQoZXZ0KSkge1xuICAgICAgY29uc3QgY3VycmVudDogbnVtYmVyID0gZW5hYmxlZFN0ZXBzLmluZGV4T2YodGhpcy5zZWxlY3RlZCEpO1xuICAgICAgY29uc3QgbmV4dEluZGV4OiBudW1iZXIgPSBnZXROZXh0RWxlbWVudEluZGV4KGV2dCwgY3VycmVudCwgZW5hYmxlZFN0ZXBzLmxlbmd0aCk7XG4gICAgICB0aGlzLl9zZWxlY3QoZW5hYmxlZFN0ZXBzW25leHRJbmRleF0pO1xuICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXN0ZXBwZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1zdGVwcGVyX19sYWJlbHNcIiByb2xlPVwidGFibGlzdFwiPlxuICAgICAgICAgIDxzbG90IG5hbWU9XCJzdGVwLWxhYmVsXCIgQHNsb3RjaGFuZ2U9JHt0aGlzLl9jb25maWd1cmV9Pjwvc2xvdD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItc3RlcHBlcl9fc3RlcHNcIj5cbiAgICAgICAgICA8c2xvdCBuYW1lPVwic3RlcFwiIEBzbG90Y2hhbmdlPSR7dGhpcy5fY29uZmlndXJlfT48L3Nsb3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXN0ZXBwZXInOiBTYmJTdGVwcGVyRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFrQkEsTUFBTSxnQkFBZ0I7QUFTZixJQUFNLG9CQUFOLGNBQWdDLGtCQUFrQixVQUFVLEVBQUU7QUFBQSxFQUE5RCxjQUFBO0FBQUEsVUFBQSxHQUFBLFNBQUE7QUFJd0IsU0FBTyxTQUFTO0FBaUI3QyxTQUFPLGNBQThCO0FBR1IsU0FBTyxPQUFrQjtBQWlDdEQsU0FBUSxVQUFtQjtBQUNuQixTQUFBLFNBQVMsSUFBSSw0QkFBNEIsSUFBSTtBQUNyRCxTQUFRLHlCQUErRDtBQUFBLEVBQUE7QUFBQSxFQW5EdkUsSUFBVyxlQUFlLE9BQTBCO0FBQ2xELFNBQUssa0JBQWtCLFlBQVksU0FBUyxLQUFLLElBQUksUUFBUTtBQUN6RCxRQUFBLEtBQUssbUJBQW1CLEtBQUssU0FBUztBQUN4QyxXQUFLLGtCQUFrQjtBQUFBLElBQ3pCO0FBQUEsRUFDRjtBQUFBLEVBQ0EsSUFBVyxpQkFBZ0Q7QUFDekQsV0FBTyxLQUFLO0FBQUEsRUFDZDtBQUFBLEVBWUEsSUFBVyxTQUFTLE1BQXNCO0FBQ3hDLFFBQUksS0FBSyxTQUFTO0FBQ2hCLFdBQUssUUFBUSxJ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
@@ -2,20 +2,7 @@ import { css, LitElement, html } from "lit";
2
2
  import { customElement } from "lit/decorators.js";
3
3
  import { SbbNegativeMixin } from "../core/mixins.js";
4
4
  import { AgnosticResizeObserver } from "../core/observers.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:
@@ -127,4 +114,4 @@ SbbTableWrapperElement = __decorateClass([
127
114
  export {
128
115
  SbbTableWrapperElement
129
116
  };
130
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtd3JhcHBlci5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3RhYmxlL3RhYmxlLXdyYXBwZXIvdGFibGUtd3JhcHBlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBMaXRFbGVtZW50LFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgU2JiTmVnYXRpdmVNaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IEFnbm9zdGljUmVzaXplT2JzZXJ2ZXIgfSBmcm9tICcuLi8uLi9jb3JlL29ic2VydmVycy5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3RhYmxlLXdyYXBwZXIuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBXcmFwcyBhIHRhYmxlIHRvIGVuaGFuY2UgaXRzIGZ1bmN0aW9uYWxpdHlcbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCB0aGUgdGFibGUuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItdGFibGUtd3JhcHBlcicpXG5leHBvcnQgY2xhc3MgU2JiVGFibGVXcmFwcGVyRWxlbWVudCBleHRlbmRzIFNiYk5lZ2F0aXZlTWl4aW4oTGl0RWxlbWVudCkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICBwcml2YXRlIF9yZXNpemVPYnNlcnZlciA9IG5ldyBBZ25vc3RpY1Jlc2l6ZU9ic2VydmVyKCgpID0+IHRoaXMuX2NoZWNrSG9yaXpvbnRhbFNjcm9sbGJhcigpKTtcbiAgcHJpdmF0ZSBfdGFibGVXcmFwcGVyITogSFRNTEVsZW1lbnQ7XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fcmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXMpOiB2b2lkIHtcbiAgICBzdXBlci5maXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuICAgIHRoaXMuX3RhYmxlV3JhcHBlciA9IHRoaXMuc2hhZG93Um9vdCEucXVlcnlTZWxlY3RvcjxIVE1MRWxlbWVudD4oJy5zYmItdGFibGUtd3JhcHBlcicpITtcbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMuX3RhYmxlV3JhcHBlcik7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja0hvcml6b250YWxTY3JvbGxiYXIoKTogdm9pZCB7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoXG4gICAgICAnZGF0YS1oYXMtaG9yaXpvbnRhbC1zY3JvbGxiYXInLFxuICAgICAgdGhpcy5fdGFibGVXcmFwcGVyLnNjcm9sbFdpZHRoID4gdGhpcy5fdGFibGVXcmFwcGVyLm9mZnNldFdpZHRoLFxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGA8ZGl2IGNsYXNzPVwic2JiLXRhYmxlLXdyYXBwZXJcIj5cbiAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICA8L2Rpdj5gO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdGFibGUtd3JhcHBlcic6IFNiYlRhYmxlV3JhcHBlckVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFvQk8sSUFBTSx5QkFBTixjQUFxQyxpQkFBaUIsVUFBVSxFQUFFO0FBQUEsRUFBbEUsY0FBQTtBQUFBLFVBQUEsR0FBQSxTQUFBO0FBR0wsU0FBUSxrQkFBa0IsSUFBSSx1QkFBdUIsTUFBTSxLQUFLLDJCQUEyQjtBQUFBLEVBQUE7QUFBQSxFQUczRSx1QkFBNkI7QUFDM0MsVUFBTSxxQkFBcUI7QUFDM0IsU0FBSyxnQkFBZ0I7RUFDdkI7QUFBQSxFQUVtQixhQUFhLG1CQUF5QztBQUN2RSxVQUFNLGFBQWEsaUJBQWlCO0FBQ3BDLFNBQUssZ0JBQWdCLEtBQUssV0FBWSxjQUEyQixvQkFBb0I7QUFDaEYsU0FBQSxnQkFBZ0IsUUFBUSxLQUFLLGFBQWE7QUFBQSxFQUNqRDtBQUFBLEVBRVEsNEJBQWtDO0FBQ25DLFNBQUE7QUFBQSxNQUNIO0FBQUEsTUFDQSxLQUFLLGNBQWMsY0FBYyxLQUFLLGNBQWM7QUFBQSxJQUFBO0FBQUEsRUFFeEQ7QUFBQSxFQUVtQixTQUF5QjtBQUNuQyxXQUFBO0FBQUE7QUFBQTtBQUFBLEVBR1Q7QUFDRjtBQTdCYSx1QkFDWSxTQUF5QjtBQURyQyx5QkFBTixnQkFBQTtBQUFBLEVBRE4sY0FBYyxtQkFBbUI7QUFBQSxHQUNyQixzQkFBQTsifQ==
117
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtd3JhcHBlci5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3RhYmxlL3RhYmxlLXdyYXBwZXIvdGFibGUtd3JhcHBlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBMaXRFbGVtZW50LFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgU2JiTmVnYXRpdmVNaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IEFnbm9zdGljUmVzaXplT2JzZXJ2ZXIgfSBmcm9tICcuLi8uLi9jb3JlL29ic2VydmVycy5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3RhYmxlLXdyYXBwZXIuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBXcmFwcyBhIHRhYmxlIHRvIGVuaGFuY2UgaXRzIGZ1bmN0aW9uYWxpdHlcbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCB0aGUgdGFibGUuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItdGFibGUtd3JhcHBlcicpXG5leHBvcnQgY2xhc3MgU2JiVGFibGVXcmFwcGVyRWxlbWVudCBleHRlbmRzIFNiYk5lZ2F0aXZlTWl4aW4oTGl0RWxlbWVudCkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICBwcml2YXRlIF9yZXNpemVPYnNlcnZlciA9IG5ldyBBZ25vc3RpY1Jlc2l6ZU9ic2VydmVyKCgpID0+IHRoaXMuX2NoZWNrSG9yaXpvbnRhbFNjcm9sbGJhcigpKTtcbiAgcHJpdmF0ZSBfdGFibGVXcmFwcGVyITogSFRNTEVsZW1lbnQ7XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fcmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXMpOiB2b2lkIHtcbiAgICBzdXBlci5maXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuICAgIHRoaXMuX3RhYmxlV3JhcHBlciA9IHRoaXMuc2hhZG93Um9vdCEucXVlcnlTZWxlY3RvcjxIVE1MRWxlbWVudD4oJy5zYmItdGFibGUtd3JhcHBlcicpITtcbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMuX3RhYmxlV3JhcHBlcik7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja0hvcml6b250YWxTY3JvbGxiYXIoKTogdm9pZCB7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoXG4gICAgICAnZGF0YS1oYXMtaG9yaXpvbnRhbC1zY3JvbGxiYXInLFxuICAgICAgdGhpcy5fdGFibGVXcmFwcGVyLnNjcm9sbFdpZHRoID4gdGhpcy5fdGFibGVXcmFwcGVyLm9mZnNldFdpZHRoLFxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGA8ZGl2IGNsYXNzPVwic2JiLXRhYmxlLXdyYXBwZXJcIj5cbiAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICA8L2Rpdj5gO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdGFibGUtd3JhcHBlcic6IFNiYlRhYmxlV3JhcHBlckVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW9CTyxJQUFNLHlCQUFOLGNBQXFDLGlCQUFpQixVQUFVLEVBQUU7QUFBQSxFQUFsRSxjQUFBO0FBQUEsVUFBQSxHQUFBLFNBQUE7QUFHTCxTQUFRLGtCQUFrQixJQUFJLHVCQUF1QixNQUFNLEtBQUssMkJBQTJCO0FBQUEsRUFBQTtBQUFBLEVBRzNFLHVCQUE2QjtBQUMzQyxVQUFNLHFCQUFxQjtBQUMzQixTQUFLLGdCQUFnQjtFQUN2QjtBQUFBLEVBRW1CLGFBQWEsbUJBQXlDO0FBQ3ZFLFVBQU0sYUFBYSxpQkFBaUI7QUFDcEMsU0FBSyxnQkFBZ0IsS0FBSyxXQUFZLGNBQTJCLG9CQUFvQjtBQUNoRixTQUFBLGdCQUFnQixRQUFRLEtBQUssYUFBYTtBQUFBLEVBQ2pEO0FBQUEsRUFFUSw0QkFBa0M7QUFDbkMsU0FBQTtBQUFBLE1BQ0g7QUFBQSxNQUNBLEtBQUssY0FBYyxjQUFjLEtBQUssY0FBYztBQUFBLElBQUE7QUFBQSxFQUV4RDtBQUFBLEVBRW1CLFNBQXlCO0FBQ25DLFdBQUE7QUFBQTtBQUFBO0FBQUEsRUFHVDtBQUNGO0FBN0JhLHVCQUNZLFNBQXlCO0FBRHJDLHlCQUFOLGdCQUFBO0FBQUEsRUFETixjQUFjLG1CQUFtQjtBQUFBLEdBQ3JCLHNCQUFBOyJ9
@@ -54,9 +54,10 @@ export declare class SbbTabGroupElement extends SbbTabGroupElement_base {
54
54
  * the tab group, the first enabled tab will be selected.
55
55
  */
56
56
  initialSelectedIndex: number;
57
- private _updateSize;
58
57
  /** Emits an event on selected tab change. */
59
58
  private _selectedTabChanged;
59
+ connectedCallback(): void;
60
+ protected firstUpdated(changedProperties: PropertyValues<this>): void;
60
61
  /**
61
62
  * Disables a tab by index.
62
63
  * @param tabIndex The index of the tab you want to disable.
@@ -73,10 +74,9 @@ export declare class SbbTabGroupElement extends SbbTabGroupElement_base {
73
74
  */
74
75
  activateTab(tabIndex: number): void;
75
76
  private _getTabs;
76
- private get _enabledTabs();
77
- connectedCallback(): void;
78
- protected firstUpdated(changedProperties: PropertyValues<this>): void;
77
+ private _enabledTabs;
79
78
  disconnectedCallback(): void;
79
+ private _updateSize;
80
80
  private _onContentSlotChange;
81
81
  private _onTabsSlotChange;
82
82
  private _assignId;
@@ -1 +1 @@
1
- {"version":3,"file":"tab-group.d.ts","sourceRoot":"","sources":["../../../../../src/elements/tabs/tab-group/tab-group.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tab-group.d.ts","sourceRoot":"","sources":["../../../../../src/elements/tabs/tab-group/tab-group.ts"],"names":[],"mappings":"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"}
@@ -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