@sbb-esta/lyne-elements-experimental 5.0.0-next.2 → 5.0.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 (177) hide show
  1. package/_index.scss +2 -0
  2. package/autocomplete-grid/_autocomplete-grid.global.scss +14 -0
  3. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +4 -4
  4. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +42 -66
  5. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +1 -1
  6. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +1 -1
  7. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +1 -1
  8. package/autocomplete-grid-option.component-DUFBhQwI.js +35 -0
  9. package/autocomplete-grid.js +3 -3
  10. package/autocomplete-grid.pure.js +3 -3
  11. package/core/datetime/date-helper.js +1 -1
  12. package/core/styles/_theme.scss +19 -0
  13. package/core/styles/lean-off-brand-theme.scss +3 -0
  14. package/core/styles/lean-safety-theme.scss +3 -0
  15. package/core.js +1 -1
  16. package/custom-elements.json +5312 -5160
  17. package/{date-helper-CuMnZCsr.js → date-helper-DNzMLcyb.js} +3 -3
  18. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts.map +1 -1
  19. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +5 -5
  20. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +1 -1
  21. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +54 -83
  22. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +1 -1
  23. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +1 -1
  24. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +0 -1
  25. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -1
  26. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +1 -1
  27. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +1 -1
  28. package/development/{autocomplete-grid-cell.component-BF8i4388.js → autocomplete-grid-cell.component-BbdELDro.js} +1 -1
  29. package/development/autocomplete-grid-option.component-C7WuqRit.js +57 -0
  30. package/development/{autocomplete-grid-row.component-CBHh50jC.js → autocomplete-grid-row.component-DoXbOsQM.js} +1 -1
  31. package/development/autocomplete-grid.js +4 -4
  32. package/development/autocomplete-grid.pure.js +3 -3
  33. package/development/core/datetime/date-helper.js +1 -1
  34. package/development/core/timetable/access-leg-helper.js +1 -1
  35. package/development/core/timetable/timetable-helper.js +1 -1
  36. package/development/core.js +1 -1
  37. package/development/date-helper-BcTDWVeP.js +539 -0
  38. package/development/{differenceInMinutes-B7_GTDq7.js → differenceInMinutes-CxAbGYQ3.js} +2 -2
  39. package/development/{format-DFx4997p.js → format-Cx3zmmaF.js} +3 -3
  40. package/development/{isValid-JpZ7FphI.js → isValid-40Olgzo1.js} +2 -2
  41. package/development/journey-summary/journey-summary.component.d.ts +2 -3
  42. package/development/journey-summary/journey-summary.component.d.ts.map +1 -1
  43. package/development/journey-summary/journey-summary.component.js +1 -1
  44. package/development/journey-summary.component-BsC7wBIn.js +341 -0
  45. package/development/journey-summary.js +2 -2
  46. package/development/journey-summary.pure.js +1 -1
  47. package/development/{mapper-hWWm7Uke.js → mapper-BrZOqqfe.js} +1 -1
  48. package/development/pearl-chain/pearl-chain.component.js +1 -1
  49. package/development/pearl-chain-time/pearl-chain-time.component.js +1 -1
  50. package/development/{pearl-chain-time.component-BxVQ1z-Z.js → pearl-chain-time.component-C-CuC1ke.js} +3 -3
  51. package/development/pearl-chain-time.js +2 -2
  52. package/development/pearl-chain-time.pure.js +1 -1
  53. package/development/pearl-chain-vertical/pearl-chain-vertical.component.js +1 -1
  54. package/development/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +1 -1
  55. package/development/{pearl-chain-vertical-item.component-DJioJtxP.js → pearl-chain-vertical-item.component-CLu9QrqJ.js} +2 -2
  56. package/development/pearl-chain-vertical-item.js +2 -2
  57. package/development/pearl-chain-vertical-item.pure.js +1 -1
  58. package/development/{pearl-chain-vertical.component-zSOeIkhh.js → pearl-chain-vertical.component-DbPz5k_R.js} +1 -1
  59. package/development/pearl-chain-vertical.js +2 -2
  60. package/development/pearl-chain-vertical.pure.js +1 -1
  61. package/development/pearl-chain.component-10OsJZIX.js +318 -0
  62. package/development/pearl-chain.js +2 -2
  63. package/development/pearl-chain.pure.js +1 -1
  64. package/development/seat-reservation/common/mapper/icon-mapper.js +1 -1
  65. package/development/seat-reservation/common/mapper/mapper.js +1 -1
  66. package/development/seat-reservation/common/mapper.js +1 -1
  67. package/development/seat-reservation/common/svgs.js +1 -1
  68. package/development/seat-reservation/common/translations/i18n.js +1 -1
  69. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts +11 -1
  70. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts.map +1 -1
  71. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.js +46 -29
  72. package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts.map +1 -1
  73. package/development/seat-reservation/seat-reservation/seat-reservation.component.js +1 -1
  74. package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +1 -1
  75. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +1 -1
  76. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts +6 -2
  77. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts.map +1 -1
  78. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +2 -2
  79. package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +1 -1
  80. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts +6 -2
  81. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts.map +1 -1
  82. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +2 -2
  83. package/development/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +1 -1
  84. package/development/{seat-reservation-area.component-CMqjbUtV.js → seat-reservation-area.component-DPhQJFid.js} +2 -2
  85. package/development/{seat-reservation-graphic.component-C2r57590.js → seat-reservation-graphic.component-0LYsmerm.js} +2 -2
  86. package/development/seat-reservation-navigation-coach.component-B97jKD7Y.js +438 -0
  87. package/development/{seat-reservation-navigation-services.component-Do8JLJh3.js → seat-reservation-navigation-services.component-Cx0Is97w.js} +2 -2
  88. package/development/{seat-reservation-place-control.component-BfuOGZYq.js → seat-reservation-place-control.component-DaL1g8WH.js} +40 -37
  89. package/development/{seat-reservation-scoped.component-D-Mvw-Q3.js → seat-reservation-scoped.component-BHbORVsR.js} +1 -1
  90. package/development/seat-reservation.component-DI9pSlzt.js +473 -0
  91. package/development/seat-reservation.js +12 -12
  92. package/development/seat-reservation.pure.js +11 -11
  93. package/development/{svgs-kDpBCto5.js → svgs-Dj-RKmRs.js} +1 -1
  94. package/development/timetable-duration/timetable-duration.component.js +1 -1
  95. package/development/timetable-duration.component-Chk5D4Is.js +96 -0
  96. package/development/timetable-duration.js +2 -2
  97. package/development/timetable-duration.pure.js +1 -1
  98. package/development/timetable-row/timetable-row.component.d.ts.map +1 -1
  99. package/development/timetable-row/timetable-row.component.js +1 -1
  100. package/development/timetable-row.component-nzrQzxL6.js +736 -0
  101. package/development/timetable-row.js +2 -2
  102. package/development/timetable-row.pure.js +1 -1
  103. package/development/{toDate-DOFAOjP-.js → toDate-CDWut5fS.js} +1 -1
  104. package/{differenceInMinutes-Dr9gRqtu.js → differenceInMinutes-BAZ-Fham.js} +1 -1
  105. package/{format-DbUuNYFU.js → format-DjgG1QPc.js} +2 -2
  106. package/{isValid-B9oVW3lA.js → isValid-CXnsFZVu.js} +1 -1
  107. package/journey-summary/journey-summary.component.js +1 -1
  108. package/{journey-summary.component-CkDRawn9.js → journey-summary.component-DNoO3OCf.js} +41 -41
  109. package/journey-summary.js +1 -1
  110. package/journey-summary.pure.js +1 -1
  111. package/lean-safety-theme.css +13 -0
  112. package/lean-theme.css +13 -0
  113. package/package.json +18 -6
  114. package/pearl-chain/pearl-chain.component.js +1 -1
  115. package/pearl-chain-time/pearl-chain-time.component.js +1 -1
  116. package/{pearl-chain-time.component-D5OCEBJ_.js → pearl-chain-time.component-BuvA6IE1.js} +33 -33
  117. package/pearl-chain-time.js +1 -1
  118. package/pearl-chain-time.pure.js +1 -1
  119. package/pearl-chain-vertical/pearl-chain-vertical.component.js +1 -1
  120. package/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +1 -1
  121. package/{pearl-chain-vertical-item.component-IdquCJMy.js → pearl-chain-vertical-item.component-QZ4s8Jbv.js} +24 -24
  122. package/pearl-chain-vertical-item.js +1 -1
  123. package/pearl-chain-vertical-item.pure.js +1 -1
  124. package/pearl-chain-vertical.js +1 -1
  125. package/pearl-chain-vertical.pure.js +1 -1
  126. package/{pearl-chain.component-C6lcD7Xl.js → pearl-chain.component-DtGXXkY6.js} +26 -26
  127. package/pearl-chain.js +1 -1
  128. package/pearl-chain.pure.js +1 -1
  129. package/seat-reservation/common/mapper/mapper.js +1 -1
  130. package/seat-reservation/common/mapper.js +1 -1
  131. package/seat-reservation/common/svgs.js +1 -1
  132. package/seat-reservation/seat-reservation/seat-reservation-base-element.js +96 -82
  133. package/seat-reservation/seat-reservation/seat-reservation.component.js +1 -1
  134. package/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +1 -1
  135. package/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +1 -1
  136. package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +2 -2
  137. package/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +1 -1
  138. package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +2 -2
  139. package/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +1 -1
  140. package/{seat-reservation-area.component-BcmwKJSK.js → seat-reservation-area.component-G9lHb7S8.js} +16 -16
  141. package/{seat-reservation-graphic.component-C3wc4DKr.js → seat-reservation-graphic.component-BXFcQDxY.js} +20 -20
  142. package/seat-reservation-navigation-coach.component-BXy8EkJe.js +338 -0
  143. package/{seat-reservation-navigation-services.component-CfAQa7pa.js → seat-reservation-navigation-services.component-49XmV9rv.js} +21 -21
  144. package/{seat-reservation-place-control.component-DrzEDW8Z.js → seat-reservation-place-control.component-DToIW328.js} +70 -71
  145. package/{seat-reservation.component-CB2IWgM9.js → seat-reservation.component--0XnrCkk.js} +80 -79
  146. package/seat-reservation.js +12 -12
  147. package/seat-reservation.pure.js +11 -11
  148. package/timetable-duration/timetable-duration.component.js +1 -1
  149. package/timetable-duration.component-iMCvh1zr.js +61 -0
  150. package/timetable-duration.js +1 -1
  151. package/timetable-duration.pure.js +1 -1
  152. package/timetable-row/timetable-row.component.js +1 -1
  153. package/timetable-row.component-mNKmhRmP.js +566 -0
  154. package/timetable-row.js +1 -1
  155. package/timetable-row.pure.js +1 -1
  156. package/autocomplete-grid-option.component-iEj9qreq.js +0 -35
  157. package/core/styles/core.scss +0 -13
  158. package/core/styles/theme.scss +0 -5
  159. package/development/autocomplete-grid-option.component-BQwwanAf.js +0 -59
  160. package/development/date-helper-DGz-ztQM.js +0 -520
  161. package/development/journey-summary.component-De1ioDRq.js +0 -341
  162. package/development/pearl-chain.component-B83OsEx8.js +0 -312
  163. package/development/seat-reservation-navigation-coach.component-BwLbiHCG.js +0 -426
  164. package/development/seat-reservation.component-B2nJ13F1.js +0 -472
  165. package/development/timetable-duration.component-fBla8Kue.js +0 -96
  166. package/development/timetable-row.component-C9Y9Rev1.js +0 -732
  167. package/seat-reservation-navigation-coach.component-D1SgS8BU.js +0 -328
  168. package/timetable-duration.component-DPRcG1LP.js +0 -61
  169. package/timetable-row.component-BqIVlISS.js +0 -562
  170. /package/{autocomplete-grid-cell.component-DAsWZlTn.js → autocomplete-grid-cell.component-79IjA__I.js} +0 -0
  171. /package/{autocomplete-grid-row.component-VbyYP0U-.js → autocomplete-grid-row.component-B3U15Rwa.js} +0 -0
  172. /package/{core.css → lean-off-brand-theme.css} +0 -0
  173. /package/{mapper-Cqie5ivY.js → mapper-Dcou8VEf.js} +0 -0
  174. /package/{pearl-chain-vertical.component-CDOWaup3.js → pearl-chain-vertical.component-Dc3vaHsQ.js} +0 -0
  175. /package/{seat-reservation-scoped.component-BohQUGVW.js → seat-reservation-scoped.component-D8dAmrP7.js} +0 -0
  176. /package/{svgs-D5DhLHxC.js → svgs-D4fuYTHV.js} +0 -0
  177. /package/{toDate-p-Tpkb7t.js → toDate-BhNUyM4s.js} +0 -0
