@sbb-esta/lyne-elements-experimental 2.6.0 → 2.7.1
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/core/datetime/date-helper.js +191 -0
- package/core/datetime.d.ts +3 -0
- package/core/datetime.d.ts.map +1 -1
- package/core/datetime.js +3 -189
- package/core/timetable/access-leg-helper.js +94 -0
- package/core/timetable/timetable-helper.js +13 -0
- package/core/timetable/timetable-properties.js +1 -0
- package/core/timetable.d.ts +3 -0
- package/core/timetable.d.ts.map +1 -1
- package/core/timetable.js +6 -102
- package/custom-elements.json +598 -439
- package/development/core/datetime/date-helper.js +285 -0
- package/development/core/datetime.d.ts +3 -0
- package/development/core/datetime.d.ts.map +1 -1
- package/development/core/datetime.js +2 -281
- package/development/core/timetable/access-leg-helper.js +128 -0
- package/development/core/timetable/timetable-helper.js +21 -0
- package/development/core/timetable/timetable-properties.js +2 -0
- package/development/core/timetable.d.ts +3 -0
- package/development/core/timetable.d.ts.map +1 -1
- package/development/core/timetable.js +3 -139
- package/development/{differenceInMinutes-Cmyza6nm.js → differenceInMinutes-CHSyWiQs.js} +2 -2
- package/development/{format-BU7bjY-L.js → format-D0-yhzi4.js} +3 -3
- package/development/{isValid-DO_pHwcW.js → isValid-Bo4R7iA7.js} +2 -2
- package/development/journey-summary/journey-summary.js +297 -0
- package/development/journey-summary.d.ts +3 -0
- package/development/journey-summary.d.ts.map +1 -1
- package/development/journey-summary.js +2 -294
- package/development/pearl-chain/pearl-chain.js +649 -0
- package/development/pearl-chain-time/pearl-chain-time.js +315 -0
- package/development/pearl-chain-time.d.ts +3 -0
- package/development/pearl-chain-time.d.ts.map +1 -1
- package/development/pearl-chain-time.js +2 -312
- package/development/pearl-chain-vertical/pearl-chain-vertical.js +45 -0
- package/development/pearl-chain-vertical-item/pearl-chain-vertical-item.js +395 -0
- package/development/pearl-chain-vertical-item.d.ts +3 -0
- package/development/pearl-chain-vertical-item.d.ts.map +1 -1
- package/development/pearl-chain-vertical-item.js +2 -392
- package/development/pearl-chain-vertical.d.ts +3 -0
- package/development/pearl-chain-vertical.d.ts.map +1 -1
- package/development/pearl-chain-vertical.js +2 -42
- package/development/pearl-chain.d.ts +3 -0
- package/development/pearl-chain.d.ts.map +1 -1
- package/development/pearl-chain.js +2 -646
- package/development/timetable-duration/timetable-duration.js +119 -0
- package/development/timetable-duration.d.ts +3 -0
- package/development/timetable-duration.d.ts.map +1 -1
- package/development/timetable-duration.js +2 -116
- package/development/timetable-row/timetable-row.js +820 -0
- package/development/timetable-row.d.ts +3 -0
- package/development/timetable-row.d.ts.map +1 -1
- package/development/timetable-row.js +2 -810
- package/development/{toDate-B6IBgPYH.js → toDate-D_Vjps95.js} +5 -5
- package/{differenceInMinutes-BI2zjbtS.js → differenceInMinutes-BMqUZdhj.js} +1 -1
- package/{format-CUYwLzoN.js → format-Dg8rkk7h.js} +2 -2
- package/index.d.ts +7 -7
- package/index.js +7 -7
- package/{isValid-mroh13Xp.js → isValid-DJ69OMZJ.js} +6 -6
- package/journey-summary/journey-summary.js +190 -0
- package/journey-summary.d.ts +3 -0
- package/journey-summary.d.ts.map +1 -1
- package/journey-summary.js +2 -188
- package/package.json +3 -3
- package/pearl-chain/pearl-chain.js +177 -0
- package/pearl-chain-time/pearl-chain-time.js +153 -0
- package/pearl-chain-time.d.ts +3 -0
- package/pearl-chain-time.d.ts.map +1 -1
- package/pearl-chain-time.js +2 -151
- package/pearl-chain-vertical/pearl-chain-vertical.js +23 -0
- package/pearl-chain-vertical-item/pearl-chain-vertical-item.js +71 -0
- package/pearl-chain-vertical-item.d.ts +3 -0
- package/pearl-chain-vertical-item.d.ts.map +1 -1
- package/pearl-chain-vertical-item.js +2 -69
- package/pearl-chain-vertical.d.ts +3 -0
- package/pearl-chain-vertical.d.ts.map +1 -1
- package/pearl-chain-vertical.js +2 -21
- package/pearl-chain.d.ts +3 -0
- package/pearl-chain.d.ts.map +1 -1
- package/pearl-chain.js +2 -175
- package/timetable-duration/timetable-duration.js +55 -0
- package/timetable-duration.d.ts +3 -0
- package/timetable-duration.d.ts.map +1 -1
- package/timetable-duration.js +2 -53
- package/timetable-row/timetable-row.js +462 -0
- package/timetable-row.d.ts +3 -0
- package/timetable-row.d.ts.map +1 -1
- package/timetable-row.js +9 -460
- package/{toDate-DQg4ZFnf.js → toDate-BCXKL_wM.js} +4 -4
- package/development/pearl-chain/pearl-chain.sample-data.d.ts +0 -141
- package/development/pearl-chain/pearl-chain.sample-data.d.ts.map +0 -1
- package/development/timetable-duration/timetable-duration.sample-data.d.ts +0 -6
- package/development/timetable-duration/timetable-duration.sample-data.d.ts.map +0 -1
- package/development/timetable-row/timetable-row.sample-data.d.ts +0 -25
- package/development/timetable-row/timetable-row.sample-data.d.ts.map +0 -1
- package/pearl-chain/pearl-chain.sample-data.d.ts +0 -141
- package/pearl-chain/pearl-chain.sample-data.d.ts.map +0 -1
- package/timetable-duration/timetable-duration.sample-data.d.ts +0 -6
- package/timetable-duration/timetable-duration.sample-data.d.ts.map +0 -1
- package/timetable-row/timetable-row.sample-data.d.ts +0 -25
- package/timetable-row/timetable-row.sample-data.d.ts.map +0 -1
|
@@ -1,145 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import "@sbb-esta/lyne-elements/icon.js";
|
|
4
|
-
const isRideLeg = (leg) => {
|
|
5
|
-
return (leg == null ? void 0 : leg.__typename) === "PTRideLeg";
|
|
6
|
-
};
|
|
7
|
-
const isConnectionLeg = (leg) => {
|
|
8
|
-
return (leg == null ? void 0 : leg.__typename) === "PTConnectionLeg";
|
|
9
|
-
};
|
|
10
|
-
const extractTimeAndStringFromNoticeText = (notice) => {
|
|
11
|
-
var _a, _b, _c, _d, _e, _f;
|
|
12
|
-
const firstIndex = ((_a = notice == null ? void 0 : notice.text) == null ? void 0 : _a.template) && notice.text.template.indexOf("(") + 1;
|
|
13
|
-
const noticeDuration = (_d = (_b = notice == null ? void 0 : notice.text) == null ? void 0 : _b.template) == null ? void 0 : _d.substring(firstIndex || 0, (_c = notice == null ? void 0 : notice.text) == null ? void 0 : _c.template.indexOf(")"));
|
|
14
|
-
return {
|
|
15
|
-
duration: noticeDuration && +noticeDuration.substring(0, noticeDuration.length - 1) || 0,
|
|
16
|
-
text: ((_f = (_e = notice == null ? void 0 : notice.text) == null ? void 0 : _e.template) == null ? void 0 : _f.split("(")[0]) || ""
|
|
17
|
-
};
|
|
18
|
-
};
|
|
19
|
-
function getPTConnectionAttribute(leg, connectionLegNotice) {
|
|
20
|
-
var _a, _b;
|
|
21
|
-
const connectionFirstLeg = isConnectionLeg(leg) ? leg : null;
|
|
22
|
-
const connectionFirstLegNotice = connectionFirstLeg ? (_a = connectionFirstLeg == null ? void 0 : connectionFirstLeg.notices) == null ? void 0 : _a.filter((notice) => connectionLegNotice.includes(notice.name))[0] : null;
|
|
23
|
-
return connectionFirstLegNotice ? {
|
|
24
|
-
duration: (connectionFirstLeg == null ? void 0 : connectionFirstLeg.duration) || 0,
|
|
25
|
-
text: ((_b = connectionFirstLegNotice == null ? void 0 : connectionFirstLegNotice.text) == null ? void 0 : _b.template) || "",
|
|
26
|
-
icon: "walk-small"
|
|
27
|
-
} : null;
|
|
28
|
-
}
|
|
29
|
-
function getFirstExtendedLegAttribute(leg, departureWalk, a11yFootpath, currentLanguage) {
|
|
30
|
-
var _a, _b, _c;
|
|
31
|
-
const extendedFirstLeg = isRideLeg(leg) ? (_b = (_a = leg == null ? void 0 : leg.serviceJourney) == null ? void 0 : _a.notices) == null ? void 0 : _b.filter((notice) => ["CI"].includes(notice.name))[0] : null;
|
|
32
|
-
const extractTimeAndString = extendedFirstLeg && extractTimeAndStringFromNoticeText(extendedFirstLeg);
|
|
33
|
-
return extendedFirstLeg ? {
|
|
34
|
-
duration: ((extractTimeAndString == null ? void 0 : extractTimeAndString.duration) || 0) + (departureWalk || 0),
|
|
35
|
-
text: a11yFootpath ? i18nWalkingDistanceDeparture[currentLanguage] : (extractTimeAndString == null ? void 0 : extractTimeAndString.text) || "",
|
|
36
|
-
icon: a11yFootpath ? "wheelchair-small" : `sa-${(_c = extendedFirstLeg == null ? void 0 : extendedFirstLeg.name) == null ? void 0 : _c.toLowerCase()}`
|
|
37
|
-
} : null;
|
|
38
|
-
}
|
|
39
|
-
function getLastExtendedLegAttribute(leg, arrivalWalk, a11yFootpath, currentLanguage) {
|
|
40
|
-
var _a, _b, _c;
|
|
41
|
-
const extendedLastLeg = isRideLeg(leg) ? (_b = (_a = leg == null ? void 0 : leg.serviceJourney) == null ? void 0 : _a.notices) == null ? void 0 : _b.filter((notice) => ["CO"].includes(notice.name))[0] : null;
|
|
42
|
-
const extractTimeAndString = extendedLastLeg && extractTimeAndStringFromNoticeText(extendedLastLeg);
|
|
43
|
-
return extendedLastLeg ? {
|
|
44
|
-
duration: ((extractTimeAndString == null ? void 0 : extractTimeAndString.duration) || 0) + (arrivalWalk || 0),
|
|
45
|
-
text: a11yFootpath ? i18nWalkingDistanceArrival[currentLanguage] : (extractTimeAndString == null ? void 0 : extractTimeAndString.text) || "",
|
|
46
|
-
icon: a11yFootpath ? "wheelchair-small" : `sa-${(_c = extendedLastLeg == null ? void 0 : extendedLastLeg.name) == null ? void 0 : _c.toLowerCase()}`
|
|
47
|
-
} : null;
|
|
48
|
-
}
|
|
49
|
-
function renderTransferTime(duration, icon, currentLanguage, label, type) {
|
|
50
|
-
return html`
|
|
51
|
-
<span class="sbb-pearl-chain__time-transfer sbb-pearl-chain__time-transfer--${icon}-${type}">
|
|
52
|
-
<sbb-icon name=${icon}></sbb-icon>
|
|
53
|
-
<time datetime=${duration + "M"}>
|
|
54
|
-
<span class="sbb-screen-reader-only">
|
|
55
|
-
${!label && type ? type === "departure" ? i18nWalkingDistanceDeparture[currentLanguage] : i18nWalkingDistanceArrival[currentLanguage] : nothing}
|
|
56
|
-
${label ? html`<span>${label}</span>` : nothing}
|
|
57
|
-
</span>
|
|
58
|
-
${duration}
|
|
59
|
-
<span class="sbb-pearl-chain__time-walktime-prime-symbol" aria-hidden="true">'</span>
|
|
60
|
-
<span class="sbb-screen-reader-only">min</span>
|
|
61
|
-
</time>
|
|
62
|
-
</span>
|
|
63
|
-
`;
|
|
64
|
-
}
|
|
65
|
-
function renderWalkTime(duration, label, variant, icon) {
|
|
66
|
-
return html`
|
|
67
|
-
<span class="sbb-pearl-chain__time-walktime sbb-pearl-chain__time-walktime--${icon}-${variant}">
|
|
68
|
-
<sbb-icon name=${icon}></sbb-icon>
|
|
69
|
-
<time datetime=${duration + "M"}>
|
|
70
|
-
<span class="sbb-screen-reader-only">${label}</span>
|
|
71
|
-
${duration}
|
|
72
|
-
<span class="sbb-pearl-chain__time-walktime-prime-symbol" aria-hidden="true">'</span>
|
|
73
|
-
</time>
|
|
74
|
-
</span>
|
|
75
|
-
`;
|
|
76
|
-
}
|
|
77
|
-
function getDepartureArrivalTimeAttribute(legs, departureWalk, arrivalWalk, currentLanguage, a11yFootpath) {
|
|
78
|
-
const connectionRideLeg = legs && legs.filter((leg) => isRideLeg(leg) || isConnectionLeg(leg))[0];
|
|
79
|
-
const connectionLegNotice = ["YM", "YB", "Y", "YT"];
|
|
80
|
-
const connectionFirstLeg = getPTConnectionAttribute(connectionRideLeg, connectionLegNotice);
|
|
81
|
-
const extendedFirstLeg = getFirstExtendedLegAttribute(connectionRideLeg, departureWalk, a11yFootpath, currentLanguage);
|
|
82
|
-
const departureWalkAttribute = departureWalk ? {
|
|
83
|
-
text: i18nWalkingDistanceDeparture[currentLanguage],
|
|
84
|
-
duration: departureWalk,
|
|
85
|
-
icon: a11yFootpath ? "wheelchair-small" : "walk-small"
|
|
86
|
-
} : null;
|
|
87
|
-
const getDepartureType = () => {
|
|
88
|
-
if (connectionFirstLeg) {
|
|
89
|
-
return connectionFirstLeg;
|
|
90
|
-
} else if (departureWalkAttribute && !extendedFirstLeg && !connectionFirstLeg) {
|
|
91
|
-
return departureWalkAttribute;
|
|
92
|
-
} else if (extendedFirstLeg) {
|
|
93
|
-
return extendedFirstLeg;
|
|
94
|
-
} else {
|
|
95
|
-
return null;
|
|
96
|
-
}
|
|
97
|
-
};
|
|
98
|
-
function renderDepartureTimeAttribute() {
|
|
99
|
-
return html`
|
|
100
|
-
${connectionFirstLeg ? renderWalkTime(connectionFirstLeg.duration, connectionFirstLeg.text, "left", connectionFirstLeg.icon) : nothing}
|
|
101
|
-
${departureWalkAttribute && !extendedFirstLeg && !connectionFirstLeg ? renderWalkTime(departureWalkAttribute.duration, departureWalkAttribute.text, "left", departureWalkAttribute.icon) : nothing}
|
|
102
|
-
${extendedFirstLeg ? a11yFootpath ? renderWalkTime(extendedFirstLeg.duration, extendedFirstLeg.text, "left", extendedFirstLeg.icon) : renderTransferTime(extendedFirstLeg.duration, extendedFirstLeg.icon, currentLanguage, extendedFirstLeg.text, "departure") : nothing}
|
|
103
|
-
`;
|
|
104
|
-
}
|
|
105
|
-
const lastLeg = legs && legs[legs.length - 1];
|
|
106
|
-
const lastConnectionRideLeg = (isConnectionLeg(lastLeg) || isRideLeg(lastLeg)) && lastLeg;
|
|
107
|
-
const connectionLastLeg = lastConnectionRideLeg && getPTConnectionAttribute(lastConnectionRideLeg, connectionLegNotice);
|
|
108
|
-
const extendedLastLeg = lastConnectionRideLeg && getLastExtendedLegAttribute(lastConnectionRideLeg, arrivalWalk, a11yFootpath, currentLanguage);
|
|
109
|
-
const arrivalWalkAttribute = arrivalWalk ? {
|
|
110
|
-
text: i18nWalkingDistanceArrival[currentLanguage],
|
|
111
|
-
duration: arrivalWalk,
|
|
112
|
-
icon: a11yFootpath ? "wheelchair-small" : "walk-small"
|
|
113
|
-
} : null;
|
|
114
|
-
const getArrivalType = () => {
|
|
115
|
-
if (connectionLastLeg) {
|
|
116
|
-
return connectionLastLeg;
|
|
117
|
-
} else if (arrivalWalkAttribute && !extendedLastLeg && !connectionLastLeg) {
|
|
118
|
-
return arrivalWalkAttribute;
|
|
119
|
-
} else if (extendedLastLeg) {
|
|
120
|
-
return extendedLastLeg;
|
|
121
|
-
} else {
|
|
122
|
-
return null;
|
|
123
|
-
}
|
|
124
|
-
};
|
|
125
|
-
function renderArrivalTimeAttribute() {
|
|
126
|
-
return html`
|
|
127
|
-
${connectionLastLeg ? renderWalkTime(connectionLastLeg.duration, connectionLastLeg.text, "right", connectionLastLeg.icon) : nothing}
|
|
128
|
-
${arrivalWalkAttribute && !extendedLastLeg && !connectionLastLeg ? renderWalkTime(arrivalWalkAttribute.duration, arrivalWalkAttribute.text, "right", arrivalWalkAttribute.icon) : nothing}
|
|
129
|
-
${extendedLastLeg ? a11yFootpath ? renderWalkTime(extendedLastLeg.duration, extendedLastLeg.text, "right", extendedLastLeg.icon) : renderTransferTime(extendedLastLeg.duration, extendedLastLeg.icon, currentLanguage, extendedLastLeg.text, "arrival") : nothing}
|
|
130
|
-
`;
|
|
131
|
-
}
|
|
132
|
-
return {
|
|
133
|
-
renderDepartureTimeAttribute,
|
|
134
|
-
renderArrivalTimeAttribute,
|
|
135
|
-
departureTimeAttribute: getDepartureType(),
|
|
136
|
-
arrivalTimeAttribute: getArrivalType()
|
|
137
|
-
};
|
|
138
|
-
}
|
|
1
|
+
import { getDepartureArrivalTimeAttribute } from "./timetable/access-leg-helper.js";
|
|
2
|
+
import { extractTimeAndStringFromNoticeText, isConnectionLeg, isRideLeg } from "./timetable/timetable-helper.js";
|
|
139
3
|
export {
|
|
140
4
|
extractTimeAndStringFromNoticeText,
|
|
141
5
|
getDepartureArrivalTimeAttribute,
|
|
142
6
|
isConnectionLeg,
|
|
143
7
|
isRideLeg
|
|
144
8
|
};
|
|
145
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXRhYmxlLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMtZXhwZXJpbWVudGFsL2NvcmUvdGltZXRhYmxlL3RpbWV0YWJsZS1oZWxwZXIudHMiLCIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMtZXhwZXJpbWVudGFsL2NvcmUvdGltZXRhYmxlL2FjY2Vzcy1sZWctaGVscGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvbiAqL1xuXG5pbXBvcnQgdHlwZSB7IExlZywgTm90aWNlIH0gZnJvbSAnLi90aW1ldGFibGUtcHJvcGVydGllcy5qcyc7XG5cbmV4cG9ydCBjb25zdCBpc1JpZGVMZWcgPSAobGVnOiBhbnkpOiBsZWcgaXMgRXh0cmFjdDxMZWcsIHsgX190eXBlbmFtZTogJ1BUUmlkZUxlZycgfT4gPT4ge1xuICByZXR1cm4gbGVnPy5fX3R5cGVuYW1lID09PSAnUFRSaWRlTGVnJztcbn07XG5cbmV4cG9ydCBjb25zdCBpc0Nvbm5lY3Rpb25MZWcgPSAoXG4gIGxlZzogYW55LFxuKTogbGVnIGlzIEV4dHJhY3Q8TGVnLCB7IF9fdHlwZW5hbWU6ICdQVENvbm5lY3Rpb25MZWcnIH0+ID0+IHtcbiAgcmV0dXJuIGxlZz8uX190eXBlbmFtZSA9PT0gJ1BUQ29ubmVjdGlvbkxlZyc7XG59O1xuXG5leHBvcnQgY29uc3QgZXh0cmFjdFRpbWVBbmRTdHJpbmdGcm9tTm90aWNlVGV4dCA9IChcbiAgbm90aWNlPzogTm90aWNlLFxuKTogeyBkdXJhdGlvbjogbnVtYmVyOyB0ZXh0OiBzdHJpbmcgfSA9PiB7XG4gIGNvbnN0IGZpcnN0SW5kZXggPSBub3RpY2U/LnRleHQ/LnRlbXBsYXRlICYmIG5vdGljZS50ZXh0LnRlbXBsYXRlLmluZGV4T2YoJygnKSArIDE7XG4gIGNvbnN0IG5vdGljZUR1cmF0aW9uID0gbm90aWNlPy50ZXh0Py50ZW1wbGF0ZT8uc3Vic3RyaW5nKFxuICAgIGZpcnN0SW5kZXggfHwgMCxcbiAgICBub3RpY2U/LnRleHQ/LnRlbXBsYXRlLmluZGV4T2YoJyknKSxcbiAgKTtcblxuICByZXR1cm4ge1xuICAgIGR1cmF0aW9uOiAobm90aWNlRHVyYXRpb24gJiYgK25vdGljZUR1cmF0aW9uLnN1YnN0cmluZygwLCBub3RpY2VEdXJhdGlvbi5sZW5ndGggLSAxKSkgfHwgMCxcbiAgICB0ZXh0OiBub3RpY2U/LnRleHQ/LnRlbXBsYXRlPy5zcGxpdCgnKCcpWzBdIHx8ICcnLFxuICB9O1xufTtcbiIsIi8vIFRoaXMgaGVscGVyIGZpbGUgY29udGFpbnMgc2V2ZXJhbCBmdW5jdGlvbnMgcmVsYXRlZCB0byBhY2Nlc3NpbmcgYXR0cmlidXRlcyBmb3IgdGhlIGNvbm5lY3Rpb25zLlxuXG5pbXBvcnQge1xuICBpMThuV2Fsa2luZ0Rpc3RhbmNlQXJyaXZhbCxcbiAgaTE4bldhbGtpbmdEaXN0YW5jZURlcGFydHVyZSxcbn0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9pMThuLmpzJztcbmltcG9ydCB0eXBlIHsgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgbm90aGluZyB9IGZyb20gJ2xpdCc7XG5cbmltcG9ydCB7XG4gIGV4dHJhY3RUaW1lQW5kU3RyaW5nRnJvbU5vdGljZVRleHQsXG4gIGlzQ29ubmVjdGlvbkxlZyxcbiAgaXNSaWRlTGVnLFxufSBmcm9tICcuL3RpbWV0YWJsZS1oZWxwZXIuanMnO1xuaW1wb3J0IHR5cGUgeyBMZWcsIFB0Q29ubmVjdGlvbkxlZywgUHRSaWRlTGVnIH0gZnJvbSAnLi90aW1ldGFibGUtcHJvcGVydGllcy5qcyc7XG5cbmltcG9ydCAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvaWNvbi5qcyc7XG5cbmludGVyZmFjZSBJQWNjZXNzQXR0cmlidXRlIHtcbiAgZHVyYXRpb246IG51bWJlcjtcbiAgdGV4dDogc3RyaW5nO1xuICBpY29uOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQHJldHVybnMgdGhlIGF0dHJpYnV0ZSBvZiBhIENvbm5lY3Rpb25MZWdcbiAqL1xuZnVuY3Rpb24gZ2V0UFRDb25uZWN0aW9uQXR0cmlidXRlKFxuICBsZWc6IFB0UmlkZUxlZyB8IFB0Q29ubmVjdGlvbkxlZyxcbiAgY29ubmVjdGlvbkxlZ05vdGljZTogc3RyaW5nW10sXG4pOiBJQWNjZXNzQXR0cmlidXRlIHwgbnVsbCB7XG4gIGNvbnN0IGNvbm5lY3Rpb25GaXJzdExlZyA9IGlzQ29ubmVjdGlvbkxlZyhsZWcpID8gKGxlZyBhcyBQdENvbm5lY3Rpb25MZWcpIDogbnVsbDtcblxuICBjb25zdCBjb25uZWN0aW9uRmlyc3RMZWdOb3RpY2UgPSBjb25uZWN0aW9uRmlyc3RMZWdcbiAgICA/IGNvbm5lY3Rpb25GaXJzdExlZz8ubm90aWNlcz8uZmlsdGVyKChub3RpY2UpID0+IGNvbm5lY3Rpb25MZWdOb3RpY2UuaW5jbHVkZXMobm90aWNlLm5hbWUpKVswXVxuICAgIDogbnVsbDtcblxuICByZXR1cm4gY29ubmVjdGlvbkZpcnN0TGVnTm90aWNlXG4gICAgPyB7XG4gICAgICAgIGR1cmF0aW9uOiBjb25uZWN0aW9uRmlyc3RMZWc/LmR1cmF0aW9uIHx8IDAsXG4gICAgICAgIHRleHQ6IGNvbm5lY3Rpb25GaXJzdExlZ05vdGljZT8udGV4dD8udGVtcGxhdGUgfHwgJycsXG4gICAgICAgIGljb246ICd3YWxrLXNtYWxsJyxcbiAgICAgIH1cbiAgICA6IG51bGw7XG59XG5cbi8qKlxuICogQHJldHVybnMgdGhlIGV4dGVuZGVkIGVudGVyIGF0dHJpYnV0ZSBvZiB0aGUgUFRSaWRlTGVnXG4gKi9cbmZ1bmN0aW9uIGdldEZpcnN0RXh0ZW5kZWRMZWdBdHRyaWJ1dGUoXG4gIGxlZzogUHRSaWRlTGVnIHwgUHRDb25uZWN0aW9uTGVnLFxuICBkZXBhcnR1cmVXYWxrOiBudW1iZXIsXG4gIGExMXlGb290cGF0aDogYm9vbGVhbiB8IHVuZGVmaW5lZCxcbiAgY3VycmVudExhbmd1YWdlOiBzdHJpbmcsXG4pOiBJQWNjZXNzQXR0cmlidXRlIHwgbnVsbCB7XG4gIC8vIEV4dGVuZGVkIGVudGVyXG4gIGNvbnN0IGV4dGVuZGVkRmlyc3RMZWcgPSBpc1JpZGVMZWcobGVnKVxuICAgID8gKGxlZyBhcyBQdFJpZGVMZWcpPy5zZXJ2aWNlSm91cm5leT8ubm90aWNlcz8uZmlsdGVyKChub3RpY2UpID0+XG4gICAgICAgIFsnQ0knXS5pbmNsdWRlcyhub3RpY2UubmFtZSksXG4gICAgICApWzBdXG4gICAgOiBudWxsO1xuXG4gIGNvbnN0IGV4dHJhY3RUaW1lQW5kU3RyaW5nID1cbiAgICBleHRlbmRlZEZpcnN0TGVnICYmIGV4dHJhY3RUaW1lQW5kU3RyaW5nRnJvbU5vdGljZVRleHQoZXh0ZW5kZWRGaXJzdExlZyk7XG5cbiAgcmV0dXJuIGV4dGVuZGVkRmlyc3RMZWdcbiAgICA/IHtcbiAgICAgICAgZHVyYXRpb246IChleHRyYWN0VGltZUFuZFN0cmluZz8uZHVyYXRpb24gfHwgMCkgKyAoZGVwYXJ0dXJlV2FsayB8fCAwKSxcbiAgICAgICAgdGV4dDogYTExeUZvb3RwYXRoXG4gICAgICAgICAgPyBpMThuV2Fsa2luZ0Rpc3RhbmNlRGVwYXJ0dXJlW2N1cnJlbnRMYW5ndWFnZV1cbiAgICAgICAgICA6IGV4dHJhY3RUaW1lQW5kU3RyaW5nPy50ZXh0IHx8ICcnLFxuICAgICAgICBpY29uOiBhMTF5Rm9vdHBhdGggPyAnd2hlZWxjaGFpci1zbWFsbCcgOiBgc2EtJHtleHRlbmRlZEZpcnN0TGVnPy5uYW1lPy50b0xvd2VyQ2FzZSgpfWAsXG4gICAgICB9XG4gICAgOiBudWxsO1xufVxuXG4vKipcbiAqIEByZXR1cm5zIHRoZSBleHRlbmRlZCBleGl0IGF0dHJpYnV0ZSBvZiB0aGUgUFRSaWRlTGVnXG4gKi9cbmZ1bmN0aW9uIGdldExhc3RFeHRlbmRlZExlZ0F0dHJpYnV0ZShcbiAgbGVnOiBMZWcsXG4gIGFycml2YWxXYWxrOiBudW1iZXIsXG4gIGExMXlGb290cGF0aDogYm9vbGVhbiB8IHVuZGVmaW5lZCxcbiAgY3VycmVudExhbmd1YWdlOiBzdHJpbmcsXG4pOiBJQWNjZXNzQXR0cmlidXRlIHwgbnVsbCB7XG4gIC8vIEV4dGVuZGVkIGV4aXRcbiAgY29uc3QgZXh0ZW5kZWRMYXN0TGVnID0gaXNSaWRlTGVnKGxlZylcbiAgICA/IChsZWcgYXMgUHRSaWRlTGVnKT8uc2VydmljZUpvdXJuZXk/Lm5vdGljZXM/LmZpbHRlcigobm90aWNlKSA9PlxuICAgICAgICBbJ0NPJ10uaW5jbHVkZXMobm90aWNlLm5hbWUpLFxuICAgICAgKVswXVxuICAgIDogbnVsbDtcblxuICBjb25zdCBleHRyYWN0VGltZUFuZFN0cmluZyA9XG4gICAgZXh0ZW5kZWRMYXN0TGVnICYmIGV4dHJhY3RUaW1lQW5kU3RyaW5nRnJvbU5vdGljZVRleHQoZXh0ZW5kZWRMYXN0TGVnKTtcblxuICByZXR1cm4gZXh0ZW5kZWRMYXN0TGVnXG4gICAgPyB7XG4gICAgICAgIGR1cmF0aW9uOiAoZXh0cmFjdFRpbWVBbmRTdHJpbmc/LmR1cmF0aW9uIHx8IDApICsgKGFycml2YWxXYWxrIHx8IDApLFxuICAgICAgICB0ZXh0OiBhMTF5Rm9vdHBhdGhcbiAgICAgICAgICA/IGkxOG5XYWxraW5nRGlzdGFuY2VBcnJpdmFsW2N1cnJlbnRMYW5ndWFnZV1cbiAgICAgICAgICA6IGV4dHJhY3RUaW1lQW5kU3RyaW5nPy50ZXh0IHx8ICcnLFxuICAgICAgICBpY29uOiBhMTF5Rm9vdHBhdGggPyAnd2hlZWxjaGFpci1zbWFsbCcgOiBgc2EtJHtleHRlbmRlZExhc3RMZWc/Lm5hbWU/LnRvTG93ZXJDYXNlKCl9YCxcbiAgICAgIH1cbiAgICA6IG51bGw7XG59XG5cbi8qKlxuICogcmVuZGVycyB0aGUgZXh0ZW5kZWQgZXhpdC9lbnRlciBpY29uIHdpdGggdGhlIGR1cmF0aW9uXG4gKi9cbmZ1bmN0aW9uIHJlbmRlclRyYW5zZmVyVGltZShcbiAgZHVyYXRpb246IG51bWJlciB8IHN0cmluZyxcbiAgaWNvbjogc3RyaW5nLFxuICBjdXJyZW50TGFuZ3VhZ2U6IHN0cmluZyxcbiAgbGFiZWw/OiBzdHJpbmcsXG4gIHR5cGU/OiAnZGVwYXJ0dXJlJyB8ICdhcnJpdmFsJyxcbik6IFRlbXBsYXRlUmVzdWx0IHtcbiAgcmV0dXJuIGh0bWxgXG4gICAgPHNwYW4gY2xhc3M9XCJzYmItcGVhcmwtY2hhaW5fX3RpbWUtdHJhbnNmZXIgc2JiLXBlYXJsLWNoYWluX190aW1lLXRyYW5zZmVyLS0ke2ljb259LSR7dHlwZX1cIj5cbiAgICAgIDxzYmItaWNvbiBuYW1lPSR7aWNvbn0+PC9zYmItaWNvbj5cbiAgICAgIDx0aW1lIGRhdGV0aW1lPSR7ZHVyYXRpb24gKyAnTSd9PlxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIj5cbiAgICAgICAgICAkeyFsYWJlbCAmJiB0eXBlXG4gICAgICAgICAgICA/IHR5cGUgPT09ICdkZXBhcnR1cmUnXG4gICAgICAgICAgICAgID8gaTE4bldhbGtpbmdEaXN0YW5jZURlcGFydHVyZVtjdXJyZW50TGFuZ3VhZ2VdXG4gICAgICAgICAgICAgIDogaTE4bldhbGtpbmdEaXN0YW5jZUFycml2YWxbY3VycmVudExhbmd1YWdlXVxuICAgICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICAgICR7bGFiZWwgPyBodG1sYDxzcGFuPiR7bGFiZWx9PC9zcGFuPmAgOiBub3RoaW5nfSZuYnNwO1xuICAgICAgICA8L3NwYW4+XG4gICAgICAgICR7ZHVyYXRpb259XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXBlYXJsLWNoYWluX190aW1lLXdhbGt0aW1lLXByaW1lLXN5bWJvbFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPic8L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXNjcmVlbi1yZWFkZXItb25seVwiPm1pbjwvc3Bhbj5cbiAgICAgIDwvdGltZT5cbiAgICA8L3NwYW4+XG4gIGA7XG59XG5cbi8qKlxuICogcmVuZGVycyBhIHdhbGstdGltZSBpY29uIHdpdGggdGhlIHdhbGsgZHVyYXRpb25cbiAqL1xuZnVuY3Rpb24gcmVuZGVyV2Fsa1RpbWUoXG4gIGR1cmF0aW9uOiBudW1iZXIgfCBzdHJpbmcsXG4gIGxhYmVsOiBzdHJpbmcsXG4gIHZhcmlhbnQ6ICdsZWZ0JyB8ICdyaWdodCcsXG4gIGljb246IHN0cmluZyxcbik6IFRlbXBsYXRlUmVzdWx0IHtcbiAgcmV0dXJuIGh0bWxgXG4gICAgPHNwYW4gY2xhc3M9XCJzYmItcGVhcmwtY2hhaW5fX3RpbWUtd2Fsa3RpbWUgc2JiLXBlYXJsLWNoYWluX190aW1lLXdhbGt0aW1lLS0ke2ljb259LSR7dmFyaWFudH1cIj5cbiAgICAgIDxzYmItaWNvbiBuYW1lPSR7aWNvbn0+PC9zYmItaWNvbj5cbiAgICAgIDx0aW1lIGRhdGV0aW1lPSR7ZHVyYXRpb24gKyAnTSd9PlxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIj4ke2xhYmVsfTwvc3Bhbj5cbiAgICAgICAgJHtkdXJhdGlvbn1cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItcGVhcmwtY2hhaW5fX3RpbWUtd2Fsa3RpbWUtcHJpbWUtc3ltYm9sXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+Jzwvc3Bhbj5cbiAgICAgIDwvdGltZT5cbiAgICA8L3NwYW4+XG4gIGA7XG59XG5cbi8qKlxuICogQHBhcmFtIGxlZ3M6IEFuIGFycmF5IG9mIExlZyBvYmplY3RzIHJlcHJlc2VudGluZyB0aGUgam91cm5leSBsZWdzLlxuICogQHBhcmFtIGRlcGFydHVyZVdhbGs6IFRoZSB3YWxraW5nIGRpc3RhbmNlIGluIG1pbnV0ZXMgZnJvbSB0aGUgZGVwYXJ0dXJlIHBvaW50IHRvIHRoZSBmaXJzdCBsZWcuXG4gKiBAcGFyYW0gYXJyaXZhbFdhbGs6IFRoZSB3YWxraW5nIGRpc3RhbmNlIGluIG1pbnV0ZXMgZnJvbSB0aGUgbGFzdCBsZWcgdG8gdGhlIGFycml2YWwgcG9pbnQuXG4gKiBAcGFyYW0gY3VycmVudExhbmd1YWdlOiBUaGUgY3VycmVudCBsYW5ndWFnZSBmb3IgbG9jYWxpemF0aW9uLlxuICogQHBhcmFtIGExMXlGb290cGF0aDogV2hldGhlciB0aGUgYTExeS1pY29uIHNob3VsZCBiZSBzaG93bi5cbiAqIEByZXR1cm5zIHJlbmRlckRlcGFydHVyZVRpbWVBdHRyaWJ1dGU6IEEgZnVuY3Rpb24gdGhhdCByZW5kZXJzIHRoZSBlbGVtZW50IGZvciB0aGUgZGVwYXJ0dXJlIHRpbWUgYXR0cmlidXRlLlxuICogQHJldHVybnMgcmVuZGVyQXJyaXZhbFRpbWVBdHRyaWJ1dGU6IEEgZnVuY3Rpb24gdGhhdCByZW5kZXJzIHRoZSBlbGVtZW50IGZvciB0aGUgYXJyaXZhbCB0aW1lIGF0dHJpYnV0ZS5cbiAqIEByZXR1cm5zIGFycml2YWxUaW1lQXR0cmlidXRlOiBUaGUgYWNjZXNzIGF0dHJpYnV0ZSBmb3IgdGhlIGFycml2YWwgdGltZS5cbiAqIEByZXR1cm5zIGRlcGFydHVyZVRpbWVBdHRyaWJ1dGU6IFRoZSBhY2Nlc3MgYXR0cmlidXRlIGZvciB0aGUgZGVwYXJ0dXJlIHRpbWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXREZXBhcnR1cmVBcnJpdmFsVGltZUF0dHJpYnV0ZShcbiAgbGVnczogTGVnW10sXG4gIGRlcGFydHVyZVdhbGs6IG51bWJlcixcbiAgYXJyaXZhbFdhbGs6IG51bWJlcixcbiAgY3VycmVudExhbmd1YWdlOiBzdHJpbmcsXG4gIGExMXlGb290cGF0aD86IGJvb2xlYW4sXG4pOiB7XG4gIHJlbmRlckRlcGFydHVyZVRpbWVBdHRyaWJ1dGU6ICgpID0+IFRlbXBsYXRlUmVzdWx0O1xuICByZW5kZXJBcnJpdmFsVGltZUF0dHJpYnV0ZTogKCkgPT4gVGVtcGxhdGVSZXN1bHQ7XG4gIGRlcGFydHVyZVRpbWVBdHRyaWJ1dGU6IElBY2Nlc3NBdHRyaWJ1dGUgfCBudWxsO1xuICBhcnJpdmFsVGltZUF0dHJpYnV0ZTogSUFjY2Vzc0F0dHJpYnV0ZSB8IG51bGw7XG59IHtcbiAgY29uc3QgY29ubmVjdGlvblJpZGVMZWcgPVxuICAgIGxlZ3MgJiZcbiAgICAobGVncy5maWx0ZXIoKGxlZykgPT4gaXNSaWRlTGVnKGxlZykgfHwgaXNDb25uZWN0aW9uTGVnKGxlZykpWzBdIGFzXG4gICAgICB8IFB0UmlkZUxlZ1xuICAgICAgfCBQdENvbm5lY3Rpb25MZWcpO1xuXG4gIGNvbnN0IGNvbm5lY3Rpb25MZWdOb3RpY2UgPSBbJ1lNJywgJ1lCJywgJ1knLCAnWVQnXTtcblxuICBjb25zdCBjb25uZWN0aW9uRmlyc3RMZWcgPSBnZXRQVENvbm5lY3Rpb25BdHRyaWJ1dGUoY29ubmVjdGlvblJpZGVMZWcsIGNvbm5lY3Rpb25MZWdOb3RpY2UpO1xuICBjb25zdCBleHRlbmRlZEZpcnN0TGVnID0gZ2V0Rmlyc3RFeHRlbmRlZExlZ0F0dHJpYnV0ZShcbiAgICBjb25uZWN0aW9uUmlkZUxlZyxcbiAgICBkZXBhcnR1cmVXYWxrLFxuICAgIGExMXlGb290cGF0aCxcbiAgICBjdXJyZW50TGFuZ3VhZ2UsXG4gICk7XG4gIGNvbnN0IGRlcGFydHVyZVdhbGtBdHRyaWJ1dGUgPSBkZXBhcnR1cmVXYWxrXG4gICAgPyB7XG4gICAgICAgIHRleHQ6IGkxOG5XYWxraW5nRGlzdGFuY2VEZXBhcnR1cmVbY3VycmVudExhbmd1YWdlXSxcbiAgICAgICAgZHVyYXRpb246IGRlcGFydHVyZVdhbGssXG4gICAgICAgIGljb246IGExMXlGb290cGF0aCA/ICd3aGVlbGNoYWlyLXNtYWxsJyA6ICd3YWxrLXNtYWxsJyxcbiAgICAgIH1cbiAgICA6IG51bGw7XG5cbiAgY29uc3QgZ2V0RGVwYXJ0dXJlVHlwZSA9ICgpOiBJQWNjZXNzQXR0cmlidXRlIHwgbnVsbCA9PiB7XG4gICAgaWYgKGNvbm5lY3Rpb25GaXJzdExlZykge1xuICAgICAgcmV0dXJuIGNvbm5lY3Rpb25GaXJzdExlZztcbiAgICB9IGVsc2UgaWYgKGRlcGFydHVyZVdhbGtBdHRyaWJ1dGUgJiYgIWV4dGVuZGVkRmlyc3RMZWcgJiYgIWNvbm5lY3Rpb25GaXJzdExlZykge1xuICAgICAgcmV0dXJuIGRlcGFydHVyZVdhbGtBdHRyaWJ1dGU7XG4gICAgfSBlbHNlIGlmIChleHRlbmRlZEZpcnN0TGVnKSB7XG4gICAgICByZXR1cm4gZXh0ZW5kZWRGaXJzdExlZztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9O1xuXG4gIGZ1bmN0aW9uIHJlbmRlckRlcGFydHVyZVRpbWVBdHRyaWJ1dGUoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgJHtjb25uZWN0aW9uRmlyc3RMZWdcbiAgICAgICAgPyByZW5kZXJXYWxrVGltZShcbiAgICAgICAgICAgIGNvbm5lY3Rpb25GaXJzdExlZy5kdXJhdGlvbixcbiAgICAgICAgICAgIGNvbm5lY3Rpb25GaXJzdExlZy50ZXh0LFxuICAgICAgICAgICAgJ2xlZnQnLFxuICAgICAgICAgICAgY29ubmVjdGlvbkZpcnN0TGVnLmljb24sXG4gICAgICAgICAgKVxuICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAke2RlcGFydHVyZVdhbGtBdHRyaWJ1dGUgJiYgIWV4dGVuZGVkRmlyc3RMZWcgJiYgIWNvbm5lY3Rpb25GaXJzdExlZ1xuICAgICAgICA/IHJlbmRlcldhbGtUaW1lKFxuICAgICAgICAgICAgZGVwYXJ0dXJlV2Fsa0F0dHJpYnV0ZS5kdXJhdGlvbixcbiAgICAgICAgICAgIGRlcGFydHVyZVdhbGtBdHRyaWJ1dGUudGV4dCxcbiAgICAgICAgICAgICdsZWZ0JyxcbiAgICAgICAgICAgIGRlcGFydHVyZVdhbGtBdHRyaWJ1dGUuaWNvbixcbiAgICAgICAgICApXG4gICAgICAgIDogbm90aGluZ31cbiAgICAgICR7ZXh0ZW5kZWRGaXJzdExlZ1xuICAgICAgICA/IGExMXlGb290cGF0aFxuICAgICAgICAgID8gcmVuZGVyV2Fsa1RpbWUoXG4gICAgICAgICAgICAgIGV4dGVuZGVkRmlyc3RMZWcuZHVyYXRpb24sXG4gICAgICAgICAgICAgIGV4dGVuZGVkRmlyc3RMZWcudGV4dCxcbiAgICAgICAgICAgICAgJ2xlZnQnLFxuICAgICAgICAgICAgICBleHRlbmRlZEZpcnN0TGVnLmljb24sXG4gICAgICAgICAgICApXG4gICAgICAgICAgOiByZW5kZXJUcmFuc2ZlclRpbWUoXG4gICAgICAgICAgICAgIGV4dGVuZGVkRmlyc3RMZWcuZHVyYXRpb24sXG4gICAgICAgICAgICAgIGV4dGVuZGVkRmlyc3RMZWcuaWNvbixcbiAgICAgICAgICAgICAgY3VycmVudExhbmd1YWdlLFxuICAgICAgICAgICAgICBleHRlbmRlZEZpcnN0TGVnLnRleHQsXG4gICAgICAgICAgICAgICdkZXBhcnR1cmUnLFxuICAgICAgICAgICAgKVxuICAgICAgICA6IG5vdGhpbmd9XG4gICAgYDtcbiAgfVxuXG4gIGNvbnN0IGxhc3RMZWcgPSBsZWdzICYmIGxlZ3NbbGVncy5sZW5ndGggLSAxXTtcbiAgY29uc3QgbGFzdENvbm5lY3Rpb25SaWRlTGVnID1cbiAgICAoaXNDb25uZWN0aW9uTGVnKGxhc3RMZWcpIHx8IGlzUmlkZUxlZyhsYXN0TGVnKSkgJiYgKGxhc3RMZWcgYXMgUHRDb25uZWN0aW9uTGVnIHwgUHRSaWRlTGVnKTtcblxuICBjb25zdCBjb25uZWN0aW9uTGFzdExlZyA9XG4gICAgbGFzdENvbm5lY3Rpb25SaWRlTGVnICYmIGdldFBUQ29ubmVjdGlvbkF0dHJpYnV0ZShsYXN0Q29ubmVjdGlvblJpZGVMZWcsIGNvbm5lY3Rpb25MZWdOb3RpY2UpO1xuICBjb25zdCBleHRlbmRlZExhc3RMZWcgPVxuICAgIGxhc3RDb25uZWN0aW9uUmlkZUxlZyAmJlxuICAgIGdldExhc3RFeHRlbmRlZExlZ0F0dHJpYnV0ZShsYXN0Q29ubmVjdGlvblJpZGVMZWcsIGFycml2YWxXYWxrLCBhMTF5Rm9vdHBhdGgsIGN1cnJlbnRMYW5ndWFnZSk7XG4gIGNvbnN0IGFycml2YWxXYWxrQXR0cmlidXRlID0gYXJyaXZhbFdhbGtcbiAgICA/IHtcbiAgICAgICAgdGV4dDogaTE4bldhbGtpbmdEaXN0YW5jZUFycml2YWxbY3VycmVudExhbmd1YWdlXSxcbiAgICAgICAgZHVyYXRpb246IGFycml2YWxXYWxrLFxuICAgICAgICBpY29uOiBhMTF5Rm9vdHBhdGggPyAnd2hlZWxjaGFpci1zbWFsbCcgOiAnd2Fsay1zbWFsbCcsXG4gICAgICB9XG4gICAgOiBudWxsO1xuXG4gIGNvbnN0IGdldEFycml2YWxUeXBlID0gKCk6IElBY2Nlc3NBdHRyaWJ1dGUgfCBudWxsID0+IHtcbiAgICBpZiAoY29ubmVjdGlvbkxhc3RMZWcpIHtcbiAgICAgIHJldHVybiBjb25uZWN0aW9uTGFzdExlZztcbiAgICB9IGVsc2UgaWYgKGFycml2YWxXYWxrQXR0cmlidXRlICYmICFleHRlbmRlZExhc3RMZWcgJiYgIWNvbm5lY3Rpb25MYXN0TGVnKSB7XG4gICAgICByZXR1cm4gYXJyaXZhbFdhbGtBdHRyaWJ1dGU7XG4gICAgfSBlbHNlIGlmIChleHRlbmRlZExhc3RMZWcpIHtcbiAgICAgIHJldHVybiBleHRlbmRlZExhc3RMZWc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfTtcblxuICBmdW5jdGlvbiByZW5kZXJBcnJpdmFsVGltZUF0dHJpYnV0ZSgpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICAke2Nvbm5lY3Rpb25MYXN0TGVnXG4gICAgICAgID8gcmVuZGVyV2Fsa1RpbWUoXG4gICAgICAgICAgICBjb25uZWN0aW9uTGFzdExlZy5kdXJhdGlvbixcbiAgICAgICAgICAgIGNvbm5lY3Rpb25MYXN0TGVnLnRleHQsXG4gICAgICAgICAgICAncmlnaHQnLFxuICAgICAgICAgICAgY29ubmVjdGlvbkxhc3RMZWcuaWNvbixcbiAgICAgICAgICApXG4gICAgICAgIDogbm90aGluZ31cbiAgICAgICR7YXJyaXZhbFdhbGtBdHRyaWJ1dGUgJiYgIWV4dGVuZGVkTGFzdExlZyAmJiAhY29ubmVjdGlvbkxhc3RMZWdcbiAgICAgICAgPyByZW5kZXJXYWxrVGltZShcbiAgICAgICAgICAgIGFycml2YWxXYWxrQXR0cmlidXRlLmR1cmF0aW9uLFxuICAgICAgICAgICAgYXJyaXZhbFdhbGtBdHRyaWJ1dGUudGV4dCxcbiAgICAgICAgICAgICdyaWdodCcsXG4gICAgICAgICAgICBhcnJpdmFsV2Fsa0F0dHJpYnV0ZS5pY29uLFxuICAgICAgICAgIClcbiAgICAgICAgOiBub3RoaW5nfVxuICAgICAgJHtleHRlbmRlZExhc3RMZWdcbiAgICAgICAgPyBhMTF5Rm9vdHBhdGhcbiAgICAgICAgICA/IHJlbmRlcldhbGtUaW1lKFxuICAgICAgICAgICAgICBleHRlbmRlZExhc3RMZWcuZHVyYXRpb24sXG4gICAgICAgICAgICAgIGV4dGVuZGVkTGFzdExlZy50ZXh0LFxuICAgICAgICAgICAgICAncmlnaHQnLFxuICAgICAgICAgICAgICBleHRlbmRlZExhc3RMZWcuaWNvbixcbiAgICAgICAgICAgIClcbiAgICAgICAgICA6IHJlbmRlclRyYW5zZmVyVGltZShcbiAgICAgICAgICAgICAgZXh0ZW5kZWRMYXN0TGVnLmR1cmF0aW9uLFxuICAgICAgICAgICAgICBleHRlbmRlZExhc3RMZWcuaWNvbixcbiAgICAgICAgICAgICAgY3VycmVudExhbmd1YWdlLFxuICAgICAgICAgICAgICBleHRlbmRlZExhc3RMZWcudGV4dCxcbiAgICAgICAgICAgICAgJ2Fycml2YWwnLFxuICAgICAgICAgICAgKVxuICAgICAgICA6IG5vdGhpbmd9XG4gICAgYDtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgcmVuZGVyRGVwYXJ0dXJlVGltZUF0dHJpYnV0ZSxcbiAgICByZW5kZXJBcnJpdmFsVGltZUF0dHJpYnV0ZSxcbiAgICBkZXBhcnR1cmVUaW1lQXR0cmlidXRlOiBnZXREZXBhcnR1cmVUeXBlKCksXG4gICAgYXJyaXZhbFRpbWVBdHRyaWJ1dGU6IGdldEFycml2YWxUeXBlKCksXG4gIH07XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBSWEsTUFBQSxZQUFZ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
|
|
9
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXRhYmxlLmpzIiwic291cmNlcyI6W10sInNvdXJjZXNDb250ZW50IjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7In0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as toDate,
|
|
1
|
+
import { t as toDate, m as millisecondsInMinute } from "./toDate-D_Vjps95.js";
|
|
2
2
|
function addMinutes(date, amount, options) {
|
|
3
3
|
const _date = toDate(date, options == null ? void 0 : options.in);
|
|
4
4
|
_date.setTime(_date.getTime() + amount * millisecondsInMinute);
|
|
@@ -23,4 +23,4 @@ export {
|
|
|
23
23
|
differenceInMinutes as d,
|
|
24
24
|
getRoundingMethod as g
|
|
25
25
|
};
|
|
26
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlmZmVyZW5jZUluTWludXRlcy1DSFN5V2lRcy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2RhdGUtZm5zL2FkZE1pbnV0ZXMuanMiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZGF0ZS1mbnMvX2xpYi9nZXRSb3VuZGluZ01ldGhvZC5qcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9kYXRlLWZucy9kaWZmZXJlbmNlSW5NaWxsaXNlY29uZHMuanMiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZGF0ZS1mbnMvZGlmZmVyZW5jZUluTWludXRlcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtaWxsaXNlY29uZHNJbk1pbnV0ZSB9IGZyb20gXCIuL2NvbnN0YW50cy5qc1wiO1xuaW1wb3J0IHsgdG9EYXRlIH0gZnJvbSBcIi4vdG9EYXRlLmpzXCI7XG5cbi8qKlxuICogVGhlIHtAbGluayBhZGRNaW51dGVzfSBmdW5jdGlvbiBvcHRpb25zLlxuICovXG5cbi8qKlxuICogQG5hbWUgYWRkTWludXRlc1xuICogQGNhdGVnb3J5IE1pbnV0ZSBIZWxwZXJzXG4gKiBAc3VtbWFyeSBBZGQgdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgbWludXRlcyB0byB0aGUgZ2l2ZW4gZGF0ZS5cbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqIEFkZCB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiBtaW51dGVzIHRvIHRoZSBnaXZlbiBkYXRlLlxuICpcbiAqIEB0eXBlUGFyYW0gRGF0ZVR5cGUgLSBUaGUgYERhdGVgIHR5cGUsIHRoZSBmdW5jdGlvbiBvcGVyYXRlcyBvbi4gR2V0cyBpbmZlcnJlZCBmcm9tIHBhc3NlZCBhcmd1bWVudHMuIEFsbG93cyB0byB1c2UgZXh0ZW5zaW9ucyBsaWtlIFtgVVRDRGF0ZWBdKGh0dHBzOi8vZ2l0aHViLmNvbS9kYXRlLWZucy91dGMpLlxuICogQHR5cGVQYXJhbSBSZXN1bHREYXRlIC0gVGhlIHJlc3VsdCBgRGF0ZWAgdHlwZSwgaXQgaXMgdGhlIHR5cGUgcmV0dXJuZWQgZnJvbSB0aGUgY29udGV4dCBmdW5jdGlvbiBpZiBpdCBpcyBwYXNzZWQsIG9yIGluZmVycmVkIGZyb20gdGhlIGFyZ3VtZW50cy5cbiAqXG4gKiBAcGFyYW0gZGF0ZSAtIFRoZSBkYXRlIHRvIGJlIGNoYW5nZWRcbiAqIEBwYXJhbSBhbW91bnQgLSBUaGUgYW1vdW50IG9mIG1pbnV0ZXMgdG8gYmUgYWRkZWQuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIEFuIG9iamVjdCB3aXRoIG9wdGlvbnNcbiAqXG4gKiBAcmV0dXJucyBUaGUgbmV3IGRhdGUgd2l0aCB0aGUgbWludXRlcyBhZGRlZFxuICpcbiAqIEBleGFtcGxlXG4gKiAvLyBBZGQgMzAgbWludXRlcyB0byAxMCBKdWx5IDIwMTQgMTI6MDA6MDA6XG4gKiBjb25zdCByZXN1bHQgPSBhZGRNaW51dGVzKG5ldyBEYXRlKDIwMTQsIDYsIDEwLCAxMiwgMCksIDMwKVxuICogLy89PiBUaHUgSnVsIDEwIDIwMTQgMTI6MzA6MDBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFkZE1pbnV0ZXMoZGF0ZSwgYW1vdW50LCBvcHRpb25zKSB7XG4gIGNvbnN0IF9kYXRlID0gdG9EYXRlKGRhdGUsIG9wdGlvbnM/LmluKTtcbiAgX2RhdGUuc2V0VGltZShfZGF0ZS5nZXRUaW1lKCkgKyBhbW91bnQgKiBtaWxsaXNlY29uZHNJbk1pbnV0ZSk7XG4gIHJldHVybiBfZGF0ZTtcbn1cblxuLy8gRmFsbGJhY2sgZm9yIG1vZHVsYXJpemVkIGltcG9ydHM6XG5leHBvcnQgZGVmYXVsdCBhZGRNaW51dGVzO1xuIiwiZXhwb3J0IGZ1bmN0aW9uIGdldFJvdW5kaW5nTWV0aG9kKG1ldGhvZCkge1xuICByZXR1cm4gKG51bWJlcikgPT4ge1xuICAgIGNvbnN0IHJvdW5kID0gbWV0aG9kID8gTWF0aFttZXRob2RdIDogTWF0aC50cnVuYztcbiAgICBjb25zdCByZXN1bHQgPSByb3VuZChudW1iZXIpO1xuICAgIC8vIFByZXZlbnQgbmVnYXRpdmUgemVyb1xuICAgIHJldHVybiByZXN1bHQgPT09IDAgPyAwIDogcmVzdWx0O1xuICB9O1xufVxuIiwiaW1wb3J0IHsgdG9EYXRlIH0gZnJvbSBcIi4vdG9EYXRlLmpzXCI7XG5cbi8qKlxuICogQG5hbWUgZGlmZmVyZW5jZUluTWlsbGlzZWNvbmRzXG4gKiBAY2F0ZWdvcnkgTWlsbGlzZWNvbmQgSGVscGVyc1xuICogQHN1bW1hcnkgR2V0IHRoZSBudW1iZXIgb2YgbWlsbGlzZWNvbmRzIGJldHdlZW4gdGhlIGdpdmVuIGRhdGVzLlxuICpcbiAqIEBkZXNjcmlwdGlvblxuICogR2V0IHRoZSBudW1iZXIgb2YgbWlsbGlzZWNvbmRzIGJldHdlZW4gdGhlIGdpdmVuIGRhdGVzLlxuICpcbiAqIEBwYXJhbSBsYXRlckRhdGUgLSBUaGUgbGF0ZXIgZGF0ZVxuICogQHBhcmFtIGVhcmxpZXJEYXRlIC0gVGhlIGVhcmxpZXIgZGF0ZVxuICpcbiAqIEByZXR1cm5zIFRoZSBudW1iZXIgb2YgbWlsbGlzZWNvbmRzXG4gKlxuICogQGV4YW1wbGVcbiAqIC8vIEhvdyBtYW55IG1pbGxpc2Vjb25kcyBhcmUgYmV0d2VlblxuICogLy8gMiBKdWx5IDIwMTQgMTI6MzA6MjAuNjAwIGFuZCAyIEp1bHkgMjAxNCAxMjozMDoyMS43MDA/XG4gKiBjb25zdCByZXN1bHQgPSBkaWZmZXJlbmNlSW5NaWxsaXNlY29uZHMoXG4gKiAgIG5ldyBEYXRlKDIwMTQsIDYsIDIsIDEyLCAzMCwgMjEsIDcwMCksXG4gKiAgIG5ldyBEYXRlKDIwMTQsIDYsIDIsIDEyLCAzMCwgMjAsIDYwMClcbiAqIClcbiAqIC8vPT4gMTEwMFxuICovXG5leHBvcnQgZnVuY3Rpb24gZGlmZmVyZW5jZUluTWlsbGlzZWNvbmRzKGxhdGVyRGF0ZSwgZWFybGllckRhdGUpIHtcbiAgcmV0dXJuICt0b0RhdGUobGF0ZXJEYXRlKSAtICt0b0RhdGUoZWFybGllckRhdGUpO1xufVxuXG4vLyBGYWxsYmFjayBmb3IgbW9kdWxhcml6ZWQgaW1wb3J0czpcbmV4cG9ydCBkZWZhdWx0IGRpZmZlcmVuY2VJbk1pbGxpc2Vjb25kcztcbiIsImltcG9ydCB7IGdldFJvdW5kaW5nTWV0aG9kIH0gZnJvbSBcIi4vX2xpYi9nZXRSb3VuZGluZ01ldGhvZC5qc1wiO1xuaW1wb3J0IHsgbWlsbGlzZWNvbmRzSW5NaW51dGUgfSBmcm9tIFwiLi9jb25zdGFudHMuanNcIjtcbmltcG9ydCB7IGRpZmZlcmVuY2VJbk1pbGxpc2Vjb25kcyB9IGZyb20gXCIuL2RpZmZlcmVuY2VJbk1pbGxpc2Vjb25kcy5qc1wiO1xuXG4vKipcbiAqIFRoZSB7QGxpbmsgZGlmZmVyZW5jZUluTWludXRlc30gZnVuY3Rpb24gb3B0aW9ucy5cbiAqL1xuXG4vKipcbiAqIEBuYW1lIGRpZmZlcmVuY2VJbk1pbnV0ZXNcbiAqIEBjYXRlZ29yeSBNaW51dGUgSGVscGVyc1xuICogQHN1bW1hcnkgR2V0IHRoZSBudW1iZXIgb2YgbWludXRlcyBiZXR3ZWVuIHRoZSBnaXZlbiBkYXRlcy5cbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqIEdldCB0aGUgc2lnbmVkIG51bWJlciBvZiBmdWxsIChyb3VuZGVkIHRvd2FyZHMgMCkgbWludXRlcyBiZXR3ZWVuIHRoZSBnaXZlbiBkYXRlcy5cbiAqXG4gKiBAcGFyYW0gZGF0ZUxlZnQgLSBUaGUgbGF0ZXIgZGF0ZVxuICogQHBhcmFtIGRhdGVSaWdodCAtIFRoZSBlYXJsaWVyIGRhdGVcbiAqIEBwYXJhbSBvcHRpb25zIC0gQW4gb2JqZWN0IHdpdGggb3B0aW9ucy5cbiAqXG4gKiBAcmV0dXJucyBUaGUgbnVtYmVyIG9mIG1pbnV0ZXNcbiAqXG4gKiBAZXhhbXBsZVxuICogLy8gSG93IG1hbnkgbWludXRlcyBhcmUgYmV0d2VlbiAyIEp1bHkgMjAxNCAxMjowNzo1OSBhbmQgMiBKdWx5IDIwMTQgMTI6MjA6MDA/XG4gKiBjb25zdCByZXN1bHQgPSBkaWZmZXJlbmNlSW5NaW51dGVzKFxuICogICBuZXcgRGF0ZSgyMDE0LCA2LCAyLCAxMiwgMjAsIDApLFxuICogICBuZXcgRGF0ZSgyMDE0LCA2LCAyLCAxMiwgNywgNTkpXG4gKiApXG4gKiAvLz0+IDEyXG4gKlxuICogQGV4YW1wbGVcbiAqIC8vIEhvdyBtYW55IG1pbnV0ZXMgYXJlIGJldHdlZW4gMTA6MDE6NTkgYW5kIDEwOjAwOjAwXG4gKiBjb25zdCByZXN1bHQgPSBkaWZmZXJlbmNlSW5NaW51dGVzKFxuICogICBuZXcgRGF0ZSgyMDAwLCAwLCAxLCAxMCwgMCwgMCksXG4gKiAgIG5ldyBEYXRlKDIwMDAsIDAsIDEsIDEwLCAxLCA1OSlcbiAqIClcbiAqIC8vPT4gLTFcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRpZmZlcmVuY2VJbk1pbnV0ZXMoZGF0ZUxlZnQsIGRhdGVSaWdodCwgb3B0aW9ucykge1xuICBjb25zdCBkaWZmID1cbiAgICBkaWZmZXJlbmNlSW5NaWxsaXNlY29uZHMoZGF0ZUxlZnQsIGRhdGVSaWdodCkgLyBtaWxsaXNlY29uZHNJbk1pbnV0ZTtcbiAgcmV0dXJuIGdldFJvdW5kaW5nTWV0aG9kKG9wdGlvbnM/LnJvdW5kaW5nTWV0aG9kKShkaWZmKTtcbn1cblxuLy8gRmFsbGJhY2sgZm9yIG1vZHVsYXJpemVkIGltcG9ydHM6XG5leHBvcnQgZGVmYXVsdCBkaWZmZXJlbmNlSW5NaW51dGVzO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUE2Qk8sU0FBUyxXQUFXLE1BQU0sUUFBUSxTQUFTO0FBQ2hELFFBQU0sUUFBUSxPQUFPLE1BQU0sbUNBQVMsRUFBRTtBQUN0QyxRQUFNLFFBQVEsTUFBTSxRQUFPLElBQUssU0FBUyxvQkFBb0I7QUFDN0QsU0FBTztBQUNUO0FDakNPLFNBQVMsa0JBQWtCLFFBQVE7QUFDeEMsU0FBTyxDQUFDLFdBQVc7QUFDakIsVUFBTSxRQUFRLFNBQVMsS0FBSyxNQUFNLElBQUksS0FBSztBQUMzQyxVQUFNLFNBQVMsTUFBTSxNQUFNO0FBRTNCLFdBQU8sV0FBVyxJQUFJLElBQUk7QUFBQSxFQUMzQjtBQUNIO0FDaUJPLFNBQVMseUJBQXlCLFdBQVcsYUFBYTtBQUMvRCxTQUFPLENBQUMsT0FBTyxTQUFTLElBQUksQ0FBQyxPQUFPLFdBQVc7QUFDakQ7QUNZTyxTQUFTLG9CQUFvQixVQUFVLFdBQVcsU0FBUztBQUNoRSxRQUFNLE9BQ0oseUJBQXlCLFVBQVUsU0FBUyxJQUFJO0FBQ2xELFNBQU8sa0JBQWtCLG1DQUFTLGNBQWMsRUFBRSxJQUFJO0FBQ3hEOyIsInhfZ29vZ2xlX2lnbm9yZUxpc3QiOlswLDEsMiwzXX0=
|