@sbb-esta/lyne-elements-experimental 4.9.0 → 4.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 (182) hide show
  1. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +1 -1
  2. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +1 -1
  3. package/autocomplete-grid/autocomplete-grid-cell.js +1 -1
  4. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +1 -1
  5. package/autocomplete-grid/autocomplete-grid-option.js +1 -1
  6. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +1 -1
  7. package/autocomplete-grid/autocomplete-grid-row.js +1 -1
  8. package/{autocomplete-grid-cell.component-DnCfVJ2l.js → autocomplete-grid-cell.component-DkD9aFKc.js} +5 -5
  9. package/autocomplete-grid-option.component-CtATJy7n.js +37 -0
  10. package/autocomplete-grid-row.component-6nJv5PMj.js +27 -0
  11. package/autocomplete-grid.js +3 -3
  12. package/autocomplete-grid.pure.js +3 -3
  13. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +2 -2
  14. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts.map +1 -1
  15. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +1 -1
  16. package/development/autocomplete-grid/autocomplete-grid-cell.js +1 -1
  17. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -1
  18. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +1 -1
  19. package/development/autocomplete-grid/autocomplete-grid-option.js +1 -1
  20. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts.map +1 -1
  21. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +1 -1
  22. package/development/autocomplete-grid/autocomplete-grid-row.js +1 -1
  23. package/development/autocomplete-grid-cell.component-BxkWGaX0.js +34 -0
  24. package/development/autocomplete-grid-option.component-5mPGswUO.js +61 -0
  25. package/development/autocomplete-grid-row.component-DEm6zyHZ.js +39 -0
  26. package/development/autocomplete-grid.js +3 -3
  27. package/development/autocomplete-grid.pure.js +3 -3
  28. package/development/core/datetime/date-helper.js +1 -1
  29. package/development/core/datetime.js +1 -1
  30. package/development/{date-helper-8_Y-PuHh.js → date-helper-qNdwgC9O.js} +4 -4
  31. package/development/{differenceInMinutes-DN_1Rk3O.js → differenceInMinutes-B7_GTDq7.js} +2 -2
  32. package/development/{format-Bbrn2bgo.js → format-DFx4997p.js} +3 -3
  33. package/development/{isValid-C-HzKv4v.js → isValid-JpZ7FphI.js} +2 -2
  34. package/development/journey-summary/journey-summary.component.d.ts.map +1 -1
  35. package/development/journey-summary/journey-summary.component.js +1 -1
  36. package/development/journey-summary.component-BZwgD4im.js +340 -0
  37. package/development/journey-summary.js +1 -1
  38. package/development/journey-summary.pure.js +1 -1
  39. package/development/pearl-chain/pearl-chain.component.d.ts.map +1 -1
  40. package/development/pearl-chain/pearl-chain.component.js +1 -1
  41. package/development/pearl-chain-time/pearl-chain-time.component.d.ts.map +1 -1
  42. package/development/pearl-chain-time/pearl-chain-time.component.js +1 -1
  43. package/development/pearl-chain-time.component-B2_BI6E_.js +319 -0
  44. package/development/pearl-chain-time.js +1 -1
  45. package/development/pearl-chain-time.pure.js +1 -1
  46. package/development/pearl-chain-vertical/pearl-chain-vertical.component.d.ts.map +1 -1
  47. package/development/pearl-chain-vertical/pearl-chain-vertical.component.js +1 -1
  48. package/development/pearl-chain-vertical-item/pearl-chain-vertical-item.component.d.ts.map +1 -1
  49. package/development/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +1 -1
  50. package/development/pearl-chain-vertical-item.component-DcmH13Vb.js +133 -0
  51. package/development/pearl-chain-vertical-item.js +1 -1
  52. package/development/pearl-chain-vertical-item.pure.js +1 -1
  53. package/development/pearl-chain-vertical.component-CpcNFl-x.js +31 -0
  54. package/development/pearl-chain-vertical.js +1 -1
  55. package/development/pearl-chain-vertical.pure.js +1 -1
  56. package/development/pearl-chain.component-oQZUzsyW.js +316 -0
  57. package/development/pearl-chain.js +1 -1
  58. package/development/pearl-chain.pure.js +1 -1
  59. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.d.ts.map +1 -1
  60. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.js +8 -1
  61. package/development/seat-reservation/seat-reservation/seat-reservation.component.d.ts.map +1 -1
  62. package/development/seat-reservation/seat-reservation/seat-reservation.component.js +1 -1
  63. package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.d.ts.map +1 -1
  64. package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +1 -1
  65. package/development/seat-reservation/seat-reservation-area.js +1 -1
  66. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +1 -1
  67. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.d.ts.map +1 -1
  68. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +1 -1
  69. package/development/seat-reservation/seat-reservation-graphic.js +1 -1
  70. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.d.ts.map +1 -1
  71. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +1 -1
  72. package/development/seat-reservation/seat-reservation-navigation-coach.js +1 -1
  73. package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.d.ts.map +1 -1
  74. package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +1 -1
  75. package/development/seat-reservation/seat-reservation-navigation-services.js +1 -1
  76. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.d.ts.map +1 -1
  77. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +1 -1
  78. package/development/seat-reservation/seat-reservation-place-control.js +1 -1
  79. package/development/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.d.ts.map +1 -1
  80. package/development/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +1 -1
  81. package/development/seat-reservation/seat-reservation-scoped.js +1 -1
  82. package/development/seat-reservation/seat-reservation.js +1 -1
  83. package/development/seat-reservation-area.component-DbeuTnXT.js +96 -0
  84. package/development/seat-reservation-graphic.component-DlrHtlia.js +129 -0
  85. package/development/seat-reservation-navigation-coach.component-CjoDkcVU.js +428 -0
  86. package/development/seat-reservation-navigation-services.component-CGel7__P.js +159 -0
  87. package/development/seat-reservation-place-control.component-CM9efId7.js +429 -0
  88. package/development/seat-reservation-scoped.component-CFA_bJ3o.js +25 -0
  89. package/development/seat-reservation.component-DFJVFmrI.js +510 -0
  90. package/development/seat-reservation.js +7 -7
  91. package/development/seat-reservation.pure.js +7 -7
  92. package/development/timetable-duration/timetable-duration.component.d.ts.map +1 -1
  93. package/development/timetable-duration/timetable-duration.component.js +1 -1
  94. package/development/timetable-duration.component-BhFlqYbV.js +100 -0
  95. package/development/timetable-duration.js +1 -1
  96. package/development/timetable-duration.pure.js +1 -1
  97. package/development/timetable-row/timetable-row.component.d.ts.map +1 -1
  98. package/development/timetable-row/timetable-row.component.js +1 -1
  99. package/development/timetable-row.component-Dko8laRT.js +729 -0
  100. package/development/timetable-row.js +1 -1
  101. package/development/timetable-row.pure.js +1 -1
  102. package/development/{toDate-Biiv3kyf.js → toDate-DOFAOjP-.js} +2 -2
  103. package/journey-summary/journey-summary.component.js +1 -1
  104. package/{journey-summary.component-DcpXXucp.js → journey-summary.component-DC7-qPHY.js} +38 -38
  105. package/journey-summary.js +1 -1
  106. package/journey-summary.pure.js +1 -1
  107. package/package.json +2 -2
  108. package/pearl-chain/pearl-chain.component.js +1 -1
  109. package/pearl-chain-time/pearl-chain-time.component.js +1 -1
  110. package/{pearl-chain-time.component-v6zRg_3j.js → pearl-chain-time.component-CkKsrbgQ.js} +28 -28
  111. package/pearl-chain-time.js +1 -1
  112. package/pearl-chain-time.pure.js +1 -1
  113. package/pearl-chain-vertical/pearl-chain-vertical.component.js +1 -1
  114. package/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +1 -1
  115. package/pearl-chain-vertical-item.component-BUqZ-3Ay.js +108 -0
  116. package/pearl-chain-vertical-item.js +1 -1
  117. package/pearl-chain-vertical-item.pure.js +1 -1
  118. package/{pearl-chain-vertical.component-BvJwcGpS.js → pearl-chain-vertical.component-Df9CvRxo.js} +5 -5
  119. package/pearl-chain-vertical.js +1 -1
  120. package/pearl-chain-vertical.pure.js +1 -1
  121. package/pearl-chain.component-CpISVoAu.js +194 -0
  122. package/pearl-chain.js +1 -1
  123. package/pearl-chain.pure.js +1 -1
  124. package/seat-reservation/seat-reservation/seat-reservation-base-element.js +6 -0
  125. package/seat-reservation/seat-reservation/seat-reservation.component.js +1 -1
  126. package/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +1 -1
  127. package/seat-reservation/seat-reservation-area.js +1 -1
  128. package/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +1 -1
  129. package/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +1 -1
  130. package/seat-reservation/seat-reservation-graphic.js +1 -1
  131. package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +1 -1
  132. package/seat-reservation/seat-reservation-navigation-coach.js +1 -1
  133. package/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +1 -1
  134. package/seat-reservation/seat-reservation-navigation-services.js +1 -1
  135. package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +1 -1
  136. package/seat-reservation/seat-reservation-place-control.js +1 -1
  137. package/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +1 -1
  138. package/seat-reservation/seat-reservation-scoped.js +1 -1
  139. package/seat-reservation/seat-reservation.js +1 -1
  140. package/seat-reservation-area.component-CtYawDjE.js +75 -0
  141. package/seat-reservation-graphic.component-Cm_pVxaB.js +102 -0
  142. package/seat-reservation-navigation-coach.component-sug9IBTH.js +333 -0
  143. package/{seat-reservation-navigation-services.component-ViyU_adt.js → seat-reservation-navigation-services.component-C9dDYD_M.js} +19 -19
  144. package/seat-reservation-place-control.component-CE7d9M2b.js +322 -0
  145. package/seat-reservation-scoped.component-DVyP2JGE.js +17 -0
  146. package/{seat-reservation.component-Dl6bnC7-.js → seat-reservation.component-DajC6fqU.js} +51 -51
  147. package/seat-reservation.js +7 -7
  148. package/seat-reservation.pure.js +7 -7
  149. package/timetable-duration/timetable-duration.component.js +1 -1
  150. package/{timetable-duration.component-Puonwsnr.js → timetable-duration.component-BnJA8wSb.js} +12 -12
  151. package/timetable-duration.js +1 -1
  152. package/timetable-duration.pure.js +1 -1
  153. package/timetable-row/timetable-row.component.js +1 -1
  154. package/{timetable-row.component-DMCZaOPM.js → timetable-row.component-DbzBCpKR.js} +59 -59
  155. package/timetable-row.js +1 -1
  156. package/timetable-row.pure.js +1 -1
  157. package/autocomplete-grid-option.component-BlMPM6eh.js +0 -37
  158. package/autocomplete-grid-row.component-Bo2ZbXVX.js +0 -27
  159. package/development/autocomplete-grid-cell.component-BBvM4o2H.js +0 -42
  160. package/development/autocomplete-grid-option.component-QzfM5eIE.js +0 -123
  161. package/development/autocomplete-grid-row.component-H8sCTCkT.js +0 -104
  162. package/development/journey-summary.component-uGhZvA4p.js +0 -385
  163. package/development/pearl-chain-time.component-B8mayTWD.js +0 -415
  164. package/development/pearl-chain-vertical-item.component-BDzbcIaf.js +0 -435
  165. package/development/pearl-chain-vertical.component-CswE7b3M.js +0 -39
  166. package/development/pearl-chain.component-wpsTvoSe.js +0 -704
  167. package/development/seat-reservation-area.component-ORuli_DC.js +0 -138
  168. package/development/seat-reservation-graphic.component-D0xEXmP9.js +0 -203
  169. package/development/seat-reservation-navigation-coach.component-D2QXTMJJ.js +0 -828
  170. package/development/seat-reservation-navigation-services.component-Bg1adRlU.js +0 -179
  171. package/development/seat-reservation-place-control.component-CwUX-QYO.js +0 -726
  172. package/development/seat-reservation-scoped.component-uLT33P9y.js +0 -31
  173. package/development/seat-reservation.component-BS53sZR3.js +0 -824
  174. package/development/timetable-duration.component-D21SXsQq.js +0 -125
  175. package/development/timetable-row.component-Y5w8vEwP.js +0 -932
  176. package/pearl-chain-vertical-item.component-M2KRK6Xv.js +0 -108
  177. package/pearl-chain.component-B-XTTo6h.js +0 -194
  178. package/seat-reservation-area.component-CY56r75x.js +0 -75
  179. package/seat-reservation-graphic.component-DCMFf9uY.js +0 -102
  180. package/seat-reservation-navigation-coach.component-CXUv1pZM.js +0 -333
  181. package/seat-reservation-place-control.component-Dj5Tm0Oa.js +0 -322
  182. package/seat-reservation-scoped.component-CuACI8ST.js +0 -17