@@ -1,59 +0,0 @@
1
- import { SbbPropertyWatcherController, ɵstateController } from "@sbb-esta/lyne-elements/core.js";
2
- import { unsafeCSS } from "lit";
3
- import { SbbOptionBaseElement } from "@sbb-esta/lyne-elements/option.pure.js";
4
- //#region src/elements-experimental/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.scss?inline
5
- var autocomplete_grid_option_default = ":host {\n display: block;\n}\n\n:host(:is(:state(negative),[state--negative])) {\n --sbb-option-color: var(--sbb-color-3-negative);\n --sbb-option-icon-color: var(--sbb-color-5);\n}\n\n:host(:not(:is(:state(disable-highlight),[state--disable-highlight]))) .sbb-option__label slot {\n display: none;\n}\n\n:host(:is(:state(active),[state--active])) {\n --sbb-option-focus-outline-color: var(--sbb-focus-outline-color);\n}\n\n.sbb-option {\n font-size: var(--sbb-option-font-size);\n letter-spacing: var(--sbb-typo-letter-spacing-text);\n position: relative;\n display: flex;\n align-items: center;\n column-gap: var(--sbb-option-column-gap);\n justify-content: start;\n min-height: var(--sbb-option-min-height);\n padding-inline: var(--sbb-option-padding-inline);\n color: var(--sbb-option-color);\n}\n.sbb-option::after {\n content: \"\";\n display: block;\n position: absolute;\n inset: var(--sbb-option-focus-outline-inset);\n pointer-events: none;\n border: var(--sbb-focus-outline-width) solid var(--sbb-option-focus-outline-color);\n border-radius: var(--sbb-option-border-radius);\n}\n\n:host(:not(:is(:state(disabled),[state--disabled]))) .sbb-option__label--highlight {\n font-weight: bold;\n}\n@media (forced-colors: active) {\n :host(:not(:is(:state(disabled),[state--disabled]))) .sbb-option__label--highlight {\n color: Highlight;\n }\n}\n\n.sbb-option__icon {\n display: flex;\n min-width: var(--sbb-size-icon-ui-small);\n min-height: var(--sbb-size-icon-ui-small);\n color: var(--sbb-option-icon-color);\n}\n:host(:not(:is(:state(slotted-icon),[state--slotted-icon]), :is(:state(has-icon-name),[state--has-icon-name]))) .sbb-option__icon {\n display: var(--sbb-option-icon-container-display, none);\n}\n\n.sbb-option__label {\n text-overflow: var(--sbb-option-text-overflow);\n overflow: var(--sbb-option-overflow);\n white-space: var(--sbb-option-white-space, initial);\n}";
6
- //#endregion
7
- //#region src/elements-experimental/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.ts
8
- var autocompleteGridOptionId = `sbb-autocomplete-grid-option`;
9
- /**
10
- * It displays an option item which can be used in `sbb-autocomplete-grid`.
11
- *
12
- * @slot - Use the unnamed slot to add content to the option label.
13
- * @slot icon - Use this slot to provide an icon. If `icon-name` is set, a sbb-icon will be used.
14
- * @cssprop [--sbb-option-icon-container-display=none] - Can be used to reserve space even
15
- * when preserve-icon-space on autocomplete is not set or iconName is not set.
16
- * @overrideType value - T = string
17
- */
18
- var SbbAutocompleteGridOptionElement = class extends SbbOptionBaseElement {
19
- static {
20
- this.elementName = "sbb-autocomplete-grid-option";
21
- }
22
- static {
23
- this.role = "gridcell";
24
- }
25
- static {
26
- this.styles = [unsafeCSS(autocomplete_grid_option_default)];
27
- }
28
- constructor() {
29
- super();
30
- this.optionId = autocompleteGridOptionId;
31
- this.addController(new SbbPropertyWatcherController(this, () => this.closest("sbb-autocomplete-grid-optgroup"), {
32
- disabled: (p) => {
33
- this.disabledFromGroup = p.disabled;
34
- ɵstateController(this.closest?.("sbb-autocomplete-grid-row"))?.toggle("disabled", this.disabled || this.disabledFromGroup);
35
- this.updateAriaDisabled();
36
- },
37
- label: (p) => this.groupLabel = p.label
38
- }));
39
- this.addController(new SbbPropertyWatcherController(this, () => this.closest("sbb-autocomplete-grid"), { negative: (e) => this.toggleState("negative", e.negative) }));
40
- }
41
- willUpdate(changedProperties) {
42
- super.willUpdate(changedProperties);
43
- if (changedProperties.has("disabled")) {
44
- ɵstateController(this.closest?.("sbb-autocomplete-grid-row"))?.toggle("disabled", this.disabled || this.disabledFromGroup);
45
- this.updateAriaDisabled();
46
- }
47
- }
48
- selectByClick(event) {
49
- if (this.disabled || this.disabledFromGroup) {
50
- event.stopPropagation();
51
- return;
52
- }
53
- this.selectViaUserInteraction(true);
54
- }
55
- };
56
- //#endregion
57
- export { autocompleteGridOptionId as n, SbbAutocompleteGridOptionElement as t };
58
-
59
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWdyaWQtb3B0aW9uLmNvbXBvbmVudC1CUXd3YW5BZi5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMtZXhwZXJpbWVudGFsL2F1dG9jb21wbGV0ZS1ncmlkL2F1dG9jb21wbGV0ZS1ncmlkLW9wdGlvbi9hdXRvY29tcGxldGUtZ3JpZC1vcHRpb24uc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMtZXhwZXJpbWVudGFsL2F1dG9jb21wbGV0ZS1ncmlkL2F1dG9jb21wbGV0ZS1ncmlkLW9wdGlvbi9hdXRvY29tcGxldGUtZ3JpZC1vcHRpb24uY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbjpob3N0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbjpob3N0KDpzdGF0ZShuZWdhdGl2ZSkpIHtcbiAgLS1zYmItb3B0aW9uLWNvbG9yOiB2YXIoLS1zYmItY29sb3ItMy1uZWdhdGl2ZSk7XG4gIC0tc2JiLW9wdGlvbi1pY29uLWNvbG9yOiB2YXIoLS1zYmItY29sb3ItNSk7XG59XG5cbi8vIElmIGhpZ2hsaWdodGluZyBpcyBlbmFibGVkLCBoaWRlIHRoZSBvcmlnaW5hbCBzbG90IGNvbnRlbnRcbjpob3N0KDpub3QoOnN0YXRlKGRpc2FibGUtaGlnaGxpZ2h0KSkpIHtcbiAgLnNiYi1vcHRpb25fX2xhYmVsIHNsb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuOmhvc3QoOnN0YXRlKGFjdGl2ZSkpIHtcbiAgLS1zYmItb3B0aW9uLWZvY3VzLW91dGxpbmUtY29sb3I6IHZhcigtLXNiYi1mb2N1cy1vdXRsaW5lLWNvbG9yKTtcbn1cblxuLnNiYi1vcHRpb24ge1xuICBmb250LXNpemU6IHZhcigtLXNiYi1vcHRpb24tZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXNiYi10eXBvLWxldHRlci1zcGFjaW5nLXRleHQpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbHVtbi1nYXA6IHZhcigtLXNiYi1vcHRpb24tY29sdW1uLWdhcCk7XG4gIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLXNiYi1vcHRpb24tbWluLWhlaWdodCk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItb3B0aW9uLXBhZGRpbmctaW5saW5lKTtcbiAgY29sb3I6IHZhcigtLXNiYi1vcHRpb24tY29sb3IpO1xuXG4gIC8vIFdlIHVzZSB0aGUgcHNldWRvIGVsZW1lbnQgdG8gZGlzcGxheSB0aGUgZm9jdXMgb3V0bGluZSAoaW5saW5lIGluIHRoaXMgY2FzZSlcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogdmFyKC0tc2JiLW9wdGlvbi1mb2N1cy1vdXRsaW5lLWluc2V0KTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3JkZXI6IHZhcigtLXNiYi1mb2N1cy1vdXRsaW5lLXdpZHRoKSBzb2xpZCB2YXIoLS1zYmItb3B0aW9uLWZvY3VzLW91dGxpbmUtY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXNiYi1vcHRpb24tYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuLnNiYi1vcHRpb25fX2xhYmVsLS1oaWdobGlnaHQge1xuICA6aG9zdCg6bm90KDpzdGF0ZShkaXNhYmxlZCkpKSAmIHtcbiAgICBAaW5jbHVkZSBzYmIudGV4dC0tYm9sZDtcbiAgICBAaW5jbHVkZSBzYmIuaWYtZm9yY2VkLWNvbG9ycyB7XG4gICAgICBjb2xvcjogSGlnaGxpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4uc2JiLW9wdGlvbl9faWNvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1pbi13aWR0aDogdmFyKC0tc2JiLXNpemUtaWNvbi11aS1zbWFsbCk7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLXNiYi1zaXplLWljb24tdWktc21hbGwpO1xuICBjb2xvcjogdmFyKC0tc2JiLW9wdGlvbi1pY29uLWNvbG9yKTtcblxuICA6aG9zdCg6bm90KDpzdGF0ZShzbG90dGVkLWljb24pLCA6c3RhdGUoaGFzLWljb24tbmFtZSkpKSAmIHtcbiAgICAvLyBDYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUgJ3ByZXNlcnZlLWljb24tc3BhY2UnIG9uIHRoZSBhdXRvY29tcGxldGVcbiAgICBkaXNwbGF5OiB2YXIoLS1zYmItb3B0aW9uLWljb24tY29udGFpbmVyLWRpc3BsYXksIG5vbmUpO1xuICB9XG59XG5cbi5zYmItb3B0aW9uX19sYWJlbCB7XG4gIHRleHQtb3ZlcmZsb3c6IHZhcigtLXNiYi1vcHRpb24tdGV4dC1vdmVyZmxvdyk7XG4gIG92ZXJmbG93OiB2YXIoLS1zYmItb3B0aW9uLW92ZXJmbG93KTtcbiAgd2hpdGUtc3BhY2U6IHZhcigtLXNiYi1vcHRpb24td2hpdGUtc3BhY2UsIGluaXRpYWwpO1xufVxuIiwiaW1wb3J0IHsgU2JiUHJvcGVydHlXYXRjaGVyQ29udHJvbGxlciwgybVzdGF0ZUNvbnRyb2xsZXIgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlLmpzJztcbmltcG9ydCB7IFNiYk9wdGlvbkJhc2VFbGVtZW50IH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvb3B0aW9uLnB1cmUuanMnO1xuaW1wb3J0IHsgdHlwZSBDU1NSZXN1bHRHcm91cCwgdHlwZSBQcm9wZXJ0eVZhbHVlcywgdW5zYWZlQ1NTIH0gZnJvbSAnbGl0JztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vYXV0b2NvbXBsZXRlLWdyaWQtb3B0aW9uLnNjc3M/aW5saW5lJztcblxuZXhwb3J0IGNvbnN0IGF1dG9jb21wbGV0ZUdyaWRPcHRpb25JZDogc3RyaW5nID0gYHNiYi1hdXRvY29tcGxldGUtZ3JpZC1vcHRpb25gO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGFuIG9wdGlvbiBpdGVtIHdoaWNoIGNhbiBiZSB1c2VkIGluIGBzYmItYXV0b2NvbXBsZXRlLWdyaWRgLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIG9wdGlvbiBsYWJlbC5cbiAqIEBzbG90IGljb24gLSBVc2UgdGhpcyBzbG90IHRvIHByb3ZpZGUgYW4gaWNvbi4gSWYgYGljb24tbmFtZWAgaXMgc2V0LCBhIHNiYi1pY29uIHdpbGwgYmUgdXNlZC5cbiAqIEBjc3Nwcm9wIFstLXNiYi1vcHRpb24taWNvbi1jb250YWluZXItZGlzcGxheT1ub25lXSAtIENhbiBiZSB1c2VkIHRvIHJlc2VydmUgc3BhY2UgZXZlblxuICogd2hlbiBwcmVzZXJ2ZS1pY29uLXNwYWNlIG9uIGF1dG9jb21wbGV0ZSBpcyBub3Qgc2V0IG9yIGljb25OYW1lIGlzIG5vdCBzZXQuXG4gKiBAb3ZlcnJpZGVUeXBlIHZhbHVlIC0gVCA9IHN0cmluZ1xuICovXG5leHBvcnQgY2xhc3MgU2JiQXV0b2NvbXBsZXRlR3JpZE9wdGlvbkVsZW1lbnQ8VCA9IHN0cmluZz4gZXh0ZW5kcyBTYmJPcHRpb25CYXNlRWxlbWVudDxUPiB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItYXV0b2NvbXBsZXRlLWdyaWQtb3B0aW9uJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSByb2xlID0gJ2dyaWRjZWxsJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW3Vuc2FmZUNTUyhzdHlsZSldO1xuXG4gIHByb3RlY3RlZCBvcHRpb25JZCA9IGF1dG9jb21wbGV0ZUdyaWRPcHRpb25JZDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkZENvbnRyb2xsZXIoXG4gICAgICBuZXcgU2JiUHJvcGVydHlXYXRjaGVyQ29udHJvbGxlcih0aGlzLCAoKSA9PiB0aGlzLmNsb3Nlc3QoJ3NiYi1hdXRvY29tcGxldGUtZ3JpZC1vcHRncm91cCcpLCB7XG4gICAgICAgIGRpc2FibGVkOiAocCkgPT4ge1xuICAgICAgICAgIHRoaXMuZGlzYWJsZWRGcm9tR3JvdXAgPSBwLmRpc2FibGVkO1xuICAgICAgICAgIMm1c3RhdGVDb250cm9sbGVyKHRoaXMuY2xvc2VzdD8uKCdzYmItYXV0b2NvbXBsZXRlLWdyaWQtcm93JykpPy50b2dnbGUoXG4gICAgICAgICAgICAnZGlzYWJsZWQnLFxuICAgICAgICAgICAgdGhpcy5kaXNhYmxlZCB8fCB0aGlzLmRpc2FibGVkRnJvbUdyb3VwLFxuICAgICAgICAgICk7XG4gICAgICAgICAgdGhpcy51cGRhdGVBcmlhRGlzYWJsZWQoKTtcbiAgICAgICAgfSxcbiAgICAgICAgbGFiZWw6IChwKSA9PiAodGhpcy5ncm91cExhYmVsID0gcC5sYWJlbCksXG4gICAgICB9KSxcbiAgICApO1xuXG4gICAgdGhpcy5hZGRDb250cm9sbGVyKFxuICAgICAgbmV3IFNiYlByb3BlcnR5V2F0Y2hlckNvbnRyb2xsZXIodGhpcywgKCkgPT4gdGhpcy5jbG9zZXN0KCdzYmItYXV0b2NvbXBsZXRlLWdyaWQnKSwge1xuICAgICAgICBuZWdhdGl2ZTogKGUpID0+IHRoaXMudG9nZ2xlU3RhdGUoJ25lZ2F0aXZlJywgZS5uZWdhdGl2ZSksXG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnZGlzYWJsZWQnKSkge1xuICAgICAgybVzdGF0ZUNvbnRyb2xsZXIodGhpcy5jbG9zZXN0Py4oJ3NiYi1hdXRvY29tcGxldGUtZ3JpZC1yb3cnKSk/LnRvZ2dsZShcbiAgICAgICAgJ2Rpc2FibGVkJyxcbiAgICAgICAgdGhpcy5kaXNhYmxlZCB8fCB0aGlzLmRpc2FibGVkRnJvbUdyb3VwLFxuICAgICAgKTtcbiAgICAgIHRoaXMudXBkYXRlQXJpYURpc2FibGVkKCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIHNlbGVjdEJ5Q2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLmRpc2FibGVkRnJvbUdyb3VwKSB7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNlbGVjdFZpYVVzZXJJbnRlcmFjdGlvbih0cnVlKTtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWF1dG9jb21wbGV0ZS1ncmlkLW9wdGlvbic6IFNiYkF1dG9jb21wbGV0ZUdyaWRPcHRpb25FbGVtZW50O1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUNNQSxJQUFhLDJCQUFtQzs7Ozs7Ozs7OztBQVdoRCxJQUFhLG1DQUFiLGNBQWtFLHFCQUF1Qjs7QUFDdkQsT0FBQSxjQUFzQjs7O0FBQ3RCLE9BQUEsT0FBTzs7O0FBQ2hCLE9BQUEsU0FBeUIsQ0FBQyxVQUFVLGlDQUFNLENBQUM7O0NBSWxFLGNBQUE7QUFDRSxTQUFPO0FBSEMsT0FBQSxXQUFXO0FBSW5CLE9BQUssY0FDSCxJQUFJLDZCQUE2QixZQUFZLEtBQUssUUFBUSxpQ0FBaUMsRUFBRTtHQUMzRixXQUFXLE1BQUs7QUFDZCxTQUFLLG9CQUFvQixFQUFFO0FBQzNCLHFCQUFpQixLQUFLLFVBQVUsNEJBQTRCLENBQUMsRUFBRSxPQUM3RCxZQUNBLEtBQUssWUFBWSxLQUFLLGtCQUN2QjtBQUNELFNBQUssb0JBQW9COztHQUUzQixRQUFRLE1BQU8sS0FBSyxhQUFhLEVBQUU7R0FDcEMsQ0FBQyxDQUNIO0FBRUQsT0FBSyxjQUNILElBQUksNkJBQTZCLFlBQVksS0FBSyxRQUFRLHdCQUF3QixFQUFFLEVBQ2xGLFdBQVcsTUFBTSxLQUFLLFlBQVksWUFBWSxFQUFFLFNBQVMsRUFDMUQsQ0FBQyxDQUNIOztDQUdnQixXQUFXLG1CQUF1QztBQUNuRSxRQUFNLFdBQVcsa0JBQWtCO0FBQ25DLE1BQUksa0JBQWtCLElBQUksV0FBVyxFQUFFO0FBQ3JDLG9CQUFpQixLQUFLLFVBQVUsNEJBQTRCLENBQUMsRUFBRSxPQUM3RCxZQUNBLEtBQUssWUFBWSxLQUFLLGtCQUN2QjtBQUNELFFBQUssb0JBQW9COzs7Q0FJbkIsY0FBYyxPQUFpQjtBQUN2QyxNQUFJLEtBQUssWUFBWSxLQUFLLG1CQUFtQjtBQUMzQyxTQUFNLGlCQUFpQjtBQUN2Qjs7QUFHRixPQUFLLHlCQUF5QixLQUFLIn0=