@tiba-spark/client-shared-lib 26.2.0-282 → 26.2.0-288

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.
@@ -14,7 +14,10 @@ export var MiddayPeriod;
14
14
  MiddayPeriod[MiddayPeriod["PM"] = 2] = "PM";
15
15
  })(MiddayPeriod || (MiddayPeriod = {}));
16
16
  export function parseSmartParkTime(value) {
17
- return moment(DEFAULT_SMART_PARK_DATE_TIME).seconds(value);
17
+ // moment's `.seconds(x)` is a SETTER only when `x != null`; passing a nullish
18
+ // value makes it a GETTER that returns a number, so chaining `.format(...)`
19
+ // throws "format is not a function". Coalesce to 0 so we always return a Moment.
20
+ return moment(DEFAULT_SMART_PARK_DATE_TIME).seconds(value ?? 0);
18
21
  }
19
22
  export function parseDateTimeToSparkParkTime(selectedDate) {
20
23
  if (!selectedDate) {
@@ -213,4 +216,4 @@ export function hasMiddayPeriod(format) {
213
216
  // Complete: Matches a, am, A, AM, p, pm, P, PM
214
217
  return !!format && /\s[ap]m?$/i.test(format);
215
218
  }
216
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXNoYXJlZC1saWIvc3JjL2xpYnJhcmllcy91dGlscy9kYXRlLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sTUFBa0IsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xKLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUVwRSxNQUFNLHNCQUFzQixHQUFHLFlBQVksQ0FBQztBQUM1QyxNQUFNLDRCQUE0QixHQUFHLGtCQUFrQixDQUFDO0FBRXhELE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLElBQUksR0FBRyxDQUFDO0lBQzVDLFlBQVksQ0FBQyxjQUFjO0lBQzNCLFlBQVksQ0FBQyxZQUFZO0NBQzFCLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBTixJQUFZLFlBRVg7QUFGRCxXQUFZLFlBQVk7SUFDdEIsMkNBQU0sQ0FBQTtJQUFFLDJDQUFNLENBQUE7QUFDaEIsQ0FBQyxFQUZXLFlBQVksS0FBWixZQUFZLFFBRXZCO0FBU0QsTUFBTSxVQUFVLGtCQUFrQixDQUFDLEtBQWE7SUFDOUMsT0FBTyxNQUFNLENBQUMsNEJBQTRCLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDN0QsQ0FBQztBQUVELE1BQU0sVUFBVSw0QkFBNEIsQ0FBQyxZQUFrQjtJQUM3RCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDbEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFD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Q0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUM7UUFDakUsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQztRQUVqRSxNQUFNLEdBQUcsR0FBRyxLQUFLLElBQUksT0FBTyxJQUFJLE9BQU8sRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxZQUFZLENBQUMsTUFBYztJQUN6QyxPQUFPLENBQUMsQ0FBQyxNQUFNLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUM3QyxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxlQUFlLENBQUMsTUFBYztJQUM1QyxnREFBZ0Q7SUFDaEQsT0FBTyxDQUFDLENBQUMsTUFBTSxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDL0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCBtb21lbnQsIHsgTW9tZW50IH0gZnJvbSAnbW9tZW50LXRpbWV6b25lJztcbmltcG9ydCB7IERFRkFVTFRfU01BUlRfUEFSS19EQVRFX1RJTUUsIE1JTlVURVNfUEVSX0hPVVIsIE5PX1JFU1VMVCwgVEVOU19NVUxUSVBMSUVSLCBWQUxJRF9USU1FX01BWF9MRU5HVEggfSBmcm9tICcuLi9jb25zdGFudHMvZ2xvYmFsLWNvbnN0YW50cyc7XG5pbXBvcnQgeyBEYXRlVmFsaWRpdHkgfSBmcm9tICcuLi9zZXJ2aWNlLXByb3h5L3JwYy1zZXJ2aWNlLXByb3hpZXMnO1xuXG5jb25zdCBEQVRFX0ZPUk1BVF9ZWVlZX01NX0REID0gJ1lZWVktTU0tREQnO1xuY29uc3QgREFURV9GT1JNQVRfWVlZWV9NTV9ERF9ISF9NTSA9ICdZWVlZLU1NLUREIEhIOm1tJztcblxuZXhwb3J0IGNvbnN0IFZBTElEX0RBVEVUSU1FX0ZJTFRFUlMgPSBuZXcgU2V0KFtcbiAgRGF0ZVZhbGlkaXR5LkNyZWF0ZWRCZXR3ZWVuLFxuICBEYXRlVmFsaWRpdHkuVmFsaWRCZXR3ZWVuLFxuXSk7XG5cbmV4cG9ydCBlbnVtIE1pZGRheVBlcmlvZCB7XG4gIEFNID0gMSwgUE0gPSAyXG59XG5cbmV4cG9ydCB0eXBlIFRpbWUgPSB7XG4gIGhvdXJzOiBudW1iZXI7XG4gIG1pbnV0ZXM6IG51bWJlcjtcbiAgc2Vjb25kcz86IG51bWJlcjtcbiAgbWlkZGF5UGVyaW9kPzogTWlkZGF5UGVyaW9kO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlU21hcnRQYXJrVGltZSh2YWx1ZTogbnVtYmVyKSB7XG4gIHJldHVybiBtb21lbnQoREVGQVVMVF9TTUFSVF9QQVJLX0RBVEVfVElNRSkuc2Vjb25kcyh2YWx1ZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZURhdGVUaW1lVG9TcGFya1BhcmtUaW1lKHNlbGVjdGVkRGF0ZTogRGF0ZSk6IG51bWJlciB7XG4gIGlmICghc2VsZWN0ZWREYXRlKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjb25zdCBkYXRlMiA9IG1vbWVudChzZWxlY3RlZERhdGUpO1xuICAvLyBJZiB0aGUgZGF0ZSB3ZSB3YW50IGlzIGluIERTVCB0aGVuIHRvIGF2b2lkIGluY29ycmVjdCByZXN1bHRzIHdlIG5lZWQgdG8gYWRkIGl0IDEgaG91clxuICBpZiAoZGF0ZTIuaXNEU1QoKSkge1xuICAgIGRhdGUyLmFkZCh7IGhvdXI6IDEgfSk7XG4gIH1cblxuICByZXR1cm4gZGF0ZURpZmZJblNlY29uZHMobW9tZW50KERFRkFVTFRfU01BUlRfUEFSS19EQVRFX1RJTUUpLCBkYXRlMik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXREYXRlVGltZUluU2Vjb25kcyhkYXRlOiBEYXRlLCB0aW1lOiBUaW1lKTogbnVtYmVyIHtcbiAgZGF0ZS5zZXRNaW51dGVzKHRpbWUubWludXRlcyk7XG4gIGRhdGUuc2V0SG91cnModGltZS5ob3Vycyk7XG5cbiAgY29uc3QgZGF0ZVRpbWVJblNlY29uZHM6IG51bWJlciA9IHBhcnNlRGF0ZVRpbWVUb1NwYXJrUGFya1RpbWUoZGF0ZSk7XG5cbiAgcmV0dXJuIGRhdGVUaW1lSW5TZWNvbmRzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGF0ZURpZmZJblNlY29uZHMoZGF0ZTE6IE1vbWVudCwgZGF0ZTI6IE1vbWVudCk6IG51bWJlciB7XG4gIC8vIG1vbWVudCBpZ25vcmUgYW5kIHJldHVybiBkYXRlIHdpdGggc3lzdGVtIHRpbWUgem9uZSAtIHVzaW5nIGZvcm1hdCBjb3JyZWN0IHRoZSBkYXRlIG9iamVjdFxuICBjb25zdCBkZWZhdWx0U21hcnRQYXJrVGltZVVUQyA9IG1vbWVudC50eihkYXRlMSwgJ3V0YycpO1xuXG4gIGNvbnN0IHNlbGVjdGVkRGF0ZUZvcm1hdHRlZCA9IG1vbWVudChkYXRlMi5mb3JtYXQoXCJZWVlZLU1NLUREIEhIOm1tOnNzXCIpKTtcbiAgcmV0dXJuIHNlbGVjdGVkRGF0ZUZvcm1hdHRlZC5kaWZmKGRlZmF1bHRTbWFydFBhcmtUaW1lVVRDLCAnc2Vjb25kcycpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaHVtYW5pemVUaW1lRWxhcHNlZChmcm9tOiBEYXRlLCB0bzogRGF0ZSkge1xuICByZXR1cm4gbW9tZW50LmR1cmF0aW9uKGFkanVzdEZvclRpbWV6b25lKGZyb20pLmdldFRpbWUoKSAtIHRvLmdldFRpbWUoKSkuaHVtYW5pemUoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGh1bWFuaXplVXRjVGltZUVsYXBzZWQoZnJvbTogRGF0ZSwgdG86IERhdGUpIHtcbiAgcmV0dXJuIG1vbWVudC5kdXJhdGlvbihmcm9tLmdldFRpbWUoKSAtIHRvLmdldFRpbWUoKSkuaHVtYW5pemUoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRpZmZJbk1pbGxpcyh2YWx1ZSwgaXNBYnNvbHV0ZSkge1xuICBjb25zdCBkaWZmID0gbW9tZW50LmR1cmF0aW9uKG1vbWVudCh2YWx1ZSkuZGlmZihtb21lbnQoKSkpLmFzTWlsbGlzZWNvbmRzKCk7XG4gIGlmIChpc0Fic29sdXRlKSB7XG4gICAgcmV0dXJuIE1hdGguYWJzKGRpZmYpO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBkaWZmO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRNb21lbnROdWxsYWJsZShkYXRlOiBEYXRlKSB7XG4gIHJldHVybiBkYXRlID8gbW9tZW50KGRhdGUpIDogbnVsbDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFV0Y01vbWVudE51bGxhYmxlKGRhdGU6IERhdGUpIHtcbiAgcmV0dXJuIGRhdGUgPyBtb21lbnQoZGF0ZSkudXRjKHRydWUpIDogbnVsbDtcbn1cblxuLy8gV2hlbiBzdWJ0cmFjdCB0aGUgb2Zmc2V0IGZyb20gdGhlIGN1cnJlbnQgZGF0ZSxcbi8vIFdlIGdldCBhIGRhdGUgdGhhdCBpZiB5b3UgcmVtb3ZlIHRoZSBvZmZzZXQgeW91IHdpbGwgZ2V0IFVUQ2tpbmRcbi8vIG9mIHRoZSB0aW1lIHNlbGVjdGVkXG5leHBvcnQgZnVuY3Rpb24gYWRqdXN0Rm9yVGltZXpvbmUoZGF0ZTogRGF0ZSk6IERhdGUge1xuICByZXR1cm4gbmV3IERhdGUoZGF0ZS5nZXRGdWxsWWVhcigpLCBkYXRlLmdldE1vbnRoKCksIGRhdGUuZ2V0RGF0ZSgpLFxuICAgIGRhdGUuZ2V0SG91cnMoKSwgZGF0ZS5nZXRNaW51dGVzKCkgLSBkYXRlLmdldFRpbWV6b25lT2Zmc2V0KCksIGRhdGUuZ2V0U2Vjb25kcygpKTtcbn1cblxuLy8gcmUtYWRqdXN0IG1ldGhvZCB3aGVuIG5lZWQgdG8gc2V0IGJhY2sgdGhlIHRpbWV6b25lb2Zmc2V0IGFmdGVyIHVzaW5nIGFkanVzdEZvclRpbWV6b25lXG5leHBvcnQgZnVuY3Rpb24gcmVhZGp1c3RGb3JUaW1lem9uZShkYXRlOiBEYXRlKTogRGF0ZSB7XG4gIHJldHVybiAhZGF0ZSA/IG51bGwgOiBuZXcgRGF0ZShkYXRlLmdldEZ1bGxZZWFyKCksIGRhdGUuZ2V0TW9udGgoKSwgZGF0ZS5nZXREYXRlKCksXG4gICAgZGF0ZS5nZXRIb3VycygpLCBkYXRlLmdldE1pbnV0ZXMoKSArIGRhdGUuZ2V0VGltZXpvbmVPZmZzZXQoKSwgZGF0ZS5nZXRTZWNvbmRzKCkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNNYXhEYXlzUmFuZ2VWYWxpZCh2YWxpZEZyb206IERhdGUsIHZhbGlkVG86IERhdGUsIGFsbG93ZWROdW1iZXJPZkRheXM6IG51bWJlcik6IGJvb2xlYW4ge1xuICBsZXQgbWF4RGF5c1JhbmdlVmFsaWQgPSB0cnVlO1xuICBpZiAodmFsaWRGcm9tICYmIHZhbGlkVG8pIHtcbiAgICBjb25zdCB2YWxpZEZyb21EYXRlID0gbW9tZW50KHZhbGlkRnJvbSk7XG4gICAgY29uc3QgdmFsaWRUb0RhdGUgPSBtb21lbnQodmFsaWRUbyk7XG4gICAgY29uc3QgbnVtYmVyT2ZEYXlzID0gbW9tZW50LmR1cmF0aW9uKHZhbGlkVG9EYXRlLmRpZmYodmFsaWRGcm9tRGF0ZSkpLmFzRGF5cygpO1xuICAgIG1heERheXNSYW5nZVZhbGlkID0gIShudW1iZXJPZkRheXMgPiBhbGxvd2VkTnVtYmVyT2ZEYXlzKTtcbiAgfVxuICByZXR1cm4gbWF4RGF5c1JhbmdlVmFsaWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhcmVEYXRlc0lkZW50aWNhbChmcm9tRGF0ZTogRGF0ZSwgdG9EYXRlOiBEYXRlKSB7XG4gIGlmIChmcm9tRGF0ZSAmJiB0b0RhdGUpIHtcbiAgICBjb25zdCB2YWxpZEZyb21EYXRlOiBEYXRlID0gZnJvbURhdGU7XG4gICAgY29uc3QgdmFsaWRUb0RhdGU6IERhdGUgPSB0b0RhdGU7XG4gICAgdmFsaWRGcm9tRGF0ZS5zZXRTZWNvbmRzKDAsIDApO1xuICAgIHZhbGlkVG9EYXRlLnNldFNlY29uZHMoMCwgMCk7XG4gICAgcmV0dXJuIHZhbGlkRnJvbURhdGUuZ2V0VGltZSgpID09PSB2YWxpZFRvRGF0ZS5nZXRUaW1lKCk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFVzZXJUaW1lWm9uZSgpOiBzdHJpbmcge1xuICByZXR1cm4gbW9tZW50LnR6Lmd1ZXNzKCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb252ZXJ0Rm9ybWF0V2l0aG91dFRpbWUoZm9ybWF0OiBzdHJpbmcpIHtcbiAgbGV0IGZvcm1hdFZhbHVlcyA9IGZvcm1hdC5zcGxpdChcImhcIik7XG4gIGlmIChmb3JtYXRWYWx1ZXMubGVuZ3RoID09PSBOT19SRVNVTFQpIHtcbiAgICBmb3JtYXRWYWx1ZXMgPSBmb3JtYXQuc3BsaXQoXCJIXCIpO1xuICB9XG4gIHJldHVybiBmb3JtYXRWYWx1ZXNbMF07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXREYXRlV2l0aG91dFRpbWUocm93VmFsdWVUaW1lOiBNb21lbnQsIGRhdGVGb3JtYXQ6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IGRhdGVQaXBlID0gbmV3IERhdGVQaXBlKCdlbi1VUycpO1xuICBjb25zdCBkYXRlID0gcm93VmFsdWVUaW1lPy50b0RhdGUoKTtcbiAgcmV0dXJuIGRhdGVQaXBlLnRyYW5zZm9ybShkYXRlLCBjb252ZXJ0Rm9ybWF0V2l0aG91dFRpbWUoZGF0ZUZvcm1hdCkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TW9tZW50V2l0aG91dFRpbWUobW9tZW50RGF0ZTogTW9tZW50KTogRGF0ZSB7XG4gIGNvbnN0IGZvcm1hdHRlZERhdGUgPSBtb21lbnREYXRlLmZvcm1hdChEQVRFX0ZPUk1BVF9ZWVlZX01NX0REKTtcbiAgcmV0dXJuIG5ldyBEYXRlKGZvcm1hdHRlZERhdGUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TW9tZW5XaXRoVGltZShtb21lbnREYXRlOiBNb21lbnQpOiBEYXRlIHtcbiAgY29uc3QgZm9ybWF0dGVkRGF0ZSA9IG1vbWVudERhdGUuZm9ybWF0KERBVEVfRk9STUFUX1lZWVlfTU1fRERfSEhfTU0pO1xuICByZXR1cm4gYWRqdXN0Rm9yVGltZXpvbmUobmV3IERhdGUoZm9ybWF0dGVkRGF0ZSkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0TWludXRlc1RvVGltZU51bWJlcih2YWx1ZTogbnVtYmVyKTogc3RyaW5nIHtcbiAgaWYgKHZhbHVlID4gMCkge1xuICAgIHJldHVybiBgJHtNYXRoLmZsb29yKHZhbHVlIC8gNjApLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKX0keyh2YWx1ZSAlIDYwKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyl9YDtcbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0VGltZVdpdGhvdXRNaWRuaWdodCh2YWx1ZTogbnVtYmVyKTogc3RyaW5nIHtcbiAgcmV0dXJuIGZvcm1hdFRpbWVXaXRoU2VwYXJhdG9yKHZhbHVlLCBmYWxzZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRUaW1lV2l0aE1pZG5pZ2h0KHZhbHVlOiBudW1iZXIpOiBzdHJpbmcge1xuICByZXR1cm4gZm9ybWF0VGltZVdpdGhTZXBhcmF0b3IodmFsdWUsIHRydWUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0VGltZVdpdGhvdXRTZXBlcmF0b3JBbmRXaXRoTWlkbmlnaHQodmFsdWU6IG51bWJlcik6IHN0cmluZyB7XG4gIHJldHVybiBmb3JtYXRUaW1lV2l0aG91dFNlcGFyYXRvcih2YWx1ZSwgdHJ1ZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRUaW1lV2l0aG91dFNlcGVyYXRvckFuZFdpdGhvdXRNaWRuaWdodCh2YWx1ZTogbnVtYmVyKTogc3RyaW5nIHtcbiAgcmV0dXJuIGZvcm1hdFRpbWVXaXRob3V0U2VwYXJhdG9yKHZhbHVlLCBmYWxzZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRUaW1lVG9NaW51dGVzKHZhbHVlOiBzdHJpbmcpOiBudW1iZXIge1xuICB2YWx1ZSA9IHZhbHVlPy50b1N0cmluZygpO1xuICBpZiAodmFsdWU/Lmxlbmd0aCA9PT0gVkFMSURfVElNRV9NQVhfTEVOR1RIKSB7XG4gICAgY29uc3QgaCA9ICgoK3ZhbHVlWzBdICogVEVOU19NVUxUSVBMSUVSKSArICt2YWx1ZVsxXSkgKiBNSU5VVEVTX1BFUl9IT1VSO1xuICAgIGNvbnN0IG0gPSArdmFsdWVbMl0gKiBURU5TX01VTFRJUExJRVIgKyArdmFsdWVbM107XG4gICAgcmV0dXJuIGggKyBtO1xuICB9XG5cbiAgcmV0dXJuIG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtaW51dGVzVG9UaW1lKG1pbnV0ZXM6IG51bWJlcik6IFRpbWUge1xuICByZXR1cm4gbWludXRlcyA+PSAwID8geyBob3VyczogTWF0aC5mbG9vcihtaW51dGVzIC8gTUlOVVRFU19QRVJfSE9VUiksIG1pbnV0ZXM6IG1pbnV0ZXMgJSBNSU5VVEVTX1BFUl9IT1VSIH0gOiBudWxsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdGltZVRvTWludXRlcyh0aW1lOiBUaW1lKTogbnVtYmVyIHtcbiAgcmV0dXJuIHRpbWUgPyAodGltZS5ob3VycyAqIE1JTlVURVNfUEVSX0hPVVIpICsgdGltZS5taW51dGVzIDogMDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRpbWVUb01vbWVudCh0aW1lOiBUaW1lKTogbW9tZW50Lk1vbWVudCB8IG51bGwge1xuICBpZiAoIXRpbWUgfHwgdGltZS5ob3VycyA9PSBudWxsIHx8IHRpbWUubWludXRlcyA9PSBudWxsKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBsZXQgeyBob3VycywgbWludXRlcywgc2Vjb25kcywgbWlkZGF5UGVyaW9kIH0gPSB0aW1lO1xuXG4gIGlmIChtaWRkYXlQZXJpb2QgPT09IE1pZGRheVBlcmlvZC5QTSAmJiBob3VycyA8IDEyKSB7XG4gICAgaG91cnMgKz0gMTI7XG4gIH0gZWxzZSBpZiAobWlkZGF5UGVyaW9kID09PSBNaWRkYXlQZXJpb2QuQU0gJiYgaG91cnMgPT09IDEyKSB7XG4gICAgaG91cnMgPSAwO1xuICB9XG5cbiAgcmV0dXJuIG1vbWVudCgpLmhvdXJzKGhvdXJzKS5taW51dGVzKG1pbnV0ZXMpLnNlY29uZHMoc2Vjb25kcyA/PyAwKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEZvcm1hdHRlZFRpbWUobWludXRlczogbnVtYmVyLCBpc01pZG5pZ2h0RW5hYmxlOiBib29sZWFuLCBmb3JtYXQ6IHN0cmluZywgZGVmYXVsdFZhbHVlID0gbnVsbCk6IHN0cmluZyB8IG51bGwge1xuICBpZiAoaXNNaWRuaWdodEVuYWJsZSB8fCBtaW51dGVzID4gMCkge1xuICAgIHJldHVybiBjb252ZXJ0TWludXRlc1RvVGltZShtaW51dGVzLCBmb3JtYXQpO1xuICB9XG5cbiAgcmV0dXJuIGRlZmF1bHRWYWx1ZSAhPT0gbnVsbCA/IGNvbnZlcnRNaW51dGVzVG9UaW1lKGRlZmF1bHRWYWx1ZSwgZm9ybWF0KSA6IG51bGw7XG59XG5cbmZ1bmN0aW9uIGNvbnZlcnRNaW51dGVzVG9UaW1lKG1pbnV0ZXM6IG51bWJlciwgZm9ybWF0OiBzdHJpbmcpIHtcbiAgLy8gRGV0ZXJtaW5lIGlmIHRoZSBmb3JtYXQgaXMgMTItaG91ciBvciAyNC1ob3VyIGFuZCBleHRyYWN0IHRoZSB0aW1lIHBhcnRcbiAgY29uc3QgdGltZUZvcm1hdCA9IGZvcm1hdC50b0xvY2FsZUxvd2VyQ2FzZSgpLmluY2x1ZGVzKCdhJykgPyAnaGg6bW0gQScgOiAnSEg6bW0nO1xuICByZXR1cm4gbW9tZW50KCkuc3RhcnRPZignZGF5JykuYWRkKG1pbnV0ZXMsICdtaW51dGVzJykuZm9ybWF0KHRpbWVGb3JtYXQpO1xufVxuXG4vLyBXcmFwcGVyIG1ldGhvZCB0byBmb3JtYXQgbWludXRlcyB3aXRoIFwiOlwiIGFzIHNlcGFyYXRvciAoZS5nLiwgXCJISDptbVwiKVxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdFRpbWVXaXRoU2VwYXJhdG9yKHZhbHVlOiBudW1iZXIsIGlzTWlkbmlnaHRFbmFibGU6IGJvb2xlYW4pOiBzdHJpbmcgfCBudWxsIHtcbiAgcmV0dXJuIGZvcm1hdFRpbWUodmFsdWUsIGlzTWlkbmlnaHRFbmFibGUsICc6Jyk7XG59XG5cbi8vIFdyYXBwZXIgbWV0aG9kIHRvIGZvcm1hdCBtaW51dGVzIHdpdGhvdXQgc2VwYXJhdG9yIChlLmcuLCBcIkhIbW1cIilcbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRUaW1lV2l0aG91dFNlcGFyYXRvcih2YWx1ZTogbnVtYmVyLCBpc01pZG5pZ2h0RW5hYmxlOiBib29sZWFuKTogc3RyaW5nIHwgbnVsbCB7XG4gIHJldHVybiBmb3JtYXRUaW1lKHZhbHVlLCBpc01pZG5pZ2h0RW5hYmxlLCAnJyk7XG59XG5cbi8vIENvcmUgbWV0aG9kIGZvciBmb3JtYXR0aW5nIG1pbnV0ZXMgd2l0aCBmbGV4aWJpbGl0eSBpbiBvdXRwdXQgZm9ybWF0XG5mdW5jdGlvbiBmb3JtYXRUaW1lKHZhbHVlOiBudW1iZXIsIGlzTWlkbmlnaHRFbmFibGVkOiBib29sZWFuLCBzZXBhcmF0b3I6IHN0cmluZyA9ICc6Jyk6IHN0cmluZyB8IG51bGwge1xuICBpZiAoaXNNaWRuaWdodEVuYWJsZWQgfHwgdmFsdWUgPiAwKSB7XG4gICAgY29uc3QgaG91cnMgPSBNYXRoLmZsb29yKHZhbHVlIC8gTUlOVVRFU19QRVJfSE9VUikudG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCcpO1xuICAgIGNvbnN0IG1pbnV0ZXMgPSAodmFsdWUgJSBNSU5VVEVTX1BFUl9IT1VSKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyk7XG4gICAgcmV0dXJuIGAke2hvdXJzfSR7c2VwYXJhdG9yfSR7bWludXRlc31gO1xuICB9XG4gIHJldHVybiBudWxsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0VGltZVRvU3RyaW5nKG9iajogVGltZSk6IHN0cmluZyB7XG4gIGxldCByZXN1bHQgPSAnLSc7XG5cbiAgaWYgKG9iaikge1xuICAgIGNvbnN0IGhvdXJzID0gb2JqLmhvdXJzPy50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJykgPz8gJzAwJztcbiAgICBjb25zdCBtaW51dGVzID0gb2JqLm1pbnV0ZXM/LnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKSA/PyAnMDAnO1xuICAgIGNvbnN0IHNlY29uZHMgPSBvYmouc2Vjb25kcz8udG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCcpID8/ICcwMCc7XG5cbiAgICByZXN1bHQgPSBgJHtob3Vyc306JHttaW51dGVzfToke3NlY29uZHN9YDtcbiAgfVxuXG4gIHJldHVybiByZXN1bHQ7XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIHRoZSBkYXRlIGZvcm1hdCBzdHJpbmcgdXNlcyBtb250aCBuYW1lcyAoTU1NL01NTU0pXG4gKiBAZXhhbXBsZSBcIk1NTSBkZCwgeXl5eVwiIOKGkiB0cnVlXG4gKiBAZXhhbXBsZSBcIk1NL2RkL3l5eXlcIiDihpIgZmFsc2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhhc01vbnRoTmFtZShmb3JtYXQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICByZXR1cm4gISFmb3JtYXQgJiYgL1xcYk1NTStcXGIvLnRlc3QoZm9ybWF0KTtcbn1cblxuLyoqXG4gKiBDaGVja3MgaWYgdGhlIGRhdGUgZm9ybWF0IHVzZXMgMTItaG91ciB0aW1lIHdpdGggQU0vUE1cbiAqIEBleGFtcGxlIFwiaGg6bW0gYVwiIOKGkiB0cnVlXG4gKiBAZXhhbXBsZSBcIkhIOm1tXCIg4oaSIGZhbHNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoYXNNaWRkYXlQZXJpb2QoZm9ybWF0OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgLy8gIENvbXBsZXRlOiBNYXRjaGVzIGEsIGFtLCBBLCBBTSwgcCwgcG0sIFAsIFBNXG4gIHJldHVybiAhIWZvcm1hdCAmJiAvXFxzW2FwXW0/JC9pLnRlc3QoZm9ybWF0KTtcbn1cbiJdfQ==
219
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXNoYXJlZC1saWIvc3JjL2xpYnJhcmllcy91dGlscy9kYXRlLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sTUFBa0IsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xKLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUVwRSxNQUFNLHNCQUFzQixHQUFHLFlBQVksQ0FBQztBQUM1QyxNQUFNLDRCQUE0QixHQUFHLGtCQUFrQixDQUFDO0FBRXhELE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLElBQUksR0FBRyxDQUFDO0lBQzVDLFlBQVksQ0FBQyxjQUFjO0lBQzNCLFlBQVksQ0FBQyxZQUFZO0NBQzFCLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBTixJQUFZLFlBRVg7QUFGRCxXQUFZLFlBQVk7SUFDdEIsMkNBQU0sQ0FBQTtJQUFFLDJDQUFNLENBQUE7QUFDaEIsQ0FBQyxFQUZXLFlBQVksS0FBWixZQUFZLFFBRXZCO0FBU0QsTUFBTSxVQUFVLGtCQUFrQixDQUFDLEtBQXFCO0lBQ3RELDhFQUE4RTtJQUM5RSw0RUFBNEU7SUFDNUUsaUZBQWlGO0lBQ2pGLE9BQU8sTUFBTSxDQUFDLDRCQUE0QixDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztBQUNsRSxDQUFDO0FBRUQsTUFBTSxVQUFVLDRCQUE0QixDQUFDLFlBQWtCO0lBQzdELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNsQixPQUFPLElBQUksQ0FBQztJQUNk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QUFHLENBQUMsSUFBSSxJQUFJLENBQUM7UUFDN0QsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQztRQUNqRSxNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDO1FBRWpFLE1BQU0sR0FBRyxHQUFHLEtBQUssSUFBSSxPQUFPLElBQUksT0FBTyxFQUFFLENBQUM7SUFDNUMsQ0FBQztJQUVELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FBQyxNQUFjO0lBQ3pDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQzdDLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGVBQWUsQ0FBQyxNQUFjO0lBQzVDLGdEQUFnRDtJQUNoRCxPQUFPLENBQUMsQ0FBQyxNQUFNLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUMvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IG1vbWVudCwgeyBNb21lbnQgfSBmcm9tICdtb21lbnQtdGltZXpvbmUnO1xuaW1wb3J0IHsgREVGQVVMVF9TTUFSVF9QQVJLX0RBVEVfVElNRSwgTUlOVVRFU19QRVJfSE9VUiwgTk9fUkVTVUxULCBURU5TX01VTFRJUExJRVIsIFZBTElEX1RJTUVfTUFYX0xFTkdUSCB9IGZyb20gJy4uL2NvbnN0YW50cy9nbG9iYWwtY29uc3RhbnRzJztcbmltcG9ydCB7IERhdGVWYWxpZGl0eSB9IGZyb20gJy4uL3NlcnZpY2UtcHJveHkvcnBjLXNlcnZpY2UtcHJveGllcyc7XG5cbmNvbnN0IERBVEVfRk9STUFUX1lZWVlfTU1fREQgPSAnWVlZWS1NTS1ERCc7XG5jb25zdCBEQVRFX0ZPUk1BVF9ZWVlZX01NX0REX0hIX01NID0gJ1lZWVktTU0tREQgSEg6bW0nO1xuXG5leHBvcnQgY29uc3QgVkFMSURfREFURVRJTUVfRklMVEVSUyA9IG5ldyBTZXQoW1xuICBEYXRlVmFsaWRpdHkuQ3JlYXRlZEJldHdlZW4sXG4gIERhdGVWYWxpZGl0eS5WYWxpZEJldHdlZW4sXG5dKTtcblxuZXhwb3J0IGVudW0gTWlkZGF5UGVyaW9kIHtcbiAgQU0gPSAxLCBQTSA9IDJcbn1cblxuZXhwb3J0IHR5cGUgVGltZSA9IHtcbiAgaG91cnM6IG51bWJlcjtcbiAgbWludXRlczogbnVtYmVyO1xuICBzZWNvbmRzPzogbnVtYmVyO1xuICBtaWRkYXlQZXJpb2Q/OiBNaWRkYXlQZXJpb2Q7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VTbWFydFBhcmtUaW1lKHZhbHVlPzogbnVtYmVyIHwgbnVsbCkge1xuICAvLyBtb21lbnQncyBgLnNlY29uZHMoeClgIGlzIGEgU0VUVEVSIG9ubHkgd2hlbiBgeCAhPSBudWxsYDsgcGFzc2luZyBhIG51bGxpc2hcbiAgLy8gdmFsdWUgbWFrZXMgaXQgYSBHRVRURVIgdGhhdCByZXR1cm5zIGEgbnVtYmVyLCBzbyBjaGFpbmluZyBgLmZvcm1hdCguLi4pYFxuICAvLyB0aHJvd3MgXCJmb3JtYXQgaXMgbm90IGEgZnVuY3Rpb25cIi4gQ29hbGVzY2UgdG8gMCBzbyB3ZSBhbHdheXMgcmV0dXJuIGEgTW9tZW50LlxuICByZXR1cm4gbW9tZW50KERFRkFVTFRfU01BUlRfUEFSS19EQVRFX1RJTUUpLnNlY29uZHModmFsdWUgPz8gMCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZURhdGVUaW1lVG9TcGFya1BhcmtUaW1lKHNlbGVjdGVkRGF0ZTogRGF0ZSk6IG51bWJlciB7XG4gIGlmICghc2VsZWN0ZWREYXRlKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjb25zdCBkYXRlMiA9IG1vbWVudChzZWxlY3RlZERhdGUpO1xuICAvLyBJZiB0aGUgZGF0ZSB3ZSB3YW50IGlzIGluIERTVCB0aGVuIHRvIGF2b2lkIGluY29ycmVjdCByZXN1bHRzIHdlIG5lZWQgdG8gYWRkIGl0IDEgaG91clxuICBpZiAoZGF0ZTIuaXNEU1QoKSkge1xuICAgIGRhdGUyLmFkZCh7IGhvdXI6IDEgfSk7XG4gIH1cblxuICByZXR1cm4gZGF0ZURpZmZJblNlY29uZHMobW9tZW50KERFRkFVTFRfU01BUlRfUEFSS19EQVRFX1RJTUUpLCBkYXRlMik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXREYXRlVGltZUluU2Vjb25kcyhkYXRlOiBEYXRlLCB0aW1lOiBUaW1lKTogbnVtYmVyIHtcbiAgZGF0ZS5zZXRNaW51dGVzKHRpbWUubWludXRlcyk7XG4gIGRhdGUuc2V0SG91cnModGltZS5ob3Vycyk7XG5cbiAgY29uc3QgZGF0ZVRpbWVJblNlY29uZHM6IG51bWJlciA9IHBhcnNlRGF0ZVRpbWVUb1NwYXJrUGFya1RpbWUoZGF0ZSk7XG5cbiAgcmV0dXJuIGRhdGVUaW1lSW5TZWNvbmRzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGF0ZURpZmZJblNlY29uZHMoZGF0ZTE6IE1vbWVudCwgZGF0ZTI6IE1vbWVudCk6IG51bWJlciB7XG4gIC8vIG1vbWVudCBpZ25vcmUgYW5kIHJldHVybiBkYXRlIHdpdGggc3lzdGVtIHRpbWUgem9uZSAtIHVzaW5nIGZvcm1hdCBjb3JyZWN0IHRoZSBkYXRlIG9iamVjdFxuICBjb25zdCBkZWZhdWx0U21hcnRQYXJrVGltZVVUQyA9IG1vbWVudC50eihkYXRlMSwgJ3V0YycpO1xuXG4gIGNvbnN0IHNlbGVjdGVkRGF0ZUZvcm1hdHRlZCA9IG1vbWVudChkYXRlMi5mb3JtYXQoXCJZWVlZLU1NLUREIEhIOm1tOnNzXCIpKTtcbiAgcmV0dXJuIHNlbGVjdGVkRGF0ZUZvcm1hdHRlZC5kaWZmKGRlZmF1bHRTbWFydFBhcmtUaW1lVVRDLCAnc2Vjb25kcycpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaHVtYW5pemVUaW1lRWxhcHNlZChmcm9tOiBEYXRlLCB0bzogRGF0ZSkge1xuICByZXR1cm4gbW9tZW50LmR1cmF0aW9uKGFkanVzdEZvclRpbWV6b25lKGZyb20pLmdldFRpbWUoKSAtIHRvLmdldFRpbWUoKSkuaHVtYW5pemUoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGh1bWFuaXplVXRjVGltZUVsYXBzZWQoZnJvbTogRGF0ZSwgdG86IERhdGUpIHtcbiAgcmV0dXJuIG1vbWVudC5kdXJhdGlvbihmcm9tLmdldFRpbWUoKSAtIHRvLmdldFRpbWUoKSkuaHVtYW5pemUoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRpZmZJbk1pbGxpcyh2YWx1ZSwgaXNBYnNvbHV0ZSkge1xuICBjb25zdCBkaWZmID0gbW9tZW50LmR1cmF0aW9uKG1vbWVudCh2YWx1ZSkuZGlmZihtb21lbnQoKSkpLmFzTWlsbGlzZWNvbmRzKCk7XG4gIGlmIChpc0Fic29sdXRlKSB7XG4gICAgcmV0dXJuIE1hdGguYWJzKGRpZmYpO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBkaWZmO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRNb21lbnROdWxsYWJsZShkYXRlOiBEYXRlKSB7XG4gIHJldHVybiBkYXRlID8gbW9tZW50KGRhdGUpIDogbnVsbDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFV0Y01vbWVudE51bGxhYmxlKGRhdGU6IERhdGUpIHtcbiAgcmV0dXJuIGRhdGUgPyBtb21lbnQoZGF0ZSkudXRjKHRydWUpIDogbnVsbDtcbn1cblxuLy8gV2hlbiBzdWJ0cmFjdCB0aGUgb2Zmc2V0IGZyb20gdGhlIGN1cnJlbnQgZGF0ZSxcbi8vIFdlIGdldCBhIGRhdGUgdGhhdCBpZiB5b3UgcmVtb3ZlIHRoZSBvZmZzZXQgeW91IHdpbGwgZ2V0IFVUQ2tpbmRcbi8vIG9mIHRoZSB0aW1lIHNlbGVjdGVkXG5leHBvcnQgZnVuY3Rpb24gYWRqdXN0Rm9yVGltZXpvbmUoZGF0ZTogRGF0ZSk6IERhdGUge1xuICByZXR1cm4gbmV3IERhdGUoZGF0ZS5nZXRGdWxsWWVhcigpLCBkYXRlLmdldE1vbnRoKCksIGRhdGUuZ2V0RGF0ZSgpLFxuICAgIGRhdGUuZ2V0SG91cnMoKSwgZGF0ZS5nZXRNaW51dGVzKCkgLSBkYXRlLmdldFRpbWV6b25lT2Zmc2V0KCksIGRhdGUuZ2V0U2Vjb25kcygpKTtcbn1cblxuLy8gcmUtYWRqdXN0IG1ldGhvZCB3aGVuIG5lZWQgdG8gc2V0IGJhY2sgdGhlIHRpbWV6b25lb2Zmc2V0IGFmdGVyIHVzaW5nIGFkanVzdEZvclRpbWV6b25lXG5leHBvcnQgZnVuY3Rpb24gcmVhZGp1c3RGb3JUaW1lem9uZShkYXRlOiBEYXRlKTogRGF0ZSB7XG4gIHJldHVybiAhZGF0ZSA/IG51bGwgOiBuZXcgRGF0ZShkYXRlLmdldEZ1bGxZZWFyKCksIGRhdGUuZ2V0TW9udGgoKSwgZGF0ZS5nZXREYXRlKCksXG4gICAgZGF0ZS5nZXRIb3VycygpLCBkYXRlLmdldE1pbnV0ZXMoKSArIGRhdGUuZ2V0VGltZXpvbmVPZmZzZXQoKSwgZGF0ZS5nZXRTZWNvbmRzKCkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNNYXhEYXlzUmFuZ2VWYWxpZCh2YWxpZEZyb206IERhdGUsIHZhbGlkVG86IERhdGUsIGFsbG93ZWROdW1iZXJPZkRheXM6IG51bWJlcik6IGJvb2xlYW4ge1xuICBsZXQgbWF4RGF5c1JhbmdlVmFsaWQgPSB0cnVlO1xuICBpZiAodmFsaWRGcm9tICYmIHZhbGlkVG8pIHtcbiAgICBjb25zdCB2YWxpZEZyb21EYXRlID0gbW9tZW50KHZhbGlkRnJvbSk7XG4gICAgY29uc3QgdmFsaWRUb0RhdGUgPSBtb21lbnQodmFsaWRUbyk7XG4gICAgY29uc3QgbnVtYmVyT2ZEYXlzID0gbW9tZW50LmR1cmF0aW9uKHZhbGlkVG9EYXRlLmRpZmYodmFsaWRGcm9tRGF0ZSkpLmFzRGF5cygpO1xuICAgIG1heERheXNSYW5nZVZhbGlkID0gIShudW1iZXJPZkRheXMgPiBhbGxvd2VkTnVtYmVyT2ZEYXlzKTtcbiAgfVxuICByZXR1cm4gbWF4RGF5c1JhbmdlVmFsaWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhcmVEYXRlc0lkZW50aWNhbChmcm9tRGF0ZTogRGF0ZSwgdG9EYXRlOiBEYXRlKSB7XG4gIGlmIChmcm9tRGF0ZSAmJiB0b0RhdGUpIHtcbiAgICBjb25zdCB2YWxpZEZyb21EYXRlOiBEYXRlID0gZnJvbURhdGU7XG4gICAgY29uc3QgdmFsaWRUb0RhdGU6IERhdGUgPSB0b0RhdGU7XG4gICAgdmFsaWRGcm9tRGF0ZS5zZXRTZWNvbmRzKDAsIDApO1xuICAgIHZhbGlkVG9EYXRlLnNldFNlY29uZHMoMCwgMCk7XG4gICAgcmV0dXJuIHZhbGlkRnJvbURhdGUuZ2V0VGltZSgpID09PSB2YWxpZFRvRGF0ZS5nZXRUaW1lKCk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFVzZXJUaW1lWm9uZSgpOiBzdHJpbmcge1xuICByZXR1cm4gbW9tZW50LnR6Lmd1ZXNzKCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb252ZXJ0Rm9ybWF0V2l0aG91dFRpbWUoZm9ybWF0OiBzdHJpbmcpIHtcbiAgbGV0IGZvcm1hdFZhbHVlcyA9IGZvcm1hdC5zcGxpdChcImhcIik7XG4gIGlmIChmb3JtYXRWYWx1ZXMubGVuZ3RoID09PSBOT19SRVNVTFQpIHtcbiAgICBmb3JtYXRWYWx1ZXMgPSBmb3JtYXQuc3BsaXQoXCJIXCIpO1xuICB9XG4gIHJldHVybiBmb3JtYXRWYWx1ZXNbMF07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXREYXRlV2l0aG91dFRpbWUocm93VmFsdWVUaW1lOiBNb21lbnQsIGRhdGVGb3JtYXQ6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IGRhdGVQaXBlID0gbmV3IERhdGVQaXBlKCdlbi1VUycpO1xuICBjb25zdCBkYXRlID0gcm93VmFsdWVUaW1lPy50b0RhdGUoKTtcbiAgcmV0dXJuIGRhdGVQaXBlLnRyYW5zZm9ybShkYXRlLCBjb252ZXJ0Rm9ybWF0V2l0aG91dFRpbWUoZGF0ZUZvcm1hdCkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TW9tZW50V2l0aG91dFRpbWUobW9tZW50RGF0ZTogTW9tZW50KTogRGF0ZSB7XG4gIGNvbnN0IGZvcm1hdHRlZERhdGUgPSBtb21lbnREYXRlLmZvcm1hdChEQVRFX0ZPUk1BVF9ZWVlZX01NX0REKTtcbiAgcmV0dXJuIG5ldyBEYXRlKGZvcm1hdHRlZERhdGUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TW9tZW5XaXRoVGltZShtb21lbnREYXRlOiBNb21lbnQpOiBEYXRlIHtcbiAgY29uc3QgZm9ybWF0dGVkRGF0ZSA9IG1vbWVudERhdGUuZm9ybWF0KERBVEVfRk9STUFUX1lZWVlfTU1fRERfSEhfTU0pO1xuICByZXR1cm4gYWRqdXN0Rm9yVGltZXpvbmUobmV3IERhdGUoZm9ybWF0dGVkRGF0ZSkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0TWludXRlc1RvVGltZU51bWJlcih2YWx1ZTogbnVtYmVyKTogc3RyaW5nIHtcbiAgaWYgKHZhbHVlID4gMCkge1xuICAgIHJldHVybiBgJHtNYXRoLmZsb29yKHZhbHVlIC8gNjApLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKX0keyh2YWx1ZSAlIDYwKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyl9YDtcbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0VGltZVdpdGhvdXRNaWRuaWdodCh2YWx1ZTogbnVtYmVyKTogc3RyaW5nIHtcbiAgcmV0dXJuIGZvcm1hdFRpbWVXaXRoU2VwYXJhdG9yKHZhbHVlLCBmYWxzZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRUaW1lV2l0aE1pZG5pZ2h0KHZhbHVlOiBudW1iZXIpOiBzdHJpbmcge1xuICByZXR1cm4gZm9ybWF0VGltZVdpdGhTZXBhcmF0b3IodmFsdWUsIHRydWUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0VGltZVdpdGhvdXRTZXBlcmF0b3JBbmRXaXRoTWlkbmlnaHQodmFsdWU6IG51bWJlcik6IHN0cmluZyB7XG4gIHJldHVybiBmb3JtYXRUaW1lV2l0aG91dFNlcGFyYXRvcih2YWx1ZSwgdHJ1ZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRUaW1lV2l0aG91dFNlcGVyYXRvckFuZFdpdGhvdXRNaWRuaWdodCh2YWx1ZTogbnVtYmVyKTogc3RyaW5nIHtcbiAgcmV0dXJuIGZvcm1hdFRpbWVXaXRob3V0U2VwYXJhdG9yKHZhbHVlLCBmYWxzZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRUaW1lVG9NaW51dGVzKHZhbHVlOiBzdHJpbmcpOiBudW1iZXIge1xuICB2YWx1ZSA9IHZhbHVlPy50b1N0cmluZygpO1xuICBpZiAodmFsdWU/Lmxlbmd0aCA9PT0gVkFMSURfVElNRV9NQVhfTEVOR1RIKSB7XG4gICAgY29uc3QgaCA9ICgoK3ZhbHVlWzBdICogVEVOU19NVUxUSVBMSUVSKSArICt2YWx1ZVsxXSkgKiBNSU5VVEVTX1BFUl9IT1VSO1xuICAgIGNvbnN0IG0gPSArdmFsdWVbMl0gKiBURU5TX01VTFRJUExJRVIgKyArdmFsdWVbM107XG4gICAgcmV0dXJuIGggKyBtO1xuICB9XG5cbiAgcmV0dXJuIG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtaW51dGVzVG9UaW1lKG1pbnV0ZXM6IG51bWJlcik6IFRpbWUge1xuICByZXR1cm4gbWludXRlcyA+PSAwID8geyBob3VyczogTWF0aC5mbG9vcihtaW51dGVzIC8gTUlOVVRFU19QRVJfSE9VUiksIG1pbnV0ZXM6IG1pbnV0ZXMgJSBNSU5VVEVTX1BFUl9IT1VSIH0gOiBudWxsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdGltZVRvTWludXRlcyh0aW1lOiBUaW1lKTogbnVtYmVyIHtcbiAgcmV0dXJuIHRpbWUgPyAodGltZS5ob3VycyAqIE1JTlVURVNfUEVSX0hPVVIpICsgdGltZS5taW51dGVzIDogMDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRpbWVUb01vbWVudCh0aW1lOiBUaW1lKTogbW9tZW50Lk1vbWVudCB8IG51bGwge1xuICBpZiAoIXRpbWUgfHwgdGltZS5ob3VycyA9PSBudWxsIHx8IHRpbWUubWludXRlcyA9PSBudWxsKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBsZXQgeyBob3VycywgbWludXRlcywgc2Vjb25kcywgbWlkZGF5UGVyaW9kIH0gPSB0aW1lO1xuXG4gIGlmIChtaWRkYXlQZXJpb2QgPT09IE1pZGRheVBlcmlvZC5QTSAmJiBob3VycyA8IDEyKSB7XG4gICAgaG91cnMgKz0gMTI7XG4gIH0gZWxzZSBpZiAobWlkZGF5UGVyaW9kID09PSBNaWRkYXlQZXJpb2QuQU0gJiYgaG91cnMgPT09IDEyKSB7XG4gICAgaG91cnMgPSAwO1xuICB9XG5cbiAgcmV0dXJuIG1vbWVudCgpLmhvdXJzKGhvdXJzKS5taW51dGVzKG1pbnV0ZXMpLnNlY29uZHMoc2Vjb25kcyA/PyAwKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEZvcm1hdHRlZFRpbWUobWludXRlczogbnVtYmVyLCBpc01pZG5pZ2h0RW5hYmxlOiBib29sZWFuLCBmb3JtYXQ6IHN0cmluZywgZGVmYXVsdFZhbHVlID0gbnVsbCk6IHN0cmluZyB8IG51bGwge1xuICBpZiAoaXNNaWRuaWdodEVuYWJsZSB8fCBtaW51dGVzID4gMCkge1xuICAgIHJldHVybiBjb252ZXJ0TWludXRlc1RvVGltZShtaW51dGVzLCBmb3JtYXQpO1xuICB9XG5cbiAgcmV0dXJuIGRlZmF1bHRWYWx1ZSAhPT0gbnVsbCA/IGNvbnZlcnRNaW51dGVzVG9UaW1lKGRlZmF1bHRWYWx1ZSwgZm9ybWF0KSA6IG51bGw7XG59XG5cbmZ1bmN0aW9uIGNvbnZlcnRNaW51dGVzVG9UaW1lKG1pbnV0ZXM6IG51bWJlciwgZm9ybWF0OiBzdHJpbmcpIHtcbiAgLy8gRGV0ZXJtaW5lIGlmIHRoZSBmb3JtYXQgaXMgMTItaG91ciBvciAyNC1ob3VyIGFuZCBleHRyYWN0IHRoZSB0aW1lIHBhcnRcbiAgY29uc3QgdGltZUZvcm1hdCA9IGZvcm1hdC50b0xvY2FsZUxvd2VyQ2FzZSgpLmluY2x1ZGVzKCdhJykgPyAnaGg6bW0gQScgOiAnSEg6bW0nO1xuICByZXR1cm4gbW9tZW50KCkuc3RhcnRPZignZGF5JykuYWRkKG1pbnV0ZXMsICdtaW51dGVzJykuZm9ybWF0KHRpbWVGb3JtYXQpO1xufVxuXG4vLyBXcmFwcGVyIG1ldGhvZCB0byBmb3JtYXQgbWludXRlcyB3aXRoIFwiOlwiIGFzIHNlcGFyYXRvciAoZS5nLiwgXCJISDptbVwiKVxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdFRpbWVXaXRoU2VwYXJhdG9yKHZhbHVlOiBudW1iZXIsIGlzTWlkbmlnaHRFbmFibGU6IGJvb2xlYW4pOiBzdHJpbmcgfCBudWxsIHtcbiAgcmV0dXJuIGZvcm1hdFRpbWUodmFsdWUsIGlzTWlkbmlnaHRFbmFibGUsICc6Jyk7XG59XG5cbi8vIFdyYXBwZXIgbWV0aG9kIHRvIGZvcm1hdCBtaW51dGVzIHdpdGhvdXQgc2VwYXJhdG9yIChlLmcuLCBcIkhIbW1cIilcbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRUaW1lV2l0aG91dFNlcGFyYXRvcih2YWx1ZTogbnVtYmVyLCBpc01pZG5pZ2h0RW5hYmxlOiBib29sZWFuKTogc3RyaW5nIHwgbnVsbCB7XG4gIHJldHVybiBmb3JtYXRUaW1lKHZhbHVlLCBpc01pZG5pZ2h0RW5hYmxlLCAnJyk7XG59XG5cbi8vIENvcmUgbWV0aG9kIGZvciBmb3JtYXR0aW5nIG1pbnV0ZXMgd2l0aCBmbGV4aWJpbGl0eSBpbiBvdXRwdXQgZm9ybWF0XG5mdW5jdGlvbiBmb3JtYXRUaW1lKHZhbHVlOiBudW1iZXIsIGlzTWlkbmlnaHRFbmFibGVkOiBib29sZWFuLCBzZXBhcmF0b3I6IHN0cmluZyA9ICc6Jyk6IHN0cmluZyB8IG51bGwge1xuICBpZiAoaXNNaWRuaWdodEVuYWJsZWQgfHwgdmFsdWUgPiAwKSB7XG4gICAgY29uc3QgaG91cnMgPSBNYXRoLmZsb29yKHZhbHVlIC8gTUlOVVRFU19QRVJfSE9VUikudG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCcpO1xuICAgIGNvbnN0IG1pbnV0ZXMgPSAodmFsdWUgJSBNSU5VVEVTX1BFUl9IT1VSKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyk7XG4gICAgcmV0dXJuIGAke2hvdXJzfSR7c2VwYXJhdG9yfSR7bWludXRlc31gO1xuICB9XG4gIHJldHVybiBudWxsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0VGltZVRvU3RyaW5nKG9iajogVGltZSk6IHN0cmluZyB7XG4gIGxldCByZXN1bHQgPSAnLSc7XG5cbiAgaWYgKG9iaikge1xuICAgIGNvbnN0IGhvdXJzID0gb2JqLmhvdXJzPy50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJykgPz8gJzAwJztcbiAgICBjb25zdCBtaW51dGVzID0gb2JqLm1pbnV0ZXM/LnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKSA/PyAnMDAnO1xuICAgIGNvbnN0IHNlY29uZHMgPSBvYmouc2Vjb25kcz8udG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCcpID8/ICcwMCc7XG5cbiAgICByZXN1bHQgPSBgJHtob3Vyc306JHttaW51dGVzfToke3NlY29uZHN9YDtcbiAgfVxuXG4gIHJldHVybiByZXN1bHQ7XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIHRoZSBkYXRlIGZvcm1hdCBzdHJpbmcgdXNlcyBtb250aCBuYW1lcyAoTU1NL01NTU0pXG4gKiBAZXhhbXBsZSBcIk1NTSBkZCwgeXl5eVwiIOKGkiB0cnVlXG4gKiBAZXhhbXBsZSBcIk1NL2RkL3l5eXlcIiDihpIgZmFsc2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhhc01vbnRoTmFtZShmb3JtYXQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICByZXR1cm4gISFmb3JtYXQgJiYgL1xcYk1NTStcXGIvLnRlc3QoZm9ybWF0KTtcbn1cblxuLyoqXG4gKiBDaGVja3MgaWYgdGhlIGRhdGUgZm9ybWF0IHVzZXMgMTItaG91ciB0aW1lIHdpdGggQU0vUE1cbiAqIEBleGFtcGxlIFwiaGg6bW0gYVwiIOKGkiB0cnVlXG4gKiBAZXhhbXBsZSBcIkhIOm1tXCIg4oaSIGZhbHNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoYXNNaWRkYXlQZXJpb2QoZm9ybWF0OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgLy8gIENvbXBsZXRlOiBNYXRjaGVzIGEsIGFtLCBBLCBBTSwgcCwgcG0sIFAsIFBNXG4gIHJldHVybiAhIWZvcm1hdCAmJiAvXFxzW2FwXW0/JC9pLnRlc3QoZm9ybWF0KTtcbn1cbiJdfQ==
@@ -107690,7 +107690,10 @@ var MiddayPeriod;
107690
107690
  MiddayPeriod[MiddayPeriod["PM"] = 2] = "PM";
107691
107691
  })(MiddayPeriod || (MiddayPeriod = {}));
107692
107692
  function parseSmartParkTime(value) {
107693
- return moment$1(DEFAULT_SMART_PARK_DATE_TIME).seconds(value);
107693
+ // moment's `.seconds(x)` is a SETTER only when `x != null`; passing a nullish
107694
+ // value makes it a GETTER that returns a number, so chaining `.format(...)`
107695
+ // throws "format is not a function". Coalesce to 0 so we always return a Moment.
107696
+ return moment$1(DEFAULT_SMART_PARK_DATE_TIME).seconds(value ?? 0);
107694
107697
  }
107695
107698
  function parseDateTimeToSparkParkTime(selectedDate) {
107696
107699
  if (!selectedDate) {