@@ -1,104 +0,0 @@
1
- import { SbbElement } from "@sbb-esta/lyne-elements/core/base-elements.js";
2
- import { boxSizingStyles } from "@sbb-esta/lyne-elements/core/styles.js";
3
- import { css, html } from "lit";
4
- //#region src/elements-experimental/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.scss?lit&inline
5
- var autocomplete_grid_row_default = css`:host {
6
- display: block;
7
- }
8
-
9
- :host(:is(:state(negative),[state--negative])) {
10
- --sbb-autocomplete-grid-row-color: var(--sbb-color-3-negative);
11
- --sbb-autocomplete-grid-row-background-color-hover: var(--sbb-background-color-3-negative);
12
- --sbb-autocomplete-grid-row-disabled-border-color: var(--sbb-border-color-5);
13
- --sbb-autocomplete-grid-row-disabled-background-color: var(--sbb-background-color-3-negative);
14
- --sbb-focus-outline-color: var(--sbb-focus-outline-color-dark);
15
- }
16
-
17
- @media (any-hover: hover) {
18
- :host(:hover:not(:is(:state(disabled),[state--disabled]))) {
19
- --sbb-autocomplete-grid-row-background-color: var(
20
- --sbb-autocomplete-grid-row-background-color-hover
21
- );
22
- }
23
- }
24
-
25
- :host(:is(:state(disabled),[state--disabled])) {
26
- --sbb-autocomplete-grid-row-cursor: var(--sbb-cursor-default);
27
- }
28
- @media (forced-colors: active) {
29
- :host(:is(:state(disabled),[state--disabled])) {
30
- --sbb-autocomplete-grid-row-color: GrayText;
31
- }
32
- }
33
-
34
- ::slotted(sbb-autocomplete-grid-option) {
35
- flex: 1 1 auto;
36
- margin-right: calc(-1 * var(--sbb-spacing-fixed-2x));
37
- overflow-x: hidden;
38
- }
39
-
40
- .sbb-autocomplete-grid-row {
41
- display: flex;
42
- align-items: center;
43
- padding-inline-end: var(--sbb-autocomplete-grid-row-padding-inline-end);
44
- justify-content: var(--sbb-autocomplete-grid-row-justify-content);
45
- gap: var(--sbb-spacing-fixed-6x);
46
- color: var(--sbb-autocomplete-grid-row-color);
47
- background-color: var(--sbb-autocomplete-grid-row-background-color, inherit);
48
- cursor: var(--sbb-autocomplete-grid-row-cursor);
49
- -webkit-tap-highlight-color: transparent;
50
- -webkit-text-fill-color: var(--sbb-autocomplete-grid-row-color);
51
- }
52
- :host(:is(:state(disabled),[state--disabled])) .sbb-autocomplete-grid-row {
53
- position: relative;
54
- z-index: 0;
55
- }
56
- :host(:is(:state(disabled),[state--disabled])) .sbb-autocomplete-grid-row::before {
57
- content: "";
58
- display: block;
59
- position: absolute;
60
- inset: 0.375rem;
61
- border: var(--sbb-border-width-1x) dashed var(--sbb-autocomplete-grid-row-disabled-border-color);
62
- border-radius: var(--sbb-border-radius-2x);
63
- background-color: var(--sbb-autocomplete-grid-row-disabled-background-color);
64
- z-index: -1;
65
- }
66
- @media (forced-colors: active) {
67
- :host(:is(:state(disabled),[state--disabled])) .sbb-autocomplete-grid-row::before {
68
- border-color: GrayText;
69
- }
70
- }`;
71
- //#endregion
72
- //#region src/elements-experimental/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.ts
73
- var autocompleteRowNextId = 0;
74
- /**
75
- * The component is used as a wrapper for options and action buttons.
76
- *
77
- * @slot - Use the unnamed slot to add a `sbb-autocomplete-grid-option` and a `sbb-autocomplete-grid-cell` with one or more `sbb-autocomplete-grid-button`.
78
- */
79
- var SbbAutocompleteGridRowElement = class extends SbbElement {
80
- static {
81
- this.elementName = "sbb-autocomplete-grid-row";
82
- }
83
- static {
84
- this.role = "row";
85
- }
86
- static {
87
- this.styles = [boxSizingStyles, autocomplete_grid_row_default];
88
- }
89
- connectedCallback() {
90
- super.connectedCallback();
91
- this.id ||= `sbb-autocomplete-grid-row-${++autocompleteRowNextId}`;
92
- }
93
- render() {
94
- return html`
95
- <span class="sbb-autocomplete-grid-row">
96
- <slot></slot>
97
- </span>
98
- `;
99
- }
100
- };
101
- //#endregion
102
- export { SbbAutocompleteGridRowElement as t };
103
-
104
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWdyaWQtcm93LmNvbXBvbmVudC1IOHNDVENrVC5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMtZXhwZXJpbWVudGFsL2F1dG9jb21wbGV0ZS1ncmlkL2F1dG9jb21wbGV0ZS1ncmlkLXJvdy9hdXRvY29tcGxldGUtZ3JpZC1yb3cuc2Nzcz9saXQmaW5saW5lIiwiLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC9hdXRvY29tcGxldGUtZ3JpZC9hdXRvY29tcGxldGUtZ3JpZC1yb3cvYXV0b2NvbXBsZXRlLWdyaWQtcm93LmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL3N0eWxlcycgYXMgc2JiO1xuXG46aG9zdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG46aG9zdCg6c3RhdGUobmVnYXRpdmUpKSB7XG4gIC0tc2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvdy1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLTMtbmVnYXRpdmUpO1xuICAtLXNiYi1hdXRvY29tcGxldGUtZ3JpZC1yb3ctYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tc2JiLWJhY2tncm91bmQtY29sb3ItMy1uZWdhdGl2ZSk7XG4gIC0tc2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvdy1kaXNhYmxlZC1ib3JkZXItY29sb3I6IHZhcigtLXNiYi1ib3JkZXItY29sb3ItNSk7XG4gIC0tc2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvdy1kaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItYmFja2dyb3VuZC1jb2xvci0zLW5lZ2F0aXZlKTtcbiAgLS1zYmItZm9jdXMtb3V0bGluZS1jb2xvcjogdmFyKC0tc2JiLWZvY3VzLW91dGxpbmUtY29sb3ItZGFyayk7XG59XG5cbjpob3N0KDpob3Zlcjpub3QoOnN0YXRlKGRpc2FibGVkKSkpIHtcbiAgQGluY2x1ZGUgc2JiLmhvdmVyLW1xKCRob3ZlcjogdHJ1ZSkge1xuICAgIC0tc2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvdy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXG4gICAgICAtLXNiYi1hdXRvY29tcGxldGUtZ3JpZC1yb3ctYmFja2dyb3VuZC1jb2xvci1ob3ZlclxuICAgICk7XG4gIH1cbn1cblxuOmhvc3QoOnN0YXRlKGRpc2FibGVkKSkge1xuICAtLXNiYi1hdXRvY29tcGxldGUtZ3JpZC1yb3ctY3Vyc29yOiB2YXIoLS1zYmItY3Vyc29yLWRlZmF1bHQpO1xuXG4gIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAtLXNiYi1hdXRvY29tcGxldGUtZ3JpZC1yb3ctY29sb3I6IEdyYXlUZXh0O1xuICB9XG59XG5cbjo6c2xvdHRlZChzYmItYXV0b2NvbXBsZXRlLWdyaWQtb3B0aW9uKSB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1zYmItc3BhY2luZy1maXhlZC0yeCkpO1xuXG4gIC8vIFVzZWQgdG8gZW5hYmxlIGVsbGlwc2lzXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuLnNiYi1hdXRvY29tcGxldGUtZ3JpZC1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLXNiYi1hdXRvY29tcGxldGUtZ3JpZC1yb3ctcGFkZGluZy1pbmxpbmUtZW5kKTtcbiAganVzdGlmeS1jb250ZW50OiB2YXIoLS1zYmItYXV0b2NvbXBsZXRlLWdyaWQtcm93LWp1c3RpZnktY29udGVudCk7XG4gIGdhcDogdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtNngpO1xuICBjb2xvcjogdmFyKC0tc2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvdy1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1hdXRvY29tcGxldGUtZ3JpZC1yb3ctYmFja2dyb3VuZC1jb2xvciwgaW5oZXJpdCk7XG4gIGN1cnNvcjogdmFyKC0tc2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvdy1jdXJzb3IpO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdmFyKC0tc2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvdy1jb2xvcik7XG5cbiAgLy8gQWRkIGlubmVyIGJvcmRlciBhbmQgYmFja2dyb3VuZCBmb3IgZGlzYWJsZWQgb3B0aW9uIHdoZW4gaXQncyBub3QgbXVsdGlwbGVcbiAgOmhvc3QoOnN0YXRlKGRpc2FibGVkKSkgJiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGluc2V0OiAje3NiYi5weC10by1yZW0tYnVpbGQoNil9O1xuICAgICAgYm9yZGVyOiB2YXIoLS1zYmItYm9yZGVyLXdpZHRoLTF4KSBkYXNoZWRcbiAgICAgICAgdmFyKC0tc2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvdy1kaXNhYmxlZC1ib3JkZXItY29sb3IpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLWJvcmRlci1yYWRpdXMtMngpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvdy1kaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICAgIHotaW5kZXg6IC0xO1xuXG4gICAgICBAaW5jbHVkZSBzYmIuaWYtZm9yY2VkLWNvbG9ycyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogR3JheVRleHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJpbXBvcnQgeyBTYmJFbGVtZW50IH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9iYXNlLWVsZW1lbnRzLmpzJztcbmltcG9ydCB7IGJveFNpemluZ1N0eWxlcyB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvc3R5bGVzLmpzJztcbmltcG9ydCB7IHR5cGUgQ1NTUmVzdWx0R3JvdXAsIGh0bWwsIHR5cGUgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9hdXRvY29tcGxldGUtZ3JpZC1yb3cuc2Nzcz9saXQmaW5saW5lJztcblxubGV0IGF1dG9jb21wbGV0ZVJvd05leHRJZCA9IDA7XG5cbi8qKlxuICogVGhlIGNvbXBvbmVudCBpcyB1c2VkIGFzIGEgd3JhcHBlciBmb3Igb3B0aW9ucyBhbmQgYWN0aW9uIGJ1dHRvbnMuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYSBgc2JiLWF1dG9jb21wbGV0ZS1ncmlkLW9wdGlvbmAgYW5kIGEgYHNiYi1hdXRvY29tcGxldGUtZ3JpZC1jZWxsYCB3aXRoIG9uZSBvciBtb3JlIGBzYmItYXV0b2NvbXBsZXRlLWdyaWQtYnV0dG9uYC5cbiAqL1xuZXhwb3J0IGNsYXNzIFNiYkF1dG9jb21wbGV0ZUdyaWRSb3dFbGVtZW50IGV4dGVuZHMgU2JiRWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItYXV0b2NvbXBsZXRlLWdyaWQtcm93JztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSByb2xlID0gJ3Jvdyc7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtib3hTaXppbmdTdHlsZXMsIHN0eWxlXTtcblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLmlkIHx8PSBgc2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvdy0keysrYXV0b2NvbXBsZXRlUm93TmV4dElkfWA7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvd1wiPlxuICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICA8L3NwYW4+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWF1dG9jb21wbGV0ZS1ncmlkLXJvdyc6IFNiYkF1dG9jb21wbGV0ZUdyaWRSb3dFbGVtZW50O1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ01BLElBQUksd0JBQXdCOzs7Ozs7QUFPNUIsSUFBYSxnQ0FBYixjQUFtRCxXQUFVOztBQUMzQixPQUFBLGNBQXNCOzs7QUFDdEIsT0FBQSxPQUFPOzs7QUFDaEIsT0FBQSxTQUF5QixDQUFDLGlCQUFpQiw4QkFBTTs7Q0FFeEQsb0JBQWlCO0FBQy9CLFFBQU0sbUJBQW1CO0FBQ3pCLE9BQUssT0FBTyw2QkFBNkIsRUFBRTs7Q0FHMUIsU0FBTTtBQUN2QixTQUFPLElBQUkifQ==
@@ -1,385 +0,0 @@
1
- import { t as format } from "./format-Bbrn2bgo.js";
2
- import { t as isValid } from "./isValid-C-HzKv4v.js";
3
- import { __esDecorate, __runInitializers } from "tslib";
4
- import { SbbElement } from "@sbb-esta/lyne-elements/core/base-elements.js";
5
- import { SbbLanguageController } from "@sbb-esta/lyne-elements/core/controllers.js";
6
- import { forceType } from "@sbb-esta/lyne-elements/core/decorators.js";
7
- import { boxSizingStyles } from "@sbb-esta/lyne-elements/core/styles.js";
8
- import { css, html, nothing } from "lit";
9
- import { defaultDateAdapter } from "@sbb-esta/lyne-elements/core/datetime.js";
10
- import { i18nTripDuration } from "@sbb-esta/lyne-elements/core/i18n.js";
11
- import { property } from "lit/decorators.js";
12
- import { durationToTime, removeTimezoneFromISOTimeString } from "./core/datetime.js";
13
- import "@sbb-esta/lyne-elements/divider.js";
14
- import "@sbb-esta/lyne-elements/screen-reader-only.js";
15
- import "@sbb-esta/lyne-elements/journey-header.js";
16
- import "./pearl-chain-time.js";
17
- //#region src/elements-experimental/journey-summary/journey-summary.scss?lit&inline
18
- var journey_summary_default = css`:host {
19
- display: block;
20
- }
21
-
22
- .sbb-journey-summary {
23
- --sbb-text-font-size: var(--sbb-text-font-size-s);
24
- font-family: var(--sbb-typo-font-family);
25
- font-weight: normal;
26
- line-height: var(--sbb-typo-line-height-text);
27
- letter-spacing: var(--sbb-typo-letter-spacing-text);
28
- font-size: var(--sbb-text-font-size);
29
- color: var(--sbb-color-4);
30
- display: flex;
31
- flex-direction: column;
32
- }
33
-
34
- .sbb-journey-summary__via-block {
35
- display: flex;
36
- }
37
-
38
- .sbb-journey-summary__vias {
39
- overflow: hidden;
40
- white-space: nowrap;
41
- text-overflow: ellipsis;
42
- margin-block: 0;
43
- padding-inline-start: var(--sbb-spacing-fixed-1x);
44
- }
45
-
46
- .sbb-journey-summary__date {
47
- margin-block-end: var(--sbb-spacing-fixed-2x);
48
- }
49
-
50
- .sbb-journey-summary__via {
51
- white-space: nowrap;
52
- overflow: hidden;
53
- text-overflow: ellipsis;
54
- }
55
-
56
- .sbb-journey-summary__divider {
57
- margin-block: var(--sbb-spacing-fixed-6x);
58
- }
59
-
60
- ul li {
61
- list-style: none;
62
- display: inline;
63
- }`;
64
- //#endregion
65
- //#region src/elements-experimental/journey-summary/journey-summary.component.ts
66
- /**
67
- * It displays journey's information.
68
- *
69
- * @slot content - Use this slot to add `sbb-button`s or other interactive elements.
70
- */
71
- var SbbJourneySummaryElement = (() => {
72
- let _classSuper = SbbElement;
73
- let _instanceExtraInitializers = [];
74
- let _trip_decorators;
75
- let _trip_initializers = [];
76
- let _trip_extraInitializers = [];
77
- let _tripBack_decorators;
78
- let _tripBack_initializers = [];
79
- let _tripBack_extraInitializers = [];
80
- let _roundTrip_decorators;
81
- let _roundTrip_initializers = [];
82
- let _roundTrip_extraInitializers = [];
83
- let _headerLevel_decorators;
84
- let _headerLevel_initializers = [];
85
- let _headerLevel_extraInitializers = [];
86
- let _disableAnimation_decorators;
87
- let _disableAnimation_initializers = [];
88
- let _disableAnimation_extraInitializers = [];
89
- let _a11yFootpath_decorators;
90
- let _a11yFootpath_initializers = [];
91
- let _a11yFootpath_extraInitializers = [];
92
- let _set_now_decorators;
93
- return class SbbJourneySummaryElement extends _classSuper {
94
- constructor() {
95
- super(...arguments);
96
- this.#trip_accessor_storage = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _trip_initializers, null));
97
- this.#tripBack_accessor_storage = (__runInitializers(this, _trip_extraInitializers), __runInitializers(this, _tripBack_initializers, null));
98
- this.#roundTrip_accessor_storage = (__runInitializers(this, _tripBack_extraInitializers), __runInitializers(this, _roundTrip_initializers, false));
99
- this.#headerLevel_accessor_storage = (__runInitializers(this, _roundTrip_extraInitializers), __runInitializers(this, _headerLevel_initializers, "3"));
100
- this.#disableAnimation_accessor_storage = (__runInitializers(this, _headerLevel_extraInitializers), __runInitializers(this, _disableAnimation_initializers, false));
101
- this.#a11yFootpath_accessor_storage = (__runInitializers(this, _disableAnimation_extraInitializers), __runInitializers(this, _a11yFootpath_initializers, false));
102
- this._now = (__runInitializers(this, _a11yFootpath_extraInitializers), null);
103
- this._hasContentSlot = false;
104
- this._language = new SbbLanguageController(this);
105
- }
106
- static {
107
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
108
- _trip_decorators = [property({ type: Object })];
109
- _tripBack_decorators = [property({
110
- attribute: "trip-back",
111
- type: Object
112
- })];
113
- _roundTrip_decorators = [forceType(), property({
114
- attribute: "round-trip",
115
- type: Boolean
116
- })];
117
- _headerLevel_decorators = [property({ attribute: "header-level" })];
118
- _disableAnimation_decorators = [forceType(), property({
119
- attribute: "disable-animation",
120
- type: Boolean
121
- })];
122
- _a11yFootpath_decorators = [forceType(), property({
123
- attribute: "a11y-footpath",
124
- type: Boolean
125
- })];
126
- _set_now_decorators = [property()];
127
- __esDecorate(this, null, _trip_decorators, {
128
- kind: "accessor",
129
- name: "trip",
130
- static: false,
131
- private: false,
132
- access: {
133
- has: (obj) => "trip" in obj,
134
- get: (obj) => obj.trip,
135
- set: (obj, value) => {
136
- obj.trip = value;
137
- }
138
- },
139
- metadata: _metadata
140
- }, _trip_initializers, _trip_extraInitializers);
141
- __esDecorate(this, null, _tripBack_decorators, {
142
- kind: "accessor",
143
- name: "tripBack",
144
- static: false,
145
- private: false,
146
- access: {
147
- has: (obj) => "tripBack" in obj,
148
- get: (obj) => obj.tripBack,
149
- set: (obj, value) => {
150
- obj.tripBack = value;
151
- }
152
- },
153
- metadata: _metadata
154
- }, _tripBack_initializers, _tripBack_extraInitializers);
155
- __esDecorate(this, null, _roundTrip_decorators, {
156
- kind: "accessor",
157
- name: "roundTrip",
158
- static: false,
159
- private: false,
160
- access: {
161
- has: (obj) => "roundTrip" in obj,
162
- get: (obj) => obj.roundTrip,
163
- set: (obj, value) => {
164
- obj.roundTrip = value;
165
- }
166
- },
167
- metadata: _metadata
168
- }, _roundTrip_initializers, _roundTrip_extraInitializers);
169
- __esDecorate(this, null, _headerLevel_decorators, {
170
- kind: "accessor",
171
- name: "headerLevel",
172
- static: false,
173
- private: false,
174
- access: {
175
- has: (obj) => "headerLevel" in obj,
176
- get: (obj) => obj.headerLevel,
177
- set: (obj, value) => {
178
- obj.headerLevel = value;
179
- }
180
- },
181
- metadata: _metadata
182
- }, _headerLevel_initializers, _headerLevel_extraInitializers);
183
- __esDecorate(this, null, _disableAnimation_decorators, {
184
- kind: "accessor",
185
- name: "disableAnimation",
186
- static: false,
187
- private: false,
188
- access: {
189
- has: (obj) => "disableAnimation" in obj,
190
- get: (obj) => obj.disableAnimation,
191
- set: (obj, value) => {
192
- obj.disableAnimation = value;
193
- }
194
- },
195
- metadata: _metadata
196
- }, _disableAnimation_initializers, _disableAnimation_extraInitializers);
197
- __esDecorate(this, null, _a11yFootpath_decorators, {
198
- kind: "accessor",
199
- name: "a11yFootpath",
200
- static: false,
201
- private: false,
202
- access: {
203
- has: (obj) => "a11yFootpath" in obj,
204
- get: (obj) => obj.a11yFootpath,
205
- set: (obj, value) => {
206
- obj.a11yFootpath = value;
207
- }
208
- },
209
- metadata: _metadata
210
- }, _a11yFootpath_initializers, _a11yFootpath_extraInitializers);
211
- __esDecorate(this, null, _set_now_decorators, {
212
- kind: "setter",
213
- name: "now",
214
- static: false,
215
- private: false,
216
- access: {
217
- has: (obj) => "now" in obj,
218
- set: (obj, value) => {
219
- obj.now = value;
220
- }
221
- },
222
- metadata: _metadata
223
- }, null, _instanceExtraInitializers);
224
- if (_metadata) Object.defineProperty(this, Symbol.metadata, {
225
- enumerable: true,
226
- configurable: true,
227
- writable: true,
228
- value: _metadata
229
- });
230
- }
231
- static {
232
- this.elementName = "sbb-journey-summary";
233
- }
234
- static {
235
- this.styles = [boxSizingStyles, journey_summary_default];
236
- }
237
- #trip_accessor_storage;
238
- /** The trip prop */
239
- get trip() {
240
- return this.#trip_accessor_storage;
241
- }
242
- set trip(value) {
243
- this.#trip_accessor_storage = value;
244
- }
245
- #tripBack_accessor_storage;
246
- /** The tripBack prop */
247
- get tripBack() {
248
- return this.#tripBack_accessor_storage;
249
- }
250
- set tripBack(value) {
251
- this.#tripBack_accessor_storage = value;
252
- }
253
- #roundTrip_accessor_storage;
254
- /**
255
- * The RoundTrip prop. This prop controls if one or two arrows are displayed in the header.
256
- */
257
- get roundTrip() {
258
- return this.#roundTrip_accessor_storage;
259
- }
260
- set roundTrip(value) {
261
- this.#roundTrip_accessor_storage = value;
262
- }
263
- #headerLevel_accessor_storage;
264
- /** Heading level of the journey header element (e.g. h1-h6). */
265
- get headerLevel() {
266
- return this.#headerLevel_accessor_storage;
267
- }
268
- set headerLevel(value) {
269
- this.#headerLevel_accessor_storage = value;
270
- }
271
- #disableAnimation_accessor_storage;
272
- /**
273
- * Per default, the current location has a pulsating animation. You can
274
- * disable the animation with this property.
275
- */
276
- get disableAnimation() {
277
- return this.#disableAnimation_accessor_storage;
278
- }
279
- set disableAnimation(value) {
280
- this.#disableAnimation_accessor_storage = value;
281
- }
282
- #a11yFootpath_accessor_storage;
283
- /**
284
- * The Footpath attribute for rendering different icons
285
- * true: render a11y-icon
286
- * false: render walk-icon
287
- * default: render walk-icon
288
- */
289
- get a11yFootpath() {
290
- return this.#a11yFootpath_accessor_storage;
291
- }
292
- set a11yFootpath(value) {
293
- this.#a11yFootpath_accessor_storage = value;
294
- }
295
- /**
296
- * A configured date which acts as the current date instead of the real current date.
297
- * Only recommended for testing purposes.
298
- */
299
- set now(value) {
300
- this._now = defaultDateAdapter.getValidDateOrNull(defaultDateAdapter.deserialize(value));
301
- }
302
- get now() {
303
- return this._now ?? /* @__PURE__ */ new Date();
304
- }
305
- connectedCallback() {
306
- super.connectedCallback();
307
- this._hasContentSlot = Boolean(this.querySelector?.("[slot=\"content\"]"));
308
- }
309
- /** renders the date of the journey or if it is the current or next day */
310
- _renderJourneyStart(departureTime, duration) {
311
- const dateAdapter = defaultDateAdapter;
312
- const durationObj = duration ? durationToTime(duration, this._language.current) : null;
313
- if (isValid(departureTime)) return html`
314
- <time datetime=${format(departureTime, "d") + " " + format(departureTime, "M")}>
315
- ${dateAdapter.format(departureTime).replace(",", ".")}</time
316
- >${duration && duration > 0 ? html`,<time>
317
- <sbb-screen-reader-only>
318
- ${i18nTripDuration[this._language.current]} ${durationObj.long}
319
- </sbb-screen-reader-only>
320
- <span aria-hidden="true">${durationObj.short}</span>
321
- </time>` : nothing}
322
- `;
323
- }
324
- _renderJourneyVias(vias) {
325
- const slicedVias = vias.slice(0, 5);
326
- return html`
327
- <div class="sbb-journey-summary__via-block">
328
- <span class="sbb-journey-summary__via-text">Via</span>
329
- <ul class="sbb-journey-summary__vias" role=${vias.length <= 1 ? "presentation" : nothing}>
330
- ${slicedVias.map((via, index) => html`<li class="sbb-journey-summary__via">
331
- ${via}${index !== slicedVias.length - 1 && index < 4 ? html`<span>,</span>` : nothing}
332
- </li>`)}
333
- </ul>
334
- </div>
335
- `;
336
- }
337
- _renderJourneyInformation(trip) {
338
- const { vias, duration, departureWalk, departure, arrivalWalk, arrival, legs } = trip || {};
339
- return html`
340
- <div>
341
- ${vias && vias.length > 0 ? this._renderJourneyVias(vias) : nothing}
342
- <div class="sbb-journey-summary__date">
343
- ${this._renderJourneyStart(removeTimezoneFromISOTimeString(departure), duration)}
344
- </div>
345
- <sbb-pearl-chain-time
346
- .arrivalTime=${arrival}
347
- .departureTime=${departure}
348
- .departureWalk=${departureWalk}
349
- .arrivalWalk=${arrivalWalk}
350
- .legs=${legs}
351
- .disableAnimation=${this.disableAnimation}
352
- .a11yFootpath=${this.a11yFootpath}
353
- .now=${this.now}
354
- ></sbb-pearl-chain-time>
355
- </div>
356
- `;
357
- }
358
- render() {
359
- const { origin, destination } = this.trip || {};
360
- return html`
361
- <div class="sbb-journey-summary">
362
- ${origin ? html`<sbb-journey-header
363
- size="l"
364
- .level=${this.headerLevel || nothing}
365
- .origin=${origin}
366
- .destination=${destination}
367
- .roundTrip=${this.roundTrip ?? nothing}
368
- ></sbb-journey-header>` : nothing}
369
- ${this._renderJourneyInformation(this.trip)}
370
- ${this.tripBack ? html`<div>
371
- <sbb-divider class="sbb-journey-summary__divider"></sbb-divider>
372
- ${this._renderJourneyInformation(this.tripBack)}
373
- </div>` : nothing}
374
- ${this._hasContentSlot ? html` <div class="sbb-journey-summary__slot">
375
- <slot name="content"></slot>
376
- </div>` : nothing}
377
- </div>
378
- `;
379
- }
380
- };
381
- })();
382
- //#endregion
383
- export { SbbJourneySummaryElement as t };
384
-
385
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam91cm5leS1zdW1tYXJ5LmNvbXBvbmVudC11R2hadkE0cC5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMtZXhwZXJpbWVudGFsL2pvdXJuZXktc3VtbWFyeS9qb3VybmV5LXN1bW1hcnkuc2Nzcz9saXQmaW5saW5lIiwiLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC9qb3VybmV5LXN1bW1hcnkvam91cm5leS1zdW1tYXJ5LmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL3N0eWxlcycgYXMgc2JiO1xuXG46aG9zdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2JiLWpvdXJuZXktc3VtbWFyeSB7XG4gIEBpbmNsdWRlIHNiYi50ZXh0LXMtLXJlZ3VsYXI7XG5cbiAgY29sb3I6IHZhcigtLXNiYi1jb2xvci00KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLnNiYi1qb3VybmV5LXN1bW1hcnlfX3ZpYS1ibG9jayB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5zYmItam91cm5leS1zdW1tYXJ5X192aWFzIHtcbiAgQGluY2x1ZGUgc2JiLmVsbGlwc2lzO1xuXG4gIG1hcmdpbi1ibG9jazogMDtcbiAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTF4KTtcbn1cblxuLnNiYi1qb3VybmV5LXN1bW1hcnlfX2RhdGUge1xuICBtYXJnaW4tYmxvY2stZW5kOiB2YXIoLS1zYmItc3BhY2luZy1maXhlZC0yeCk7XG59XG5cbi5zYmItam91cm5leS1zdW1tYXJ5X192aWEge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLnNiYi1qb3VybmV5LXN1bW1hcnlfX2RpdmlkZXIge1xuICBtYXJnaW4tYmxvY2s6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTZ4KTtcbn1cblxudWwgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG4iLCJpbXBvcnQgeyBTYmJFbGVtZW50IH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9iYXNlLWVsZW1lbnRzLmpzJztcbmltcG9ydCB7IFNiYkxhbmd1YWdlQ29udHJvbGxlciB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvY29udHJvbGxlcnMuanMnO1xuaW1wb3J0IHsgZGVmYXVsdERhdGVBZGFwdGVyIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9kYXRldGltZS5qcyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgaTE4blRyaXBEdXJhdGlvbiB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvaTE4bi5qcyc7XG5pbXBvcnQgeyBib3hTaXppbmdTdHlsZXMgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL3N0eWxlcy5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYlRpdGxlTGV2ZWwgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy90aXRsZS5qcyc7XG5pbXBvcnQgeyBmb3JtYXQsIGlzVmFsaWQgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sLCBub3RoaW5nIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBkdXJhdGlvblRvVGltZSwgcmVtb3ZlVGltZXpvbmVGcm9tSVNPVGltZVN0cmluZyB9IGZyb20gJy4uL2NvcmUvZGF0ZXRpbWUudHMnO1xuaW1wb3J0IHR5cGUgeyBMZWcgfSBmcm9tICcuLi9jb3JlL3RpbWV0YWJsZS50cyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2pvdXJuZXktc3VtbWFyeS5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2RpdmlkZXIuanMnO1xuaW1wb3J0ICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9zY3JlZW4tcmVhZGVyLW9ubHkuanMnO1xuaW1wb3J0ICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9qb3VybmV5LWhlYWRlci5qcyc7XG5pbXBvcnQgJy4uL3BlYXJsLWNoYWluLXRpbWUudHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEludGVyZmFjZVNiYkpvdXJuZXlTdW1tYXJ5QXR0cmlidXRlcyB7XG4gIGxlZ3M6IExlZ1tdO1xuICB2aWFzPzogc3RyaW5nW107XG4gIG9yaWdpbjogc3RyaW5nO1xuICBkZXN0aW5hdGlvbjogc3RyaW5nO1xuICBhcnJpdmFsV2Fsaz86IG51bWJlcjtcbiAgZGVwYXJ0dXJlOiBzdHJpbmc7XG4gIGFycml2YWw6IHN0cmluZztcbiAgZGVwYXJ0dXJlV2Fsaz86IG51bWJlcjtcbiAgZHVyYXRpb24/OiBudW1iZXI7XG59XG5cbi8qKlxuICogSXQgZGlzcGxheXMgam91cm5leSdzIGluZm9ybWF0aW9uLlxuICpcbiAqIEBzbG90IGNvbnRlbnQgLSBVc2UgdGhpcyBzbG90IHRvIGFkZCBgc2JiLWJ1dHRvbmBzIG9yIG90aGVyIGludGVyYWN0aXZlIGVsZW1lbnRzLlxuICovXG5leHBvcnQgY2xhc3MgU2JiSm91cm5leVN1bW1hcnlFbGVtZW50IGV4dGVuZHMgU2JiRWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItam91cm5leS1zdW1tYXJ5JztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW2JveFNpemluZ1N0eWxlcywgc3R5bGVdO1xuXG4gIC8qKiAgVGhlIHRyaXAgcHJvcCAqL1xuICBAcHJvcGVydHkoeyB0eXBlOiBPYmplY3QgfSkgcHVibGljIGFjY2Vzc29yIHRyaXA6IEludGVyZmFjZVNiYkpvdXJuZXlTdW1tYXJ5QXR0cmlidXRlcyA9IG51bGwhO1xuXG4gIC8qKiAgVGhlIHRyaXBCYWNrIHByb3AgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAndHJpcC1iYWNrJywgdHlwZTogT2JqZWN0IH0pXG4gIHB1YmxpYyBhY2Nlc3NvciB0cmlwQmFjazogSW50ZXJmYWNlU2JiSm91cm5leVN1bW1hcnlBdHRyaWJ1dGVzID0gbnVsbCE7XG5cbiAgLyoqXG4gICAqIFRoZSBSb3VuZFRyaXAgcHJvcC4gVGhpcyBwcm9wIGNvbnRyb2xzIGlmIG9uZSBvciB0d28gYXJyb3dzIGFyZSBkaXNwbGF5ZWQgaW4gdGhlIGhlYWRlci5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdyb3VuZC10cmlwJywgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgYWNjZXNzb3Igcm91bmRUcmlwOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIEhlYWRpbmcgbGV2ZWwgb2YgdGhlIGpvdXJuZXkgaGVhZGVyIGVsZW1lbnQgKGUuZy4gaDEtaDYpLiAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdoZWFkZXItbGV2ZWwnIH0pIHB1YmxpYyBhY2Nlc3NvciBoZWFkZXJMZXZlbDogU2JiVGl0bGVMZXZlbCA9ICczJztcblxuICAvKipcbiAgICogUGVyIGRlZmF1bHQsIHRoZSBjdXJyZW50IGxvY2F0aW9uIGhhcyBhIHB1bHNhdGluZyBhbmltYXRpb24uIFlvdSBjYW5cbiAgICogZGlzYWJsZSB0aGUgYW5pbWF0aW9uIHdpdGggdGhpcyBwcm9wZXJ0eS5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdkaXNhYmxlLWFuaW1hdGlvbicsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIGRpc2FibGVBbmltYXRpb246IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogVGhlIEZvb3RwYXRoIGF0dHJpYnV0ZSBmb3IgcmVuZGVyaW5nIGRpZmZlcmVudCBpY29uc1xuICAgKiB0cnVlOiByZW5kZXIgYTExeS1pY29uXG4gICAqIGZhbHNlOiByZW5kZXIgd2Fsay1pY29uXG4gICAqIGRlZmF1bHQ6IHJlbmRlciB3YWxrLWljb25cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhMTF5LWZvb3RwYXRoJywgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgYWNjZXNzb3IgYTExeUZvb3RwYXRoOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEEgY29uZmlndXJlZCBkYXRlIHdoaWNoIGFjdHMgYXMgdGhlIGN1cnJlbnQgZGF0ZSBpbnN0ZWFkIG9mIHRoZSByZWFsIGN1cnJlbnQgZGF0ZS5cbiAgICogT25seSByZWNvbW1lbmRlZCBmb3IgdGVzdGluZyBwdXJwb3Nlcy5cbiAgICovXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBzZXQgbm93KHZhbHVlOiBEYXRlIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5fbm93ID0gZGVmYXVsdERhdGVBZGFwdGVyLmdldFZhbGlkRGF0ZU9yTnVsbChkZWZhdWx0RGF0ZUFkYXB0ZXIuZGVzZXJpYWxpemUodmFsdWUpKTtcbiAgfVxuICBwdWJsaWMgZ2V0IG5vdygpOiBEYXRlIHtcbiAgICByZXR1cm4gdGhpcy5fbm93ID8/IG5ldyBEYXRlKCk7XG4gIH1cbiAgcHJpdmF0ZSBfbm93OiBEYXRlIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBfaGFzQ29udGVudFNsb3Q6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBfbGFuZ3VhZ2UgPSBuZXcgU2JiTGFuZ3VhZ2VDb250cm9sbGVyKHRoaXMpO1xuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuX2hhc0NvbnRlbnRTbG90ID0gQm9vbGVhbih0aGlzLnF1ZXJ5U2VsZWN0b3I/LignW3Nsb3Q9XCJjb250ZW50XCJdJykpO1xuICB9XG5cbiAgLyoqICByZW5kZXJzIHRoZSBkYXRlIG9mIHRoZSBqb3VybmV5IG9yIGlmIGl0IGlzIHRoZSBjdXJyZW50IG9yIG5leHQgZGF5ICovXG4gIHByaXZhdGUgX3JlbmRlckpvdXJuZXlTdGFydChcbiAgICBkZXBhcnR1cmVUaW1lOiBEYXRlIHwgdW5kZWZpbmVkLFxuICAgIGR1cmF0aW9uOiBudW1iZXIgfCB1bmRlZmluZWQsXG4gICk6IFRlbXBsYXRlUmVzdWx0IHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBkYXRlQWRhcHRlciA9IGRlZmF1bHREYXRlQWRhcHRlcjtcbiAgICBjb25zdCBkdXJhdGlvbk9iaiA9IGR1cmF0aW9uID8gZHVyYXRpb25Ub1RpbWUoZHVyYXRpb24sIHRoaXMuX2xhbmd1YWdlLmN1cnJlbnQpIDogbnVsbDtcblxuICAgIGlmIChpc1ZhbGlkKGRlcGFydHVyZVRpbWUpKSB7XG4gICAgICByZXR1cm4gaHRtbGBcbiAgICAgICAgPHRpbWUgZGF0ZXRpbWU9JHtmb3JtYXQoZGVwYXJ0dXJlVGltZSEsICdkJykgKyAnICcgKyBmb3JtYXQoZGVwYXJ0dXJlVGltZSEsICdNJyl9PlxuICAgICAgICAgICR7ZGF0ZUFkYXB0ZXIuZm9ybWF0KGRlcGFydHVyZVRpbWUpLnJlcGxhY2UoJywnLCAnLicpfTwvdGltZVxuICAgICAgICA+JHtkdXJhdGlvbiAmJiBkdXJhdGlvbiA+IDBcbiAgICAgICAgICA/IGh0bWxgLDx0aW1lPlxuICAgICAgICAgICAgICAgIDxzYmItc2NyZWVuLXJlYWRlci1vbmx5PlxuICAgICAgICAgICAgICAgICAgJHtpMThuVHJpcER1cmF0aW9uW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfSAke2R1cmF0aW9uT2JqIS5sb25nfVxuICAgICAgICAgICAgICAgIDwvc2JiLXNjcmVlbi1yZWFkZXItb25seT5cbiAgICAgICAgICAgICAgICA8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIj4ke2R1cmF0aW9uT2JqIS5zaG9ydH08L3NwYW4+XG4gICAgICAgICAgICAgIDwvdGltZT5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgYDtcbiAgICB9XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVuZGVySm91cm5leVZpYXModmlhczogc3RyaW5nW10pOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgY29uc3Qgc2xpY2VkVmlhcyA9IHZpYXMuc2xpY2UoMCwgNSk7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLWpvdXJuZXktc3VtbWFyeV9fdmlhLWJsb2NrXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWpvdXJuZXktc3VtbWFyeV9fdmlhLXRleHRcIj5WaWE8L3NwYW4+XG4gICAgICAgIDx1bCBjbGFzcz1cInNiYi1qb3VybmV5LXN1bW1hcnlfX3ZpYXNcIiByb2xlPSR7dmlhcy5sZW5ndGggPD0gMSA/ICdwcmVzZW50YXRpb24nIDogbm90aGluZ30+XG4gICAgICAgICAgJHtzbGljZWRWaWFzLm1hcChcbiAgICAgICAgICAgICh2aWEsIGluZGV4KSA9PlxuICAgICAgICAgICAgICBodG1sYDxsaSBjbGFzcz1cInNiYi1qb3VybmV5LXN1bW1hcnlfX3ZpYVwiPlxuICAgICAgICAgICAgICAgICR7dmlhfSR7aW5kZXggIT09IHNsaWNlZFZpYXMubGVuZ3RoIC0gMSAmJiBpbmRleCA8IDRcbiAgICAgICAgICAgICAgICAgID8gaHRtbGA8c3Bhbj4sPC9zcGFuPmBcbiAgICAgICAgICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgICAgICAgPC9saT5gLFxuICAgICAgICAgICl9XG4gICAgICAgIDwvdWw+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVuZGVySm91cm5leUluZm9ybWF0aW9uKHRyaXA6IEludGVyZmFjZVNiYkpvdXJuZXlTdW1tYXJ5QXR0cmlidXRlcyk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICBjb25zdCB7IHZpYXMsIGR1cmF0aW9uLCBkZXBhcnR1cmVXYWxrLCBkZXBhcnR1cmUsIGFycml2YWxXYWxrLCBhcnJpdmFsLCBsZWdzIH0gPSB0cmlwIHx8IHt9O1xuXG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2PlxuICAgICAgICAke3ZpYXMgJiYgdmlhcy5sZW5ndGggPiAwID8gdGhpcy5fcmVuZGVySm91cm5leVZpYXModmlhcykgOiBub3RoaW5nfVxuICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLWpvdXJuZXktc3VtbWFyeV9fZGF0ZVwiPlxuICAgICAgICAgICR7dGhpcy5fcmVuZGVySm91cm5leVN0YXJ0KHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcoZGVwYXJ0dXJlKSwgZHVyYXRpb24pfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHNiYi1wZWFybC1jaGFpbi10aW1lXG4gICAgICAgICAgLmFycml2YWxUaW1lPSR7YXJyaXZhbH1cbiAgICAgICAgICAuZGVwYXJ0dXJlVGltZT0ke2RlcGFydHVyZX1cbiAgICAgICAgICAuZGVwYXJ0dXJlV2Fsaz0ke2RlcGFydHVyZVdhbGt9XG4gICAgICAgICAgLmFycml2YWxXYWxrPSR7YXJyaXZhbFdhbGt9XG4gICAgICAgICAgLmxlZ3M9JHtsZWdzfVxuICAgICAgICAgIC5kaXNhYmxlQW5pbWF0aW9uPSR7dGhpcy5kaXNhYmxlQW5pbWF0aW9ufVxuICAgICAgICAgIC5hMTF5Rm9vdHBhdGg9JHt0aGlzLmExMXlGb290cGF0aH1cbiAgICAgICAgICAubm93PSR7dGhpcy5ub3d9XG4gICAgICAgID48L3NiYi1wZWFybC1jaGFpbi10aW1lPlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIGNvbnN0IHsgb3JpZ2luLCBkZXN0aW5hdGlvbiB9ID0gdGhpcy50cmlwIHx8IHt9O1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1qb3VybmV5LXN1bW1hcnlcIj5cbiAgICAgICAgJHtvcmlnaW5cbiAgICAgICAgICA/IGh0bWxgPHNiYi1qb3VybmV5LWhlYWRlclxuICAgICAgICAgICAgICBzaXplPVwibFwiXG4gICAgICAgICAgICAgIC5sZXZlbD0ke3RoaXMuaGVhZGVyTGV2ZWwgfHwgbm90aGluZ31cbiAgICAgICAgICAgICAgLm9yaWdpbj0ke29yaWdpbn1cbiAgICAgICAgICAgICAgLmRlc3RpbmF0aW9uPSR7ZGVzdGluYXRpb259XG4gICAgICAgICAgICAgIC5yb3VuZFRyaXA9JHt0aGlzLnJvdW5kVHJpcCA/PyBub3RoaW5nfVxuICAgICAgICAgICAgPjwvc2JiLWpvdXJuZXktaGVhZGVyPmBcbiAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICR7dGhpcy5fcmVuZGVySm91cm5leUluZm9ybWF0aW9uKHRoaXMudHJpcCl9XG4gICAgICAgICR7dGhpcy50cmlwQmFja1xuICAgICAgICAgID8gaHRtbGA8ZGl2PlxuICAgICAgICAgICAgICA8c2JiLWRpdmlkZXIgY2xhc3M9XCJzYmItam91cm5leS1zdW1tYXJ5X19kaXZpZGVyXCI+PC9zYmItZGl2aWRlcj5cbiAgICAgICAgICAgICAgJHt0aGlzLl9yZW5kZXJKb3VybmV5SW5mb3JtYXRpb24odGhpcy50cmlwQmFjayl9XG4gICAgICAgICAgICA8L2Rpdj5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICAke3RoaXMuX2hhc0NvbnRlbnRTbG90XG4gICAgICAgICAgPyBodG1sYCA8ZGl2IGNsYXNzPVwic2JiLWpvdXJuZXktc3VtbWFyeV9fc2xvdFwiPlxuICAgICAgICAgICAgICA8c2xvdCBuYW1lPVwiY29udGVudFwiPjwvc2xvdD5cbiAgICAgICAgICAgIDwvZGl2PmBcbiAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItam91cm5leS1zdW1tYXJ5JzogU2JiSm91cm5leVN1bW1hcnlFbGVtZW50O1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUN1Q2Esa0NBQXdCO21CQUFTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Y0FBakMsaUNBQWlDLFlBQVU7OztBQUtWLFNBQUEseUJBTGpDLGtCQUFBLE1BQUEsMkJBQXdCLEVBQUEsa0JBQUEsTUFBQSxvQkFLc0QsS0FBSztBQUk5RSxTQUFBLDZCQUFBLGtCQUFBLE1BQUEsd0JBQUEsRUFBQSxrQkFBQSxNQUFBLHdCQUFpRCxLQUFLO0FBT3RELFNBQUEsOEJBQUEsa0JBQUEsTUFBQSw0QkFBQSxFQUFBLGtCQUFBLE1BQUEseUJBQXFCLE1BQUs7QUFHZSxTQUFBLGdDQUFBLGtCQUFBLE1BQUEsNkJBQUEsRUFBQSxrQkFBQSxNQUFBLDJCQUE2QixJQUFHO0FBUXpFLFNBQUEscUNBQUEsa0JBQUEsTUFBQSwrQkFBQSxFQUFBLGtCQUFBLE1BQUEsZ0NBQTRCLE1BQUs7QUFVakMsU0FBQSxpQ0FBQSxrQkFBQSxNQUFBLG9DQUFBLEVBQUEsa0JBQUEsTUFBQSw0QkFBd0IsTUFBSztBQWFyQyxRQUFBLFFBQUksa0JBQUEsTUFBQSxnQ0FBQSxFQUFnQjtBQUVwQixRQUFBLGtCQUEyQjtBQUMzQixRQUFBLFlBQVksSUFBSSxzQkFBc0IsS0FB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