@sbb-esta/lyne-elements-experimental-dev 4.7.0-dev.1773388997 → 4.7.0-dev.1773393170
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.
- package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +76 -65
- package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +52 -72
- package/autocomplete-grid/autocomplete-grid-button.js +6 -3
- package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +17 -2
- package/autocomplete-grid/autocomplete-grid-cell.js +7 -4
- package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +21 -20
- package/autocomplete-grid/autocomplete-grid-optgroup.js +6 -3
- package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +33 -2
- package/autocomplete-grid/autocomplete-grid-option.js +9 -4
- package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +22 -2
- package/autocomplete-grid/autocomplete-grid-row.js +7 -4
- package/autocomplete-grid/autocomplete-grid.js +6 -3
- package/autocomplete-grid.js +21 -9
- package/autocomplete-grid.pure.js +15 -7
- package/core/datetime/date-helper.js +191 -2
- package/core/datetime.js +5 -2
- package/core/timetable/access-leg-helper.js +71 -76
- package/core/timetable/timetable-helper.js +11 -9
- package/core/timetable/timetable-properties.js +1 -0
- package/core/timetable.js +7 -3
- package/custom-elements.json +84 -84
- package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +122 -114
- package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +70 -92
- package/development/autocomplete-grid/autocomplete-grid-button.js +4 -6
- package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +29 -2
- package/development/autocomplete-grid/autocomplete-grid-cell.js +5 -7
- package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +22 -27
- package/development/autocomplete-grid/autocomplete-grid-optgroup.js +4 -6
- package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +109 -2
- package/development/autocomplete-grid/autocomplete-grid-option.js +7 -7
- package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +91 -2
- package/development/autocomplete-grid/autocomplete-grid-row.js +5 -7
- package/development/autocomplete-grid/autocomplete-grid.js +4 -6
- package/development/autocomplete-grid.js +14 -10
- package/development/autocomplete-grid.pure.js +13 -4
- package/development/core/datetime/date-helper.js +285 -2
- package/development/core/datetime.js +6 -2
- package/development/core/timetable/access-leg-helper.js +82 -104
- package/development/core/timetable/timetable-helper.js +17 -16
- package/development/core/timetable/timetable-properties.js +2 -0
- package/development/core/timetable.js +8 -3
- package/development/differenceInMinutes-B0dawX-5.js +26 -0
- package/development/format-BMkeaqaF.js +1433 -0
- package/development/isValid-BYRch7pV.js +53 -0
- package/development/journey-summary/journey-summary.component.js +288 -2
- package/development/journey-summary.js +5 -8
- package/development/journey-summary.pure.js +5 -2
- package/development/pearl-chain/pearl-chain.component.js +634 -2
- package/development/pearl-chain-time/pearl-chain-time.component.js +306 -2
- package/development/pearl-chain-time.js +5 -8
- package/development/pearl-chain-time.pure.js +5 -2
- package/development/pearl-chain-vertical/pearl-chain-vertical.component.js +28 -2
- package/development/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +393 -2
- package/development/pearl-chain-vertical-item.js +5 -8
- package/development/pearl-chain-vertical-item.pure.js +5 -2
- package/development/pearl-chain-vertical.js +5 -8
- package/development/pearl-chain-vertical.pure.js +5 -2
- package/development/pearl-chain.js +5 -8
- package/development/pearl-chain.pure.js +5 -2
- package/development/seat-reservation/common/mapper/icon-mapper.js +71 -168
- package/development/seat-reservation/common/mapper/mapper.js +122 -153
- package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-bus.js +559 -570
- package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-decks.js +972 -992
- package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-giruno.js +20367 -20334
- package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-others.js +1738 -1731
- package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-train.js +9782 -9741
- package/development/seat-reservation/common/mapper.js +8 -1
- package/development/seat-reservation/common/svgs.js +46 -2
- package/development/seat-reservation/common/translations/i18n.js +900 -1118
- package/development/seat-reservation/common/translations.js +4 -1
- package/development/seat-reservation/common/types.js +2 -0
- package/development/seat-reservation/common.js +11 -7
- package/development/seat-reservation/seat-reservation/seat-reservation-base-element.js +1230 -1305
- package/development/seat-reservation/seat-reservation/seat-reservation.component.js +859 -2
- package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +106 -2
- package/development/seat-reservation/seat-reservation-area.js +5 -7
- package/development/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +34 -35
- package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +162 -2
- package/development/seat-reservation/seat-reservation-graphic.js +5 -7
- package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +713 -2
- package/development/seat-reservation/seat-reservation-navigation-coach.js +5 -7
- package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +131 -2
- package/development/seat-reservation/seat-reservation-navigation-services.js +5 -7
- package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +601 -2
- package/development/seat-reservation/seat-reservation-place-control.js +5 -7
- package/development/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +22 -2
- package/development/seat-reservation/seat-reservation-scoped.js +5 -7
- package/development/seat-reservation/seat-reservation.js +6 -7
- package/development/seat-reservation.js +28 -15
- package/development/seat-reservation.pure.js +28 -10
- package/development/timetable-duration/timetable-duration.component.js +108 -2
- package/development/timetable-duration.js +5 -8
- package/development/timetable-duration.pure.js +5 -2
- package/development/timetable-row/timetable-row.component.js +781 -2
- package/development/timetable-row.js +13 -8
- package/development/timetable-row.pure.js +12 -2
- package/development/toDate-BWb6Z1JD.js +24 -0
- package/differenceInMinutes-COvvdYsJ.js +23 -0
- package/format-CmKROkbc.js +1186 -0
- package/isValid-m3_OsPaB.js +45 -0
- package/journey-summary/journey-summary.component.js +194 -2
- package/journey-summary.js +4 -5
- package/journey-summary.pure.js +4 -2
- package/package.json +2 -2
- package/pearl-chain/pearl-chain.component.js +165 -2
- package/pearl-chain-time/pearl-chain-time.component.js +157 -2
- package/pearl-chain-time.js +4 -5
- package/pearl-chain-time.pure.js +4 -2
- package/pearl-chain-vertical/pearl-chain-vertical.component.js +17 -2
- package/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +77 -2
- package/pearl-chain-vertical-item.js +4 -5
- package/pearl-chain-vertical-item.pure.js +4 -2
- package/pearl-chain-vertical.js +4 -5
- package/pearl-chain-vertical.pure.js +4 -2
- package/pearl-chain.js +4 -5
- package/pearl-chain.pure.js +4 -2
- package/seat-reservation/common/mapper/icon-mapper.js +71 -71
- package/seat-reservation/common/mapper/mapper.js +89 -95
- package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-bus.js +558 -568
- package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-decks.js +970 -989
- package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-giruno.js +20366 -20332
- package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-others.js +1737 -1729
- package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-train.js +9781 -9739
- package/seat-reservation/common/mapper.js +9 -3
- package/seat-reservation/common/svgs.js +243 -2
- package/seat-reservation/common/translations/i18n.js +891 -1084
- package/seat-reservation/common/translations.js +4 -2
- package/seat-reservation/common/types.js +1 -0
- package/seat-reservation/common.js +15 -9
- package/seat-reservation/seat-reservation/seat-reservation-base-element.js +810 -832
- package/seat-reservation/seat-reservation/seat-reservation.component.js +420 -2
- package/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +51 -2
- package/seat-reservation/seat-reservation-area.js +7 -4
- package/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +71 -68
- package/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +75 -2
- package/seat-reservation/seat-reservation-graphic.js +7 -4
- package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +234 -2
- package/seat-reservation/seat-reservation-navigation-coach.js +7 -4
- package/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +85 -2
- package/seat-reservation/seat-reservation-navigation-services.js +7 -4
- package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +203 -2
- package/seat-reservation/seat-reservation-place-control.js +7 -4
- package/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +13 -2
- package/seat-reservation/seat-reservation-scoped.js +7 -4
- package/seat-reservation/seat-reservation.js +9 -5
- package/seat-reservation.js +39 -17
- package/seat-reservation.pure.js +32 -15
- package/timetable-duration/timetable-duration.component.js +57 -2
- package/timetable-duration.js +4 -5
- package/timetable-duration.pure.js +4 -2
- package/timetable-row/timetable-row.component.js +427 -2
- package/timetable-row.js +13 -6
- package/timetable-row.pure.js +11 -2
- package/toDate-Bw2KTWeq.js +15 -0
- package/autocomplete-grid-cell.component-Dak9wlBr.js +0 -24
- package/autocomplete-grid-option.component-DNRFHOwc.js +0 -37
- package/autocomplete-grid-row.component-DBHZQ0GQ.js +0 -27
- package/date-helper-CGproP5d.js +0 -185
- package/development/autocomplete-grid-cell.component-BBvM4o2H.js +0 -42
- package/development/autocomplete-grid-option.component-QzfM5eIE.js +0 -123
- package/development/autocomplete-grid-row.component-H8sCTCkT.js +0 -104
- package/development/date-helper-8_Y-PuHh.js +0 -520
- package/development/differenceInMinutes-DN_1Rk3O.js +0 -110
- package/development/format-Bbrn2bgo.js +0 -1848
- package/development/isValid-C-HzKv4v.js +0 -178
- package/development/journey-summary.component-uGhZvA4p.js +0 -385
- package/development/pearl-chain-time.component-B8mayTWD.js +0 -415
- package/development/pearl-chain-vertical-item.component-BDzbcIaf.js +0 -435
- package/development/pearl-chain-vertical.component-CswE7b3M.js +0 -39
- package/development/pearl-chain.component-wpsTvoSe.js +0 -704
- package/development/seat-reservation-area.component-BK92ZtFo.js +0 -138
- package/development/seat-reservation-graphic.component-cUnsHh5x.js +0 -193
- package/development/seat-reservation-navigation-coach.component-D6Bglus8.js +0 -828
- package/development/seat-reservation-navigation-services.component-DYJ6Ddkg.js +0 -179
- package/development/seat-reservation-place-control.component-Bg9evKBW.js +0 -726
- package/development/seat-reservation-scoped.component-DRQ_I702.js +0 -31
- package/development/seat-reservation.component-Cq_aJKR0.js +0 -818
- package/development/svgs-C3JMWR26.js +0 -28
- package/development/timetable-duration.component-DI0lET17.js +0 -125
- package/development/timetable-row.component-CAED6Zwc.js +0 -932
- package/development/toDate-Biiv3kyf.js +0 -150
- package/differenceInMinutes-Dr9gRqtu.js +0 -27
- package/format-CM5exOsN.js +0 -1103
- package/isValid-B9oVW3lA.js +0 -36
- package/journey-summary.component-Cq_4kaOp.js +0 -264
- package/pearl-chain-time.component-DGDW5S1c.js +0 -239
- package/pearl-chain-vertical-item.component-G22bWhLU.js +0 -108
- package/pearl-chain-vertical.component-CXIDT5RD.js +0 -21
- package/pearl-chain.component-DmjkVIva.js +0 -194
- package/seat-reservation-area.component-n-9rGn_y.js +0 -75
- package/seat-reservation-graphic.component-YTXRmKt0.js +0 -102
- package/seat-reservation-navigation-coach.component-YJ0vaYmO.js +0 -333
- package/seat-reservation-navigation-services.component-C3xnLJg2.js +0 -127
- package/seat-reservation-place-control.component-DmBAfM6K.js +0 -322
- package/seat-reservation-scoped.component-DPkz6u17.js +0 -17
- package/seat-reservation.component-C_anMkgw.js +0 -364
- package/svgs-D9arBcqr.js +0 -26
- package/timetable-duration.component-DCu8Phts.js +0 -65
- package/timetable-row.component-BVRCB3xK.js +0 -559
- package/toDate-p-Tpkb7t.js +0 -16
|
@@ -1,415 +0,0 @@
|
|
|
1
|
-
import { t as format } from "./format-Bbrn2bgo.js";
|
|
2
|
-
import { __esDecorate, __runInitializers } from "tslib";
|
|
3
|
-
import { SbbElement } from "@sbb-esta/lyne-elements/core/base-elements.js";
|
|
4
|
-
import { SbbLanguageController } from "@sbb-esta/lyne-elements/core/controllers.js";
|
|
5
|
-
import { forceType } from "@sbb-esta/lyne-elements/core/decorators.js";
|
|
6
|
-
import { boxSizingStyles } from "@sbb-esta/lyne-elements/core/styles.js";
|
|
7
|
-
import { css, html, nothing } from "lit";
|
|
8
|
-
import { defaultDateAdapter } from "@sbb-esta/lyne-elements/core/datetime.js";
|
|
9
|
-
import { i18nArrival, i18nDeparture, i18nTransferProcedures } from "@sbb-esta/lyne-elements/core/i18n.js";
|
|
10
|
-
import { property } from "lit/decorators.js";
|
|
11
|
-
import { removeTimezoneFromISOTimeString } from "./core/datetime.js";
|
|
12
|
-
import { getDepartureArrivalTimeAttribute, isRideLeg } from "./core/timetable.js";
|
|
13
|
-
import "./pearl-chain.js";
|
|
14
|
-
//#region src/elements-experimental/pearl-chain-time/pearl-chain-time.scss?lit&inline
|
|
15
|
-
var pearl_chain_time_default = css`:host {
|
|
16
|
-
display: block;
|
|
17
|
-
--sbb-pearl-chain-time-height: auto;
|
|
18
|
-
}
|
|
19
|
-
@media (min-width: calc(37.5rem)) {
|
|
20
|
-
:host {
|
|
21
|
-
--sbb-pearl-chain-time-height: 1.5625rem;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
@media (min-width: calc(64rem)) {
|
|
25
|
-
:host {
|
|
26
|
-
--sbb-pearl-chain-time-height: 1.75rem;
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
.sbb-pearl-chain__time {
|
|
31
|
-
display: flex;
|
|
32
|
-
flex-wrap: wrap;
|
|
33
|
-
justify-content: space-between;
|
|
34
|
-
align-items: center;
|
|
35
|
-
height: var(--sbb-pearl-chain-time-height);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
.sbb-pearl-chain__time-walktime,
|
|
39
|
-
.sbb-pearl-chain__time-transfer {
|
|
40
|
-
--sbb-text-font-size: var(--sbb-text-font-size-xxs);
|
|
41
|
-
font-family: var(--sbb-typo-font-family);
|
|
42
|
-
font-weight: normal;
|
|
43
|
-
line-height: var(--sbb-typo-line-height-text);
|
|
44
|
-
letter-spacing: var(--sbb-typo-letter-spacing-text);
|
|
45
|
-
font-size: var(--sbb-text-font-size);
|
|
46
|
-
display: inline-flex;
|
|
47
|
-
align-items: center;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
.sbb-pearl-chain__time-walktime--walk-small-left {
|
|
51
|
-
transform: translateX(-0.4375rem);
|
|
52
|
-
margin-inline-end: calc(var(--sbb-spacing-fixed-2x) - 0.4375rem);
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
.sbb-pearl-chain__time-walktime--walk-small-right {
|
|
56
|
-
margin-inline-start: calc(var(--sbb-spacing-fixed-2x) - 0.25rem);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
.sbb-pearl-chain__time-walktime--wheelchair-small-left {
|
|
60
|
-
transform: translateX(-0.375rem);
|
|
61
|
-
margin-inline-end: calc(var(--sbb-spacing-fixed-2x) - 0.4375rem);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
.sbb-pearl-chain__time-walktime--wheelchair-small-right {
|
|
65
|
-
margin-inline-start: calc(var(--sbb-spacing-fixed-2x) - 0.25rem);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
.sbb-pearl-chain__time-walktime-prime-symbol {
|
|
69
|
-
float: right;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
.sbb-pearl-chain__time-transfer {
|
|
73
|
-
gap: var(--sbb-spacing-fixed-1x);
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
.sbb-pearl-chain__time-transfer--sa-ci-departure {
|
|
77
|
-
margin-inline-end: var(--sbb-spacing-fixed-2x);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
.sbb-pearl-chain__time-transfer--sa-ci-arrival {
|
|
81
|
-
margin-inline-start: calc(var(--sbb-spacing-fixed-2x) - 0.25rem);
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
.sbb-pearl-chain__time-chain {
|
|
85
|
-
flex: 1 1 auto;
|
|
86
|
-
align-self: center;
|
|
87
|
-
margin-inline: var(--sbb-spacing-fixed-3x);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
.sbb-pearl-chain__time-time {
|
|
91
|
-
--sbb-text-font-size: var(--sbb-text-font-size-s);
|
|
92
|
-
font-family: var(--sbb-typo-font-family);
|
|
93
|
-
font-weight: normal;
|
|
94
|
-
line-height: var(--sbb-typo-line-height-text);
|
|
95
|
-
letter-spacing: var(--sbb-typo-letter-spacing-text);
|
|
96
|
-
font-size: var(--sbb-text-font-size);
|
|
97
|
-
font-weight: bold;
|
|
98
|
-
color: var(--sbb-color-2);
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
.sbb-screen-reader-only {
|
|
102
|
-
border: 0;
|
|
103
|
-
clip-path: rect(0 0 0 0);
|
|
104
|
-
height: 1px;
|
|
105
|
-
margin: -1px;
|
|
106
|
-
overflow: hidden;
|
|
107
|
-
padding: 0;
|
|
108
|
-
position: absolute;
|
|
109
|
-
white-space: nowrap;
|
|
110
|
-
width: 1px;
|
|
111
|
-
}`;
|
|
112
|
-
//#endregion
|
|
113
|
-
//#region src/elements-experimental/pearl-chain-time/pearl-chain-time.component.ts
|
|
114
|
-
/**
|
|
115
|
-
* Combined with `sbb-pearl-chain`, it displays walk time information.
|
|
116
|
-
*/
|
|
117
|
-
var SbbPearlChainTimeElement = (() => {
|
|
118
|
-
let _classSuper = SbbElement;
|
|
119
|
-
let _instanceExtraInitializers = [];
|
|
120
|
-
let _legs_decorators;
|
|
121
|
-
let _legs_initializers = [];
|
|
122
|
-
let _legs_extraInitializers = [];
|
|
123
|
-
let _departureTime_decorators;
|
|
124
|
-
let _departureTime_initializers = [];
|
|
125
|
-
let _departureTime_extraInitializers = [];
|
|
126
|
-
let _arrivalTime_decorators;
|
|
127
|
-
let _arrivalTime_initializers = [];
|
|
128
|
-
let _arrivalTime_extraInitializers = [];
|
|
129
|
-
let _departureWalk_decorators;
|
|
130
|
-
let _departureWalk_initializers = [];
|
|
131
|
-
let _departureWalk_extraInitializers = [];
|
|
132
|
-
let _arrivalWalk_decorators;
|
|
133
|
-
let _arrivalWalk_initializers = [];
|
|
134
|
-
let _arrivalWalk_extraInitializers = [];
|
|
135
|
-
let _disableAnimation_decorators;
|
|
136
|
-
let _disableAnimation_initializers = [];
|
|
137
|
-
let _disableAnimation_extraInitializers = [];
|
|
138
|
-
let _a11yFootpath_decorators;
|
|
139
|
-
let _a11yFootpath_initializers = [];
|
|
140
|
-
let _a11yFootpath_extraInitializers = [];
|
|
141
|
-
let _set_now_decorators;
|
|
142
|
-
return class SbbPearlChainTimeElement extends _classSuper {
|
|
143
|
-
constructor() {
|
|
144
|
-
super(...arguments);
|
|
145
|
-
this.#legs_accessor_storage = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _legs_initializers, []));
|
|
146
|
-
this.#departureTime_accessor_storage = (__runInitializers(this, _legs_extraInitializers), __runInitializers(this, _departureTime_initializers, ""));
|
|
147
|
-
this.#arrivalTime_accessor_storage = (__runInitializers(this, _departureTime_extraInitializers), __runInitializers(this, _arrivalTime_initializers, ""));
|
|
148
|
-
this.#departureWalk_accessor_storage = (__runInitializers(this, _arrivalTime_extraInitializers), __runInitializers(this, _departureWalk_initializers, NaN));
|
|
149
|
-
this.#arrivalWalk_accessor_storage = (__runInitializers(this, _departureWalk_extraInitializers), __runInitializers(this, _arrivalWalk_initializers, NaN));
|
|
150
|
-
this.#disableAnimation_accessor_storage = (__runInitializers(this, _arrivalWalk_extraInitializers), __runInitializers(this, _disableAnimation_initializers, false));
|
|
151
|
-
this.#a11yFootpath_accessor_storage = (__runInitializers(this, _disableAnimation_extraInitializers), __runInitializers(this, _a11yFootpath_initializers, false));
|
|
152
|
-
this._now = (__runInitializers(this, _a11yFootpath_extraInitializers), null);
|
|
153
|
-
this._language = new SbbLanguageController(this);
|
|
154
|
-
}
|
|
155
|
-
static {
|
|
156
|
-
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
157
|
-
_legs_decorators = [property({ type: Array })];
|
|
158
|
-
_departureTime_decorators = [forceType(), property({ attribute: "departure-time" })];
|
|
159
|
-
_arrivalTime_decorators = [forceType(), property({ attribute: "arrival-time" })];
|
|
160
|
-
_departureWalk_decorators = [forceType(), property({
|
|
161
|
-
attribute: "departure-walk",
|
|
162
|
-
type: Number
|
|
163
|
-
})];
|
|
164
|
-
_arrivalWalk_decorators = [forceType(), property({
|
|
165
|
-
attribute: "arrival-walk",
|
|
166
|
-
type: Number
|
|
167
|
-
})];
|
|
168
|
-
_disableAnimation_decorators = [forceType(), property({
|
|
169
|
-
attribute: "disable-animation",
|
|
170
|
-
type: Boolean
|
|
171
|
-
})];
|
|
172
|
-
_a11yFootpath_decorators = [forceType(), property({
|
|
173
|
-
attribute: "a11y-footpath",
|
|
174
|
-
type: Boolean
|
|
175
|
-
})];
|
|
176
|
-
_set_now_decorators = [property()];
|
|
177
|
-
__esDecorate(this, null, _legs_decorators, {
|
|
178
|
-
kind: "accessor",
|
|
179
|
-
name: "legs",
|
|
180
|
-
static: false,
|
|
181
|
-
private: false,
|
|
182
|
-
access: {
|
|
183
|
-
has: (obj) => "legs" in obj,
|
|
184
|
-
get: (obj) => obj.legs,
|
|
185
|
-
set: (obj, value) => {
|
|
186
|
-
obj.legs = value;
|
|
187
|
-
}
|
|
188
|
-
},
|
|
189
|
-
metadata: _metadata
|
|
190
|
-
}, _legs_initializers, _legs_extraInitializers);
|
|
191
|
-
__esDecorate(this, null, _departureTime_decorators, {
|
|
192
|
-
kind: "accessor",
|
|
193
|
-
name: "departureTime",
|
|
194
|
-
static: false,
|
|
195
|
-
private: false,
|
|
196
|
-
access: {
|
|
197
|
-
has: (obj) => "departureTime" in obj,
|
|
198
|
-
get: (obj) => obj.departureTime,
|
|
199
|
-
set: (obj, value) => {
|
|
200
|
-
obj.departureTime = value;
|
|
201
|
-
}
|
|
202
|
-
},
|
|
203
|
-
metadata: _metadata
|
|
204
|
-
}, _departureTime_initializers, _departureTime_extraInitializers);
|
|
205
|
-
__esDecorate(this, null, _arrivalTime_decorators, {
|
|
206
|
-
kind: "accessor",
|
|
207
|
-
name: "arrivalTime",
|
|
208
|
-
static: false,
|
|
209
|
-
private: false,
|
|
210
|
-
access: {
|
|
211
|
-
has: (obj) => "arrivalTime" in obj,
|
|
212
|
-
get: (obj) => obj.arrivalTime,
|
|
213
|
-
set: (obj, value) => {
|
|
214
|
-
obj.arrivalTime = value;
|
|
215
|
-
}
|
|
216
|
-
},
|
|
217
|
-
metadata: _metadata
|
|
218
|
-
}, _arrivalTime_initializers, _arrivalTime_extraInitializers);
|
|
219
|
-
__esDecorate(this, null, _departureWalk_decorators, {
|
|
220
|
-
kind: "accessor",
|
|
221
|
-
name: "departureWalk",
|
|
222
|
-
static: false,
|
|
223
|
-
private: false,
|
|
224
|
-
access: {
|
|
225
|
-
has: (obj) => "departureWalk" in obj,
|
|
226
|
-
get: (obj) => obj.departureWalk,
|
|
227
|
-
set: (obj, value) => {
|
|
228
|
-
obj.departureWalk = value;
|
|
229
|
-
}
|
|
230
|
-
},
|
|
231
|
-
metadata: _metadata
|
|
232
|
-
}, _departureWalk_initializers, _departureWalk_extraInitializers);
|
|
233
|
-
__esDecorate(this, null, _arrivalWalk_decorators, {
|
|
234
|
-
kind: "accessor",
|
|
235
|
-
name: "arrivalWalk",
|
|
236
|
-
static: false,
|
|
237
|
-
private: false,
|
|
238
|
-
access: {
|
|
239
|
-
has: (obj) => "arrivalWalk" in obj,
|
|
240
|
-
get: (obj) => obj.arrivalWalk,
|
|
241
|
-
set: (obj, value) => {
|
|
242
|
-
obj.arrivalWalk = value;
|
|
243
|
-
}
|
|
244
|
-
},
|
|
245
|
-
metadata: _metadata
|
|
246
|
-
}, _arrivalWalk_initializers, _arrivalWalk_extraInitializers);
|
|
247
|
-
__esDecorate(this, null, _disableAnimation_decorators, {
|
|
248
|
-
kind: "accessor",
|
|
249
|
-
name: "disableAnimation",
|
|
250
|
-
static: false,
|
|
251
|
-
private: false,
|
|
252
|
-
access: {
|
|
253
|
-
has: (obj) => "disableAnimation" in obj,
|
|
254
|
-
get: (obj) => obj.disableAnimation,
|
|
255
|
-
set: (obj, value) => {
|
|
256
|
-
obj.disableAnimation = value;
|
|
257
|
-
}
|
|
258
|
-
},
|
|
259
|
-
metadata: _metadata
|
|
260
|
-
}, _disableAnimation_initializers, _disableAnimation_extraInitializers);
|
|
261
|
-
__esDecorate(this, null, _a11yFootpath_decorators, {
|
|
262
|
-
kind: "accessor",
|
|
263
|
-
name: "a11yFootpath",
|
|
264
|
-
static: false,
|
|
265
|
-
private: false,
|
|
266
|
-
access: {
|
|
267
|
-
has: (obj) => "a11yFootpath" in obj,
|
|
268
|
-
get: (obj) => obj.a11yFootpath,
|
|
269
|
-
set: (obj, value) => {
|
|
270
|
-
obj.a11yFootpath = value;
|
|
271
|
-
}
|
|
272
|
-
},
|
|
273
|
-
metadata: _metadata
|
|
274
|
-
}, _a11yFootpath_initializers, _a11yFootpath_extraInitializers);
|
|
275
|
-
__esDecorate(this, null, _set_now_decorators, {
|
|
276
|
-
kind: "setter",
|
|
277
|
-
name: "now",
|
|
278
|
-
static: false,
|
|
279
|
-
private: false,
|
|
280
|
-
access: {
|
|
281
|
-
has: (obj) => "now" in obj,
|
|
282
|
-
set: (obj, value) => {
|
|
283
|
-
obj.now = value;
|
|
284
|
-
}
|
|
285
|
-
},
|
|
286
|
-
metadata: _metadata
|
|
287
|
-
}, null, _instanceExtraInitializers);
|
|
288
|
-
if (_metadata) Object.defineProperty(this, Symbol.metadata, {
|
|
289
|
-
enumerable: true,
|
|
290
|
-
configurable: true,
|
|
291
|
-
writable: true,
|
|
292
|
-
value: _metadata
|
|
293
|
-
});
|
|
294
|
-
}
|
|
295
|
-
static {
|
|
296
|
-
this.elementName = "sbb-pearl-chain-time";
|
|
297
|
-
}
|
|
298
|
-
static {
|
|
299
|
-
this.styles = [boxSizingStyles, pearl_chain_time_default];
|
|
300
|
-
}
|
|
301
|
-
#legs_accessor_storage;
|
|
302
|
-
/**
|
|
303
|
-
* define the legs of the pearl-chain.
|
|
304
|
-
* Format:
|
|
305
|
-
* `{"legs": [{"duration": 25}, ...]}`
|
|
306
|
-
* `duration` in minutes. Duration of the leg is relative
|
|
307
|
-
* to the total travel time. Example: departure 16:30, change at 16:40,
|
|
308
|
-
* arrival at 17:00. So the change should have a duration of 33.33%.
|
|
309
|
-
*/
|
|
310
|
-
get legs() {
|
|
311
|
-
return this.#legs_accessor_storage;
|
|
312
|
-
}
|
|
313
|
-
set legs(value) {
|
|
314
|
-
this.#legs_accessor_storage = value;
|
|
315
|
-
}
|
|
316
|
-
#departureTime_accessor_storage;
|
|
317
|
-
/** Prop to render the departure time - will be formatted as "H:mm" */
|
|
318
|
-
get departureTime() {
|
|
319
|
-
return this.#departureTime_accessor_storage;
|
|
320
|
-
}
|
|
321
|
-
set departureTime(value) {
|
|
322
|
-
this.#departureTime_accessor_storage = value;
|
|
323
|
-
}
|
|
324
|
-
#arrivalTime_accessor_storage;
|
|
325
|
-
/** Prop to render the arrival time - will be formatted as "H:mm" */
|
|
326
|
-
get arrivalTime() {
|
|
327
|
-
return this.#arrivalTime_accessor_storage;
|
|
328
|
-
}
|
|
329
|
-
set arrivalTime(value) {
|
|
330
|
-
this.#arrivalTime_accessor_storage = value;
|
|
331
|
-
}
|
|
332
|
-
#departureWalk_accessor_storage;
|
|
333
|
-
/** Optional prop to render the walk time (in minutes) before departure */
|
|
334
|
-
get departureWalk() {
|
|
335
|
-
return this.#departureWalk_accessor_storage;
|
|
336
|
-
}
|
|
337
|
-
set departureWalk(value) {
|
|
338
|
-
this.#departureWalk_accessor_storage = value;
|
|
339
|
-
}
|
|
340
|
-
#arrivalWalk_accessor_storage;
|
|
341
|
-
/** Optional prop to render the walk time (in minutes) after arrival */
|
|
342
|
-
get arrivalWalk() {
|
|
343
|
-
return this.#arrivalWalk_accessor_storage;
|
|
344
|
-
}
|
|
345
|
-
set arrivalWalk(value) {
|
|
346
|
-
this.#arrivalWalk_accessor_storage = value;
|
|
347
|
-
}
|
|
348
|
-
#disableAnimation_accessor_storage;
|
|
349
|
-
/**
|
|
350
|
-
* Per default, the current location has a pulsating animation. You can
|
|
351
|
-
* disable the animation with this property.
|
|
352
|
-
*/
|
|
353
|
-
get disableAnimation() {
|
|
354
|
-
return this.#disableAnimation_accessor_storage;
|
|
355
|
-
}
|
|
356
|
-
set disableAnimation(value) {
|
|
357
|
-
this.#disableAnimation_accessor_storage = value;
|
|
358
|
-
}
|
|
359
|
-
#a11yFootpath_accessor_storage;
|
|
360
|
-
/** Optional prop to render wheelchair-small instead of walk-small */
|
|
361
|
-
get a11yFootpath() {
|
|
362
|
-
return this.#a11yFootpath_accessor_storage;
|
|
363
|
-
}
|
|
364
|
-
set a11yFootpath(value) {
|
|
365
|
-
this.#a11yFootpath_accessor_storage = value;
|
|
366
|
-
}
|
|
367
|
-
/**
|
|
368
|
-
* A configured date which acts as the current date instead of the real current date.
|
|
369
|
-
* Only recommended for testing purposes.
|
|
370
|
-
*/
|
|
371
|
-
set now(value) {
|
|
372
|
-
this._now = defaultDateAdapter.getValidDateOrNull(defaultDateAdapter.deserialize(value));
|
|
373
|
-
}
|
|
374
|
-
get now() {
|
|
375
|
-
return this._now ?? /* @__PURE__ */ new Date();
|
|
376
|
-
}
|
|
377
|
-
render() {
|
|
378
|
-
const departure = this.departureTime ? removeTimezoneFromISOTimeString(this.departureTime) : void 0;
|
|
379
|
-
const arrival = this.arrivalTime ? removeTimezoneFromISOTimeString(this.arrivalTime) : void 0;
|
|
380
|
-
const { renderDepartureTimeAttribute, renderArrivalTimeAttribute } = getDepartureArrivalTimeAttribute(this.legs, this.departureWalk || 0, this.arrivalWalk || 0, this._language.current, this.a11yFootpath);
|
|
381
|
-
const rideLegs = this.legs?.filter((leg) => isRideLeg(leg));
|
|
382
|
-
return html`
|
|
383
|
-
<div class="sbb-pearl-chain__time">
|
|
384
|
-
${renderDepartureTimeAttribute()}
|
|
385
|
-
${departure ? html`<time class="sbb-pearl-chain__time-time" datetime=${this.departureTime}>
|
|
386
|
-
<span class="sbb-screen-reader-only"
|
|
387
|
-
>${i18nDeparture[this._language.current]}: </span
|
|
388
|
-
>
|
|
389
|
-
${format(departure, "HH:mm")}
|
|
390
|
-
</time>` : nothing}
|
|
391
|
-
${rideLegs?.length > 1 ? html`<span class="sbb-screen-reader-only" role="paragraph">
|
|
392
|
-
${rideLegs?.length - 1} ${i18nTransferProcedures[this._language.current]}
|
|
393
|
-
</span>` : nothing}
|
|
394
|
-
<sbb-pearl-chain
|
|
395
|
-
class="sbb-pearl-chain__time-chain"
|
|
396
|
-
.legs=${this.legs}
|
|
397
|
-
.disableAnimation=${this.disableAnimation}
|
|
398
|
-
.now=${this.now}
|
|
399
|
-
></sbb-pearl-chain>
|
|
400
|
-
${arrival ? html`<time class="sbb-pearl-chain__time-time" datetime=${this.arrivalTime}>
|
|
401
|
-
<span class="sbb-screen-reader-only"
|
|
402
|
-
>${i18nArrival[this._language.current]}: </span
|
|
403
|
-
>
|
|
404
|
-
${format(arrival, "HH:mm")}
|
|
405
|
-
</time>` : nothing}
|
|
406
|
-
${renderArrivalTimeAttribute()}
|
|
407
|
-
</div>
|
|
408
|
-
`;
|
|
409
|
-
}
|
|
410
|
-
};
|
|
411
|
-
})();
|
|
412
|
-
//#endregion
|
|
413
|
-
export { SbbPearlChainTimeElement as t };
|
|
414
|
-
|
|
415
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVhcmwtY2hhaW4tdGltZS5jb21wb25lbnQtQjhtYXlUV0QuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC9wZWFybC1jaGFpbi10aW1lL3BlYXJsLWNoYWluLXRpbWUuc2Nzcz9saXQmaW5saW5lIiwiLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC9wZWFybC1jaGFpbi10aW1lL3BlYXJsLWNoYWluLXRpbWUuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbjpob3N0IHtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgLS1zYmItcGVhcmwtY2hhaW4tdGltZS1oZWlnaHQ6IGF1dG87XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBzbWFsbCkge1xuICAgIC0tc2JiLXBlYXJsLWNoYWluLXRpbWUtaGVpZ2h0OiAje3NiYi5weC10by1yZW0tYnVpbGQoMjUpfTtcbiAgfVxuXG4gIEBpbmNsdWRlIHNiYi5tcSgkZnJvbTogbGFyZ2UpIHtcbiAgICAtLXNiYi1wZWFybC1jaGFpbi10aW1lLWhlaWdodDogI3tzYmIucHgtdG8tcmVtLWJ1aWxkKDI4KX07XG4gIH1cbn1cblxuLnNiYi1wZWFybC1jaGFpbl9fdGltZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IHZhcigtLXNiYi1wZWFybC1jaGFpbi10aW1lLWhlaWdodCk7XG59XG5cbi5zYmItcGVhcmwtY2hhaW5fX3RpbWUtd2Fsa3RpbWUsXG4uc2JiLXBlYXJsLWNoYWluX190aW1lLXRyYW5zZmVyIHtcbiAgQGluY2x1ZGUgc2JiLnRleHQteHhzLS1yZWd1bGFyO1xuXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uc2JiLXBlYXJsLWNoYWluX190aW1lLXdhbGt0aW1lLS13YWxrLXNtYWxsLWxlZnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoc2JiLnB4LXRvLXJlbS1idWlsZCgtNykpO1xuICBtYXJnaW4taW5saW5lLWVuZDogY2FsYyh2YXIoLS1zYmItc3BhY2luZy1maXhlZC0yeCkgLSAje3NiYi5weC10by1yZW0tYnVpbGQoNyl9KTtcbn1cblxuLnNiYi1wZWFybC1jaGFpbl9fdGltZS13YWxrdGltZS0td2Fsay1zbWFsbC1yaWdodCB7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IGNhbGModmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtMngpIC0gI3tzYmIucHgtdG8tcmVtLWJ1aWxkKDQpfSk7XG59XG5cbi5zYmItcGVhcmwtY2hhaW5fX3RpbWUtd2Fsa3RpbWUtLXdoZWVsY2hhaXItc21hbGwtbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWChzYmIucHgtdG8tcmVtLWJ1aWxkKC02KSk7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiBjYWxjKHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTJ4KSAtICN7c2JiLnB4LXRvLXJlbS1idWlsZCg3KX0pO1xufVxuXG4uc2JiLXBlYXJsLWNoYWluX190aW1lLXdhbGt0aW1lLS13aGVlbGNoYWlyLXNtYWxsLXJpZ2h0IHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogY2FsYyh2YXIoLS1zYmItc3BhY2luZy1maXhlZC0yeCkgLSAje3NiYi5weC10by1yZW0tYnVpbGQoNCl9KTtcbn1cblxuLnNiYi1wZWFybC1jaGFpbl9fdGltZS13YWxrdGltZS1wcmltZS1zeW1ib2wge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5zYmItcGVhcmwtY2hhaW5fX3RpbWUtdHJhbnNmZXIge1xuICBnYXA6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTF4KTtcbn1cblxuLnNiYi1wZWFybC1jaGFpbl9fdGltZS10cmFuc2Zlci0tc2EtY2ktZGVwYXJ0dXJlIHtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTJ4KTtcbn1cblxuLnNiYi1wZWFybC1jaGFpbl9fdGltZS10cmFuc2Zlci0tc2EtY2ktYXJyaXZhbCB7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IGNhbGModmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtMngpIC0gI3tzYmIucHgtdG8tcmVtLWJ1aWxkKDQpfSk7XG59XG5cbi5zYmItcGVhcmwtY2hhaW5fX3RpbWUtY2hhaW4ge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBtYXJnaW4taW5saW5lOiB2YXIoLS1zYmItc3BhY2luZy1maXhlZC0zeCk7XG59XG5cbi5zYmItcGVhcmwtY2hhaW5fX3RpbWUtdGltZSB7XG4gIEBpbmNsdWRlIHNiYi50ZXh0LXMtLWJvbGQ7XG5cbiAgY29sb3I6IHZhcigtLXNiYi1jb2xvci0yKTtcbn1cblxuLnNiYi1zY3JlZW4tcmVhZGVyLW9ubHkge1xuICBAaW5jbHVkZSBzYmIuc2NyZWVuLXJlYWRlci1vbmx5O1xufVxuIiwiaW1wb3J0IHsgU2JiRWxlbWVudCB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvYmFzZS1lbGVtZW50cy5qcyc7XG5pbXBvcnQgeyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IGRlZmF1bHREYXRlQWRhcHRlciB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvZGF0ZXRpbWUuanMnO1xuaW1wb3J0IHsgZm9yY2VUeXBlIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7XG4gIGkxOG5BcnJpdmFsLFxuICBpMThuRGVwYXJ0dXJlLFxuICBpMThuVHJhbnNmZXJQcm9jZWR1cmVzLFxufSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2kxOG4uanMnO1xuaW1wb3J0IHsgYm94U2l6aW5nU3R5bGVzIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9zdHlsZXMuanMnO1xuaW1wb3J0IHsgZm9ybWF0IH0gZnJvbSAnZGF0ZS1mbnMnO1xuaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgbm90aGluZyB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgcmVtb3ZlVGltZXpvbmVGcm9tSVNPVGltZVN0cmluZyB9IGZyb20gJy4uL2NvcmUvZGF0ZXRpbWUudHMnO1xuaW1wb3J0IHR5cGUgeyBMZWcsIFB0UmlkZUxlZyB9IGZyb20gJy4uL2NvcmUvdGltZXRhYmxlLnRzJztcbmltcG9ydCB7IGdldERlcGFydHVyZUFycml2YWxUaW1lQXR0cmlidXRlLCBpc1JpZGVMZWcgfSBmcm9tICcuLi9jb3JlL3RpbWV0YWJsZS50cyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3BlYXJsLWNoYWluLXRpbWUuc2Nzcz9saXQmaW5saW5lJztcblxuaW1wb3J0ICcuLi9wZWFybC1jaGFpbi50cyc7XG5cbi8qKlxuICogQ29tYmluZWQgd2l0aCBgc2JiLXBlYXJsLWNoYWluYCwgaXQgZGlzcGxheXMgd2FsayB0aW1lIGluZm9ybWF0aW9uLlxuICovXG5leHBvcnQgY2xhc3MgU2JiUGVhcmxDaGFpblRpbWVFbGVtZW50IGV4dGVuZHMgU2JiRWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItcGVhcmwtY2hhaW4tdGltZSc7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtib3hTaXppbmdTdHlsZXMsIHN0eWxlXTtcblxuICAvKipcbiAgICogZGVmaW5lIHRoZSBsZWdzIG9mIHRoZSBwZWFybC1jaGFpbi5cbiAgICogRm9ybWF0OlxuICAgKiBge1wibGVnc1wiOiBbe1wiZHVyYXRpb25cIjogMjV9LCAuLi5dfWBcbiAgICogYGR1cmF0aW9uYCBpbiBtaW51dGVzLiBEdXJhdGlvbiBvZiB0aGUgbGVnIGlzIHJlbGF0aXZlXG4gICAqIHRvIHRoZSB0b3RhbCB0cmF2ZWwgdGltZS4gRXhhbXBsZTogZGVwYXJ0dXJlIDE2OjMwLCBjaGFuZ2UgYXQgMTY6NDAsXG4gICAqIGFycml2YWwgYXQgMTc6MDAuIFNvIHRoZSBjaGFuZ2Ugc2hvdWxkIGhhdmUgYSBkdXJhdGlvbiBvZiAzMy4zMyUuXG4gICAqL1xuICBAcHJvcGVydHkoeyB0eXBlOiBBcnJheSB9KSBwdWJsaWMgYWNjZXNzb3IgbGVnczogKExlZyB8IFB0UmlkZUxlZylbXSA9IFtdO1xuXG4gIC8qKiBQcm9wIHRvIHJlbmRlciB0aGUgZGVwYXJ0dXJlIHRpbWUgLSB3aWxsIGJlIGZvcm1hdHRlZCBhcyBcIkg6bW1cIiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnZGVwYXJ0dXJlLXRpbWUnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBkZXBhcnR1cmVUaW1lOiBzdHJpbmcgPSAnJztcblxuICAvKiogUHJvcCB0byByZW5kZXIgdGhlIGFycml2YWwgdGltZSAtIHdpbGwgYmUgZm9ybWF0dGVkIGFzIFwiSDptbVwiICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhcnJpdmFsLXRpbWUnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBhcnJpdmFsVGltZTogc3RyaW5nID0gJyc7XG5cbiAgLyoqIE9wdGlvbmFsIHByb3AgdG8gcmVuZGVyIHRoZSB3YWxrIHRpbWUgKGluIG1pbnV0ZXMpIGJlZm9yZSBkZXBhcnR1cmUgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2RlcGFydHVyZS13YWxrJywgdHlwZTogTnVtYmVyIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBkZXBhcnR1cmVXYWxrOiBudW1iZXIgPSBOYU47XG5cbiAgLyoqIE9wdGlvbmFsIHByb3AgdG8gcmVuZGVyIHRoZSB3YWxrIHRpbWUgKGluIG1pbnV0ZXMpIGFmdGVyIGFycml2YWwgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2Fycml2YWwtd2FsaycsIHR5cGU6IE51bWJlciB9KVxuICBwdWJsaWMgYWNjZXNzb3IgYXJyaXZhbFdhbGs6IG51bWJlciA9IE5hTjtcblxuICAvKipcbiAgICogUGVyIGRlZmF1bHQsIHRoZSBjdXJyZW50IGxvY2F0aW9uIGhhcyBhIHB1bHNhdGluZyBhbmltYXRpb24uIFlvdSBjYW5cbiAgICogZGlzYWJsZSB0aGUgYW5pbWF0aW9uIHdpdGggdGhpcyBwcm9wZXJ0eS5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdkaXNhYmxlLWFuaW1hdGlvbicsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIGRpc2FibGVBbmltYXRpb246IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogT3B0aW9uYWwgcHJvcCB0byByZW5kZXIgd2hlZWxjaGFpci1zbWFsbCBpbnN0ZWFkIG9mIHdhbGstc21hbGwgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2ExMXktZm9vdHBhdGgnLCB0eXBlOiBCb29sZWFuIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBhMTF5Rm9vdHBhdGg6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogQSBjb25maWd1cmVkIGRhdGUgd2hpY2ggYWN0cyBhcyB0aGUgY3VycmVudCBkYXRlIGluc3RlYWQgb2YgdGhlIHJlYWwgY3VycmVudCBkYXRlLlxuICAgKiBPbmx5IHJlY29tbWVuZGVkIGZvciB0ZXN0aW5nIHB1cnBvc2VzLlxuICAgKi9cbiAgQHByb3BlcnR5KClcbiAgcHVibGljIHNldCBub3codmFsdWU6IERhdGUgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLl9ub3cgPSBkZWZhdWx0RGF0ZUFkYXB0ZXIuZ2V0VmFsaWREYXRlT3JOdWxsKGRlZmF1bHREYXRlQWRhcHRlci5kZXNlcmlhbGl6ZSh2YWx1ZSkpO1xuICB9XG4gIHB1YmxpYyBnZXQgbm93KCk6IERhdGUge1xuICAgIHJldHVybiB0aGlzLl9ub3cgPz8gbmV3IERhdGUoKTtcbiAgfVxuICBwcml2YXRlIF9ub3c6IERhdGUgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgY29uc3QgZGVwYXJ0dXJlOiBEYXRlIHwgdW5kZWZpbmVkID0gdGhpcy5kZXBhcnR1cmVUaW1lXG4gICAgICA/IHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcodGhpcy5kZXBhcnR1cmVUaW1lKVxuICAgICAgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgYXJyaXZhbDogRGF0ZSB8IHVuZGVmaW5lZCA9IHRoaXMuYXJyaXZhbFRpbWVcbiAgICAgID8gcmVtb3ZlVGltZXpvbmVGcm9tSVNPVGltZVN0cmluZyh0aGlzLmFycml2YWxUaW1lKVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICBjb25zdCB7IHJlbmRlckRlcGFydHVyZVRpbWVBdHRyaWJ1dGUsIHJlbmRlckFycml2YWxUaW1lQXR0cmlidXRlIH0gPVxuICAgICAgZ2V0RGVwYXJ0dXJlQXJyaXZhbFRpbWVBdHRyaWJ1dGUoXG4gICAgICAgIHRoaXMubGVncyxcbiAgICAgICAgdGhpcy5kZXBhcnR1cmVXYWxrIHx8IDAsXG4gICAgICAgIHRoaXMuYXJyaXZhbFdhbGsgfHwgMCxcbiAgICAgICAgdGhpcy5fbGFuZ3VhZ2UuY3VycmVudCxcbiAgICAgICAgdGhpcy5hMTF5Rm9vdHBhdGgsXG4gICAgICApO1xuXG4gICAgY29uc3QgcmlkZUxlZ3MgPSB0aGlzLmxlZ3M/LmZpbHRlcigobGVnKSA9PiBpc1JpZGVMZWcobGVnKSk7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXBlYXJsLWNoYWluX190aW1lXCI+XG4gICAgICAgICR7cmVuZGVyRGVwYXJ0dXJlVGltZUF0dHJpYnV0ZSgpfVxuICAgICAgICAke2RlcGFydHVyZVxuICAgICAgICAgID8gaHRtbGA8dGltZSBjbGFzcz1cInNiYi1wZWFybC1jaGFpbl9fdGltZS10aW1lXCIgZGF0ZXRpbWU9JHt0aGlzLmRlcGFydHVyZVRpbWUhfT5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItc2NyZWVuLXJlYWRlci1vbmx5XCJcbiAgICAgICAgICAgICAgICA+JHtpMThuRGVwYXJ0dXJlW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfTombmJzcDs8L3NwYW5cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAke2Zvcm1hdChkZXBhcnR1cmUsICdISDptbScpfVxuICAgICAgICAgICAgPC90aW1lPmBcbiAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICR7cmlkZUxlZ3M/Lmxlbmd0aCA+IDFcbiAgICAgICAgICA/IGh0bWxgPHNwYW4gY2xhc3M9XCJzYmItc2NyZWVuLXJlYWRlci1vbmx5XCIgcm9sZT1cInBhcmFncmFwaFwiPlxuICAgICAgICAgICAgICAke3JpZGVMZWdzPy5sZW5ndGggLSAxfSAke2kxOG5UcmFuc2ZlclByb2NlZHVyZXNbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19XG4gICAgICAgICAgICA8L3NwYW4+YFxuICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgPHNiYi1wZWFybC1jaGFpblxuICAgICAgICAgIGNsYXNzPVwic2JiLXBlYXJsLWNoYWluX190aW1lLWNoYWluXCJcbiAgICAgICAgICAubGVncz0ke3RoaXMubGVnc31cbiAgICAgICAgICAuZGlzYWJsZUFuaW1hdGlvbj0ke3RoaXMuZGlzYWJsZUFuaW1hdGlvbn1cbiAgICAgICAgICAubm93PSR7dGhpcy5ub3d9XG4gICAgICAgID48L3NiYi1wZWFybC1jaGFpbj5cbiAgICAgICAgJHthcnJpdmFsXG4gICAgICAgICAgPyBodG1sYDx0aW1lIGNsYXNzPVwic2JiLXBlYXJsLWNoYWluX190aW1lLXRpbWVcIiBkYXRldGltZT0ke3RoaXMuYXJyaXZhbFRpbWUhfT5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItc2NyZWVuLXJlYWRlci1vbmx5XCJcbiAgICAgICAgICAgICAgICA+JHtpMThuQXJyaXZhbFt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX06Jm5ic3A7PC9zcGFuXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgJHtmb3JtYXQoYXJyaXZhbCwgJ0hIOm1tJyl9XG4gICAgICAgICAgICA8L3RpbWU+YFxuICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgJHtyZW5kZXJBcnJpdmFsVGltZUF0dHJpYnV0ZSgpfVxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXBlYXJsLWNoYWluLXRpbWUnOiBTYmJQZWFybENoYWluVGltZUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUMwQmEsa0NBQXdCO21CQUFTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7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
|