@digipair/skill-web-notification 0.42.0 → 0.43.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/index.cjs.js +1177 -690
  2. package/index.esm.js +1177 -690
  3. package/package.json +1 -1
package/index.cjs.js CHANGED
@@ -8155,7 +8155,7 @@ function _type_of(obj) {
8155
8155
  }
8156
8156
  return self;
8157
8157
  }
8158
- function _class_call_check$i(instance, Constructor) {
8158
+ function _class_call_check$j(instance, Constructor) {
8159
8159
  if (!(instance instanceof Constructor)) {
8160
8160
  throw new TypeError("Cannot call a class as a function");
8161
8161
  }
@@ -8270,7 +8270,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8270
8270
  _inherits$7(LuxonError, Error1);
8271
8271
  var _super = _create_super$7(LuxonError);
8272
8272
  function LuxonError() {
8273
- _class_call_check$i(this, LuxonError);
8273
+ _class_call_check$j(this, LuxonError);
8274
8274
  return _super.apply(this, arguments);
8275
8275
  }
8276
8276
  return LuxonError;
@@ -8281,7 +8281,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8281
8281
  _inherits$7(InvalidDateTimeError, LuxonError);
8282
8282
  var _super = _create_super$7(InvalidDateTimeError);
8283
8283
  function InvalidDateTimeError(reason) {
8284
- _class_call_check$i(this, InvalidDateTimeError);
8284
+ _class_call_check$j(this, InvalidDateTimeError);
8285
8285
  return _super.call(this, "Invalid DateTime: ".concat(reason.toMessage()));
8286
8286
  }
8287
8287
  return InvalidDateTimeError;
@@ -8292,7 +8292,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8292
8292
  _inherits$7(InvalidIntervalError, LuxonError);
8293
8293
  var _super = _create_super$7(InvalidIntervalError);
8294
8294
  function InvalidIntervalError(reason) {
8295
- _class_call_check$i(this, InvalidIntervalError);
8295
+ _class_call_check$j(this, InvalidIntervalError);
8296
8296
  return _super.call(this, "Invalid Interval: ".concat(reason.toMessage()));
8297
8297
  }
8298
8298
  return InvalidIntervalError;
@@ -8303,7 +8303,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8303
8303
  _inherits$7(InvalidDurationError, LuxonError);
8304
8304
  var _super = _create_super$7(InvalidDurationError);
8305
8305
  function InvalidDurationError(reason) {
8306
- _class_call_check$i(this, InvalidDurationError);
8306
+ _class_call_check$j(this, InvalidDurationError);
8307
8307
  return _super.call(this, "Invalid Duration: ".concat(reason.toMessage()));
8308
8308
  }
8309
8309
  return InvalidDurationError;
@@ -8314,7 +8314,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8314
8314
  _inherits$7(ConflictingSpecificationError, LuxonError);
8315
8315
  var _super = _create_super$7(ConflictingSpecificationError);
8316
8316
  function ConflictingSpecificationError() {
8317
- _class_call_check$i(this, ConflictingSpecificationError);
8317
+ _class_call_check$j(this, ConflictingSpecificationError);
8318
8318
  return _super.apply(this, arguments);
8319
8319
  }
8320
8320
  return ConflictingSpecificationError;
@@ -8325,7 +8325,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8325
8325
  _inherits$7(InvalidUnitError, LuxonError);
8326
8326
  var _super = _create_super$7(InvalidUnitError);
8327
8327
  function InvalidUnitError(unit) {
8328
- _class_call_check$i(this, InvalidUnitError);
8328
+ _class_call_check$j(this, InvalidUnitError);
8329
8329
  return _super.call(this, "Invalid unit ".concat(unit));
8330
8330
  }
8331
8331
  return InvalidUnitError;
@@ -8336,7 +8336,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8336
8336
  _inherits$7(InvalidArgumentError, LuxonError);
8337
8337
  var _super = _create_super$7(InvalidArgumentError);
8338
8338
  function InvalidArgumentError() {
8339
- _class_call_check$i(this, InvalidArgumentError);
8339
+ _class_call_check$j(this, InvalidArgumentError);
8340
8340
  return _super.apply(this, arguments);
8341
8341
  }
8342
8342
  return InvalidArgumentError;
@@ -8347,7 +8347,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8347
8347
  _inherits$7(ZoneIsAbstractError, LuxonError);
8348
8348
  var _super = _create_super$7(ZoneIsAbstractError);
8349
8349
  function ZoneIsAbstractError() {
8350
- _class_call_check$i(this, ZoneIsAbstractError);
8350
+ _class_call_check$j(this, ZoneIsAbstractError);
8351
8351
  return _super.call(this, "Zone is an abstract class");
8352
8352
  }
8353
8353
  return ZoneIsAbstractError;
@@ -8504,12 +8504,12 @@ var DATETIME_HUGE_WITH_SECONDS = {
8504
8504
  timeZoneName: l
8505
8505
  };
8506
8506
 
8507
- function _class_call_check$h(instance, Constructor) {
8507
+ function _class_call_check$i(instance, Constructor) {
8508
8508
  if (!(instance instanceof Constructor)) {
8509
8509
  throw new TypeError("Cannot call a class as a function");
8510
8510
  }
8511
8511
  }
8512
- function _defineProperties$h(target, props) {
8512
+ function _defineProperties$i(target, props) {
8513
8513
  for(var i = 0; i < props.length; i++){
8514
8514
  var descriptor = props[i];
8515
8515
  descriptor.enumerable = descriptor.enumerable || false;
@@ -8518,16 +8518,16 @@ function _defineProperties$h(target, props) {
8518
8518
  Object.defineProperty(target, descriptor.key, descriptor);
8519
8519
  }
8520
8520
  }
8521
- function _create_class$h(Constructor, protoProps, staticProps) {
8522
- if (protoProps) _defineProperties$h(Constructor.prototype, protoProps);
8523
- if (staticProps) _defineProperties$h(Constructor, staticProps);
8521
+ function _create_class$i(Constructor, protoProps, staticProps) {
8522
+ if (protoProps) _defineProperties$i(Constructor.prototype, protoProps);
8523
+ if (staticProps) _defineProperties$i(Constructor, staticProps);
8524
8524
  return Constructor;
8525
8525
  }
8526
8526
  var Zone = /*#__PURE__*/ function() {
8527
8527
  function Zone() {
8528
- _class_call_check$h(this, Zone);
8528
+ _class_call_check$i(this, Zone);
8529
8529
  }
8530
- _create_class$h(Zone, [
8530
+ _create_class$i(Zone, [
8531
8531
  {
8532
8532
  key: "type",
8533
8533
  get: /**
@@ -8550,7 +8550,12 @@ var Zone = /*#__PURE__*/ function() {
8550
8550
  },
8551
8551
  {
8552
8552
  key: "ianaName",
8553
- get: function get() {
8553
+ get: /**
8554
+ * The IANA name of this zone.
8555
+ * Defaults to `name` if not overwritten by a subclass.
8556
+ * @abstract
8557
+ * @type {string}
8558
+ */ function get() {
8554
8559
  return this.name;
8555
8560
  }
8556
8561
  },
@@ -8633,12 +8638,12 @@ function _assert_this_initialized$6(self) {
8633
8638
  }
8634
8639
  return self;
8635
8640
  }
8636
- function _class_call_check$g(instance, Constructor) {
8641
+ function _class_call_check$h(instance, Constructor) {
8637
8642
  if (!(instance instanceof Constructor)) {
8638
8643
  throw new TypeError("Cannot call a class as a function");
8639
8644
  }
8640
8645
  }
8641
- function _defineProperties$g(target, props) {
8646
+ function _defineProperties$h(target, props) {
8642
8647
  for(var i = 0; i < props.length; i++){
8643
8648
  var descriptor = props[i];
8644
8649
  descriptor.enumerable = descriptor.enumerable || false;
@@ -8647,9 +8652,9 @@ function _defineProperties$g(target, props) {
8647
8652
  Object.defineProperty(target, descriptor.key, descriptor);
8648
8653
  }
8649
8654
  }
8650
- function _create_class$g(Constructor, protoProps, staticProps) {
8651
- if (protoProps) _defineProperties$g(Constructor.prototype, protoProps);
8652
- if (staticProps) _defineProperties$g(Constructor, staticProps);
8655
+ function _create_class$h(Constructor, protoProps, staticProps) {
8656
+ if (protoProps) _defineProperties$h(Constructor.prototype, protoProps);
8657
+ if (staticProps) _defineProperties$h(Constructor, staticProps);
8653
8658
  return Constructor;
8654
8659
  }
8655
8660
  function _get_prototype_of$6(o) {
@@ -8717,10 +8722,10 @@ var SystemZone = /*#__PURE__*/ function(Zone) {
8717
8722
  _inherits$6(SystemZone, Zone);
8718
8723
  var _super = _create_super$6(SystemZone);
8719
8724
  function SystemZone() {
8720
- _class_call_check$g(this, SystemZone);
8725
+ _class_call_check$h(this, SystemZone);
8721
8726
  return _super.apply(this, arguments);
8722
8727
  }
8723
- _create_class$g(SystemZone, [
8728
+ _create_class$h(SystemZone, [
8724
8729
  {
8725
8730
  key: "type",
8726
8731
  get: /** @override **/ function get() {
@@ -8801,12 +8806,12 @@ function _assert_this_initialized$5(self) {
8801
8806
  }
8802
8807
  return self;
8803
8808
  }
8804
- function _class_call_check$f(instance, Constructor) {
8809
+ function _class_call_check$g(instance, Constructor) {
8805
8810
  if (!(instance instanceof Constructor)) {
8806
8811
  throw new TypeError("Cannot call a class as a function");
8807
8812
  }
8808
8813
  }
8809
- function _defineProperties$f(target, props) {
8814
+ function _defineProperties$g(target, props) {
8810
8815
  for(var i = 0; i < props.length; i++){
8811
8816
  var descriptor = props[i];
8812
8817
  descriptor.enumerable = descriptor.enumerable || false;
@@ -8815,9 +8820,9 @@ function _defineProperties$f(target, props) {
8815
8820
  Object.defineProperty(target, descriptor.key, descriptor);
8816
8821
  }
8817
8822
  }
8818
- function _create_class$f(Constructor, protoProps, staticProps) {
8819
- if (protoProps) _defineProperties$f(Constructor.prototype, protoProps);
8820
- if (staticProps) _defineProperties$f(Constructor, staticProps);
8823
+ function _create_class$g(Constructor, protoProps, staticProps) {
8824
+ if (protoProps) _defineProperties$g(Constructor.prototype, protoProps);
8825
+ if (staticProps) _defineProperties$g(Constructor, staticProps);
8821
8826
  return Constructor;
8822
8827
  }
8823
8828
  function _get_prototype_of$5(o) {
@@ -8964,7 +8969,7 @@ function partsOffset(dtf, date) {
8964
8969
  var pos = typeToPos[type];
8965
8970
  if (type === "era") {
8966
8971
  filled[pos] = value;
8967
- } else if (!isUndefined(pos)) {
8972
+ } else if (!isUndefined$1(pos)) {
8968
8973
  filled[pos] = parseInt(value, 10);
8969
8974
  }
8970
8975
  }
@@ -8975,47 +8980,80 @@ var IANAZone = /*#__PURE__*/ function(Zone) {
8975
8980
  _inherits$5(IANAZone, Zone);
8976
8981
  var _super = _create_super$5(IANAZone);
8977
8982
  function IANAZone(name) {
8978
- _class_call_check$f(this, IANAZone);
8983
+ _class_call_check$g(this, IANAZone);
8979
8984
  var _this;
8980
8985
  _this = _super.call(this);
8981
8986
  /** @private **/ _this.zoneName = name;
8982
8987
  /** @private **/ _this.valid = IANAZone.isValidZone(name);
8983
8988
  return _this;
8984
8989
  }
8985
- _create_class$f(IANAZone, [
8990
+ _create_class$g(IANAZone, [
8986
8991
  {
8987
8992
  key: "type",
8988
- get: /** @override **/ function get() {
8993
+ get: /**
8994
+ * The type of zone. `iana` for all instances of `IANAZone`.
8995
+ * @override
8996
+ * @type {string}
8997
+ */ function get() {
8989
8998
  return "iana";
8990
8999
  }
8991
9000
  },
8992
9001
  {
8993
9002
  key: "name",
8994
- get: /** @override **/ function get() {
9003
+ get: /**
9004
+ * The name of this zone (i.e. the IANA zone name).
9005
+ * @override
9006
+ * @type {string}
9007
+ */ function get() {
8995
9008
  return this.zoneName;
8996
9009
  }
8997
9010
  },
8998
9011
  {
8999
9012
  key: "isUniversal",
9000
- get: /** @override **/ function get() {
9013
+ get: /**
9014
+ * Returns whether the offset is known to be fixed for the whole year:
9015
+ * Always returns false for all IANA zones.
9016
+ * @override
9017
+ * @type {boolean}
9018
+ */ function get() {
9001
9019
  return false;
9002
9020
  }
9003
9021
  },
9004
9022
  {
9005
- /** @override **/ key: "offsetName",
9023
+ /**
9024
+ * Returns the offset's common name (such as EST) at the specified timestamp
9025
+ * @override
9026
+ * @param {number} ts - Epoch milliseconds for which to get the name
9027
+ * @param {Object} opts - Options to affect the format
9028
+ * @param {string} opts.format - What style of offset to return. Accepts 'long' or 'short'.
9029
+ * @param {string} opts.locale - What locale to return the offset name in.
9030
+ * @return {string}
9031
+ */ key: "offsetName",
9006
9032
  value: function offsetName(ts, param) {
9007
9033
  var format = param.format, locale = param.locale;
9008
9034
  return parseZoneInfo(ts, format, locale, this.name);
9009
9035
  }
9010
9036
  },
9011
9037
  {
9012
- /** @override **/ key: "formatOffset",
9038
+ /**
9039
+ * Returns the offset's value as a string
9040
+ * @override
9041
+ * @param {number} ts - Epoch milliseconds for which to get the offset
9042
+ * @param {string} format - What style of offset to return.
9043
+ * Accepts 'narrow', 'short', or 'techie'. Returning '+6', '+06:00', or '+0600' respectively
9044
+ * @return {string}
9045
+ */ key: "formatOffset",
9013
9046
  value: function formatOffset1(ts, format) {
9014
9047
  return formatOffset(this.offset(ts), format);
9015
9048
  }
9016
9049
  },
9017
9050
  {
9018
- /** @override **/ key: "offset",
9051
+ /**
9052
+ * Return the offset in minutes for this zone at the specified timestamp.
9053
+ * @override
9054
+ * @param {number} ts - Epoch milliseconds for which to compute the offset
9055
+ * @return {number}
9056
+ */ key: "offset",
9019
9057
  value: function offset(ts) {
9020
9058
  var date = new Date(ts);
9021
9059
  if (isNaN(date)) return NaN;
@@ -9042,14 +9080,23 @@ var IANAZone = /*#__PURE__*/ function(Zone) {
9042
9080
  }
9043
9081
  },
9044
9082
  {
9045
- /** @override **/ key: "equals",
9083
+ /**
9084
+ * Return whether this Zone is equal to another zone
9085
+ * @override
9086
+ * @param {Zone} otherZone - the zone to compare
9087
+ * @return {boolean}
9088
+ */ key: "equals",
9046
9089
  value: function equals(otherZone) {
9047
9090
  return otherZone.type === "iana" && otherZone.name === this.name;
9048
9091
  }
9049
9092
  },
9050
9093
  {
9051
9094
  key: "isValid",
9052
- get: /** @override **/ function get() {
9095
+ get: /**
9096
+ * Return whether this Zone is valid.
9097
+ * @override
9098
+ * @type {boolean}
9099
+ */ function get() {
9053
9100
  return this.valid;
9054
9101
  }
9055
9102
  }
@@ -9083,7 +9130,7 @@ var IANAZone = /*#__PURE__*/ function(Zone) {
9083
9130
  * @param {string} s - The string to check validity on
9084
9131
  * @example IANAZone.isValidSpecifier("America/New_York") //=> true
9085
9132
  * @example IANAZone.isValidSpecifier("Sport~~blorp") //=> false
9086
- * @deprecated This method returns false for some valid IANA names. Use isValidZone instead.
9133
+ * @deprecated For backward compatibility, this forwards to isValidZone, better use `isValidZone()` directly instead.
9087
9134
  * @return {boolean}
9088
9135
  */ function isValidSpecifier(s) {
9089
9136
  return this.isValidZone(s);
@@ -9124,12 +9171,12 @@ function _array_like_to_array$d(arr, len) {
9124
9171
  function _array_with_holes$b(arr) {
9125
9172
  if (Array.isArray(arr)) return arr;
9126
9173
  }
9127
- function _class_call_check$e(instance, Constructor) {
9174
+ function _class_call_check$f(instance, Constructor) {
9128
9175
  if (!(instance instanceof Constructor)) {
9129
9176
  throw new TypeError("Cannot call a class as a function");
9130
9177
  }
9131
9178
  }
9132
- function _defineProperties$e(target, props) {
9179
+ function _defineProperties$f(target, props) {
9133
9180
  for(var i = 0; i < props.length; i++){
9134
9181
  var descriptor = props[i];
9135
9182
  descriptor.enumerable = descriptor.enumerable || false;
@@ -9138,9 +9185,9 @@ function _defineProperties$e(target, props) {
9138
9185
  Object.defineProperty(target, descriptor.key, descriptor);
9139
9186
  }
9140
9187
  }
9141
- function _create_class$e(Constructor, protoProps, staticProps) {
9142
- if (protoProps) _defineProperties$e(Constructor.prototype, protoProps);
9143
- if (staticProps) _defineProperties$e(Constructor, staticProps);
9188
+ function _create_class$f(Constructor, protoProps, staticProps) {
9189
+ if (protoProps) _defineProperties$f(Constructor.prototype, protoProps);
9190
+ if (staticProps) _defineProperties$f(Constructor, staticProps);
9144
9191
  return Constructor;
9145
9192
  }
9146
9193
  function _define_property$9(obj, key, value) {
@@ -9431,7 +9478,7 @@ function supportsFastNumbers(loc) {
9431
9478
  * @private
9432
9479
  */ var PolyNumberFormatter = /*#__PURE__*/ function() {
9433
9480
  function PolyNumberFormatter(intl, forceSimple, opts) {
9434
- _class_call_check$e(this, PolyNumberFormatter);
9481
+ _class_call_check$f(this, PolyNumberFormatter);
9435
9482
  this.padTo = opts.padTo || 0;
9436
9483
  this.floor = opts.floor || false;
9437
9484
  opts.padTo; opts.floor; var otherOpts = _object_without_properties(opts, [
@@ -9446,7 +9493,7 @@ function supportsFastNumbers(loc) {
9446
9493
  this.inf = getCachedINF(intl, intlOpts);
9447
9494
  }
9448
9495
  }
9449
- _create_class$e(PolyNumberFormatter, [
9496
+ _create_class$f(PolyNumberFormatter, [
9450
9497
  {
9451
9498
  key: "format",
9452
9499
  value: function format(i) {
@@ -9467,7 +9514,7 @@ function supportsFastNumbers(loc) {
9467
9514
  * @private
9468
9515
  */ var PolyDateFormatter = /*#__PURE__*/ function() {
9469
9516
  function PolyDateFormatter(dt, intl, opts) {
9470
- _class_call_check$e(this, PolyDateFormatter);
9517
+ _class_call_check$f(this, PolyDateFormatter);
9471
9518
  this.opts = opts;
9472
9519
  this.originalZone = undefined;
9473
9520
  var z = undefined;
@@ -9513,7 +9560,7 @@ function supportsFastNumbers(loc) {
9513
9560
  intlOpts.timeZone = intlOpts.timeZone || z;
9514
9561
  this.dtf = getCachedDTF(intl, intlOpts);
9515
9562
  }
9516
- _create_class$e(PolyDateFormatter, [
9563
+ _create_class$f(PolyDateFormatter, [
9517
9564
  {
9518
9565
  key: "format",
9519
9566
  value: function format() {
@@ -9564,7 +9611,7 @@ function supportsFastNumbers(loc) {
9564
9611
  * @private
9565
9612
  */ var PolyRelFormatter = /*#__PURE__*/ function() {
9566
9613
  function PolyRelFormatter(intl, isEnglish, opts) {
9567
- _class_call_check$e(this, PolyRelFormatter);
9614
+ _class_call_check$f(this, PolyRelFormatter);
9568
9615
  this.opts = _object_spread$7({
9569
9616
  style: "long"
9570
9617
  }, opts);
@@ -9572,7 +9619,7 @@ function supportsFastNumbers(loc) {
9572
9619
  this.rtf = getCachedRTF(intl, opts);
9573
9620
  }
9574
9621
  }
9575
- _create_class$e(PolyRelFormatter, [
9622
+ _create_class$f(PolyRelFormatter, [
9576
9623
  {
9577
9624
  key: "format",
9578
9625
  value: function format(count, unit) {
@@ -9606,7 +9653,7 @@ var fallbackWeekSettings = {
9606
9653
  };
9607
9654
  var Locale = /*#__PURE__*/ function() {
9608
9655
  function Locale(locale, numbering, outputCalendar, weekSettings, specifiedLocale) {
9609
- _class_call_check$e(this, Locale);
9656
+ _class_call_check$f(this, Locale);
9610
9657
  var _parseLocaleString = _sliced_to_array$b(parseLocaleString(locale), 3), parsedLocale = _parseLocaleString[0], parsedNumberingSystem = _parseLocaleString[1], parsedOutputCalendar = _parseLocaleString[2];
9611
9658
  this.locale = parsedLocale;
9612
9659
  this.numberingSystem = numbering || parsedNumberingSystem || null;
@@ -9626,7 +9673,7 @@ var Locale = /*#__PURE__*/ function() {
9626
9673
  this.specifiedLocale = specifiedLocale;
9627
9674
  this.fastNumbersCached = null;
9628
9675
  }
9629
- _create_class$e(Locale, [
9676
+ _create_class$f(Locale, [
9630
9677
  {
9631
9678
  key: "fastNumbers",
9632
9679
  get: function get() {
@@ -9843,6 +9890,12 @@ var Locale = /*#__PURE__*/ function() {
9843
9890
  value: function equals(other) {
9844
9891
  return this.locale === other.locale && this.numberingSystem === other.numberingSystem && this.outputCalendar === other.outputCalendar;
9845
9892
  }
9893
+ },
9894
+ {
9895
+ key: "toString",
9896
+ value: function toString() {
9897
+ return "Locale(".concat(this.locale, ", ").concat(this.numberingSystem, ", ").concat(this.outputCalendar, ")");
9898
+ }
9846
9899
  }
9847
9900
  ], [
9848
9901
  {
@@ -9856,7 +9909,7 @@ var Locale = /*#__PURE__*/ function() {
9856
9909
  value: function create(locale, numberingSystem, outputCalendar, weekSettings) {
9857
9910
  var defaultToEN = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : false;
9858
9911
  var specifiedLocale = locale || Settings.defaultLocale;
9859
- // the system locale is useful for human readable strings but annoying for parsing/formatting known formats
9912
+ // the system locale is useful for human-readable strings but annoying for parsing/formatting known formats
9860
9913
  var localeR = specifiedLocale || (defaultToEN ? "en-US" : systemLocale());
9861
9914
  var numberingSystemR = numberingSystem || Settings.defaultNumberingSystem;
9862
9915
  var outputCalendarR = outputCalendar || Settings.defaultOutputCalendar;
@@ -9890,12 +9943,12 @@ function _assert_this_initialized$4(self) {
9890
9943
  }
9891
9944
  return self;
9892
9945
  }
9893
- function _class_call_check$d(instance, Constructor) {
9946
+ function _class_call_check$e(instance, Constructor) {
9894
9947
  if (!(instance instanceof Constructor)) {
9895
9948
  throw new TypeError("Cannot call a class as a function");
9896
9949
  }
9897
9950
  }
9898
- function _defineProperties$d(target, props) {
9951
+ function _defineProperties$e(target, props) {
9899
9952
  for(var i = 0; i < props.length; i++){
9900
9953
  var descriptor = props[i];
9901
9954
  descriptor.enumerable = descriptor.enumerable || false;
@@ -9904,9 +9957,9 @@ function _defineProperties$d(target, props) {
9904
9957
  Object.defineProperty(target, descriptor.key, descriptor);
9905
9958
  }
9906
9959
  }
9907
- function _create_class$d(Constructor, protoProps, staticProps) {
9908
- if (protoProps) _defineProperties$d(Constructor.prototype, protoProps);
9909
- if (staticProps) _defineProperties$d(Constructor, staticProps);
9960
+ function _create_class$e(Constructor, protoProps, staticProps) {
9961
+ if (protoProps) _defineProperties$e(Constructor.prototype, protoProps);
9962
+ if (staticProps) _defineProperties$e(Constructor, staticProps);
9910
9963
  return Constructor;
9911
9964
  }
9912
9965
  function _get_prototype_of$4(o) {
@@ -9974,28 +10027,42 @@ var FixedOffsetZone = /*#__PURE__*/ function(Zone) {
9974
10027
  _inherits$4(FixedOffsetZone, Zone);
9975
10028
  var _super = _create_super$4(FixedOffsetZone);
9976
10029
  function FixedOffsetZone(offset) {
9977
- _class_call_check$d(this, FixedOffsetZone);
10030
+ _class_call_check$e(this, FixedOffsetZone);
9978
10031
  var _this;
9979
10032
  _this = _super.call(this);
9980
10033
  /** @private **/ _this.fixed = offset;
9981
10034
  return _this;
9982
10035
  }
9983
- _create_class$d(FixedOffsetZone, [
10036
+ _create_class$e(FixedOffsetZone, [
9984
10037
  {
9985
10038
  key: "type",
9986
- get: /** @override **/ function get() {
10039
+ get: /**
10040
+ * The type of zone. `fixed` for all instances of `FixedOffsetZone`.
10041
+ * @override
10042
+ * @type {string}
10043
+ */ function get() {
9987
10044
  return "fixed";
9988
10045
  }
9989
10046
  },
9990
10047
  {
9991
10048
  key: "name",
9992
- get: /** @override **/ function get() {
10049
+ get: /**
10050
+ * The name of this zone.
10051
+ * All fixed zones' names always start with "UTC" (plus optional offset)
10052
+ * @override
10053
+ * @type {string}
10054
+ */ function get() {
9993
10055
  return this.fixed === 0 ? "UTC" : "UTC".concat(formatOffset(this.fixed, "narrow"));
9994
10056
  }
9995
10057
  },
9996
10058
  {
9997
10059
  key: "ianaName",
9998
- get: function get() {
10060
+ get: /**
10061
+ * The IANA name of this zone, i.e. `Etc/UTC` or `Etc/GMT+/-nn`
10062
+ *
10063
+ * @override
10064
+ * @type {string}
10065
+ */ function get() {
9999
10066
  if (this.fixed === 0) {
10000
10067
  return "Etc/UTC";
10001
10068
  } else {
@@ -10004,38 +10071,71 @@ var FixedOffsetZone = /*#__PURE__*/ function(Zone) {
10004
10071
  }
10005
10072
  },
10006
10073
  {
10007
- /** @override **/ key: "offsetName",
10074
+ /**
10075
+ * Returns the offset's common name at the specified timestamp.
10076
+ *
10077
+ * For fixed offset zones this equals to the zone name.
10078
+ * @override
10079
+ */ key: "offsetName",
10008
10080
  value: function offsetName() {
10009
10081
  return this.name;
10010
10082
  }
10011
10083
  },
10012
10084
  {
10013
- /** @override **/ key: "formatOffset",
10085
+ /**
10086
+ * Returns the offset's value as a string
10087
+ * @override
10088
+ * @param {number} ts - Epoch milliseconds for which to get the offset
10089
+ * @param {string} format - What style of offset to return.
10090
+ * Accepts 'narrow', 'short', or 'techie'. Returning '+6', '+06:00', or '+0600' respectively
10091
+ * @return {string}
10092
+ */ key: "formatOffset",
10014
10093
  value: function formatOffset1(ts, format) {
10015
10094
  return formatOffset(this.fixed, format);
10016
10095
  }
10017
10096
  },
10018
10097
  {
10019
10098
  key: "isUniversal",
10020
- get: /** @override **/ function get() {
10099
+ get: /**
10100
+ * Returns whether the offset is known to be fixed for the whole year:
10101
+ * Always returns true for all fixed offset zones.
10102
+ * @override
10103
+ * @type {boolean}
10104
+ */ function get() {
10021
10105
  return true;
10022
10106
  }
10023
10107
  },
10024
10108
  {
10025
- /** @override **/ key: "offset",
10109
+ /**
10110
+ * Return the offset in minutes for this zone at the specified timestamp.
10111
+ *
10112
+ * For fixed offset zones, this is constant and does not depend on a timestamp.
10113
+ * @override
10114
+ * @return {number}
10115
+ */ key: "offset",
10026
10116
  value: function offset() {
10027
10117
  return this.fixed;
10028
10118
  }
10029
10119
  },
10030
10120
  {
10031
- /** @override **/ key: "equals",
10121
+ /**
10122
+ * Return whether this Zone is equal to another zone (i.e. also fixed and same offset)
10123
+ * @override
10124
+ * @param {Zone} otherZone - the zone to compare
10125
+ * @return {boolean}
10126
+ */ key: "equals",
10032
10127
  value: function equals(otherZone) {
10033
10128
  return otherZone.type === "fixed" && otherZone.fixed === this.fixed;
10034
10129
  }
10035
10130
  },
10036
10131
  {
10037
10132
  key: "isValid",
10038
- get: /** @override **/ function get() {
10133
+ get: /**
10134
+ * Return whether this Zone is valid:
10135
+ * All fixed offset zones are valid.
10136
+ * @override
10137
+ * @type {boolean}
10138
+ */ function get() {
10039
10139
  return true;
10040
10140
  }
10041
10141
  }
@@ -10091,12 +10191,12 @@ function _assert_this_initialized$3(self) {
10091
10191
  }
10092
10192
  return self;
10093
10193
  }
10094
- function _class_call_check$c(instance, Constructor) {
10194
+ function _class_call_check$d(instance, Constructor) {
10095
10195
  if (!(instance instanceof Constructor)) {
10096
10196
  throw new TypeError("Cannot call a class as a function");
10097
10197
  }
10098
10198
  }
10099
- function _defineProperties$c(target, props) {
10199
+ function _defineProperties$d(target, props) {
10100
10200
  for(var i = 0; i < props.length; i++){
10101
10201
  var descriptor = props[i];
10102
10202
  descriptor.enumerable = descriptor.enumerable || false;
@@ -10105,9 +10205,9 @@ function _defineProperties$c(target, props) {
10105
10205
  Object.defineProperty(target, descriptor.key, descriptor);
10106
10206
  }
10107
10207
  }
10108
- function _create_class$c(Constructor, protoProps, staticProps) {
10109
- if (protoProps) _defineProperties$c(Constructor.prototype, protoProps);
10110
- if (staticProps) _defineProperties$c(Constructor, staticProps);
10208
+ function _create_class$d(Constructor, protoProps, staticProps) {
10209
+ if (protoProps) _defineProperties$d(Constructor.prototype, protoProps);
10210
+ if (staticProps) _defineProperties$d(Constructor, staticProps);
10111
10211
  return Constructor;
10112
10212
  }
10113
10213
  function _get_prototype_of$3(o) {
@@ -10174,13 +10274,13 @@ var InvalidZone = /*#__PURE__*/ function(Zone) {
10174
10274
  _inherits$3(InvalidZone, Zone);
10175
10275
  var _super = _create_super$3(InvalidZone);
10176
10276
  function InvalidZone(zoneName) {
10177
- _class_call_check$c(this, InvalidZone);
10277
+ _class_call_check$d(this, InvalidZone);
10178
10278
  var _this;
10179
10279
  _this = _super.call(this);
10180
10280
  /** @private */ _this.zoneName = zoneName;
10181
10281
  return _this;
10182
10282
  }
10183
- _create_class$c(InvalidZone, [
10283
+ _create_class$d(InvalidZone, [
10184
10284
  {
10185
10285
  key: "type",
10186
10286
  get: /** @override **/ function get() {
@@ -10235,7 +10335,7 @@ var InvalidZone = /*#__PURE__*/ function(Zone) {
10235
10335
 
10236
10336
  /**
10237
10337
  * @private
10238
- */ function _instanceof$7(left, right) {
10338
+ */ function _instanceof$8(left, right) {
10239
10339
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
10240
10340
  return !!right[Symbol.hasInstance](left);
10241
10341
  } else {
@@ -10243,9 +10343,9 @@ var InvalidZone = /*#__PURE__*/ function(Zone) {
10243
10343
  }
10244
10344
  }
10245
10345
  function normalizeZone(input, defaultZone) {
10246
- if (isUndefined(input) || input === null) {
10346
+ if (isUndefined$1(input) || input === null) {
10247
10347
  return defaultZone;
10248
- } else if (_instanceof$7(input, Zone)) {
10348
+ } else if (_instanceof$8(input, Zone)) {
10249
10349
  return input;
10250
10350
  } else if (isString$1(input)) {
10251
10351
  var lowered = input.toLowerCase();
@@ -10264,80 +10364,267 @@ function normalizeZone(input, defaultZone) {
10264
10364
  }
10265
10365
  }
10266
10366
 
10267
- function _class_call_check$b(instance, Constructor) {
10268
- if (!(instance instanceof Constructor)) {
10269
- throw new TypeError("Cannot call a class as a function");
10270
- }
10367
+ function _array_like_to_array$c(arr, len) {
10368
+ if (len == null || len > arr.length) len = arr.length;
10369
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
10370
+ return arr2;
10271
10371
  }
10272
- function _defineProperties$b(target, props) {
10273
- for(var i = 0; i < props.length; i++){
10274
- var descriptor = props[i];
10275
- descriptor.enumerable = descriptor.enumerable || false;
10276
- descriptor.configurable = true;
10277
- if ("value" in descriptor) descriptor.writable = true;
10278
- Object.defineProperty(target, descriptor.key, descriptor);
10372
+ function _array_with_holes$a(arr) {
10373
+ if (Array.isArray(arr)) return arr;
10374
+ }
10375
+ function _iterable_to_array_limit$a(arr, i) {
10376
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
10377
+ if (_i == null) return;
10378
+ var _arr = [];
10379
+ var _n = true;
10380
+ var _d = false;
10381
+ var _s, _e;
10382
+ try {
10383
+ for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
10384
+ _arr.push(_s.value);
10385
+ if (i && _arr.length === i) break;
10386
+ }
10387
+ } catch (err) {
10388
+ _d = true;
10389
+ _e = err;
10390
+ } finally{
10391
+ try {
10392
+ if (!_n && _i["return"] != null) _i["return"]();
10393
+ } finally{
10394
+ if (_d) throw _e;
10395
+ }
10279
10396
  }
10397
+ return _arr;
10280
10398
  }
10281
- function _create_class$b(Constructor, protoProps, staticProps) {
10282
- if (protoProps) _defineProperties$b(Constructor.prototype, protoProps);
10283
- if (staticProps) _defineProperties$b(Constructor, staticProps);
10284
- return Constructor;
10399
+ function _non_iterable_rest$a() {
10400
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
10285
10401
  }
10286
- var now = function() {
10287
- return Date.now();
10288
- }, defaultZone = "system", defaultLocale = null, defaultNumberingSystem = null, defaultOutputCalendar = null, twoDigitCutoffYear = 60, throwOnInvalid, defaultWeekSettings = null;
10289
- var Settings = /*#__PURE__*/ function() {
10290
- function Settings() {
10291
- _class_call_check$b(this, Settings);
10292
- }
10293
- _create_class$b(Settings, null, [
10294
- {
10295
- key: "now",
10296
- get: /**
10297
- * Get the callback for returning the current timestamp.
10298
- * @type {function}
10299
- */ function get() {
10300
- return now;
10301
- },
10302
- set: /**
10303
- * Set the callback for returning the current timestamp.
10304
- * The function should return a number, which will be interpreted as an Epoch millisecond count
10305
- * @type {function}
10306
- * @example Settings.now = () => Date.now() + 3000 // pretend it is 3 seconds in the future
10307
- * @example Settings.now = () => 0 // always pretend it's Jan 1, 1970 at midnight in UTC time
10308
- */ function set(n) {
10309
- now = n;
10310
- }
10311
- },
10312
- {
10313
- key: "defaultZone",
10314
- get: /**
10315
- * Get the default time zone object currently used to create DateTimes. Does not affect existing instances.
10316
- * The default value is the system's time zone (the one set on the machine that runs this code).
10317
- * @type {Zone}
10318
- */ function get() {
10319
- return normalizeZone(defaultZone, SystemZone.instance);
10320
- },
10321
- set: /**
10322
- * Set the default time zone to create DateTimes in. Does not affect existing instances.
10323
- * Use the value "system" to reset this value to the system's time zone.
10324
- * @type {string}
10325
- */ function set(zone) {
10326
- defaultZone = zone;
10327
- }
10328
- },
10329
- {
10330
- key: "defaultLocale",
10331
- get: /**
10332
- * Get the default locale to create DateTimes with. Does not affect existing instances.
10333
- * @type {string}
10334
- */ function get() {
10335
- return defaultLocale;
10336
- },
10337
- set: /**
10338
- * Set the default locale to create DateTimes with. Does not affect existing instances.
10339
- * @type {string}
10340
- */ function set(locale) {
10402
+ function _sliced_to_array$a(arr, i) {
10403
+ return _array_with_holes$a(arr) || _iterable_to_array_limit$a(arr, i) || _unsupported_iterable_to_array$c(arr, i) || _non_iterable_rest$a();
10404
+ }
10405
+ function _unsupported_iterable_to_array$c(o, minLen) {
10406
+ if (!o) return;
10407
+ if (typeof o === "string") return _array_like_to_array$c(o, minLen);
10408
+ var n = Object.prototype.toString.call(o).slice(8, -1);
10409
+ if (n === "Object" && o.constructor) n = o.constructor.name;
10410
+ if (n === "Map" || n === "Set") return Array.from(n);
10411
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$c(o, minLen);
10412
+ }
10413
+ var numberingSystems = {
10414
+ arab: "[٠-٩]",
10415
+ arabext: "[۰-۹]",
10416
+ bali: "[᭐-᭙]",
10417
+ beng: "[০-৯]",
10418
+ deva: "[०-९]",
10419
+ fullwide: "[0-9]",
10420
+ gujr: "[૦-૯]",
10421
+ hanidec: "[〇|一|二|三|四|五|六|七|八|九]",
10422
+ khmr: "[០-៩]",
10423
+ knda: "[೦-೯]",
10424
+ laoo: "[໐-໙]",
10425
+ limb: "[᥆-᥏]",
10426
+ mlym: "[൦-൯]",
10427
+ mong: "[᠐-᠙]",
10428
+ mymr: "[၀-၉]",
10429
+ orya: "[୦-୯]",
10430
+ tamldec: "[௦-௯]",
10431
+ telu: "[౦-౯]",
10432
+ thai: "[๐-๙]",
10433
+ tibt: "[༠-༩]",
10434
+ latn: "\\d"
10435
+ };
10436
+ var numberingSystemsUTF16 = {
10437
+ arab: [
10438
+ 1632,
10439
+ 1641
10440
+ ],
10441
+ arabext: [
10442
+ 1776,
10443
+ 1785
10444
+ ],
10445
+ bali: [
10446
+ 6992,
10447
+ 7001
10448
+ ],
10449
+ beng: [
10450
+ 2534,
10451
+ 2543
10452
+ ],
10453
+ deva: [
10454
+ 2406,
10455
+ 2415
10456
+ ],
10457
+ fullwide: [
10458
+ 65296,
10459
+ 65303
10460
+ ],
10461
+ gujr: [
10462
+ 2790,
10463
+ 2799
10464
+ ],
10465
+ khmr: [
10466
+ 6112,
10467
+ 6121
10468
+ ],
10469
+ knda: [
10470
+ 3302,
10471
+ 3311
10472
+ ],
10473
+ laoo: [
10474
+ 3792,
10475
+ 3801
10476
+ ],
10477
+ limb: [
10478
+ 6470,
10479
+ 6479
10480
+ ],
10481
+ mlym: [
10482
+ 3430,
10483
+ 3439
10484
+ ],
10485
+ mong: [
10486
+ 6160,
10487
+ 6169
10488
+ ],
10489
+ mymr: [
10490
+ 4160,
10491
+ 4169
10492
+ ],
10493
+ orya: [
10494
+ 2918,
10495
+ 2927
10496
+ ],
10497
+ tamldec: [
10498
+ 3046,
10499
+ 3055
10500
+ ],
10501
+ telu: [
10502
+ 3174,
10503
+ 3183
10504
+ ],
10505
+ thai: [
10506
+ 3664,
10507
+ 3673
10508
+ ],
10509
+ tibt: [
10510
+ 3872,
10511
+ 3881
10512
+ ]
10513
+ };
10514
+ var hanidecChars = numberingSystems.hanidec.replace(/[\[|\]]/g, "").split("");
10515
+ function parseDigits(str) {
10516
+ var value = parseInt(str, 10);
10517
+ if (isNaN(value)) {
10518
+ value = "";
10519
+ for(var i = 0; i < str.length; i++){
10520
+ var code = str.charCodeAt(i);
10521
+ if (str[i].search(numberingSystems.hanidec) !== -1) {
10522
+ value += hanidecChars.indexOf(str[i]);
10523
+ } else {
10524
+ for(var key in numberingSystemsUTF16){
10525
+ var _numberingSystemsUTF16_key = _sliced_to_array$a(numberingSystemsUTF16[key], 2), min = _numberingSystemsUTF16_key[0], max = _numberingSystemsUTF16_key[1];
10526
+ if (code >= min && code <= max) {
10527
+ value += code - min;
10528
+ }
10529
+ }
10530
+ }
10531
+ }
10532
+ return parseInt(value, 10);
10533
+ } else {
10534
+ return value;
10535
+ }
10536
+ }
10537
+ // cache of {numberingSystem: {append: regex}}
10538
+ var digitRegexCache = {};
10539
+ function resetDigitRegexCache() {
10540
+ digitRegexCache = {};
10541
+ }
10542
+ function digitRegex(param) {
10543
+ var numberingSystem = param.numberingSystem, append = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "";
10544
+ var ns = numberingSystem || "latn";
10545
+ if (!digitRegexCache[ns]) {
10546
+ digitRegexCache[ns] = {};
10547
+ }
10548
+ if (!digitRegexCache[ns][append]) {
10549
+ digitRegexCache[ns][append] = new RegExp("".concat(numberingSystems[ns]).concat(append));
10550
+ }
10551
+ return digitRegexCache[ns][append];
10552
+ }
10553
+
10554
+ function _class_call_check$c(instance, Constructor) {
10555
+ if (!(instance instanceof Constructor)) {
10556
+ throw new TypeError("Cannot call a class as a function");
10557
+ }
10558
+ }
10559
+ function _defineProperties$c(target, props) {
10560
+ for(var i = 0; i < props.length; i++){
10561
+ var descriptor = props[i];
10562
+ descriptor.enumerable = descriptor.enumerable || false;
10563
+ descriptor.configurable = true;
10564
+ if ("value" in descriptor) descriptor.writable = true;
10565
+ Object.defineProperty(target, descriptor.key, descriptor);
10566
+ }
10567
+ }
10568
+ function _create_class$c(Constructor, protoProps, staticProps) {
10569
+ if (protoProps) _defineProperties$c(Constructor.prototype, protoProps);
10570
+ if (staticProps) _defineProperties$c(Constructor, staticProps);
10571
+ return Constructor;
10572
+ }
10573
+ var now = function() {
10574
+ return Date.now();
10575
+ }, defaultZone = "system", defaultLocale = null, defaultNumberingSystem = null, defaultOutputCalendar = null, twoDigitCutoffYear = 60, throwOnInvalid, defaultWeekSettings = null;
10576
+ var Settings = /*#__PURE__*/ function() {
10577
+ function Settings() {
10578
+ _class_call_check$c(this, Settings);
10579
+ }
10580
+ _create_class$c(Settings, null, [
10581
+ {
10582
+ key: "now",
10583
+ get: /**
10584
+ * Get the callback for returning the current timestamp.
10585
+ * @type {function}
10586
+ */ function get() {
10587
+ return now;
10588
+ },
10589
+ set: /**
10590
+ * Set the callback for returning the current timestamp.
10591
+ * The function should return a number, which will be interpreted as an Epoch millisecond count
10592
+ * @type {function}
10593
+ * @example Settings.now = () => Date.now() + 3000 // pretend it is 3 seconds in the future
10594
+ * @example Settings.now = () => 0 // always pretend it's Jan 1, 1970 at midnight in UTC time
10595
+ */ function set(n) {
10596
+ now = n;
10597
+ }
10598
+ },
10599
+ {
10600
+ key: "defaultZone",
10601
+ get: /**
10602
+ * Get the default time zone object currently used to create DateTimes. Does not affect existing instances.
10603
+ * The default value is the system's time zone (the one set on the machine that runs this code).
10604
+ * @type {Zone}
10605
+ */ function get() {
10606
+ return normalizeZone(defaultZone, SystemZone.instance);
10607
+ },
10608
+ set: /**
10609
+ * Set the default time zone to create DateTimes in. Does not affect existing instances.
10610
+ * Use the value "system" to reset this value to the system's time zone.
10611
+ * @type {string}
10612
+ */ function set(zone) {
10613
+ defaultZone = zone;
10614
+ }
10615
+ },
10616
+ {
10617
+ key: "defaultLocale",
10618
+ get: /**
10619
+ * Get the default locale to create DateTimes with. Does not affect existing instances.
10620
+ * @type {string}
10621
+ */ function get() {
10622
+ return defaultLocale;
10623
+ },
10624
+ set: /**
10625
+ * Set the default locale to create DateTimes with. Does not affect existing instances.
10626
+ * @type {string}
10627
+ */ function set(locale) {
10341
10628
  defaultLocale = locale;
10342
10629
  }
10343
10630
  },
@@ -10396,16 +10683,17 @@ var Settings = /*#__PURE__*/ function() {
10396
10683
  {
10397
10684
  key: "twoDigitCutoffYear",
10398
10685
  get: /**
10399
- * Get the cutoff year after which a string encoding a year as two digits is interpreted to occur in the current century.
10686
+ * Get the cutoff year for whether a 2-digit year string is interpreted in the current or previous century. Numbers higher than the cutoff will be considered to mean 19xx and numbers lower or equal to the cutoff will be considered 20xx.
10400
10687
  * @type {number}
10401
10688
  */ function get() {
10402
10689
  return twoDigitCutoffYear;
10403
10690
  },
10404
10691
  set: /**
10405
- * Set the cutoff year after which a string encoding a year as two digits is interpreted to occur in the current century.
10692
+ * Set the cutoff year for whether a 2-digit year string is interpreted in the current or previous century. Numbers higher than the cutoff will be considered to mean 19xx and numbers lower or equal to the cutoff will be considered 20xx.
10406
10693
  * @type {number}
10407
- * @example Settings.twoDigitCutoffYear = 0 // cut-off year is 0, so all 'yy' are interpreted as current century
10408
- * @example Settings.twoDigitCutoffYear = 50 // '49' -> 1949; '50' -> 2050
10694
+ * @example Settings.twoDigitCutoffYear = 0 // all 'yy' are interpreted as 20th century
10695
+ * @example Settings.twoDigitCutoffYear = 99 // all 'yy' are interpreted as 21st century
10696
+ * @example Settings.twoDigitCutoffYear = 50 // '49' -> 2049; '50' -> 1950
10409
10697
  * @example Settings.twoDigitCutoffYear = 1950 // interpreted as 50
10410
10698
  * @example Settings.twoDigitCutoffYear = 2050 // ALSO interpreted as 50
10411
10699
  */ function set(cutoffYear) {
@@ -10435,18 +10723,20 @@ var Settings = /*#__PURE__*/ function() {
10435
10723
  */ function resetCaches() {
10436
10724
  Locale.resetCache();
10437
10725
  IANAZone.resetCache();
10726
+ DateTime.resetCache();
10727
+ resetDigitRegexCache();
10438
10728
  }
10439
10729
  }
10440
10730
  ]);
10441
10731
  return Settings;
10442
10732
  }();
10443
10733
 
10444
- function _class_call_check$a(instance, Constructor) {
10734
+ function _class_call_check$b(instance, Constructor) {
10445
10735
  if (!(instance instanceof Constructor)) {
10446
10736
  throw new TypeError("Cannot call a class as a function");
10447
10737
  }
10448
10738
  }
10449
- function _defineProperties$a(target, props) {
10739
+ function _defineProperties$b(target, props) {
10450
10740
  for(var i = 0; i < props.length; i++){
10451
10741
  var descriptor = props[i];
10452
10742
  descriptor.enumerable = descriptor.enumerable || false;
@@ -10455,18 +10745,18 @@ function _defineProperties$a(target, props) {
10455
10745
  Object.defineProperty(target, descriptor.key, descriptor);
10456
10746
  }
10457
10747
  }
10458
- function _create_class$a(Constructor, protoProps, staticProps) {
10459
- if (protoProps) _defineProperties$a(Constructor.prototype, protoProps);
10460
- if (staticProps) _defineProperties$a(Constructor, staticProps);
10748
+ function _create_class$b(Constructor, protoProps, staticProps) {
10749
+ if (protoProps) _defineProperties$b(Constructor.prototype, protoProps);
10750
+ if (staticProps) _defineProperties$b(Constructor, staticProps);
10461
10751
  return Constructor;
10462
10752
  }
10463
10753
  var Invalid = /*#__PURE__*/ function() {
10464
10754
  function Invalid(reason, explanation) {
10465
- _class_call_check$a(this, Invalid);
10755
+ _class_call_check$b(this, Invalid);
10466
10756
  this.reason = reason;
10467
10757
  this.explanation = explanation;
10468
10758
  }
10469
- _create_class$a(Invalid, [
10759
+ _create_class$b(Invalid, [
10470
10760
  {
10471
10761
  key: "toMessage",
10472
10762
  value: function toMessage() {
@@ -10630,15 +10920,15 @@ function ordinalToGregorian(ordinalData) {
10630
10920
  * Modifies obj in-place!
10631
10921
  * @param obj the object values
10632
10922
  */ function usesLocalWeekValues(obj, loc) {
10633
- var hasLocaleWeekData = !isUndefined(obj.localWeekday) || !isUndefined(obj.localWeekNumber) || !isUndefined(obj.localWeekYear);
10923
+ var hasLocaleWeekData = !isUndefined$1(obj.localWeekday) || !isUndefined$1(obj.localWeekNumber) || !isUndefined$1(obj.localWeekYear);
10634
10924
  if (hasLocaleWeekData) {
10635
- var hasIsoWeekData = !isUndefined(obj.weekday) || !isUndefined(obj.weekNumber) || !isUndefined(obj.weekYear);
10925
+ var hasIsoWeekData = !isUndefined$1(obj.weekday) || !isUndefined$1(obj.weekNumber) || !isUndefined$1(obj.weekYear);
10636
10926
  if (hasIsoWeekData) {
10637
10927
  throw new ConflictingSpecificationError("Cannot mix locale-based week fields with ISO-based week fields");
10638
10928
  }
10639
- if (!isUndefined(obj.localWeekday)) obj.weekday = obj.localWeekday;
10640
- if (!isUndefined(obj.localWeekNumber)) obj.weekNumber = obj.localWeekNumber;
10641
- if (!isUndefined(obj.localWeekYear)) obj.weekYear = obj.localWeekYear;
10929
+ if (!isUndefined$1(obj.localWeekday)) obj.weekday = obj.localWeekday;
10930
+ if (!isUndefined$1(obj.localWeekNumber)) obj.weekNumber = obj.localWeekNumber;
10931
+ if (!isUndefined$1(obj.localWeekYear)) obj.weekYear = obj.localWeekYear;
10642
10932
  delete obj.localWeekday;
10643
10933
  delete obj.localWeekNumber;
10644
10934
  delete obj.localWeekYear;
@@ -10731,7 +11021,7 @@ function _object_spread$5(target) {
10731
11021
  /**
10732
11022
  * @private
10733
11023
  */ // TYPES
10734
- function isUndefined(o) {
11024
+ function isUndefined$1(o) {
10735
11025
  return typeof o === "undefined";
10736
11026
  }
10737
11027
  function isNumber$1(o) {
@@ -10832,14 +11122,14 @@ function padStart(input) {
10832
11122
  return padded;
10833
11123
  }
10834
11124
  function parseInteger(string) {
10835
- if (isUndefined(string) || string === null || string === "") {
11125
+ if (isUndefined$1(string) || string === null || string === "") {
10836
11126
  return undefined;
10837
11127
  } else {
10838
11128
  return parseInt(string, 10);
10839
11129
  }
10840
11130
  }
10841
11131
  function parseFloating(string) {
10842
- if (isUndefined(string) || string === null || string === "") {
11132
+ if (isUndefined$1(string) || string === null || string === "") {
10843
11133
  return undefined;
10844
11134
  } else {
10845
11135
  return parseFloat(string);
@@ -10847,7 +11137,7 @@ function parseFloating(string) {
10847
11137
  }
10848
11138
  function parseMillis(fraction) {
10849
11139
  // Return undefined (instead of 0) in these cases, where fraction is not set
10850
- if (isUndefined(fraction) || fraction === null || fraction === "") {
11140
+ if (isUndefined$1(fraction) || fraction === null || fraction === "") {
10851
11141
  return undefined;
10852
11142
  } else {
10853
11143
  var f = parseFloat("0." + fraction) * 1000;
@@ -10965,7 +11255,13 @@ function normalizeObject(obj, normalizer) {
10965
11255
  }
10966
11256
  return normalized;
10967
11257
  }
10968
- function formatOffset(offset, format) {
11258
+ /**
11259
+ * Returns the offset's value as a string
11260
+ * @param {number} ts - Epoch milliseconds for which to get the offset
11261
+ * @param {string} format - What style of offset to return.
11262
+ * Accepts 'narrow', 'short', or 'techie'. Returning '+6', '+06:00', or '+0600' respectively
11263
+ * @return {string}
11264
+ */ function formatOffset(offset, format) {
10969
11265
  var hours = Math.trunc(Math.abs(offset / 60)), minutes = Math.trunc(Math.abs(offset % 60)), sign = offset >= 0 ? "+" : "-";
10970
11266
  switch(format){
10971
11267
  case "short":
@@ -10987,13 +11283,13 @@ function timeObject(obj) {
10987
11283
  ]);
10988
11284
  }
10989
11285
 
10990
- function _array_like_to_array$c(arr, len) {
11286
+ function _array_like_to_array$b(arr, len) {
10991
11287
  if (len == null || len > arr.length) len = arr.length;
10992
11288
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
10993
11289
  return arr2;
10994
11290
  }
10995
11291
  function _array_without_holes$7(arr) {
10996
- if (Array.isArray(arr)) return _array_like_to_array$c(arr);
11292
+ if (Array.isArray(arr)) return _array_like_to_array$b(arr);
10997
11293
  }
10998
11294
  function _iterable_to_array$7(iter) {
10999
11295
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
@@ -11002,15 +11298,15 @@ function _non_iterable_spread$7() {
11002
11298
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
11003
11299
  }
11004
11300
  function _to_consumable_array$7(arr) {
11005
- return _array_without_holes$7(arr) || _iterable_to_array$7(arr) || _unsupported_iterable_to_array$c(arr) || _non_iterable_spread$7();
11301
+ return _array_without_holes$7(arr) || _iterable_to_array$7(arr) || _unsupported_iterable_to_array$b(arr) || _non_iterable_spread$7();
11006
11302
  }
11007
- function _unsupported_iterable_to_array$c(o, minLen) {
11303
+ function _unsupported_iterable_to_array$b(o, minLen) {
11008
11304
  if (!o) return;
11009
- if (typeof o === "string") return _array_like_to_array$c(o, minLen);
11305
+ if (typeof o === "string") return _array_like_to_array$b(o, minLen);
11010
11306
  var n = Object.prototype.toString.call(o).slice(8, -1);
11011
11307
  if (n === "Object" && o.constructor) n = o.constructor.name;
11012
11308
  if (n === "Map" || n === "Set") return Array.from(n);
11013
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$c(o, minLen);
11309
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$b(o, minLen);
11014
11310
  }
11015
11311
  /**
11016
11312
  * @private
@@ -11244,20 +11540,20 @@ function formatRelativeTime(unit, count) {
11244
11540
  return isInPast ? "".concat(fmtValue, " ").concat(fmtUnit, " ago") : "in ".concat(fmtValue, " ").concat(fmtUnit);
11245
11541
  }
11246
11542
 
11247
- function _array_like_to_array$b(arr, len) {
11543
+ function _array_like_to_array$a(arr, len) {
11248
11544
  if (len == null || len > arr.length) len = arr.length;
11249
11545
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
11250
11546
  return arr2;
11251
11547
  }
11252
11548
  function _array_without_holes$6(arr) {
11253
- if (Array.isArray(arr)) return _array_like_to_array$b(arr);
11549
+ if (Array.isArray(arr)) return _array_like_to_array$a(arr);
11254
11550
  }
11255
- function _class_call_check$9(instance, Constructor) {
11551
+ function _class_call_check$a(instance, Constructor) {
11256
11552
  if (!(instance instanceof Constructor)) {
11257
11553
  throw new TypeError("Cannot call a class as a function");
11258
11554
  }
11259
11555
  }
11260
- function _defineProperties$9(target, props) {
11556
+ function _defineProperties$a(target, props) {
11261
11557
  for(var i = 0; i < props.length; i++){
11262
11558
  var descriptor = props[i];
11263
11559
  descriptor.enumerable = descriptor.enumerable || false;
@@ -11266,9 +11562,9 @@ function _defineProperties$9(target, props) {
11266
11562
  Object.defineProperty(target, descriptor.key, descriptor);
11267
11563
  }
11268
11564
  }
11269
- function _create_class$9(Constructor, protoProps, staticProps) {
11270
- if (protoProps) _defineProperties$9(Constructor.prototype, protoProps);
11271
- if (staticProps) _defineProperties$9(Constructor, staticProps);
11565
+ function _create_class$a(Constructor, protoProps, staticProps) {
11566
+ if (protoProps) _defineProperties$a(Constructor.prototype, protoProps);
11567
+ if (staticProps) _defineProperties$a(Constructor, staticProps);
11272
11568
  return Constructor;
11273
11569
  }
11274
11570
  function _define_property$6(obj, key, value) {
@@ -11306,15 +11602,15 @@ function _object_spread$4(target) {
11306
11602
  return target;
11307
11603
  }
11308
11604
  function _to_consumable_array$6(arr) {
11309
- return _array_without_holes$6(arr) || _iterable_to_array$6(arr) || _unsupported_iterable_to_array$b(arr) || _non_iterable_spread$6();
11605
+ return _array_without_holes$6(arr) || _iterable_to_array$6(arr) || _unsupported_iterable_to_array$a(arr) || _non_iterable_spread$6();
11310
11606
  }
11311
- function _unsupported_iterable_to_array$b(o, minLen) {
11607
+ function _unsupported_iterable_to_array$a(o, minLen) {
11312
11608
  if (!o) return;
11313
- if (typeof o === "string") return _array_like_to_array$b(o, minLen);
11609
+ if (typeof o === "string") return _array_like_to_array$a(o, minLen);
11314
11610
  var n = Object.prototype.toString.call(o).slice(8, -1);
11315
11611
  if (n === "Object" && o.constructor) n = o.constructor.name;
11316
11612
  if (n === "Map" || n === "Set") return Array.from(n);
11317
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$b(o, minLen);
11613
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$a(o, minLen);
11318
11614
  }
11319
11615
  function stringifyTokens(splits, tokenToString) {
11320
11616
  var s = "";
@@ -11368,12 +11664,12 @@ var macroTokenToFormatOpts = {
11368
11664
  };
11369
11665
  var Formatter = /*#__PURE__*/ function() {
11370
11666
  function Formatter(locale, formatOpts) {
11371
- _class_call_check$9(this, Formatter);
11667
+ _class_call_check$a(this, Formatter);
11372
11668
  this.opts = formatOpts;
11373
11669
  this.loc = locale;
11374
11670
  this.systemLoc = null;
11375
11671
  }
11376
- _create_class$9(Formatter, [
11672
+ _create_class$a(Formatter, [
11377
11673
  {
11378
11674
  key: "formatWithSystemDefault",
11379
11675
  value: function formatWithSystemDefault(dt, opts) {
@@ -11794,12 +12090,12 @@ var Formatter = /*#__PURE__*/ function() {
11794
12090
  return Formatter;
11795
12091
  }();
11796
12092
 
11797
- function _array_like_to_array$a(arr, len) {
12093
+ function _array_like_to_array$9(arr, len) {
11798
12094
  if (len == null || len > arr.length) len = arr.length;
11799
12095
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
11800
12096
  return arr2;
11801
12097
  }
11802
- function _array_with_holes$a(arr) {
12098
+ function _array_with_holes$9(arr) {
11803
12099
  if (Array.isArray(arr)) return arr;
11804
12100
  }
11805
12101
  function _define_property$5(obj, key, value) {
@@ -11815,7 +12111,7 @@ function _define_property$5(obj, key, value) {
11815
12111
  }
11816
12112
  return obj;
11817
12113
  }
11818
- function _iterable_to_array_limit$a(arr, i) {
12114
+ function _iterable_to_array_limit$9(arr, i) {
11819
12115
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
11820
12116
  if (_i == null) return;
11821
12117
  var _arr = [];
@@ -11839,7 +12135,7 @@ function _iterable_to_array_limit$a(arr, i) {
11839
12135
  }
11840
12136
  return _arr;
11841
12137
  }
11842
- function _non_iterable_rest$a() {
12138
+ function _non_iterable_rest$9() {
11843
12139
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
11844
12140
  }
11845
12141
  function _object_spread$3(target) {
@@ -11857,16 +12153,16 @@ function _object_spread$3(target) {
11857
12153
  }
11858
12154
  return target;
11859
12155
  }
11860
- function _sliced_to_array$a(arr, i) {
11861
- return _array_with_holes$a(arr) || _iterable_to_array_limit$a(arr, i) || _unsupported_iterable_to_array$a(arr, i) || _non_iterable_rest$a();
12156
+ function _sliced_to_array$9(arr, i) {
12157
+ return _array_with_holes$9(arr) || _iterable_to_array_limit$9(arr, i) || _unsupported_iterable_to_array$9(arr, i) || _non_iterable_rest$9();
11862
12158
  }
11863
- function _unsupported_iterable_to_array$a(o, minLen) {
12159
+ function _unsupported_iterable_to_array$9(o, minLen) {
11864
12160
  if (!o) return;
11865
- if (typeof o === "string") return _array_like_to_array$a(o, minLen);
12161
+ if (typeof o === "string") return _array_like_to_array$9(o, minLen);
11866
12162
  var n = Object.prototype.toString.call(o).slice(8, -1);
11867
12163
  if (n === "Object" && o.constructor) n = o.constructor.name;
11868
12164
  if (n === "Map" || n === "Set") return Array.from(n);
11869
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$a(o, minLen);
12165
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$9(o, minLen);
11870
12166
  }
11871
12167
  /*
11872
12168
  * This file handles parsing for well-specified formats. Here's how it works:
@@ -11892,8 +12188,8 @@ function combineExtractors() {
11892
12188
  }
11893
12189
  return function(m) {
11894
12190
  return extractors.reduce(function(param, ex) {
11895
- var _param = _sliced_to_array$a(param, 3), mergedVals = _param[0], mergedZone = _param[1], cursor = _param[2];
11896
- var _ex = _sliced_to_array$a(ex(m, cursor), 3), val = _ex[0], zone = _ex[1], next = _ex[2];
12191
+ var _param = _sliced_to_array$9(param, 3), mergedVals = _param[0], mergedZone = _param[1], cursor = _param[2];
12192
+ var _ex = _sliced_to_array$9(ex(m, cursor), 3), val = _ex[0], zone = _ex[1], next = _ex[2];
11897
12193
  return [
11898
12194
  _object_spread$3({}, mergedVals, val),
11899
12195
  zone || mergedZone,
@@ -11919,7 +12215,7 @@ function parse(s) {
11919
12215
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
11920
12216
  try {
11921
12217
  for(var _iterator = patterns[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
11922
- var _step_value = _sliced_to_array$a(_step.value, 2), regex = _step_value[0], extractor = _step_value[1];
12218
+ var _step_value = _sliced_to_array$9(_step.value, 2), regex = _step_value[0], extractor = _step_value[1];
11923
12219
  var m = regex.exec(s);
11924
12220
  if (m) {
11925
12221
  return extractor(m);
@@ -11977,7 +12273,7 @@ var sqlTimeRegex = RegExp("".concat(isoTimeBaseRegex.source, " ?(?:").concat(off
11977
12273
  var sqlTimeExtensionRegex = RegExp("(?: ".concat(sqlTimeRegex.source, ")?"));
11978
12274
  function int(match, pos, fallback) {
11979
12275
  var m = match[pos];
11980
- return isUndefined(m) ? fallback : parseInteger(m);
12276
+ return isUndefined$1(m) ? fallback : parseInteger(m);
11981
12277
  }
11982
12278
  function extractISOYmd(match, cursor) {
11983
12279
  var item = {
@@ -12025,7 +12321,7 @@ var isoTimeOnly = RegExp("^T?".concat(isoTimeBaseRegex.source, "$"));
12025
12321
  // ISO duration parsing
12026
12322
  var isoDuration = /^-?P(?:(?:(-?\d{1,20}(?:\.\d{1,20})?)Y)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20}(?:\.\d{1,20})?)W)?(?:(-?\d{1,20}(?:\.\d{1,20})?)D)?(?:T(?:(-?\d{1,20}(?:\.\d{1,20})?)H)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20})(?:[.,](-?\d{1,20}))?S)?)?)$/;
12027
12323
  function extractISODuration(match) {
12028
- var _match = _sliced_to_array$a(match, 9), s = _match[0], yearStr = _match[1], monthStr = _match[2], weekStr = _match[3], dayStr = _match[4], hourStr = _match[5], minuteStr = _match[6], secondStr = _match[7], millisecondsStr = _match[8];
12324
+ var _match = _sliced_to_array$9(match, 9), s = _match[0], yearStr = _match[1], monthStr = _match[2], weekStr = _match[3], dayStr = _match[4], hourStr = _match[5], minuteStr = _match[6], secondStr = _match[7], millisecondsStr = _match[8];
12029
12325
  var hasNegativePrefix = s[0] === "-";
12030
12326
  var negativeSeconds = secondStr && secondStr[0] === "-";
12031
12327
  var maybeNegate = function(num) {
@@ -12076,7 +12372,7 @@ function fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr,
12076
12372
  // RFC 2822/5322
12077
12373
  var rfc2822 = /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;
12078
12374
  function extractRFC2822(match) {
12079
- var _match = _sliced_to_array$a(match, 12), weekdayStr = _match[1], dayStr = _match[2], monthStr = _match[3], yearStr = _match[4], hourStr = _match[5], minuteStr = _match[6], secondStr = _match[7], obsOffset = _match[8], milOffset = _match[9], offHourStr = _match[10], offMinuteStr = _match[11], result = fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr);
12375
+ var _match = _sliced_to_array$9(match, 12), weekdayStr = _match[1], dayStr = _match[2], monthStr = _match[3], yearStr = _match[4], hourStr = _match[5], minuteStr = _match[6], secondStr = _match[7], obsOffset = _match[8], milOffset = _match[9], offHourStr = _match[10], offMinuteStr = _match[11], result = fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr);
12080
12376
  var offset;
12081
12377
  if (obsOffset) {
12082
12378
  offset = obsOffsets[obsOffset];
@@ -12097,14 +12393,14 @@ function preprocessRFC2822(s) {
12097
12393
  // http date
12098
12394
  var rfc1123 = /^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/, rfc850 = /^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/, ascii = /^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;
12099
12395
  function extractRFC1123Or850(match) {
12100
- var _match = _sliced_to_array$a(match, 8), weekdayStr = _match[1], dayStr = _match[2], monthStr = _match[3], yearStr = _match[4], hourStr = _match[5], minuteStr = _match[6], secondStr = _match[7], result = fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr);
12396
+ var _match = _sliced_to_array$9(match, 8), weekdayStr = _match[1], dayStr = _match[2], monthStr = _match[3], yearStr = _match[4], hourStr = _match[5], minuteStr = _match[6], secondStr = _match[7], result = fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr);
12101
12397
  return [
12102
12398
  result,
12103
12399
  FixedOffsetZone.utcInstance
12104
12400
  ];
12105
12401
  }
12106
12402
  function extractASCII(match) {
12107
- var _match = _sliced_to_array$a(match, 8), weekdayStr = _match[1], monthStr = _match[2], dayStr = _match[3], hourStr = _match[4], minuteStr = _match[5], secondStr = _match[6], yearStr = _match[7], result = fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr);
12403
+ var _match = _sliced_to_array$9(match, 8), weekdayStr = _match[1], monthStr = _match[2], dayStr = _match[3], hourStr = _match[4], minuteStr = _match[5], secondStr = _match[6], yearStr = _match[7], result = fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr);
12108
12404
  return [
12109
12405
  result,
12110
12406
  FixedOffsetZone.utcInstance
@@ -12179,20 +12475,20 @@ function parseSQL(s) {
12179
12475
  ]);
12180
12476
  }
12181
12477
 
12182
- function _array_like_to_array$9(arr, len) {
12478
+ function _array_like_to_array$8(arr, len) {
12183
12479
  if (len == null || len > arr.length) len = arr.length;
12184
12480
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
12185
12481
  return arr2;
12186
12482
  }
12187
- function _array_with_holes$9(arr) {
12483
+ function _array_with_holes$8(arr) {
12188
12484
  if (Array.isArray(arr)) return arr;
12189
12485
  }
12190
- function _class_call_check$8(instance, Constructor) {
12486
+ function _class_call_check$9(instance, Constructor) {
12191
12487
  if (!(instance instanceof Constructor)) {
12192
12488
  throw new TypeError("Cannot call a class as a function");
12193
12489
  }
12194
12490
  }
12195
- function _defineProperties$8(target, props) {
12491
+ function _defineProperties$9(target, props) {
12196
12492
  for(var i = 0; i < props.length; i++){
12197
12493
  var descriptor = props[i];
12198
12494
  descriptor.enumerable = descriptor.enumerable || false;
@@ -12201,9 +12497,9 @@ function _defineProperties$8(target, props) {
12201
12497
  Object.defineProperty(target, descriptor.key, descriptor);
12202
12498
  }
12203
12499
  }
12204
- function _create_class$8(Constructor, protoProps, staticProps) {
12205
- if (protoProps) _defineProperties$8(Constructor.prototype, protoProps);
12206
- if (staticProps) _defineProperties$8(Constructor, staticProps);
12500
+ function _create_class$9(Constructor, protoProps, staticProps) {
12501
+ if (protoProps) _defineProperties$9(Constructor.prototype, protoProps);
12502
+ if (staticProps) _defineProperties$9(Constructor, staticProps);
12207
12503
  return Constructor;
12208
12504
  }
12209
12505
  function _define_property$4(obj, key, value) {
@@ -12219,14 +12515,14 @@ function _define_property$4(obj, key, value) {
12219
12515
  }
12220
12516
  return obj;
12221
12517
  }
12222
- function _instanceof$6(left, right) {
12518
+ function _instanceof$7(left, right) {
12223
12519
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
12224
12520
  return !!right[Symbol.hasInstance](left);
12225
12521
  } else {
12226
12522
  return left instanceof right;
12227
12523
  }
12228
12524
  }
12229
- function _iterable_to_array_limit$9(arr, i) {
12525
+ function _iterable_to_array_limit$8(arr, i) {
12230
12526
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
12231
12527
  if (_i == null) return;
12232
12528
  var _arr = [];
@@ -12250,7 +12546,7 @@ function _iterable_to_array_limit$9(arr, i) {
12250
12546
  }
12251
12547
  return _arr;
12252
12548
  }
12253
- function _non_iterable_rest$9() {
12549
+ function _non_iterable_rest$8() {
12254
12550
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
12255
12551
  }
12256
12552
  function _object_spread$2(target) {
@@ -12292,20 +12588,20 @@ function _object_spread_props$2(target, source) {
12292
12588
  }
12293
12589
  return target;
12294
12590
  }
12295
- function _sliced_to_array$9(arr, i) {
12296
- return _array_with_holes$9(arr) || _iterable_to_array_limit$9(arr, i) || _unsupported_iterable_to_array$9(arr, i) || _non_iterable_rest$9();
12591
+ function _sliced_to_array$8(arr, i) {
12592
+ return _array_with_holes$8(arr) || _iterable_to_array_limit$8(arr, i) || _unsupported_iterable_to_array$8(arr, i) || _non_iterable_rest$8();
12297
12593
  }
12298
12594
  function _type_of$5(obj) {
12299
12595
  "@swc/helpers - typeof";
12300
12596
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
12301
12597
  }
12302
- function _unsupported_iterable_to_array$9(o, minLen) {
12598
+ function _unsupported_iterable_to_array$8(o, minLen) {
12303
12599
  if (!o) return;
12304
- if (typeof o === "string") return _array_like_to_array$9(o, minLen);
12600
+ if (typeof o === "string") return _array_like_to_array$8(o, minLen);
12305
12601
  var n = Object.prototype.toString.call(o).slice(8, -1);
12306
12602
  if (n === "Object" && o.constructor) n = o.constructor.name;
12307
12603
  if (n === "Map" || n === "Set") return Array.from(n);
12308
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$9(o, minLen);
12604
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$8(o, minLen);
12309
12605
  }
12310
12606
  var INVALID$2 = "Invalid Duration";
12311
12607
  // unit conversion constants
@@ -12450,7 +12746,7 @@ function normalizeValues(matrix, vals) {
12450
12746
  // if this is not the case, factor is used to make it so
12451
12747
  var factor = durationToMillis(matrix, vals) < 0 ? -1 : 1;
12452
12748
  orderedUnits$1.reduceRight(function(previous, current) {
12453
- if (!isUndefined(vals[current])) {
12749
+ if (!isUndefined$1(vals[current])) {
12454
12750
  if (previous) {
12455
12751
  var previousVal = vals[previous] * factor;
12456
12752
  var conv = matrix[current][previous];
@@ -12481,7 +12777,7 @@ function normalizeValues(matrix, vals) {
12481
12777
  // try to convert any decimals into smaller units if possible
12482
12778
  // for example for { years: 2.5, days: 0, seconds: 0 } we want to get { years: 2, days: 182, hours: 12 }
12483
12779
  orderedUnits$1.reduce(function(previous, current) {
12484
- if (!isUndefined(vals[current])) {
12780
+ if (!isUndefined$1(vals[current])) {
12485
12781
  if (previous) {
12486
12782
  var fraction = vals[previous] % 1;
12487
12783
  vals[previous] -= fraction;
@@ -12499,7 +12795,7 @@ function removeZeroes(vals) {
12499
12795
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
12500
12796
  try {
12501
12797
  for(var _iterator = Object.entries(vals)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
12502
- var _step_value = _sliced_to_array$9(_step.value, 2), key = _step_value[0], value = _step_value[1];
12798
+ var _step_value = _sliced_to_array$8(_step.value, 2), key = _step_value[0], value = _step_value[1];
12503
12799
  if (value !== 0) {
12504
12800
  newVals[key] = value;
12505
12801
  }
@@ -12522,7 +12818,7 @@ function removeZeroes(vals) {
12522
12818
  }
12523
12819
  var Duration = /*#__PURE__*/ function() {
12524
12820
  function Duration(config) {
12525
- _class_call_check$8(this, Duration);
12821
+ _class_call_check$9(this, Duration);
12526
12822
  var accurate = config.conversionAccuracy === "longterm" || false;
12527
12823
  var matrix = accurate ? accurateMatrix : casualMatrix;
12528
12824
  if (config.matrix) {
@@ -12547,7 +12843,7 @@ var Duration = /*#__PURE__*/ function() {
12547
12843
  * @access private
12548
12844
  */ this.isLuxonDuration = true;
12549
12845
  }
12550
- _create_class$8(Duration, [
12846
+ _create_class$9(Duration, [
12551
12847
  {
12552
12848
  key: "locale",
12553
12849
  get: /**
@@ -12620,7 +12916,7 @@ var Duration = /*#__PURE__*/ function() {
12620
12916
  if (!this.isValid) return INVALID$2;
12621
12917
  var l = orderedUnits$1.map(function(unit) {
12622
12918
  var val = _this.values[unit];
12623
- if (isUndefined(val)) {
12919
+ if (isUndefined$1(val)) {
12624
12920
  return null;
12625
12921
  }
12626
12922
  return _this.loc.numberFormatter(_object_spread_props$2(_object_spread$2({
@@ -13309,7 +13605,7 @@ var Duration = /*#__PURE__*/ function() {
13309
13605
  * @example Duration.fromISO('P5Y3M').toObject() //=> { years: 5, months: 3 }
13310
13606
  * @return {Duration}
13311
13607
  */ function fromISO(text, opts) {
13312
- var _parseISODuration = _sliced_to_array$9(parseISODuration(text), 1), parsed = _parseISODuration[0];
13608
+ var _parseISODuration = _sliced_to_array$8(parseISODuration(text), 1), parsed = _parseISODuration[0];
13313
13609
  if (parsed) {
13314
13610
  return Duration.fromObject(parsed, opts);
13315
13611
  } else {
@@ -13335,7 +13631,7 @@ var Duration = /*#__PURE__*/ function() {
13335
13631
  * @example Duration.fromISOTime('T1100').toObject() //=> { hours: 11, minutes: 0, seconds: 0 }
13336
13632
  * @return {Duration}
13337
13633
  */ function fromISOTime(text, opts) {
13338
- var _parseISOTimeOnly = _sliced_to_array$9(parseISOTimeOnly(text), 1), parsed = _parseISOTimeOnly[0];
13634
+ var _parseISOTimeOnly = _sliced_to_array$8(parseISOTimeOnly(text), 1), parsed = _parseISOTimeOnly[0];
13339
13635
  if (parsed) {
13340
13636
  return Duration.fromObject(parsed, opts);
13341
13637
  } else {
@@ -13355,7 +13651,7 @@ var Duration = /*#__PURE__*/ function() {
13355
13651
  if (!reason) {
13356
13652
  throw new InvalidArgumentError("need to specify a reason the Duration is invalid");
13357
13653
  }
13358
- var invalid = _instanceof$6(reason, Invalid) ? reason : new Invalid(reason, explanation);
13654
+ var invalid = _instanceof$7(reason, Invalid) ? reason : new Invalid(reason, explanation);
13359
13655
  if (Settings.throwOnInvalid) {
13360
13656
  throw new InvalidDurationError(invalid);
13361
13657
  } else {
@@ -13408,23 +13704,23 @@ var Duration = /*#__PURE__*/ function() {
13408
13704
  return Duration;
13409
13705
  }();
13410
13706
 
13411
- function _array_like_to_array$8(arr, len) {
13707
+ function _array_like_to_array$7(arr, len) {
13412
13708
  if (len == null || len > arr.length) len = arr.length;
13413
13709
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
13414
13710
  return arr2;
13415
13711
  }
13416
- function _array_with_holes$8(arr) {
13712
+ function _array_with_holes$7(arr) {
13417
13713
  if (Array.isArray(arr)) return arr;
13418
13714
  }
13419
13715
  function _array_without_holes$5(arr) {
13420
- if (Array.isArray(arr)) return _array_like_to_array$8(arr);
13716
+ if (Array.isArray(arr)) return _array_like_to_array$7(arr);
13421
13717
  }
13422
- function _class_call_check$7(instance, Constructor) {
13718
+ function _class_call_check$8(instance, Constructor) {
13423
13719
  if (!(instance instanceof Constructor)) {
13424
13720
  throw new TypeError("Cannot call a class as a function");
13425
13721
  }
13426
13722
  }
13427
- function _defineProperties$7(target, props) {
13723
+ function _defineProperties$8(target, props) {
13428
13724
  for(var i = 0; i < props.length; i++){
13429
13725
  var descriptor = props[i];
13430
13726
  descriptor.enumerable = descriptor.enumerable || false;
@@ -13433,12 +13729,12 @@ function _defineProperties$7(target, props) {
13433
13729
  Object.defineProperty(target, descriptor.key, descriptor);
13434
13730
  }
13435
13731
  }
13436
- function _create_class$7(Constructor, protoProps, staticProps) {
13437
- if (protoProps) _defineProperties$7(Constructor.prototype, protoProps);
13438
- if (staticProps) _defineProperties$7(Constructor, staticProps);
13732
+ function _create_class$8(Constructor, protoProps, staticProps) {
13733
+ if (protoProps) _defineProperties$8(Constructor.prototype, protoProps);
13734
+ if (staticProps) _defineProperties$8(Constructor, staticProps);
13439
13735
  return Constructor;
13440
13736
  }
13441
- function _instanceof$5(left, right) {
13737
+ function _instanceof$6(left, right) {
13442
13738
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
13443
13739
  return !!right[Symbol.hasInstance](left);
13444
13740
  } else {
@@ -13448,7 +13744,7 @@ function _instanceof$5(left, right) {
13448
13744
  function _iterable_to_array$5(iter) {
13449
13745
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
13450
13746
  }
13451
- function _iterable_to_array_limit$8(arr, i) {
13747
+ function _iterable_to_array_limit$7(arr, i) {
13452
13748
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
13453
13749
  if (_i == null) return;
13454
13750
  var _arr = [];
@@ -13472,25 +13768,25 @@ function _iterable_to_array_limit$8(arr, i) {
13472
13768
  }
13473
13769
  return _arr;
13474
13770
  }
13475
- function _non_iterable_rest$8() {
13771
+ function _non_iterable_rest$7() {
13476
13772
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
13477
13773
  }
13478
13774
  function _non_iterable_spread$5() {
13479
13775
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
13480
13776
  }
13481
- function _sliced_to_array$8(arr, i) {
13482
- return _array_with_holes$8(arr) || _iterable_to_array_limit$8(arr, i) || _unsupported_iterable_to_array$8(arr, i) || _non_iterable_rest$8();
13777
+ function _sliced_to_array$7(arr, i) {
13778
+ return _array_with_holes$7(arr) || _iterable_to_array_limit$7(arr, i) || _unsupported_iterable_to_array$7(arr, i) || _non_iterable_rest$7();
13483
13779
  }
13484
13780
  function _to_consumable_array$5(arr) {
13485
- return _array_without_holes$5(arr) || _iterable_to_array$5(arr) || _unsupported_iterable_to_array$8(arr) || _non_iterable_spread$5();
13781
+ return _array_without_holes$5(arr) || _iterable_to_array$5(arr) || _unsupported_iterable_to_array$7(arr) || _non_iterable_spread$5();
13486
13782
  }
13487
- function _unsupported_iterable_to_array$8(o, minLen) {
13783
+ function _unsupported_iterable_to_array$7(o, minLen) {
13488
13784
  if (!o) return;
13489
- if (typeof o === "string") return _array_like_to_array$8(o, minLen);
13785
+ if (typeof o === "string") return _array_like_to_array$7(o, minLen);
13490
13786
  var n = Object.prototype.toString.call(o).slice(8, -1);
13491
13787
  if (n === "Object" && o.constructor) n = o.constructor.name;
13492
13788
  if (n === "Map" || n === "Set") return Array.from(n);
13493
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$8(o, minLen);
13789
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$7(o, minLen);
13494
13790
  }
13495
13791
  var INVALID$1 = "Invalid Interval";
13496
13792
  // checks if the start is equal to or before the end
@@ -13507,7 +13803,7 @@ function validateStartEnd(start, end) {
13507
13803
  }
13508
13804
  var Interval = /*#__PURE__*/ function() {
13509
13805
  function Interval(config) {
13510
- _class_call_check$7(this, Interval);
13806
+ _class_call_check$8(this, Interval);
13511
13807
  /**
13512
13808
  * @access private
13513
13809
  */ this.s = config.start;
@@ -13521,7 +13817,7 @@ var Interval = /*#__PURE__*/ function() {
13521
13817
  * @access private
13522
13818
  */ this.isLuxonInterval = true;
13523
13819
  }
13524
- _create_class$7(Interval, [
13820
+ _create_class$8(Interval, [
13525
13821
  {
13526
13822
  key: "start",
13527
13823
  get: /**
@@ -13770,7 +14066,7 @@ var Interval = /*#__PURE__*/ function() {
13770
14066
  },
13771
14067
  {
13772
14068
  /**
13773
- * Return whether this Interval engulfs the start and end of the specified Interval.
14069
+ * Returns true if this Interval fully contains the specified Interval, specifically if the intersect (of this Interval and the other Interval) is equal to the other Interval; false otherwise.
13774
14070
  * @param {Interval} other
13775
14071
  * @return {boolean}
13776
14072
  */ key: "engulfs",
@@ -13990,7 +14286,7 @@ var Interval = /*#__PURE__*/ function() {
13990
14286
  if (!reason) {
13991
14287
  throw new InvalidArgumentError("need to specify a reason the Interval is invalid");
13992
14288
  }
13993
- var invalid = _instanceof$5(reason, Invalid) ? reason : new Invalid(reason, explanation);
14289
+ var invalid = _instanceof$6(reason, Invalid) ? reason : new Invalid(reason, explanation);
13994
14290
  if (Settings.throwOnInvalid) {
13995
14291
  throw new InvalidIntervalError(invalid);
13996
14292
  } else {
@@ -14054,7 +14350,7 @@ var Interval = /*#__PURE__*/ function() {
14054
14350
  * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals
14055
14351
  * @return {Interval}
14056
14352
  */ function fromISO(text, opts) {
14057
- var _split = _sliced_to_array$8((text || "").split("/", 2), 2), s = _split[0], e = _split[1];
14353
+ var _split = _sliced_to_array$7((text || "").split("/", 2), 2), s = _split[0], e = _split[1];
14058
14354
  if (s && e) {
14059
14355
  var start, startIsValid;
14060
14356
  try {
@@ -14106,10 +14402,10 @@ var Interval = /*#__PURE__*/ function() {
14106
14402
  * @param {Array} intervals
14107
14403
  * @return {Array}
14108
14404
  */ function merge(intervals) {
14109
- var _intervals_sort_reduce = _sliced_to_array$8(intervals.sort(function(a, b) {
14405
+ var _intervals_sort_reduce = _sliced_to_array$7(intervals.sort(function(a, b) {
14110
14406
  return a.s - b.s;
14111
14407
  }).reduce(function(param, item) {
14112
- var _param = _sliced_to_array$8(param, 2), sofar = _param[0], current = _param[1];
14408
+ var _param = _sliced_to_array$7(param, 2), sofar = _param[0], current = _param[1];
14113
14409
  if (!current) {
14114
14410
  return [
14115
14411
  sofar,
@@ -14196,12 +14492,12 @@ var Interval = /*#__PURE__*/ function() {
14196
14492
  return Interval;
14197
14493
  }();
14198
14494
 
14199
- function _class_call_check$6(instance, Constructor) {
14495
+ function _class_call_check$7(instance, Constructor) {
14200
14496
  if (!(instance instanceof Constructor)) {
14201
14497
  throw new TypeError("Cannot call a class as a function");
14202
14498
  }
14203
14499
  }
14204
- function _defineProperties$6(target, props) {
14500
+ function _defineProperties$7(target, props) {
14205
14501
  for(var i = 0; i < props.length; i++){
14206
14502
  var descriptor = props[i];
14207
14503
  descriptor.enumerable = descriptor.enumerable || false;
@@ -14210,16 +14506,16 @@ function _defineProperties$6(target, props) {
14210
14506
  Object.defineProperty(target, descriptor.key, descriptor);
14211
14507
  }
14212
14508
  }
14213
- function _create_class$6(Constructor, protoProps, staticProps) {
14214
- if (protoProps) _defineProperties$6(Constructor.prototype, protoProps);
14215
- if (staticProps) _defineProperties$6(Constructor, staticProps);
14509
+ function _create_class$7(Constructor, protoProps, staticProps) {
14510
+ if (protoProps) _defineProperties$7(Constructor.prototype, protoProps);
14511
+ if (staticProps) _defineProperties$7(Constructor, staticProps);
14216
14512
  return Constructor;
14217
14513
  }
14218
14514
  var Info = /*#__PURE__*/ function() {
14219
14515
  function Info() {
14220
- _class_call_check$6(this, Info);
14516
+ _class_call_check$7(this, Info);
14221
14517
  }
14222
- _create_class$6(Info, null, [
14518
+ _create_class$7(Info, null, [
14223
14519
  {
14224
14520
  key: "hasDST",
14225
14521
  value: /**
@@ -14437,16 +14733,16 @@ var Info = /*#__PURE__*/ function() {
14437
14733
  return Info;
14438
14734
  }();
14439
14735
 
14440
- function _array_like_to_array$7(arr, len) {
14736
+ function _array_like_to_array$6(arr, len) {
14441
14737
  if (len == null || len > arr.length) len = arr.length;
14442
14738
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
14443
14739
  return arr2;
14444
14740
  }
14445
- function _array_with_holes$7(arr) {
14741
+ function _array_with_holes$6(arr) {
14446
14742
  if (Array.isArray(arr)) return arr;
14447
14743
  }
14448
14744
  function _array_without_holes$4(arr) {
14449
- if (Array.isArray(arr)) return _array_like_to_array$7(arr);
14745
+ if (Array.isArray(arr)) return _array_like_to_array$6(arr);
14450
14746
  }
14451
14747
  function _define_property$3(obj, key, value) {
14452
14748
  if (key in obj) {
@@ -14464,7 +14760,7 @@ function _define_property$3(obj, key, value) {
14464
14760
  function _iterable_to_array$4(iter) {
14465
14761
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
14466
14762
  }
14467
- function _iterable_to_array_limit$7(arr, i) {
14763
+ function _iterable_to_array_limit$6(arr, i) {
14468
14764
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
14469
14765
  if (_i == null) return;
14470
14766
  var _arr = [];
@@ -14488,25 +14784,25 @@ function _iterable_to_array_limit$7(arr, i) {
14488
14784
  }
14489
14785
  return _arr;
14490
14786
  }
14491
- function _non_iterable_rest$7() {
14787
+ function _non_iterable_rest$6() {
14492
14788
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
14493
14789
  }
14494
14790
  function _non_iterable_spread$4() {
14495
14791
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
14496
14792
  }
14497
- function _sliced_to_array$7(arr, i) {
14498
- return _array_with_holes$7(arr) || _iterable_to_array_limit$7(arr, i) || _unsupported_iterable_to_array$7(arr, i) || _non_iterable_rest$7();
14793
+ function _sliced_to_array$6(arr, i) {
14794
+ return _array_with_holes$6(arr) || _iterable_to_array_limit$6(arr, i) || _unsupported_iterable_to_array$6(arr, i) || _non_iterable_rest$6();
14499
14795
  }
14500
14796
  function _to_consumable_array$4(arr) {
14501
- return _array_without_holes$4(arr) || _iterable_to_array$4(arr) || _unsupported_iterable_to_array$7(arr) || _non_iterable_spread$4();
14797
+ return _array_without_holes$4(arr) || _iterable_to_array$4(arr) || _unsupported_iterable_to_array$6(arr) || _non_iterable_spread$4();
14502
14798
  }
14503
- function _unsupported_iterable_to_array$7(o, minLen) {
14799
+ function _unsupported_iterable_to_array$6(o, minLen) {
14504
14800
  if (!o) return;
14505
- if (typeof o === "string") return _array_like_to_array$7(o, minLen);
14801
+ if (typeof o === "string") return _array_like_to_array$6(o, minLen);
14506
14802
  var n = Object.prototype.toString.call(o).slice(8, -1);
14507
14803
  if (n === "Object" && o.constructor) n = o.constructor.name;
14508
14804
  if (n === "Map" || n === "Set") return Array.from(n);
14509
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$7(o, minLen);
14805
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$6(o, minLen);
14510
14806
  }
14511
14807
  function dayDiff(earlier, later) {
14512
14808
  var utcDayStart = function(dt) {
@@ -14561,7 +14857,7 @@ function highOrderDiffs(cursor, later, units) {
14561
14857
  this is used later to potentially convert any difference smaller than the smallest higher order unit
14562
14858
  into a fraction of that smallest higher order unit
14563
14859
  */ for(var _iterator = differs[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
14564
- var _step_value = _sliced_to_array$7(_step.value, 2), unit = _step_value[0], differ = _step_value[1];
14860
+ var _step_value = _sliced_to_array$6(_step.value, 2), unit = _step_value[0], differ = _step_value[1];
14565
14861
  if (units.indexOf(unit) >= 0) {
14566
14862
  lowestOrder = unit;
14567
14863
  results[unit] = differ(cursor, later);
@@ -14586,227 +14882,52 @@ function highOrderDiffs(cursor, later, units) {
14586
14882
  }
14587
14883
  }
14588
14884
  } catch (err) {
14589
- _didIteratorError = true;
14590
- _iteratorError = err;
14591
- } finally{
14592
- try {
14593
- if (!_iteratorNormalCompletion && _iterator.return != null) {
14594
- _iterator.return();
14595
- }
14596
- } finally{
14597
- if (_didIteratorError) {
14598
- throw _iteratorError;
14599
- }
14600
- }
14601
- }
14602
- return [
14603
- cursor,
14604
- results,
14605
- highWater,
14606
- lowestOrder
14607
- ];
14608
- }
14609
- function diff(earlier, later, units, opts) {
14610
- var _highOrderDiffs = _sliced_to_array$7(highOrderDiffs(earlier, later, units), 4), cursor = _highOrderDiffs[0], results = _highOrderDiffs[1], highWater = _highOrderDiffs[2], lowestOrder = _highOrderDiffs[3];
14611
- var remainingMillis = later - cursor;
14612
- var lowerOrderUnits = units.filter(function(u) {
14613
- return [
14614
- "hours",
14615
- "minutes",
14616
- "seconds",
14617
- "milliseconds"
14618
- ].indexOf(u) >= 0;
14619
- });
14620
- if (lowerOrderUnits.length === 0) {
14621
- if (highWater < later) {
14622
- highWater = cursor.plus(_define_property$3({}, lowestOrder, 1));
14623
- }
14624
- if (highWater !== cursor) {
14625
- results[lowestOrder] = (results[lowestOrder] || 0) + remainingMillis / (highWater - cursor);
14626
- }
14627
- }
14628
- var duration = Duration.fromObject(results, opts);
14629
- if (lowerOrderUnits.length > 0) {
14630
- var _Duration_fromMillis;
14631
- return (_Duration_fromMillis = Duration.fromMillis(remainingMillis, opts)).shiftTo.apply(_Duration_fromMillis, _to_consumable_array$4(lowerOrderUnits)).plus(duration);
14632
- } else {
14633
- return duration;
14634
- }
14635
- }
14636
-
14637
- function _array_like_to_array$6(arr, len) {
14638
- if (len == null || len > arr.length) len = arr.length;
14639
- for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
14640
- return arr2;
14641
- }
14642
- function _array_with_holes$6(arr) {
14643
- if (Array.isArray(arr)) return arr;
14644
- }
14645
- function _iterable_to_array_limit$6(arr, i) {
14646
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
14647
- if (_i == null) return;
14648
- var _arr = [];
14649
- var _n = true;
14650
- var _d = false;
14651
- var _s, _e;
14652
- try {
14653
- for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
14654
- _arr.push(_s.value);
14655
- if (i && _arr.length === i) break;
14656
- }
14657
- } catch (err) {
14658
- _d = true;
14659
- _e = err;
14660
- } finally{
14661
- try {
14662
- if (!_n && _i["return"] != null) _i["return"]();
14663
- } finally{
14664
- if (_d) throw _e;
14665
- }
14666
- }
14667
- return _arr;
14668
- }
14669
- function _non_iterable_rest$6() {
14670
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
14671
- }
14672
- function _sliced_to_array$6(arr, i) {
14673
- return _array_with_holes$6(arr) || _iterable_to_array_limit$6(arr, i) || _unsupported_iterable_to_array$6(arr, i) || _non_iterable_rest$6();
14674
- }
14675
- function _unsupported_iterable_to_array$6(o, minLen) {
14676
- if (!o) return;
14677
- if (typeof o === "string") return _array_like_to_array$6(o, minLen);
14678
- var n = Object.prototype.toString.call(o).slice(8, -1);
14679
- if (n === "Object" && o.constructor) n = o.constructor.name;
14680
- if (n === "Map" || n === "Set") return Array.from(n);
14681
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$6(o, minLen);
14682
- }
14683
- var numberingSystems = {
14684
- arab: "[٠-٩]",
14685
- arabext: "[۰-۹]",
14686
- bali: "[᭐-᭙]",
14687
- beng: "[০-৯]",
14688
- deva: "[०-९]",
14689
- fullwide: "[0-9]",
14690
- gujr: "[૦-૯]",
14691
- hanidec: "[〇|一|二|三|四|五|六|七|八|九]",
14692
- khmr: "[០-៩]",
14693
- knda: "[೦-೯]",
14694
- laoo: "[໐-໙]",
14695
- limb: "[᥆-᥏]",
14696
- mlym: "[൦-൯]",
14697
- mong: "[᠐-᠙]",
14698
- mymr: "[၀-၉]",
14699
- orya: "[୦-୯]",
14700
- tamldec: "[௦-௯]",
14701
- telu: "[౦-౯]",
14702
- thai: "[๐-๙]",
14703
- tibt: "[༠-༩]",
14704
- latn: "\\d"
14705
- };
14706
- var numberingSystemsUTF16 = {
14707
- arab: [
14708
- 1632,
14709
- 1641
14710
- ],
14711
- arabext: [
14712
- 1776,
14713
- 1785
14714
- ],
14715
- bali: [
14716
- 6992,
14717
- 7001
14718
- ],
14719
- beng: [
14720
- 2534,
14721
- 2543
14722
- ],
14723
- deva: [
14724
- 2406,
14725
- 2415
14726
- ],
14727
- fullwide: [
14728
- 65296,
14729
- 65303
14730
- ],
14731
- gujr: [
14732
- 2790,
14733
- 2799
14734
- ],
14735
- khmr: [
14736
- 6112,
14737
- 6121
14738
- ],
14739
- knda: [
14740
- 3302,
14741
- 3311
14742
- ],
14743
- laoo: [
14744
- 3792,
14745
- 3801
14746
- ],
14747
- limb: [
14748
- 6470,
14749
- 6479
14750
- ],
14751
- mlym: [
14752
- 3430,
14753
- 3439
14754
- ],
14755
- mong: [
14756
- 6160,
14757
- 6169
14758
- ],
14759
- mymr: [
14760
- 4160,
14761
- 4169
14762
- ],
14763
- orya: [
14764
- 2918,
14765
- 2927
14766
- ],
14767
- tamldec: [
14768
- 3046,
14769
- 3055
14770
- ],
14771
- telu: [
14772
- 3174,
14773
- 3183
14774
- ],
14775
- thai: [
14776
- 3664,
14777
- 3673
14778
- ],
14779
- tibt: [
14780
- 3872,
14781
- 3881
14782
- ]
14783
- };
14784
- var hanidecChars = numberingSystems.hanidec.replace(/[\[|\]]/g, "").split("");
14785
- function parseDigits(str) {
14786
- var value = parseInt(str, 10);
14787
- if (isNaN(value)) {
14788
- value = "";
14789
- for(var i = 0; i < str.length; i++){
14790
- var code = str.charCodeAt(i);
14791
- if (str[i].search(numberingSystems.hanidec) !== -1) {
14792
- value += hanidecChars.indexOf(str[i]);
14793
- } else {
14794
- for(var key in numberingSystemsUTF16){
14795
- var _numberingSystemsUTF16_key = _sliced_to_array$6(numberingSystemsUTF16[key], 2), min = _numberingSystemsUTF16_key[0], max = _numberingSystemsUTF16_key[1];
14796
- if (code >= min && code <= max) {
14797
- value += code - min;
14798
- }
14799
- }
14885
+ _didIteratorError = true;
14886
+ _iteratorError = err;
14887
+ } finally{
14888
+ try {
14889
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
14890
+ _iterator.return();
14891
+ }
14892
+ } finally{
14893
+ if (_didIteratorError) {
14894
+ throw _iteratorError;
14800
14895
  }
14801
14896
  }
14802
- return parseInt(value, 10);
14803
- } else {
14804
- return value;
14805
14897
  }
14898
+ return [
14899
+ cursor,
14900
+ results,
14901
+ highWater,
14902
+ lowestOrder
14903
+ ];
14806
14904
  }
14807
- function digitRegex(param) {
14808
- var numberingSystem = param.numberingSystem, append = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "";
14809
- return new RegExp("".concat(numberingSystems[numberingSystem || "latn"]).concat(append));
14905
+ function diff(earlier, later, units, opts) {
14906
+ var _highOrderDiffs = _sliced_to_array$6(highOrderDiffs(earlier, later, units), 4), cursor = _highOrderDiffs[0], results = _highOrderDiffs[1], highWater = _highOrderDiffs[2], lowestOrder = _highOrderDiffs[3];
14907
+ var remainingMillis = later - cursor;
14908
+ var lowerOrderUnits = units.filter(function(u) {
14909
+ return [
14910
+ "hours",
14911
+ "minutes",
14912
+ "seconds",
14913
+ "milliseconds"
14914
+ ].indexOf(u) >= 0;
14915
+ });
14916
+ if (lowerOrderUnits.length === 0) {
14917
+ if (highWater < later) {
14918
+ highWater = cursor.plus(_define_property$3({}, lowestOrder, 1));
14919
+ }
14920
+ if (highWater !== cursor) {
14921
+ results[lowestOrder] = (results[lowestOrder] || 0) + remainingMillis / (highWater - cursor);
14922
+ }
14923
+ }
14924
+ var duration = Duration.fromObject(results, opts);
14925
+ if (lowerOrderUnits.length > 0) {
14926
+ var _Duration_fromMillis;
14927
+ return (_Duration_fromMillis = Duration.fromMillis(remainingMillis, opts)).shiftTo.apply(_Duration_fromMillis, _to_consumable_array$4(lowerOrderUnits)).plus(duration);
14928
+ } else {
14929
+ return duration;
14930
+ }
14810
14931
  }
14811
14932
 
14812
14933
  function _array_like_to_array$5(arr, len) {
@@ -14820,6 +14941,25 @@ function _array_with_holes$5(arr) {
14820
14941
  function _array_without_holes$3(arr) {
14821
14942
  if (Array.isArray(arr)) return _array_like_to_array$5(arr);
14822
14943
  }
14944
+ function _class_call_check$6(instance, Constructor) {
14945
+ if (!(instance instanceof Constructor)) {
14946
+ throw new TypeError("Cannot call a class as a function");
14947
+ }
14948
+ }
14949
+ function _defineProperties$6(target, props) {
14950
+ for(var i = 0; i < props.length; i++){
14951
+ var descriptor = props[i];
14952
+ descriptor.enumerable = descriptor.enumerable || false;
14953
+ descriptor.configurable = true;
14954
+ if ("value" in descriptor) descriptor.writable = true;
14955
+ Object.defineProperty(target, descriptor.key, descriptor);
14956
+ }
14957
+ }
14958
+ function _create_class$6(Constructor, protoProps, staticProps) {
14959
+ if (protoProps) _defineProperties$6(Constructor.prototype, protoProps);
14960
+ if (staticProps) _defineProperties$6(Constructor, staticProps);
14961
+ return Constructor;
14962
+ }
14823
14963
  function _iterable_to_array$3(iter) {
14824
14964
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
14825
14965
  }
@@ -15226,19 +15366,19 @@ function dateTimeFromMatches(matches) {
15226
15366
  };
15227
15367
  var zone = null;
15228
15368
  var specificOffset;
15229
- if (!isUndefined(matches.z)) {
15369
+ if (!isUndefined$1(matches.z)) {
15230
15370
  zone = IANAZone.create(matches.z);
15231
15371
  }
15232
- if (!isUndefined(matches.Z)) {
15372
+ if (!isUndefined$1(matches.Z)) {
15233
15373
  if (!zone) {
15234
15374
  zone = new FixedOffsetZone(matches.Z);
15235
15375
  }
15236
15376
  specificOffset = matches.Z;
15237
15377
  }
15238
- if (!isUndefined(matches.q)) {
15378
+ if (!isUndefined$1(matches.q)) {
15239
15379
  matches.M = (matches.q - 1) * 3 + 1;
15240
15380
  }
15241
- if (!isUndefined(matches.h)) {
15381
+ if (!isUndefined$1(matches.h)) {
15242
15382
  if (matches.h < 12 && matches.a === 1) {
15243
15383
  matches.h += 12;
15244
15384
  } else if (matches.h === 12 && matches.a === 0) {
@@ -15248,7 +15388,7 @@ function dateTimeFromMatches(matches) {
15248
15388
  if (matches.G === 0 && matches.y) {
15249
15389
  matches.y = -matches.y;
15250
15390
  }
15251
- if (!isUndefined(matches.u)) {
15391
+ if (!isUndefined$1(matches.u)) {
15252
15392
  matches.S = parseMillis(matches.u);
15253
15393
  }
15254
15394
  var vals = Object.keys(matches).reduce(function(r, k) {
@@ -15290,38 +15430,74 @@ function expandMacroTokens(tokens, locale) {
15290
15430
  }
15291
15431
  /**
15292
15432
  * @private
15293
- */ function explainFromTokens(locale, input, format) {
15294
- var tokens = expandMacroTokens(Formatter.parseFormat(format), locale), units = tokens.map(function(t) {
15295
- return unitForToken(t, locale);
15296
- }), disqualifyingUnit = units.find(function(t) {
15297
- return t.invalidReason;
15298
- });
15299
- if (disqualifyingUnit) {
15300
- return {
15301
- input: input,
15302
- tokens: tokens,
15303
- invalidReason: disqualifyingUnit.invalidReason
15304
- };
15305
- } else {
15306
- var _buildRegex = _sliced_to_array$5(buildRegex(units), 2), regexString = _buildRegex[0], handlers = _buildRegex[1], regex = RegExp(regexString, "i"), _match = _sliced_to_array$5(match(input, regex, handlers), 2), rawMatches = _match[0], matches = _match[1], _ref = _sliced_to_array$5(matches ? dateTimeFromMatches(matches) : [
15307
- null,
15308
- null,
15309
- undefined
15310
- ], 3), result = _ref[0], zone = _ref[1], specificOffset = _ref[2];
15311
- if (hasOwnProperty(matches, "a") && hasOwnProperty(matches, "H")) {
15312
- throw new ConflictingSpecificationError("Can't include meridiem when specifying 24-hour format");
15433
+ */ var TokenParser = /*#__PURE__*/ function() {
15434
+ function TokenParser(locale, format) {
15435
+ _class_call_check$6(this, TokenParser);
15436
+ this.locale = locale;
15437
+ this.format = format;
15438
+ this.tokens = expandMacroTokens(Formatter.parseFormat(format), locale);
15439
+ this.units = this.tokens.map(function(t) {
15440
+ return unitForToken(t, locale);
15441
+ });
15442
+ this.disqualifyingUnit = this.units.find(function(t) {
15443
+ return t.invalidReason;
15444
+ });
15445
+ if (!this.disqualifyingUnit) {
15446
+ var _buildRegex = _sliced_to_array$5(buildRegex(this.units), 2), regexString = _buildRegex[0], handlers = _buildRegex[1];
15447
+ this.regex = RegExp(regexString, "i");
15448
+ this.handlers = handlers;
15313
15449
  }
15314
- return {
15315
- input: input,
15316
- tokens: tokens,
15317
- regex: regex,
15318
- rawMatches: rawMatches,
15319
- matches: matches,
15320
- result: result,
15321
- zone: zone,
15322
- specificOffset: specificOffset
15323
- };
15324
15450
  }
15451
+ _create_class$6(TokenParser, [
15452
+ {
15453
+ key: "explainFromTokens",
15454
+ value: function explainFromTokens(input) {
15455
+ if (!this.isValid) {
15456
+ return {
15457
+ input: input,
15458
+ tokens: this.tokens,
15459
+ invalidReason: this.invalidReason
15460
+ };
15461
+ } else {
15462
+ var _match = _sliced_to_array$5(match(input, this.regex, this.handlers), 2), rawMatches = _match[0], matches = _match[1], _ref = _sliced_to_array$5(matches ? dateTimeFromMatches(matches) : [
15463
+ null,
15464
+ null,
15465
+ undefined
15466
+ ], 3), result = _ref[0], zone = _ref[1], specificOffset = _ref[2];
15467
+ if (hasOwnProperty(matches, "a") && hasOwnProperty(matches, "H")) {
15468
+ throw new ConflictingSpecificationError("Can't include meridiem when specifying 24-hour format");
15469
+ }
15470
+ return {
15471
+ input: input,
15472
+ tokens: this.tokens,
15473
+ regex: this.regex,
15474
+ rawMatches: rawMatches,
15475
+ matches: matches,
15476
+ result: result,
15477
+ zone: zone,
15478
+ specificOffset: specificOffset
15479
+ };
15480
+ }
15481
+ }
15482
+ },
15483
+ {
15484
+ key: "isValid",
15485
+ get: function get() {
15486
+ return !this.disqualifyingUnit;
15487
+ }
15488
+ },
15489
+ {
15490
+ key: "invalidReason",
15491
+ get: function get() {
15492
+ return this.disqualifyingUnit ? this.disqualifyingUnit.invalidReason : null;
15493
+ }
15494
+ }
15495
+ ]);
15496
+ return TokenParser;
15497
+ }();
15498
+ function explainFromTokens(locale, input, format) {
15499
+ var parser = new TokenParser(locale, format);
15500
+ return parser.explainFromTokens(input);
15325
15501
  }
15326
15502
  function parseFromTokens(locale, input, format) {
15327
15503
  var _explainFromTokens = explainFromTokens(locale, input, format), result = _explainFromTokens.result, zone = _explainFromTokens.zone, specificOffset = _explainFromTokens.specificOffset, invalidReason = _explainFromTokens.invalidReason;
@@ -15385,7 +15561,7 @@ function _define_property$2(obj, key, value) {
15385
15561
  }
15386
15562
  return obj;
15387
15563
  }
15388
- function _instanceof$4(left, right) {
15564
+ function _instanceof$5(left, right) {
15389
15565
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
15390
15566
  return !!right[Symbol.hasInstance](left);
15391
15567
  } else {
@@ -15756,19 +15932,51 @@ function normalizeUnitWithLocalWeeks(unit) {
15756
15932
  return normalizeUnit(unit);
15757
15933
  }
15758
15934
  }
15935
+ // cache offsets for zones based on the current timestamp when this function is
15936
+ // first called. When we are handling a datetime from components like (year,
15937
+ // month, day, hour) in a time zone, we need a guess about what the timezone
15938
+ // offset is so that we can convert into a UTC timestamp. One way is to find the
15939
+ // offset of now in the zone. The actual date may have a different offset (for
15940
+ // example, if we handle a date in June while we're in December in a zone that
15941
+ // observes DST), but we can check and adjust that.
15942
+ //
15943
+ // When handling many dates, calculating the offset for now every time is
15944
+ // expensive. It's just a guess, so we can cache the offset to use even if we
15945
+ // are right on a time change boundary (we'll just correct in the other
15946
+ // direction). Using a timestamp from first read is a slight optimization for
15947
+ // handling dates close to the current date, since those dates will usually be
15948
+ // in the same offset (we could set the timestamp statically, instead). We use a
15949
+ // single timestamp for all zones to make things a bit more predictable.
15950
+ //
15951
+ // This is safe for quickDT (used by local() and utc()) because we don't fill in
15952
+ // higher-order units from tsNow (as we do in fromObject, this requires that
15953
+ // offset is calculated from tsNow).
15954
+ function guessOffsetForZone(zone) {
15955
+ if (!zoneOffsetGuessCache[zone]) {
15956
+ if (zoneOffsetTs === undefined) {
15957
+ zoneOffsetTs = Settings.now();
15958
+ }
15959
+ zoneOffsetGuessCache[zone] = zone.offset(zoneOffsetTs);
15960
+ }
15961
+ return zoneOffsetGuessCache[zone];
15962
+ }
15759
15963
  // this is a dumbed down version of fromObject() that runs about 60% faster
15760
15964
  // but doesn't do any validation, makes a bunch of assumptions about what units
15761
15965
  // are present, and so on.
15762
15966
  function quickDT(obj, opts) {
15763
- var zone = normalizeZone(opts.zone, Settings.defaultZone), loc = Locale.fromObject(opts), tsNow = Settings.now();
15967
+ var zone = normalizeZone(opts.zone, Settings.defaultZone);
15968
+ if (!zone.isValid) {
15969
+ return DateTime.invalid(unsupportedZone(zone));
15970
+ }
15971
+ var loc = Locale.fromObject(opts);
15764
15972
  var ts, o;
15765
15973
  // assume we have the higher-order units
15766
- if (!isUndefined(obj.year)) {
15974
+ if (!isUndefined$1(obj.year)) {
15767
15975
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
15768
15976
  try {
15769
15977
  for(var _iterator = orderedUnits[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
15770
15978
  var u = _step.value;
15771
- if (isUndefined(obj[u])) {
15979
+ if (isUndefined$1(obj[u])) {
15772
15980
  obj[u] = defaultUnitValues[u];
15773
15981
  }
15774
15982
  }
@@ -15790,11 +15998,11 @@ function quickDT(obj, opts) {
15790
15998
  if (invalid) {
15791
15999
  return DateTime.invalid(invalid);
15792
16000
  }
15793
- var offsetProvis = zone.offset(tsNow);
16001
+ var offsetProvis = guessOffsetForZone(zone);
15794
16002
  var ref;
15795
16003
  ref = _sliced_to_array$4(objToTS(obj, offsetProvis, zone), 2), ts = ref[0], o = ref[1];
15796
16004
  } else {
15797
- ts = tsNow;
16005
+ ts = Settings.now();
15798
16006
  }
15799
16007
  return new DateTime({
15800
16008
  ts: ts,
@@ -15804,7 +16012,7 @@ function quickDT(obj, opts) {
15804
16012
  });
15805
16013
  }
15806
16014
  function diffRelative(start, end, opts) {
15807
- var round = isUndefined(opts.round) ? true : opts.round, format = function(c, unit) {
16015
+ var round = isUndefined$1(opts.round) ? true : opts.round, format = function(c, unit) {
15808
16016
  c = roundTo(c, round || opts.calendary ? 0 : 2, true);
15809
16017
  var formatter = end.loc.clone(opts).relFormatter(opts);
15810
16018
  return formatter.format(c, unit);
@@ -15858,6 +16066,15 @@ function lastOpts(argList) {
15858
16066
  args
15859
16067
  ];
15860
16068
  }
16069
+ /**
16070
+ * Timestamp to use for cached zone offset guesses (exposed for test)
16071
+ */ var zoneOffsetTs;
16072
+ /**
16073
+ * Cache for zone offset guesses (exposed for test).
16074
+ *
16075
+ * This optimizes quickDT via guessOffsetForZone to avoid repeated calls of
16076
+ * zone.offset().
16077
+ */ var zoneOffsetGuessCache = {};
15861
16078
  var DateTime = /*#__PURE__*/ function() {
15862
16079
  function DateTime(config) {
15863
16080
  _class_call_check$5(this, DateTime);
@@ -15865,7 +16082,7 @@ var DateTime = /*#__PURE__*/ function() {
15865
16082
  var invalid = config.invalid || (Number.isNaN(config.ts) ? new Invalid("invalid input") : null) || (!zone.isValid ? unsupportedZone(zone) : null);
15866
16083
  /**
15867
16084
  * @access private
15868
- */ this.ts = isUndefined(config.ts) ? Settings.now() : config.ts;
16085
+ */ this.ts = isUndefined$1(config.ts) ? Settings.now() : config.ts;
15869
16086
  var c = null, o = null;
15870
16087
  if (!invalid) {
15871
16088
  var unchanged = config.old && config.old.ts === this.ts && config.old.zone.equals(zone);
@@ -15876,7 +16093,9 @@ var DateTime = /*#__PURE__*/ function() {
15876
16093
  config.old.o
15877
16094
  ], c = ref[0], o = ref[1];
15878
16095
  } else {
15879
- var ot = zone.offset(this.ts);
16096
+ // If an offset has been passed and we have not been called from
16097
+ // clone(), we can trust it and avoid the offset calculation.
16098
+ var ot = isNumber$1(config.o) && !config.old ? config.o : zone.offset(this.ts);
15880
16099
  c = tsToObj(this.ts, ot);
15881
16100
  invalid = Number.isNaN(c.year) ? new Invalid("invalid input") : null;
15882
16101
  c = invalid ? null : c;
@@ -16514,7 +16733,7 @@ var DateTime = /*#__PURE__*/ function() {
16514
16733
  if (!this.isValid) return this;
16515
16734
  var normalized = normalizeObject(values, normalizeUnitWithLocalWeeks);
16516
16735
  var _usesLocalWeekValues = usesLocalWeekValues(normalized, this.loc), minDaysInFirstWeek = _usesLocalWeekValues.minDaysInFirstWeek, startOfWeek = _usesLocalWeekValues.startOfWeek;
16517
- var settingWeekStuff = !isUndefined(normalized.weekYear) || !isUndefined(normalized.weekNumber) || !isUndefined(normalized.weekday), containsOrdinal = !isUndefined(normalized.ordinal), containsGregorYear = !isUndefined(normalized.year), containsGregorMD = !isUndefined(normalized.month) || !isUndefined(normalized.day), containsGregor = containsGregorYear || containsGregorMD, definiteWeekDef = normalized.weekYear || normalized.weekNumber;
16736
+ var settingWeekStuff = !isUndefined$1(normalized.weekYear) || !isUndefined$1(normalized.weekNumber) || !isUndefined$1(normalized.weekday), containsOrdinal = !isUndefined$1(normalized.ordinal), containsGregorYear = !isUndefined$1(normalized.year), containsGregorMD = !isUndefined$1(normalized.month) || !isUndefined$1(normalized.day), containsGregor = containsGregorYear || containsGregorMD, definiteWeekDef = normalized.weekYear || normalized.weekNumber;
16518
16737
  if ((containsGregor || containsOrdinal) && definiteWeekDef) {
16519
16738
  throw new ConflictingSpecificationError("Can't mix weekYear/weekNumber units with year/month/day or ordinals");
16520
16739
  }
@@ -16524,13 +16743,13 @@ var DateTime = /*#__PURE__*/ function() {
16524
16743
  var mixed;
16525
16744
  if (settingWeekStuff) {
16526
16745
  mixed = weekToGregorian(_object_spread$1({}, gregorianToWeek(this.c, minDaysInFirstWeek, startOfWeek), normalized), minDaysInFirstWeek, startOfWeek);
16527
- } else if (!isUndefined(normalized.ordinal)) {
16746
+ } else if (!isUndefined$1(normalized.ordinal)) {
16528
16747
  mixed = ordinalToGregorian(_object_spread$1({}, gregorianToOrdinal(this.c), normalized));
16529
16748
  } else {
16530
16749
  mixed = _object_spread$1({}, this.toObject(), normalized);
16531
16750
  // if we didn't set the day but we ended up on an overflow date,
16532
16751
  // use the last day of the right month
16533
- if (isUndefined(normalized.day)) {
16752
+ if (isUndefined$1(normalized.day)) {
16534
16753
  mixed.day = Math.min(daysInMonth(mixed.year, mixed.month), mixed.day);
16535
16754
  }
16536
16755
  }
@@ -17209,6 +17428,7 @@ var DateTime = /*#__PURE__*/ function() {
17209
17428
  * @param {string} [options.locale] - a locale to set on the resulting DateTime instance
17210
17429
  * @param {string} [options.outputCalendar] - the output calendar to set on the resulting DateTime instance
17211
17430
  * @param {string} [options.numberingSystem] - the numbering system to set on the resulting DateTime instance
17431
+ * @param {string} [options.weekSettings] - the week settings to set on the resulting DateTime instance
17212
17432
  * @example DateTime.utc() //~> now
17213
17433
  * @example DateTime.utc(2017) //~> 2017-01-01T00:00:00Z
17214
17434
  * @example DateTime.utc(2017, 3) //~> 2017-03-01T00:00:00Z
@@ -17268,13 +17488,14 @@ var DateTime = /*#__PURE__*/ function() {
17268
17488
  * @param {string} [options.locale] - a locale to set on the resulting DateTime instance
17269
17489
  * @param {string} options.outputCalendar - the output calendar to set on the resulting DateTime instance
17270
17490
  * @param {string} options.numberingSystem - the numbering system to set on the resulting DateTime instance
17491
+ * @param {string} options.weekSettings - the week settings to set on the resulting DateTime instance
17271
17492
  * @return {DateTime}
17272
17493
  */ function fromMillis(milliseconds) {
17273
17494
  var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
17274
17495
  if (!isNumber$1(milliseconds)) {
17275
17496
  throw new InvalidArgumentError("fromMillis requires a numerical input, but received a ".concat(typeof milliseconds === "undefined" ? "undefined" : _type_of$4(milliseconds), " with value ").concat(milliseconds));
17276
17497
  } else if (milliseconds < -MAX_DATE || milliseconds > MAX_DATE) {
17277
- // this isn't perfect because because we can still end up out of range because of additional shifting, but it's a start
17498
+ // this isn't perfect because we can still end up out of range because of additional shifting, but it's a start
17278
17499
  return DateTime.invalid("Timestamp out of range");
17279
17500
  } else {
17280
17501
  return new DateTime({
@@ -17295,6 +17516,7 @@ var DateTime = /*#__PURE__*/ function() {
17295
17516
  * @param {string} [options.locale] - a locale to set on the resulting DateTime instance
17296
17517
  * @param {string} options.outputCalendar - the output calendar to set on the resulting DateTime instance
17297
17518
  * @param {string} options.numberingSystem - the numbering system to set on the resulting DateTime instance
17519
+ * @param {string} options.weekSettings - the week settings to set on the resulting DateTime instance
17298
17520
  * @return {DateTime}
17299
17521
  */ function fromSeconds(seconds) {
17300
17522
  var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
@@ -17333,6 +17555,7 @@ var DateTime = /*#__PURE__*/ function() {
17333
17555
  * @param {string} [opts.locale='system\'s locale'] - a locale to set on the resulting DateTime instance
17334
17556
  * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
17335
17557
  * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance
17558
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
17336
17559
  * @example DateTime.fromObject({ year: 1982, month: 5, day: 25}).toISODate() //=> '1982-05-25'
17337
17560
  * @example DateTime.fromObject({ year: 1982 }).toISODate() //=> '1982-01-01'
17338
17561
  * @example DateTime.fromObject({ hour: 10, minute: 26, second: 6 }) //~> today at 10:26:06
@@ -17352,7 +17575,7 @@ var DateTime = /*#__PURE__*/ function() {
17352
17575
  var loc = Locale.fromObject(opts);
17353
17576
  var normalized = normalizeObject(obj, normalizeUnitWithLocalWeeks);
17354
17577
  var _usesLocalWeekValues = usesLocalWeekValues(normalized, loc), minDaysInFirstWeek = _usesLocalWeekValues.minDaysInFirstWeek, startOfWeek = _usesLocalWeekValues.startOfWeek;
17355
- var tsNow = Settings.now(), offsetProvis = !isUndefined(opts.specificOffset) ? opts.specificOffset : zoneToUse.offset(tsNow), containsOrdinal = !isUndefined(normalized.ordinal), containsGregorYear = !isUndefined(normalized.year), containsGregorMD = !isUndefined(normalized.month) || !isUndefined(normalized.day), containsGregor = containsGregorYear || containsGregorMD, definiteWeekDef = normalized.weekYear || normalized.weekNumber;
17578
+ var tsNow = Settings.now(), offsetProvis = !isUndefined$1(opts.specificOffset) ? opts.specificOffset : zoneToUse.offset(tsNow), containsOrdinal = !isUndefined$1(normalized.ordinal), containsGregorYear = !isUndefined$1(normalized.year), containsGregorMD = !isUndefined$1(normalized.month) || !isUndefined$1(normalized.day), containsGregor = containsGregorYear || containsGregorMD, definiteWeekDef = normalized.weekYear || normalized.weekNumber;
17356
17579
  // cases:
17357
17580
  // just a weekday -> this week's instance of that weekday, no worries
17358
17581
  // (gregorian data or ordinal) + (weekYear or weekNumber) -> error
@@ -17386,7 +17609,7 @@ var DateTime = /*#__PURE__*/ function() {
17386
17609
  for(var _iterator = units[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
17387
17610
  var u = _step.value;
17388
17611
  var v = normalized[u];
17389
- if (!isUndefined(v)) {
17612
+ if (!isUndefined$1(v)) {
17390
17613
  foundFirst = true;
17391
17614
  } else if (foundFirst) {
17392
17615
  normalized[u] = defaultValues[u];
@@ -17424,6 +17647,9 @@ var DateTime = /*#__PURE__*/ function() {
17424
17647
  if (normalized.weekday && containsGregor && obj.weekday !== inst.weekday) {
17425
17648
  return DateTime.invalid("mismatched weekday", "you can't specify both a weekday of ".concat(normalized.weekday, " and a date of ").concat(inst.toISO()));
17426
17649
  }
17650
+ if (!inst.isValid) {
17651
+ return DateTime.invalid(inst.invalid);
17652
+ }
17427
17653
  return inst;
17428
17654
  }
17429
17655
  },
@@ -17438,6 +17664,7 @@ var DateTime = /*#__PURE__*/ function() {
17438
17664
  * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance
17439
17665
  * @param {string} [opts.outputCalendar] - the output calendar to set on the resulting DateTime instance
17440
17666
  * @param {string} [opts.numberingSystem] - the numbering system to set on the resulting DateTime instance
17667
+ * @param {string} [opts.weekSettings] - the week settings to set on the resulting DateTime instance
17441
17668
  * @example DateTime.fromISO('2016-05-25T09:08:34.123')
17442
17669
  * @example DateTime.fromISO('2016-05-25T09:08:34.123+06:00')
17443
17670
  * @example DateTime.fromISO('2016-05-25T09:08:34.123+06:00', {setZone: true})
@@ -17461,6 +17688,7 @@ var DateTime = /*#__PURE__*/ function() {
17461
17688
  * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance
17462
17689
  * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
17463
17690
  * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance
17691
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
17464
17692
  * @example DateTime.fromRFC2822('25 Nov 2016 13:23:12 GMT')
17465
17693
  * @example DateTime.fromRFC2822('Fri, 25 Nov 2016 13:23:12 +0600')
17466
17694
  * @example DateTime.fromRFC2822('25 Nov 2016 13:23 Z')
@@ -17483,6 +17711,7 @@ var DateTime = /*#__PURE__*/ function() {
17483
17711
  * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance
17484
17712
  * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
17485
17713
  * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance
17714
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
17486
17715
  * @example DateTime.fromHTTP('Sun, 06 Nov 1994 08:49:37 GMT')
17487
17716
  * @example DateTime.fromHTTP('Sunday, 06-Nov-94 08:49:37 GMT')
17488
17717
  * @example DateTime.fromHTTP('Sun Nov 6 08:49:37 1994')
@@ -17505,11 +17734,12 @@ var DateTime = /*#__PURE__*/ function() {
17505
17734
  * @param {boolean} [opts.setZone=false] - override the zone with a zone specified in the string itself, if it specifies one
17506
17735
  * @param {string} [opts.locale='en-US'] - a locale string to use when parsing. Will also set the DateTime to this locale
17507
17736
  * @param {string} opts.numberingSystem - the numbering system to use when parsing. Will also set the resulting DateTime to this numbering system
17737
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
17508
17738
  * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
17509
17739
  * @return {DateTime}
17510
17740
  */ function fromFormat(text, fmt) {
17511
17741
  var opts = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
17512
- if (isUndefined(text) || isUndefined(fmt)) {
17742
+ if (isUndefined$1(text) || isUndefined$1(fmt)) {
17513
17743
  throw new InvalidArgumentError("fromFormat requires an input string and a format");
17514
17744
  }
17515
17745
  var _opts_locale = opts.locale, locale = _opts_locale === void 0 ? null : _opts_locale, _opts_numberingSystem = opts.numberingSystem, numberingSystem = _opts_numberingSystem === void 0 ? null : _opts_numberingSystem, localeToUse = Locale.fromOpts({
@@ -17544,6 +17774,7 @@ var DateTime = /*#__PURE__*/ function() {
17544
17774
  * @param {boolean} [opts.setZone=false] - override the zone with a zone specified in the string itself, if it specifies one
17545
17775
  * @param {string} [opts.locale='en-US'] - a locale string to use when parsing. Will also set the DateTime to this locale
17546
17776
  * @param {string} opts.numberingSystem - the numbering system to use when parsing. Will also set the resulting DateTime to this numbering system
17777
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
17547
17778
  * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
17548
17779
  * @example DateTime.fromSQL('2017-05-15')
17549
17780
  * @example DateTime.fromSQL('2017-05-15 09:12:34')
@@ -17572,7 +17803,7 @@ var DateTime = /*#__PURE__*/ function() {
17572
17803
  if (!reason) {
17573
17804
  throw new InvalidArgumentError("need to specify a reason the DateTime is invalid");
17574
17805
  }
17575
- var invalid = _instanceof$4(reason, Invalid) ? reason : new Invalid(reason, explanation);
17806
+ var invalid = _instanceof$5(reason, Invalid) ? reason : new Invalid(reason, explanation);
17576
17807
  if (Settings.throwOnInvalid) {
17577
17808
  throw new InvalidDateTimeError(invalid);
17578
17809
  } else {
@@ -17623,6 +17854,13 @@ var DateTime = /*#__PURE__*/ function() {
17623
17854
  }).join("");
17624
17855
  }
17625
17856
  },
17857
+ {
17858
+ key: "resetCache",
17859
+ value: function resetCache() {
17860
+ zoneOffsetTs = undefined;
17861
+ zoneOffsetGuessCache = {};
17862
+ }
17863
+ },
17626
17864
  {
17627
17865
  key: "min",
17628
17866
  value: /**
@@ -17687,6 +17925,61 @@ var DateTime = /*#__PURE__*/ function() {
17687
17925
  return DateTime.fromFormatExplain(text, fmt, options);
17688
17926
  }
17689
17927
  },
17928
+ {
17929
+ key: "buildFormatParser",
17930
+ value: /**
17931
+ * Build a parser for `fmt` using the given locale. This parser can be passed
17932
+ * to {@link DateTime.fromFormatParser} to a parse a date in this format. This
17933
+ * can be used to optimize cases where many dates need to be parsed in a
17934
+ * specific format.
17935
+ *
17936
+ * @param {String} fmt - the format the string is expected to be in (see
17937
+ * description)
17938
+ * @param {Object} options - options used to set locale and numberingSystem
17939
+ * for parser
17940
+ * @returns {TokenParser} - opaque object to be used
17941
+ */ function buildFormatParser(fmt) {
17942
+ var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
17943
+ var _options_locale = options.locale, locale = _options_locale === void 0 ? null : _options_locale, _options_numberingSystem = options.numberingSystem, numberingSystem = _options_numberingSystem === void 0 ? null : _options_numberingSystem, localeToUse = Locale.fromOpts({
17944
+ locale: locale,
17945
+ numberingSystem: numberingSystem,
17946
+ defaultToEN: true
17947
+ });
17948
+ return new TokenParser(localeToUse, fmt);
17949
+ }
17950
+ },
17951
+ {
17952
+ key: "fromFormatParser",
17953
+ value: /**
17954
+ * Create a DateTime from an input string and format parser.
17955
+ *
17956
+ * The format parser must have been created with the same locale as this call.
17957
+ *
17958
+ * @param {String} text - the string to parse
17959
+ * @param {TokenParser} formatParser - parser from {@link DateTime.buildFormatParser}
17960
+ * @param {Object} opts - options taken by fromFormat()
17961
+ * @returns {DateTime}
17962
+ */ function fromFormatParser(text, formatParser) {
17963
+ var opts = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
17964
+ if (isUndefined$1(text) || isUndefined$1(formatParser)) {
17965
+ throw new InvalidArgumentError("fromFormatParser requires an input string and a format parser");
17966
+ }
17967
+ var _opts_locale = opts.locale, locale = _opts_locale === void 0 ? null : _opts_locale, _opts_numberingSystem = opts.numberingSystem, numberingSystem = _opts_numberingSystem === void 0 ? null : _opts_numberingSystem, localeToUse = Locale.fromOpts({
17968
+ locale: locale,
17969
+ numberingSystem: numberingSystem,
17970
+ defaultToEN: true
17971
+ });
17972
+ if (!localeToUse.equals(formatParser.locale)) {
17973
+ throw new InvalidArgumentError("fromFormatParser called with a locale of ".concat(localeToUse, ", ") + "but the format parser was created for ".concat(formatParser.locale));
17974
+ }
17975
+ var _formatParser_explainFromTokens = formatParser.explainFromTokens(text), result = _formatParser_explainFromTokens.result, zone = _formatParser_explainFromTokens.zone, specificOffset = _formatParser_explainFromTokens.specificOffset, invalidReason = _formatParser_explainFromTokens.invalidReason;
17976
+ if (invalidReason) {
17977
+ return DateTime.invalid(invalidReason);
17978
+ } else {
17979
+ return parseDataToDateTime(result, zone, opts, "format ".concat(formatParser.format), text, specificOffset);
17980
+ }
17981
+ }
17982
+ },
17690
17983
  {
17691
17984
  key: "DATE_SHORT",
17692
17985
  get: // FORMAT PRESETS
@@ -17957,7 +18250,7 @@ function _inherits$2(subClass, superClass) {
17957
18250
  });
17958
18251
  if (superClass) _set_prototype_of$2(subClass, superClass);
17959
18252
  }
17960
- function _instanceof$3(left, right) {
18253
+ function _instanceof$4(left, right) {
17961
18254
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
17962
18255
  return !!right[Symbol.hasInstance](left);
17963
18256
  } else {
@@ -18886,14 +19179,14 @@ function resolveNode(node, pos, side, overlays) {
18886
19179
  var _a;
18887
19180
  // Move up to a node that actually holds the position, if possible
18888
19181
  while(node.from == node.to || (side < 1 ? node.from >= pos : node.from > pos) || (side > -1 ? node.to <= pos : node.to < pos)){
18889
- var parent = !overlays && _instanceof$3(node, TreeNode) && node.index < 0 ? null : node.parent;
19182
+ var parent = !overlays && _instanceof$4(node, TreeNode) && node.index < 0 ? null : node.parent;
18890
19183
  if (!parent) return node;
18891
19184
  node = parent;
18892
19185
  }
18893
19186
  var mode = overlays ? 0 : IterMode.IgnoreOverlays;
18894
19187
  // Must go up out of overlays when those do not overlap with pos
18895
19188
  if (overlays) for(var scan = node, parent1 = scan.parent; parent1; scan = parent1, parent1 = scan.parent){
18896
- if (_instanceof$3(scan, TreeNode) && scan.index < 0 && ((_a = parent1.enter(pos, side, mode)) === null || _a === void 0 ? void 0 : _a.from) != scan.from) node = parent1;
19189
+ if (_instanceof$4(scan, TreeNode) && scan.index < 0 && ((_a = parent1.enter(pos, side, mode)) === null || _a === void 0 ? void 0 : _a.from) != scan.from) node = parent1;
18897
19190
  }
18898
19191
  for(;;){
18899
19192
  var inner = node.enter(pos, side, mode);
@@ -18945,7 +19238,7 @@ var BaseNode = /*#__PURE__*/ function() {
18945
19238
  {
18946
19239
  key: "matchContext",
18947
19240
  value: function matchContext(context) {
18948
- return matchNodeContext(this, context);
19241
+ return matchNodeContext(this.parent, context);
18949
19242
  }
18950
19243
  },
18951
19244
  {
@@ -19021,7 +19314,7 @@ var TreeNode = /*#__PURE__*/ function(BaseNode) {
19021
19314
  for(var _parent__tree = parent._tree, children = _parent__tree.children, positions = _parent__tree.positions, e = dir > 0 ? children.length : -1; i != e; i += dir){
19022
19315
  var next = children[i], start = positions[i] + parent.from;
19023
19316
  if (!checkSide(side, pos, start, start + next.length)) continue;
19024
- if (_instanceof$3(next, TreeBuffer)) {
19317
+ if (_instanceof$4(next, TreeBuffer)) {
19025
19318
  if (mode & IterMode.ExcludeBuffers) continue;
19026
19319
  var index = next.findChild(0, next.buffer.length, dir, pos - start, side);
19027
19320
  if (index > -1) return new BufferNode(new BufferContext(parent, next, i, start), null, index);
@@ -19159,7 +19452,7 @@ function getChildren(node, type, before, after) {
19159
19452
  }
19160
19453
  function matchNodeContext(node, context) {
19161
19454
  var i = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : context.length - 1;
19162
- for(var p = node.parent; i >= 0; p = p.parent){
19455
+ for(var p = node; i >= 0; p = p.parent){
19163
19456
  if (!p) return false;
19164
19457
  if (!p.type.isAnonymous) {
19165
19458
  if (context[i] && context[i] != p.name) return false;
@@ -19320,7 +19613,7 @@ function iterStack(heads) {
19320
19613
  pick = i;
19321
19614
  }
19322
19615
  }
19323
- var next = _instanceof$3(picked, TreeNode) && picked.index < 0 ? null : picked.parent;
19616
+ var next = _instanceof$4(picked, TreeNode) && picked.index < 0 ? null : picked.parent;
19324
19617
  var newHeads = heads.slice();
19325
19618
  if (next) newHeads[pick] = next;
19326
19619
  else newHeads.splice(pick, 1);
@@ -19344,7 +19637,7 @@ var StackIterator = /*#__PURE__*/ function() {
19344
19637
  }();
19345
19638
  function stackIterator(tree, pos, side) {
19346
19639
  var inner = tree.resolveInner(pos, side), layers = null;
19347
- for(var scan = _instanceof$3(inner, TreeNode) ? inner : inner.context.parent; scan; scan = scan.parent){
19640
+ for(var scan = _instanceof$4(inner, TreeNode) ? inner : inner.context.parent; scan; scan = scan.parent){
19348
19641
  if (scan.index < 0) {
19349
19642
  var parent = scan.parent;
19350
19643
  (layers || (layers = [
@@ -19382,7 +19675,7 @@ allows you to move to adjacent nodes.
19382
19675
  @internal
19383
19676
  */ this.index = 0;
19384
19677
  this.bufferNode = null;
19385
- if (_instanceof$3(node, TreeNode)) {
19678
+ if (_instanceof$4(node, TreeNode)) {
19386
19679
  this.yieldNode(node);
19387
19680
  } else {
19388
19681
  this._tree = node.context.parent;
@@ -19429,7 +19722,7 @@ allows you to move to adjacent nodes.
19429
19722
  */ key: "yield",
19430
19723
  value: function _yield(node) {
19431
19724
  if (!node) return false;
19432
- if (_instanceof$3(node, TreeNode)) {
19725
+ if (_instanceof$4(node, TreeNode)) {
19433
19726
  this.buffer = null;
19434
19727
  return this.yieldNode(node);
19435
19728
  }
@@ -19570,7 +19863,7 @@ allows you to move to adjacent nodes.
19570
19863
  for(; parent; ref2 = parent, index = ref2.index, parent = ref2._parent, ref2){
19571
19864
  if (index > -1) for(var i1 = index + dir, e = dir < 0 ? -1 : parent._tree.children.length; i1 != e; i1 += dir){
19572
19865
  var child = parent._tree.children[i1];
19573
- if (this.mode & IterMode.IncludeAnonymous || _instanceof$3(child, TreeBuffer) || !child.type.isAnonymous || hasChild(child)) return false;
19866
+ if (this.mode & IterMode.IncludeAnonymous || _instanceof$4(child, TreeBuffer) || !child.type.isAnonymous || hasChild(child)) return false;
19574
19867
  }
19575
19868
  }
19576
19869
  return true;
@@ -19601,7 +19894,7 @@ allows you to move to adjacent nodes.
19601
19894
  },
19602
19895
  {
19603
19896
  /**
19604
- Move to the next node in a last-to-first pre-order traveral. A
19897
+ Move to the next node in a last-to-first pre-order traversal. A
19605
19898
  node is followed by its last child or, if it has none, its
19606
19899
  previous sibling or the previous sibling of the first parent
19607
19900
  node that has one.
@@ -19679,8 +19972,8 @@ allows you to move to adjacent nodes.
19679
19972
  for(;;){
19680
19973
  if (mustLeave && leave) leave(this);
19681
19974
  mustLeave = this.type.isAnonymous;
19682
- if (this.nextSibling()) break;
19683
19975
  if (!depth) return;
19976
+ if (this.nextSibling()) break;
19684
19977
  this.parent();
19685
19978
  depth--;
19686
19979
  mustLeave = true;
@@ -19695,10 +19988,10 @@ allows you to move to adjacent nodes.
19695
19988
  are treated as wildcards.
19696
19989
  */ key: "matchContext",
19697
19990
  value: function matchContext(context) {
19698
- if (!this.buffer) return matchNodeContext(this.node, context);
19991
+ if (!this.buffer) return matchNodeContext(this.node.parent, context);
19699
19992
  var buffer = this.buffer.buffer, types = buffer.set.types;
19700
19993
  for(var i = context.length - 1, d = this.stack.length - 1; i >= 0; d--){
19701
- if (d < 0) return matchNodeContext(this.node, context, i);
19994
+ if (d < 0) return matchNodeContext(this._tree, context, i);
19702
19995
  var type = types[buffer.buffer[this.stack[d]]];
19703
19996
  if (!type.isAnonymous) {
19704
19997
  if (context[i] && context[i] != type.name) return false;
@@ -19713,7 +20006,7 @@ allows you to move to adjacent nodes.
19713
20006
  }();
19714
20007
  function hasChild(tree) {
19715
20008
  return tree.children.some(function(ch) {
19716
- return _instanceof$3(ch, TreeBuffer) || !ch.type.isAnonymous || hasChild(ch);
20009
+ return _instanceof$4(ch, TreeBuffer) || !ch.type.isAnonymous || hasChild(ch);
19717
20010
  });
19718
20011
  }
19719
20012
  function buildTree(data) {
@@ -19724,7 +20017,7 @@ function buildTree(data) {
19724
20017
  var contextHash = 0, lookAhead = 0;
19725
20018
  function takeNode(parentStart, minPos, children, positions, inRepeat, depth) {
19726
20019
  var id = cursor.id, start = cursor.start, end = cursor.end, size = cursor.size;
19727
- var lookAheadAtStart = lookAhead;
20020
+ var lookAheadAtStart = lookAhead, contextAtStart = contextHash;
19728
20021
  while(size < 0){
19729
20022
  cursor.next();
19730
20023
  if (size == -1 /* SpecialRecord.Reuse */ ) {
@@ -19760,7 +20053,7 @@ function buildTree(data) {
19760
20053
  while(cursor.pos > endPos1){
19761
20054
  if (localInRepeat >= 0 && cursor.id == localInRepeat && cursor.size >= 0) {
19762
20055
  if (cursor.end <= lastEnd - maxBufferLength) {
19763
- makeRepeatLeaf(localChildren, localPositions, start, lastGroup, cursor.end, lastEnd, localInRepeat, lookAheadAtStart);
20056
+ makeRepeatLeaf(localChildren, localPositions, start, lastGroup, cursor.end, lastEnd, localInRepeat, lookAheadAtStart, contextAtStart);
19764
20057
  lastGroup = localChildren.length;
19765
20058
  lastEnd = cursor.end;
19766
20059
  }
@@ -19771,14 +20064,14 @@ function buildTree(data) {
19771
20064
  takeNode(start, endPos1, localChildren, localPositions, localInRepeat, depth + 1);
19772
20065
  }
19773
20066
  }
19774
- if (localInRepeat >= 0 && lastGroup > 0 && lastGroup < localChildren.length) makeRepeatLeaf(localChildren, localPositions, start, lastGroup, start, lastEnd, localInRepeat, lookAheadAtStart);
20067
+ if (localInRepeat >= 0 && lastGroup > 0 && lastGroup < localChildren.length) makeRepeatLeaf(localChildren, localPositions, start, lastGroup, start, lastEnd, localInRepeat, lookAheadAtStart, contextAtStart);
19775
20068
  localChildren.reverse();
19776
20069
  localPositions.reverse();
19777
20070
  if (localInRepeat > -1 && lastGroup > 0) {
19778
- var make = makeBalanced(type);
20071
+ var make = makeBalanced(type, contextAtStart);
19779
20072
  node1 = balanceRange(type, localChildren, localPositions, 0, localChildren.length, 0, end - start, make, make);
19780
20073
  } else {
19781
- node1 = makeTree(type, localChildren, localPositions, end - start, lookAheadAtStart - end);
20074
+ node1 = makeTree(type, localChildren, localPositions, end - start, lookAheadAtStart - end, contextAtStart);
19782
20075
  }
19783
20076
  }
19784
20077
  children.push(node1);
@@ -19813,27 +20106,26 @@ function buildTree(data) {
19813
20106
  positions.push(start1 - parentStart);
19814
20107
  }
19815
20108
  }
19816
- function makeBalanced(type) {
20109
+ function makeBalanced(type, contextHash) {
19817
20110
  return function(children, positions, length) {
19818
20111
  var lookAhead = 0, lastI = children.length - 1, last, lookAheadProp;
19819
- if (lastI >= 0 && _instanceof$3(last = children[lastI], Tree)) {
20112
+ if (lastI >= 0 && _instanceof$4(last = children[lastI], Tree)) {
19820
20113
  if (!lastI && last.type == type && last.length == length) return last;
19821
20114
  if (lookAheadProp = last.prop(NodeProp.lookAhead)) lookAhead = positions[lastI] + last.length + lookAheadProp;
19822
20115
  }
19823
- return makeTree(type, children, positions, length, lookAhead);
20116
+ return makeTree(type, children, positions, length, lookAhead, contextHash);
19824
20117
  };
19825
20118
  }
19826
- function makeRepeatLeaf(children, positions, base, i, from, to, type, lookAhead) {
20119
+ function makeRepeatLeaf(children, positions, base, i, from, to, type, lookAhead, contextHash) {
19827
20120
  var localChildren = [], localPositions = [];
19828
20121
  while(children.length > i){
19829
20122
  localChildren.push(children.pop());
19830
20123
  localPositions.push(positions.pop() + base - from);
19831
20124
  }
19832
- children.push(makeTree(nodeSet.types[type], localChildren, localPositions, to - from, lookAhead - to));
20125
+ children.push(makeTree(nodeSet.types[type], localChildren, localPositions, to - from, lookAhead - to, contextHash));
19833
20126
  positions.push(from - base);
19834
20127
  }
19835
- function makeTree(type, children, positions, length) {
19836
- var lookAhead = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : 0, props = arguments.length > 5 ? arguments[5] : void 0;
20128
+ function makeTree(type, children, positions, length, lookAhead, contextHash, props) {
19837
20129
  if (contextHash) {
19838
20130
  var pair = [
19839
20131
  NodeProp.contextHash,
@@ -19938,7 +20230,7 @@ function buildTree(data) {
19938
20230
  }
19939
20231
  var nodeSizeCache = new WeakMap;
19940
20232
  function nodeSize(balanceType, node) {
19941
- if (!balanceType.isAnonymous || _instanceof$3(node, TreeBuffer) || node.type != balanceType) return 1;
20233
+ if (!balanceType.isAnonymous || _instanceof$4(node, TreeBuffer) || node.type != balanceType) return 1;
19942
20234
  var size = nodeSizeCache.get(node);
19943
20235
  if (size == null) {
19944
20236
  size = 1;
@@ -19946,7 +20238,7 @@ function nodeSize(balanceType, node) {
19946
20238
  try {
19947
20239
  for(var _iterator = node.children[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
19948
20240
  var child = _step.value;
19949
- if (child.type != balanceType || !_instanceof$3(child, Tree)) {
20241
+ if (child.type != balanceType || !_instanceof$4(child, Tree)) {
19950
20242
  size = 1;
19951
20243
  break;
19952
20244
  }
@@ -20145,7 +20437,7 @@ function _inherits$1(subClass, superClass) {
20145
20437
  });
20146
20438
  if (superClass) _set_prototype_of$1(subClass, superClass);
20147
20439
  }
20148
- function _instanceof$2(left, right) {
20440
+ function _instanceof$3(left, right) {
20149
20441
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
20150
20442
  return !!right[Symbol.hasInstance](left);
20151
20443
  } else {
@@ -20344,14 +20636,15 @@ about the parse state.
20344
20636
  var _a;
20345
20637
  var depth = action >> 19 /* Action.ReduceDepthShift */ , type = action & 65535 /* Action.ValueMask */ ;
20346
20638
  var parser = this.p.parser;
20347
- if (this.reducePos < this.pos - 25 /* Lookahead.Margin */ ) this.setLookAhead(this.pos);
20639
+ var lookaheadRecord = this.reducePos < this.pos - 25 /* Lookahead.Margin */ ;
20640
+ if (lookaheadRecord) this.setLookAhead(this.pos);
20348
20641
  var dPrec = parser.dynamicPrecedence(type);
20349
20642
  if (dPrec) this.score += dPrec;
20350
20643
  if (depth == 0) {
20351
20644
  this.pushState(parser.getGoto(this.state, type, true), this.reducePos);
20352
20645
  // Zero-depth reductions are a special case—they add stuff to
20353
20646
  // the stack without popping anything off.
20354
- if (type < parser.minRepeatTerm) this.storeNode(type, this.reducePos, this.reducePos, 4, true);
20647
+ if (type < parser.minRepeatTerm) this.storeNode(type, this.reducePos, this.reducePos, lookaheadRecord ? 8 : 4, true);
20355
20648
  this.reduceContext(type, this.reducePos);
20356
20649
  return;
20357
20650
  }
@@ -20397,7 +20690,7 @@ about the parse state.
20397
20690
  @internal
20398
20691
  */ key: "storeNode",
20399
20692
  value: function storeNode(term, start, end) {
20400
- var size = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : 4, isReduce = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : false;
20693
+ var size = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : 4, mustSink = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : false;
20401
20694
  if (term == 0 /* Term.Err */ && (!this.stack.length || this.stack[this.stack.length - 1] < this.buffer.length + this.bufferBase)) {
20402
20695
  // Try to omit/merge adjacent error nodes
20403
20696
  var cur = this, top = this.buffer.length;
@@ -20413,18 +20706,27 @@ about the parse state.
20413
20706
  }
20414
20707
  }
20415
20708
  }
20416
- if (!isReduce || this.pos == end) {
20709
+ if (!mustSink || this.pos == end) {
20417
20710
  this.buffer.push(term, start, end, size);
20418
20711
  } else {
20419
20712
  var index = this.buffer.length;
20420
- if (index > 0 && this.buffer[index - 4] != 0 /* Term.Err */ ) while(index > 0 && this.buffer[index - 2] > end){
20421
- // Move this record forward
20422
- this.buffer[index] = this.buffer[index - 4];
20423
- this.buffer[index + 1] = this.buffer[index - 3];
20424
- this.buffer[index + 2] = this.buffer[index - 2];
20425
- this.buffer[index + 3] = this.buffer[index - 1];
20426
- index -= 4;
20427
- if (size > 4) size -= 4;
20713
+ if (index > 0 && this.buffer[index - 4] != 0 /* Term.Err */ ) {
20714
+ var mustMove = false;
20715
+ for(var scan = index; scan > 0 && this.buffer[scan - 2] > end; scan -= 4){
20716
+ if (this.buffer[scan - 1] >= 0) {
20717
+ mustMove = true;
20718
+ break;
20719
+ }
20720
+ }
20721
+ if (mustMove) while(index > 0 && this.buffer[index - 2] > end){
20722
+ // Move this record forward
20723
+ this.buffer[index] = this.buffer[index - 4];
20724
+ this.buffer[index + 1] = this.buffer[index - 3];
20725
+ this.buffer[index + 2] = this.buffer[index - 2];
20726
+ this.buffer[index + 3] = this.buffer[index - 1];
20727
+ index -= 4;
20728
+ if (size > 4) size -= 4;
20729
+ }
20428
20730
  }
20429
20731
  this.buffer[index] = term;
20430
20732
  this.buffer[index + 1] = start;
@@ -21365,7 +21667,7 @@ var FragmentCursor = /*#__PURE__*/ function() {
21365
21667
  this.nextStart = start;
21366
21668
  return null;
21367
21669
  }
21368
- if (_instanceof$2(next, Tree)) {
21670
+ if (_instanceof$3(next, Tree)) {
21369
21671
  if (start == pos) {
21370
21672
  if (start < this.safeFrom) return null;
21371
21673
  var end = start + next.length;
@@ -21668,9 +21970,9 @@ var Parse = /*#__PURE__*/ function() {
21668
21970
  if (verbose) console.log(base + this.stackID(stack) + " (via reuse of ".concat(parser.getName(cached.type.id), ")"));
21669
21971
  return true;
21670
21972
  }
21671
- if (!_instanceof$2(cached, Tree) || cached.children.length == 0 || cached.positions[0] > 0) break;
21973
+ if (!_instanceof$3(cached, Tree) || cached.children.length == 0 || cached.positions[0] > 0) break;
21672
21974
  var inner = cached.children[0];
21673
- if (_instanceof$2(inner, Tree) && cached.positions[0] == 0) cached = inner;
21975
+ if (_instanceof$3(inner, Tree) && cached.positions[0] == 0) cached = inner;
21674
21976
  else break;
21675
21977
  }
21676
21978
  }
@@ -22261,6 +22563,76 @@ function getSpecializer(spec) {
22261
22563
  return spec.get;
22262
22564
  }
22263
22565
 
22566
+ var nativeToString = Object.prototype.toString;
22567
+ var nativeHasOwnProperty = Object.prototype.hasOwnProperty;
22568
+ function isUndefined(obj) {
22569
+ return obj === undefined;
22570
+ }
22571
+ function isNil(obj) {
22572
+ return obj == null;
22573
+ }
22574
+ function isArray$1(obj) {
22575
+ return nativeToString.call(obj) === "[object Array]";
22576
+ }
22577
+ /**
22578
+ * Return true, if target owns a property with the given key.
22579
+ *
22580
+ * @param {Object} target
22581
+ * @param {String} key
22582
+ *
22583
+ * @return {Boolean}
22584
+ */ function has(target, key) {
22585
+ return !isNil(target) && nativeHasOwnProperty.call(target, key);
22586
+ }
22587
+ /**
22588
+ * Iterate over collection; returning something
22589
+ * (non-undefined) will stop iteration.
22590
+ *
22591
+ * @template T
22592
+ * @param {Collection<T>} collection
22593
+ * @param { ((item: T, idx: number) => (boolean|void)) | ((item: T, key: string) => (boolean|void)) } iterator
22594
+ *
22595
+ * @return {T} return result that stopped the iteration
22596
+ */ function forEach(collection, iterator) {
22597
+ var val, result;
22598
+ if (isUndefined(collection)) {
22599
+ return;
22600
+ }
22601
+ var convertKey = isArray$1(collection) ? toNum : identity;
22602
+ for(var key in collection){
22603
+ if (has(collection, key)) {
22604
+ val = collection[key];
22605
+ result = iterator(val, convertKey(key));
22606
+ if (result === false) {
22607
+ return val;
22608
+ }
22609
+ }
22610
+ }
22611
+ }
22612
+ /**
22613
+ * Reduce collection, returning a single result.
22614
+ *
22615
+ * @template T
22616
+ * @template V
22617
+ *
22618
+ * @param {Collection<T>} collection
22619
+ * @param {(result: V, entry: T, index: any) => V} iterator
22620
+ * @param {V} result
22621
+ *
22622
+ * @return {V} result returned from last iterator
22623
+ */ function reduce(collection, iterator, result) {
22624
+ forEach(collection, function(value, idx) {
22625
+ result = iterator(result, value, idx);
22626
+ });
22627
+ return result;
22628
+ }
22629
+ function identity(arg) {
22630
+ return arg;
22631
+ }
22632
+ function toNum(arg) {
22633
+ return Number(arg);
22634
+ }
22635
+
22264
22636
  function _class_call_check$2(instance, Constructor) {
22265
22637
  if (!(instance instanceof Constructor)) {
22266
22638
  throw new TypeError("Cannot call a class as a function");
@@ -22280,6 +22652,13 @@ function _create_class$2(Constructor, protoProps, staticProps) {
22280
22652
  if (staticProps) _defineProperties$2(Constructor, staticProps);
22281
22653
  return Constructor;
22282
22654
  }
22655
+ function _instanceof$2(left, right) {
22656
+ if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
22657
+ return !!right[Symbol.hasInstance](left);
22658
+ } else {
22659
+ return left instanceof right;
22660
+ }
22661
+ }
22283
22662
  var nextTagID = 0;
22284
22663
  /**
22285
22664
  Highlighting tags are markers that denote a highlighting category.
@@ -22301,6 +22680,8 @@ be picked up by regular highlighters (though you can derive them
22301
22680
  from standard tags to allow highlighters to fall back to those).
22302
22681
  */ var Tag = /*#__PURE__*/ function() {
22303
22682
  function Tag(/**
22683
+ The optional name of the base tag @internal
22684
+ */ name, /**
22304
22685
  The set of this tag and all its parent tags, starting with
22305
22686
  this one itself and sorted in order of decreasing specificity.
22306
22687
  */ set, /**
@@ -22310,6 +22691,7 @@ from standard tags to allow highlighters to fall back to those).
22310
22691
  The modifiers applied to this.base @internal
22311
22692
  */ modified) {
22312
22693
  _class_call_check$2(this, Tag);
22694
+ this.name = name;
22313
22695
  this.set = set;
22314
22696
  this.base = base;
22315
22697
  this.modified = modified;
@@ -22317,18 +22699,42 @@ from standard tags to allow highlighters to fall back to those).
22317
22699
  @internal
22318
22700
  */ this.id = nextTagID++;
22319
22701
  }
22320
- _create_class$2(Tag, null, [
22702
+ _create_class$2(Tag, [
22703
+ {
22704
+ key: "toString",
22705
+ value: function toString() {
22706
+ var name = this.name;
22707
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
22708
+ try {
22709
+ for(var _iterator = this.modified[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
22710
+ var mod = _step.value;
22711
+ if (mod.name) name = "".concat(mod.name, "(").concat(name, ")");
22712
+ }
22713
+ } catch (err) {
22714
+ _didIteratorError = true;
22715
+ _iteratorError = err;
22716
+ } finally{
22717
+ try {
22718
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
22719
+ _iterator.return();
22720
+ }
22721
+ } finally{
22722
+ if (_didIteratorError) {
22723
+ throw _iteratorError;
22724
+ }
22725
+ }
22726
+ }
22727
+ return name;
22728
+ }
22729
+ }
22730
+ ], [
22321
22731
  {
22322
22732
  key: "define",
22323
- value: /**
22324
- Define a new tag. If `parent` is given, the tag is treated as a
22325
- sub-tag of that parent, and
22326
- [highlighters](#highlight.tagHighlighter) that don't mention
22327
- this tag will try to fall back to the parent tag (or grandparent
22328
- tag, etc).
22329
- */ function define(parent) {
22733
+ value: function define(nameOrParent, parent) {
22734
+ var name = typeof nameOrParent == "string" ? nameOrParent : "?";
22735
+ if (_instanceof$2(nameOrParent, Tag)) parent = nameOrParent;
22330
22736
  if (parent === null || parent === void 0 ? void 0 : parent.base) throw new Error("Can not derive from a modified tag");
22331
- var tag = new Tag([], null, []);
22737
+ var tag = new Tag(name, [], null, []);
22332
22738
  tag.set.push(tag);
22333
22739
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
22334
22740
  if (parent) try {
@@ -22366,8 +22772,8 @@ from standard tags to allow highlighters to fall back to those).
22366
22772
  smaller set of modifiers is registered as a parent, so that for
22367
22773
  example `m1(m2(m3(t1)))` is a subtype of `m1(m2(t1))`,
22368
22774
  `m1(m3(t1)`, and so on.
22369
- */ function defineModifier() {
22370
- var mod = new Modifier;
22775
+ */ function defineModifier(name) {
22776
+ var mod = new Modifier(name);
22371
22777
  return function(tag) {
22372
22778
  if (tag.modified.indexOf(mod) > -1) return tag;
22373
22779
  return Modifier.get(tag.base || tag, tag.modified.concat(mod).sort(function(a, b) {
@@ -22381,8 +22787,9 @@ from standard tags to allow highlighters to fall back to those).
22381
22787
  }();
22382
22788
  var nextModifierID = 0;
22383
22789
  var Modifier = /*#__PURE__*/ function() {
22384
- function Modifier() {
22790
+ function Modifier(name) {
22385
22791
  _class_call_check$2(this, Modifier);
22792
+ this.name = name;
22386
22793
  this.instances = [];
22387
22794
  this.id = nextModifierID++;
22388
22795
  }
@@ -22395,7 +22802,7 @@ var Modifier = /*#__PURE__*/ function() {
22395
22802
  return t.base == base && sameArray(mods, t.modified);
22396
22803
  });
22397
22804
  if (exists) return exists;
22398
- var set = [], tag = new Tag(set, base, mods);
22805
+ var set = [], tag = new Tag(base.name, set, base, mods);
22399
22806
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
22400
22807
  try {
22401
22808
  for(var _iterator = mods[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
@@ -22941,7 +23348,7 @@ the parent.
22941
23348
  A level 6 [heading](#highlight.tags.heading).
22942
23349
  */ heading6: t(heading),
22943
23350
  /**
22944
- A prose separator (such as a horizontal rule).
23351
+ A prose [content](#highlight.tags.content) separator (such as a horizontal rule).
22945
23352
  */ contentSeparator: t(content),
22946
23353
  /**
22947
23354
  [Content](#highlight.tags.content) that represents a list.
@@ -22997,27 +23404,27 @@ the parent.
22997
23404
  [Modifier](#highlight.Tag^defineModifier) that indicates that a
22998
23405
  given element is being defined. Expected to be used with the
22999
23406
  various [name](#highlight.tags.name) tags.
23000
- */ definition: Tag.defineModifier(),
23407
+ */ definition: Tag.defineModifier("definition"),
23001
23408
  /**
23002
23409
  [Modifier](#highlight.Tag^defineModifier) that indicates that
23003
23410
  something is constant. Mostly expected to be used with
23004
23411
  [variable names](#highlight.tags.variableName).
23005
- */ constant: Tag.defineModifier(),
23412
+ */ constant: Tag.defineModifier("constant"),
23006
23413
  /**
23007
23414
  [Modifier](#highlight.Tag^defineModifier) used to indicate that
23008
23415
  a [variable](#highlight.tags.variableName) or [property
23009
23416
  name](#highlight.tags.propertyName) is being called or defined
23010
23417
  as a function.
23011
- */ function: Tag.defineModifier(),
23418
+ */ function: Tag.defineModifier("function"),
23012
23419
  /**
23013
23420
  [Modifier](#highlight.Tag^defineModifier) that can be applied to
23014
23421
  [names](#highlight.tags.name) to indicate that they belong to
23015
23422
  the language's standard environment.
23016
- */ standard: Tag.defineModifier(),
23423
+ */ standard: Tag.defineModifier("standard"),
23017
23424
  /**
23018
23425
  [Modifier](#highlight.Tag^defineModifier) that indicates a given
23019
23426
  [names](#highlight.tags.name) is local to some scope.
23020
- */ local: Tag.defineModifier(),
23427
+ */ local: Tag.defineModifier("local"),
23021
23428
  /**
23022
23429
  A generic variant [modifier](#highlight.Tag^defineModifier) that
23023
23430
  can be used to tag language-specific alternative variants of
@@ -23025,8 +23432,12 @@ the parent.
23025
23432
  forms of at least the [string](#highlight.tags.string) and
23026
23433
  [variable name](#highlight.tags.variableName) tags, since those
23027
23434
  come up a lot.
23028
- */ special: Tag.defineModifier()
23435
+ */ special: Tag.defineModifier("special")
23029
23436
  };
23437
+ for(var name1 in tags){
23438
+ var val = tags[name1];
23439
+ if (_instanceof$2(val, Tag)) val.name = name1;
23440
+ }
23030
23441
  /**
23031
23442
  This is a highlighter that adds stable, predictable classes to
23032
23443
  tokens, for styling with external CSS.
@@ -23345,7 +23756,7 @@ function _unsupported_iterable_to_array$1(o, minLen) {
23345
23756
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$1(o, minLen);
23346
23757
  }
23347
23758
  // This file was generated by lezer-generator. You probably shouldn't edit it.
23348
- var propertyIdentifier = 120, identifier = 121, nameIdentifier = 122, insertSemi = 123, expression0 = 127, ForExpression = 4, forExpressionStart = 130, ForInExpression = 7, Name = 8, Identifier = 9, AdditionalIdentifier = 10, forExpressionBodyStart = 138, IfExpression = 19, ifExpressionStart = 139, QuantifiedExpression = 23, quantifiedExpressionStart = 140, QuantifiedInExpression = 27, PositiveUnaryTest = 37, ArithmeticExpression = 41, arithmeticPlusStart = 144, arithmeticTimesStart = 145, arithmeticExpStart = 146, arithmeticUnaryStart = 147, VariableName = 47, PathExpression = 67, pathExpressionStart = 152, FilterExpression = 69, filterExpressionStart = 153, FunctionInvocation = 71, functionInvocationStart = 154, ParameterName = 75, nil = 159, NumericLiteral = 78, StringLiteral = 79, BooleanLiteral = 80, listStart = 165, List = 88, FunctionDefinition = 89, functionDefinitionStart = 167, Context = 96, contextStart = 169, ContextEntry = 97, PropertyName = 99, PropertyIdentifier = 100;
23759
+ var propertyIdentifier = 121, identifier = 122, nameIdentifier = 123, insertSemi = 124, expression0 = 128, ForExpression = 4, forExpressionStart = 131, ForInExpression = 7, Name = 8, Identifier = 9, AdditionalIdentifier = 10, forExpressionBodyStart = 139, IfExpression = 19, ifExpressionStart = 140, QuantifiedExpression = 23, quantifiedExpressionStart = 141, QuantifiedInExpression = 27, PositiveUnaryTest = 37, ArithmeticExpression = 41, arithmeticPlusStart = 145, arithmeticTimesStart = 146, arithmeticExpStart = 147, arithmeticUnaryStart = 148, VariableName = 47, PathExpression = 68, pathExpressionStart = 154, FilterExpression = 70, filterExpressionStart = 155, FunctionInvocation = 72, functionInvocationStart = 156, ParameterName = 76, nil = 161, NumericLiteral = 79, StringLiteral = 80, BooleanLiteral = 81, listStart = 167, List = 89, FunctionDefinition = 90, functionDefinitionStart = 169, Context = 97, contextStart = 171, ContextEntry = 98, PropertyName = 100, PropertyIdentifier = 101;
23349
23760
  /* global console,process */ // @ts-expect-error env access
23350
23761
  var LOG_PARSE = typeof process != "undefined" && process.env && /\bfparse(:dbg)?\b/.test(process.env.LOG);
23351
23762
  // @ts-expect-error env access
@@ -23421,7 +23832,6 @@ var additionalNameChars = chars$1("'./-+*^");
23421
23832
  */ function isSpace(ch) {
23422
23833
  return spaceChars.includes(ch);
23423
23834
  }
23424
- // eslint-disable-next-line
23425
23835
  function indent(str, spaces) {
23426
23836
  return spaces.concat(str.split(/\n/g).join("\n" + spaces));
23427
23837
  }
@@ -23511,14 +23921,14 @@ function indent(str, spaces) {
23511
23921
  var match = parseIdentifier(input, i1, namePart) || namePart && parseAdditionalSymbol(input, i1) || maybeSpace && parseSpaces(input, i1);
23512
23922
  // match is required
23513
23923
  if (!match) {
23514
- return i = i1, tokens = tokens1, nextMatch = nextMatch1, {
23924
+ return i = i1, nextMatch = nextMatch1, tokens = tokens1, {
23515
23925
  v: nextMatch1
23516
23926
  };
23517
23927
  }
23518
23928
  var token = match.token, offset = match.offset;
23519
23929
  i1 += offset;
23520
23930
  if (token === " ") {
23521
- return i = i1, tokens = tokens1, nextMatch = nextMatch1, "continue";
23931
+ return i = i1, nextMatch = nextMatch1, tokens = tokens1, "continue";
23522
23932
  }
23523
23933
  tokens1 = _to_consumable_array$1(tokens1).concat([
23524
23934
  token
@@ -23537,7 +23947,7 @@ function indent(str, spaces) {
23537
23947
  if (contextKeys.some(function(el) {
23538
23948
  return el.startsWith(name);
23539
23949
  })) {
23540
- return i = i1, tokens = tokens1, nextMatch = nextMatch1, "continue";
23950
+ return i = i1, nextMatch = nextMatch1, tokens = tokens1, "continue";
23541
23951
  }
23542
23952
  if (dateTimeIdentifiers.some(function(el) {
23543
23953
  return el === name;
@@ -23556,9 +23966,9 @@ function indent(str, spaces) {
23556
23966
  if (dateTimeIdentifiers.some(function(el) {
23557
23967
  return el.startsWith(name);
23558
23968
  })) {
23559
- return i = i1, tokens = tokens1, nextMatch = nextMatch1, "continue";
23969
+ return i = i1, nextMatch = nextMatch1, tokens = tokens1, "continue";
23560
23970
  }
23561
- return i = i1, tokens = tokens1, nextMatch = nextMatch1, {
23971
+ return i = i1, nextMatch = nextMatch1, tokens = tokens1, {
23562
23972
  v: nextMatch1
23563
23973
  };
23564
23974
  };
@@ -23624,7 +24034,10 @@ var _obj2;
23624
24034
  var contextStarts = (_obj2 = {}, _define_property$1(_obj2, contextStart, "Context"), _define_property$1(_obj2, functionDefinitionStart, "FunctionDefinition"), _define_property$1(_obj2, forExpressionStart, "ForExpression"), _define_property$1(_obj2, listStart, "List"), _define_property$1(_obj2, ifExpressionStart, "IfExpression"), _define_property$1(_obj2, quantifiedExpressionStart, "QuantifiedExpression"), _obj2);
23625
24035
  var _obj3;
23626
24036
  var contextEnds = (_obj3 = {}, _define_property$1(_obj3, Context, "Context"), _define_property$1(_obj3, FunctionDefinition, "FunctionDefinition"), _define_property$1(_obj3, ForExpression, "ForExpression"), _define_property$1(_obj3, List, "List"), _define_property$1(_obj3, IfExpression, "IfExpression"), _define_property$1(_obj3, QuantifiedExpression, "QuantifiedExpression"), _define_property$1(_obj3, PathExpression, "PathExpression"), _define_property$1(_obj3, FunctionInvocation, "FunctionInvocation"), _define_property$1(_obj3, FilterExpression, "FilterExpression"), _define_property$1(_obj3, ArithmeticExpression, "ArithmeticExpression"), _obj3);
23627
- var ValueProducer = /*#__PURE__*/ function() {
24037
+ /**
24038
+ * A simple producer that retrievs a value from
24039
+ * a given context. Used to lazily take things.
24040
+ */ var ValueProducer = /*#__PURE__*/ function() {
23628
24041
  function ValueProducer(fn) {
23629
24042
  _class_call_check$1(this, ValueProducer);
23630
24043
  this.fn = fn;
@@ -23710,6 +24123,20 @@ var dateTimeIdentifiers = Object.keys(dateTimeLiterals);
23710
24123
  var constructor = /** @type { typeof VariableContext } */ this.constructor;
23711
24124
  return constructor.of(_object_spread_props(_object_spread({}, this.value), _define_property$1({}, key, value)));
23712
24125
  }
24126
+ },
24127
+ {
24128
+ /**
24129
+ * Non-destructively merge another context into this one,
24130
+ * and return the result.
24131
+ *
24132
+ * @param {ContextValue} other
24133
+ *
24134
+ * @return {VariableContext}
24135
+ */ key: "merge",
24136
+ value: function merge(other) {
24137
+ var constructor = /** @type { typeof VariableContext } */ this.constructor;
24138
+ return new constructor(constructor.__merge(this.value, other));
24139
+ }
23713
24140
  }
23714
24141
  ], [
23715
24142
  {
@@ -23727,36 +24154,71 @@ var dateTimeIdentifiers = Object.keys(dateTimeLiterals);
23727
24154
  {
23728
24155
  key: "of",
23729
24156
  value: /**
23730
- * Takes any number of Contexts and merges them into a single Context.
24157
+ * Takes any number of Contexts and merges them into a single context.
23731
24158
  *
23732
- * @param {...Context} contexts
23733
- * @returns {VariableContext}
24159
+ * @param { ...VariableContext } contexts
24160
+ * @returns { VariableContext }
23734
24161
  */ function of() {
23735
- var _this = this;
23736
24162
  for(var _len = arguments.length, contexts = new Array(_len), _key = 0; _key < _len; _key++){
23737
24163
  contexts[_key] = arguments[_key];
23738
24164
  }
23739
- var unwrap = function(context) {
23740
- if (!context || typeof context !== "object") {
23741
- return {};
24165
+ return contexts.reduce(function(context, otherContext) {
24166
+ return context.merge(otherContext);
24167
+ }, new this({}));
24168
+ }
24169
+ },
24170
+ {
24171
+ key: "__unwrap",
24172
+ value: /**
24173
+ * Returns the raw representation of the given context.
24174
+ *
24175
+ * @param {VariableContext | any} context
24176
+ *
24177
+ * @return {any}
24178
+ */ function __unwrap(context) {
24179
+ if (!context) {
24180
+ return {};
24181
+ }
24182
+ if (_instanceof$1(context, this)) {
24183
+ return context.value;
24184
+ }
24185
+ if (typeof context !== "object") {
24186
+ return {};
24187
+ }
24188
+ return _object_spread({}, context);
24189
+ }
24190
+ },
24191
+ {
24192
+ key: "__merge",
24193
+ value: /**
24194
+ * Non-destructively merges two contexts (or their values)
24195
+ * with each other, returning the result.
24196
+ *
24197
+ * @param {ContextValue} context
24198
+ * @param {ContextValue} other
24199
+ *
24200
+ * @return {any}
24201
+ */ function __merge(context, other) {
24202
+ var _this = this;
24203
+ return reduce(this.__unwrap(other), function(merged, value, key) {
24204
+ if (_instanceof$1(value, ValueProducer)) {
24205
+ // keep value producers in tact
24206
+ return _object_spread_props(_object_spread({}, merged), _define_property$1({}, key, value));
23742
24207
  }
23743
- if (_instanceof$1(context, _this)) {
23744
- return context.value;
24208
+ value = _this.__unwrap(value);
24209
+ if (has(merged, key)) {
24210
+ value = _this.__merge(_this.__unwrap(merged[key]), value);
23745
24211
  }
23746
- return _object_spread({}, context);
23747
- };
23748
- var merged = contexts.reduce(function(merged, context) {
23749
- return _object_spread({}, merged, unwrap(context));
23750
- }, {});
23751
- return new this(merged);
24212
+ return _object_spread_props(_object_spread({}, merged), _define_property$1({}, key, value));
24213
+ }, this.__unwrap(context));
23752
24214
  }
23753
24215
  }
23754
24216
  ]);
23755
24217
  return VariableContext;
23756
24218
  }();
23757
24219
  var Variables = /*#__PURE__*/ function() {
23758
- function Variables() {
23759
- var _ref = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, _ref_name = _ref.name, name = _ref_name === void 0 ? "Expressions" : _ref_name, _ref_tokens = _ref.tokens, tokens = _ref_tokens === void 0 ? [] : _ref_tokens, _ref_children = _ref.children, children = _ref_children === void 0 ? [] : _ref_children, _ref_parent = _ref.parent, parent = _ref_parent === void 0 ? null : _ref_parent, _ref_context = _ref.context, context = _ref_context === void 0 ? null : _ref_context, _ref_value = _ref.value, value = _ref_value === void 0 ? null : _ref_value, _ref_raw = _ref.raw, raw = _ref_raw === void 0 ? null : _ref_raw;
24220
+ function Variables(param) {
24221
+ var _param_name = param.name, name = _param_name === void 0 ? "Expressions" : _param_name, _param_tokens = param.tokens, tokens = _param_tokens === void 0 ? [] : _param_tokens, _param_children = param.children, children = _param_children === void 0 ? [] : _param_children, _param_parent = param.parent, parent = _param_parent === void 0 ? null : _param_parent, context = param.context, value = param.value, raw = param.raw;
23760
24222
  _class_call_check$1(this, Variables);
23761
24223
  this.name = name;
23762
24224
  this.tokens = tokens;
@@ -23987,7 +24449,19 @@ var Variables = /*#__PURE__*/ function() {
23987
24449
  ], [
23988
24450
  {
23989
24451
  key: "of",
23990
- value: function of(options) {
24452
+ value: /**
24453
+ * @param { {
24454
+ * name?: string,
24455
+ * tokens?: string[],
24456
+ * children?: Variables[],
24457
+ * parent?: Variables | null
24458
+ * context: VariableContext,
24459
+ * value?: any,
24460
+ * raw?: any
24461
+ * } } options
24462
+ *
24463
+ * @return {Variables}
24464
+ */ function of(options) {
23991
24465
  var name = options.name, _options_tokens = options.tokens, tokens = _options_tokens === void 0 ? [] : _options_tokens, _options_children = options.children, children = _options_children === void 0 ? [] : _options_children, _options_parent = options.parent, parent = _options_parent === void 0 ? null : _options_parent, context = options.context, value = options.value, raw = options.raw;
23992
24466
  if (!context) {
23993
24467
  throw new Error("must provide <context>");
@@ -24274,57 +24748,57 @@ var spec_identifier = {
24274
24748
  between: 72,
24275
24749
  instance: 86,
24276
24750
  of: 89,
24277
- days: 99,
24278
- time: 101,
24279
- duration: 103,
24280
- years: 105,
24281
- months: 107,
24282
- date: 109,
24283
- list: 115,
24284
- context: 121,
24285
- function: 128,
24286
- null: 154,
24287
- true: 326,
24288
- false: 326,
24289
- "?": 168,
24290
- external: 184,
24291
- not: 209
24751
+ days: 101,
24752
+ time: 103,
24753
+ duration: 105,
24754
+ years: 107,
24755
+ months: 109,
24756
+ date: 111,
24757
+ list: 117,
24758
+ context: 123,
24759
+ function: 130,
24760
+ null: 156,
24761
+ true: 330,
24762
+ false: 330,
24763
+ "?": 170,
24764
+ external: 186,
24765
+ not: 211
24292
24766
  };
24293
24767
  var parser = LRParser.deserialize({
24294
24768
  version: 14,
24295
- states: "CpO`QYOOO`QYOOO$gQYOOOOQU'#Ce'#CeO$qQYO'#C`O%zQYO'#FPOOQQ'#Fe'#FeO&UQYO'#FeO`QYO'#DVOOQU'#Em'#EmO'rQ^O'#D]OOQO'#Fl'#FlO)oQWO'#DuOOQQ'#D|'#D|OOQQ'#D}'#D}OOQQ'#EO'#EOO)tOWO'#ERO)oQWO'#EPOOQQ'#EP'#EPOOQQ'#Fr'#FrOOQQ'#Fp'#FpOOQQ'#Fw'#FwOOQQ'#ET'#ETO`QYO'#EVOOQQ'#FR'#FRO)yQ^O'#FRO+pQYO'#EWO+wQWO'#EXOOQP'#F{'#F{O+|QXO'#E`OOQQ'#Fx'#FxOOQQ'#FQ'#FQQOQWOOOOQQ'#FS'#FSOOQQ'#F]'#F]O`QYO'#CoOOQQ'#F^'#F^O$qQYO'#CsO,XQYO'#DvOOQQ'#Fq'#FqO,^QYO'#EQOOQO'#EQ'#EQO`QYO'#EUO`QYO'#ETOOQO'#Fy'#FyQ,fQWOOO,kQYO'#DRO-bQWO'#FaOOQO'#DT'#DTO-mQYO'#FeO-tQWOOO.kQYO'#CdO.xQYO'#FUOOQQ'#Cc'#CcO.}QYO'#FTOOQQ'#Cb'#CbO/VQYO,58zO`QYO,59iOOQQ'#Fb'#FbOOQQ'#Fc'#FcOOQQ'#Fd'#FdO`QYO,59qO`QYO,59qO`QYO,59qOOQQ'#Fj'#FjO$qQYO,5:]OOQQ'#Fk'#FkO`QYO,5:_O`QYO,59eO`QYO,59gO`QYO,59iO0uQYO,59iO0|QYO,59rOOQQ,5:h,5:hO1RQYO,59qOOQU-E8k-E8kO2uQYO'#FmOOQQ,5:a,5:aOOQQ,5:m,5:mOOQQ,5:k,5:kO2|QYO,5:qOOQQ,5;m,5;mO3WQYO,5:pO3eQWO,5:rO3jQYO,5:sOOQP'#Ed'#EdO4aQXO'#EcOOQO'#Eb'#EbO4hQWO'#EaO4mQWO'#F|O4uQWO,5:zO4zQYO,59ZO.xQYO'#F`OOQQ'#Cw'#CwO5RQYO'#F_OOQQ'#Cv'#CvO5ZQYO,59_O5`QYO,5:bO5eQYO,5:lO3PQYO,5:pO5jQYO,5:oO`QYO'#EvQ,fQWOOO`QYO'#ElO6aQWO,5;{O`QYOOOOQR'#Cf'#CfOOQQ'#Ei'#EiO7ZQYO,59OO`QYO,5;pOOQQ'#FX'#FXO$qQYO'#EjO7kQYO,5;oO`QYO1G.fOOQQ'#F['#F[O8bQYO1G/TO;XQYO1G/]O;cQYO1G/]O;mQYO1G/]OOQQ1G/w1G/wO=aQYO1G/yO=hQYO1G/PO>qQYO1G/RO?zQYO1G/TO`QYO1G/TOOQQ1G/T1G/TO@bQYO1G/^O@|Q^O'#CdOB`QYO'#FoOOQO'#Dy'#DyOBjQWO'#DxOBoQWO'#FnOOQO'#Dw'#DwOOQO'#Dz'#DzOBwQWO,5<XOOQQ1G0]1G0]O`QYO1G0[O`QYO'#ErOB|QWO,5<ZOOQQ1G0^1G0^OCXQWO'#EZOCdQWO'#FzOOQO'#EY'#EYOClQWO1G0_OOQP'#Et'#EtOCqQXO,5:}O`QYO,5:{OCxQXO'#EuODQQWO,5<hOOQQ1G0f1G0fO`QYO1G.uO`QYO,5;zO$qQYO'#EkODYQYO,5;yO`QYO1G.yODbQYO1G/|OOQO1G0W1G0WOOQO,5;b,5;bOOQO-E8t-E8tOOQO,5;W,5;WOOQO-E8j-E8jODgQWOOOOQQ-E8g-E8gODlQYO'#CmOOQQ1G1[1G1[OOQQ,5;U,5;UOOQQ-E8h-E8hODyQYO7+$QOOQQ7+%e7+%eO`QYO7+$oOEpQYO,5:qOE}QWO7+$oOFSQYO'#D[OOQQ'#DZ'#DZOGvQYO'#D^OG{QYO'#D^OHQQYO'#D^OHVQ`O'#DfOH[Q`O'#DiOHaQ`O'#DmOOQQ7+$x7+$xO`QYO,5:dO$qQYO'#EqOHfQWO,5<YOOQQ1G1s1G1sOIlQYO7+%vOIyQYO,5;^OOQO-E8p-E8pO@bQYO,5:uO$qQYO'#EsOJWQWO,5<fOJ`QYO7+%yOOQP-E8r-E8rOJgQYO1G0gOOQO,5;a,5;aOOQO-E8s-E8sOJqQYO7+$aOJxQYO1G1fOOQQ,5;V,5;VOOQQ-E8i-E8iOKSQYO7+$eOOQO7+%h7+%hO`QYO,59XOKyQYO<<HZOOQQ<<HZ<<HZO$qQYO'#EnOMSQYO,59vONvQYO,59xON{QYO,59xO! QQYO,59xO! VQYO,5:QO$qQYO,5:TO! qQbO,5:XO! xQYO1G0OOOQO,5;],5;]OOQO-E8o-E8oO!!SQYO<<IbOOQQ<<Ib<<IbOOQO1G0a1G0aOOQO,5;_,5;_OOQO-E8q-E8qO!%OQYO'#E]OOQQ<<Ie<<IeO`QYO<<IeO`QYO<<G{O!%uQYO1G.sOOQQ,5;Y,5;YOOQQ-E8l-E8lO!&PQYO1G/dOOQQ1G/d1G/dO!&UQbO'#D]O!&gQ`O'#D[O!&rQ`O1G/lO!&wQWO'#DlO!&|Q`O'#FfOOQO'#Dk'#DkO!'UQ`O1G/oOOQO'#Dp'#DpO!'ZQ`O'#FhOOQO'#Do'#DoO!'cQ`O1G/sOOQQAN?PAN?PO!'hQYOAN=gOOQQ7+%O7+%OO!(_Q`O,59vOOQQ7+%W7+%WO! VQYO,5:WO$qQYO'#EoO!(jQ`O,5<QOOQQ7+%Z7+%ZO! VQYO'#EpO!(rQ`O,5<SO!(zQ`O7+%_OOQO1G/r1G/rOOQO,5;Z,5;ZOOQO-E8m-E8mOOQO,5;[,5;[OOQO-E8n-E8nO@bQYO<<HyOOQQAN>eAN>eO$qQYO'#EnO! VQYO<<HyO!)PQ`O7+%_O!)UQ`O1G/sO! qQbO,5:XO!)ZQ`O'#Dm",
24296
- stateData: "!)h~O#qOS#rOSPOSQOS~OTqOZVO[UOdrOhtOitOs{OvgO!SyO!TyO!UvO!WxO!b|O!fzO!heO!owO!vhO#RlO#mRO#nRO$g]O$h^O$i_O$j`O~OTqO[UOdrOhtOitOs{OvgO!SyO!TyO!UvO!WxO!b|O!fzO!heO!owO!vhO#RlO#mRO#nRO$g]O$h^O$i_O$j`O~OZ!RO#[!SO~P!|O#mRO#nRO~OZ![O[![O]!]O^!]O_!^O`!iOn!fOp!gOr!ZOs!ZOt!hO{!jO!h!dO#y!bOv$`X~O#k#sX$q#sX~P$yO$g!kOT$XXZ$XX[$XXd$XXh$XXi$XXs$XXv$XX!S$XX!T$XX!U$XX!W$XX!b$XX!f$XX!h$XX!o$XX!v$XX#R$XX#m$XX#n$XX$h$XX$i$XX$j$XX~O#mRO#nROZ!PX[!PX]!PX^!PX_!PX`!PXn!PXp!PXr!PXs!PXt!PXv!PX{!PX!h!PX#k!PX#o!PX#y!PX$q!PX#}!PXx!PX#|!PX!f!PXe!PXb!PX#Q!PXf!PXl!PX~Ov!nO~O$h^O~O#o!sOZ#uX[#uX]#uX^#uX_#uX`#uXn#uXp#uXr#uXs#uXt#uXv#uX{#uX!h#uX#k#uX#y#uX$q#uX#}#uXx#uX#|#uX!f#uXe#uXb#uX#Q#uXf#uXl#uX~O!f$cP~P`Ov!vO~O#l!wO$h^O#Q$pP~Op#TO~Op#UOv!tX~O$q#XO~O#kuX#}uX$quXxuX#|uX!fuXeuXbuX#QuXfuXluX~P$yO#}#ZO#k$TXx$TX~O#k#ZX~P&UOv#]O~OZ#^O[#^O]#^O^#^O_#^O#mRO#nRO#y#^O#z#^O$ZWX~O`WXxWX#}WX~P-yO`#bO~O#}#cOb#wX~Ob#fO~OTqOZVO[UOdrOhtOitOs{O!SyO!TyO!UvO!WxO!b|O!fzO!heO!owO!vhO#RlO#mRO#nRO$g]O$h^O$i_O$j`O~Ov#pO~P/[O|#rO~O{!jO!h!dO#y!bOZya[ya]ya^ya_ya`yanyapyaryasyatyav$`X#kya$qya#}yaxya#|ya!fyaeyabya#Qyafyalya~Ox$cP~P`Ox#{O#|#|O~P$yO#|#|O#}#}O!f$cX~P$yO!f$PO~O#mRO#nROx$nP~OZ#^O[#^O]#^O^#^O_#^O#l!wO#y#^O#z#^O~O$Z#VX~P3uO$Z$WO~O#}$XO#Q$pX~O#Q$ZO~Oe$[O~P$yO#}$^Ol$RX~Ol$`O~O!V$aO~O!S$bO~O#k!wa$q!wa#}!wax!wa#|!wa!f!wae!wab!wa#Q!waf!wal!wa~P$yO#}#ZO#k$Tax$Ta~OZ#^O[#^O]#^O^#^O_#^O#mRO#nRO#y#^O#z#^O~O`Wa$ZWaxWa#}Wa~P6lO#}#cOb#wa~OZ![O[![O]!]O^!]O_!^O{!jO!h!dO#y!bOv$`X~O`qinqipqirqisqitqi#kqi$qqi#}qixqi#|qi!fqieqibqi#Qqifqilqi~P7sO_!^O{!jO!h!dO#y!bOZyi[yi`yinyipyiryisyityiv$`X#kyi$qyi#}yixyi#|yi!fyieyibyi#Qyifyilyi~O]!]O^!]O~P9kO]yi^yi~P9kO{!jO!h!dO#y!bOZyi[yi]yi^yi_yi`yinyipyiryisyityiv$`X#kyi$qyi#}yixyi#|yi!fyieyibyi#Qyifyilyi~O!f$nO~P$yO`!iOp!gOr!ZOs!ZOt!hOnmi#kmi$qmi#}mixmi#|mi!fmiemibmi#Qmifmilmi~P7sO`!iOr!ZOs!ZOt!hOnoipoi#koi$qoi#}oixoi#|oi!foieoiboi#Qoifoiloi~P7sO`!iOn!fOp$oOr!ZOs!ZOt!hO~P7sO!R$tO!U$uO!W$vO!Z$wO!^$xO!b$yO#mRO#nRO~OZ#aX[#aX]#aX^#aX_#aX`#aXn#aXp#aXr#aXs#aXt#aXv#aXx#aX{#aX!h#aX#m#aX#n#aX#o#aX#y#aX#}#aX~P-yO#}#}Ox$cX~P$yO$Z${O~O#}$|Ox$bX~Ox%OO~O#}#}O!f$cax$ca~O$Z%SOx!}X#}!}X~O#}%TOx$nX~Ox%VO~O$Z#Va~P3uO#l!wO$h^O~O#}$XO#Q$pa~O#}$^Ol$Ra~O!T%aO~OxpO~O#|%bObaX#}aX~P$yO#kSq$qSq#}SqxSq#|Sq!fSqeSqbSq#QSqfSqlSq~P$yOx#{O#|#|O#}uX~P$yOx%dO~O#y%eOZ!OX[!OX]!OX^!OX_!OX`!OXn!OXp!OXr!OXs!OXt!OXv!OX{!OX!h!OX#k!OX$q!OX#}!OXx!OX#|!OX!f!OXe!OXb!OX#Q!OXf!OXl!OX~Op%gO~Op%hO~Op%iO~O![%jO~O![%kO~O![%lO~O#}$|Ox$ba~OZ![O[![O]!]O^!]O_!^O`!iOn!fOp!gOr!ZOs!ZOt!hO{!jO#y!bOv$`X~Ox%qO!f%qO!h%pO~PHnO!f#fa#}#fax#fa~P$yO#}%TOx$na~O#O%wO~P`O#Q#Ti#}#Ti~P$yOf%xO~P$yOl$Si#}$Si~P$yO#kgq$qgq#}gqxgq#|gq!fgqegqbgq#Qgqfgqlgq~P$yO`qynqypqyrqysqytqy#kqy$qqy#}qyxqy#|qy!fqyeqybqy#Qqyfqylqy~P7sO#y%eOZ!Oa[!Oa]!Oa^!Oa_!Oa`!Oan!Oap!Oar!Oas!Oat!Oav!Oa{!Oa!h!Oa#k!Oa$q!Oa#}!Oax!Oa#|!Oa!f!Oae!Oab!Oa#Q!Oaf!Oal!Oa~O!S%|O~O!V%|O~O!S%}O~O!R$tO!U$uO!W$vO!Z$wO!^$xO!b&sO#mRO#nRO~O!X$[P~P! VOx!li#}!li~P$yOT$_XZ$_X[$_X]!xy^!xy_!xy`!xyd$_Xh$_Xi$_Xn!xyp!xyr!xys$_Xt!xyv$_X{!xy!S$_X!T$_X!U$_X!W$_X!b$_X!f$_X!h$_X!o$_X!v$_X#R$_X#k!xy#m$_X#n$_X#y!xy$g$_X$h$_X$i$_X$j$_X$q!xy#}!xyx!xy#|!xye!xyb!xy#Q!xyf!xyl!xy~O#k#PX$q#PX#}#PXx#PX#|#PX!f#PXe#PXb#PX#Q#PXf#PXl#PX~P$yObai#}ai~P$yO!T&]O~O#mRO#nRO!X!PX#y!PX#}!PX~O#y&nO!X!OX#}!OX~O!X&_O~O$Z&`O~O#}&aO!X$YX~O!X&cO~O#}&dO!X$[X~O!X&fO~O#kc!R$qc!R#}c!Rxc!R#|c!R!fc!Rec!Rbc!R#Qc!Rfc!Rlc!R~P$yO#y&nO!X!Oa#}!Oa~O#}&aO!X$Ya~O#}&dO!X$[a~O$]&lO~O$]&oO~O!X&pO~O![&rO~OQP_^$g]#y~",
24297
- goto: "Du$qPPPP$rP%k%n%t&W'qPPPPPP'zP$rPPP$rPP'}(QP$rP$rP$rPPP(WP(cP$r$rPP(l)R)^)RPPPPPPP)RPP)RP*k*n)RP*t*z$rP$rP$r+R+z+},T+zP,]-U,],].U.}P$r/v$r0o0o1h1kP1qPP0o1w1}.Q2RPP2ZP2^2e2k2q2w4S4^4d4j4p4w4}5T5ZPPPPPPPP5a5j7q8j9c9fPP9jPP9p9s:l;e;h;l;q<`=O=o>hP>kP>o?b@T@|ASAV$rA]A]PPPPBU7qB}CvCyDr!mhOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%xR!YSQ!WSR$k#cS!US#cS#Ou$^W#u!n!v$|%TT&R%k&a#WXOPQWYgjsz{!Z!_!`!a!c!e!f!g!h!i#X#Z#]#a#e#p#r#|#}$W$[$]$`$o${%S%V%b%e%j%l%w%x&O&`&d&l&n&o&rb!TSu!v#c$^$|%T%k&aU#_!T#`#sR#s!nU#_!T#`#sT$U!x$VR$j#aR#SuQ#QuR%^$^U!PQ#]#pQ#q!iR$e#ZQpQQ$g#]R$q#pQ$z#rQ%r%SQ&Q%jU&V%l&d&rQ&g&`T&m&l&oc$s#r%S%j%l&`&d&l&o&r!liOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%xQ#k!cU$r#r%S&lS%z%e&n]&P%j%l&`&d&o&rR&U%kQ&S%kR&h&aQ&Y%lR&q&rS&W%l&rR&j&d!mZOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%xR#z!nQ#w!nR%n$|S#v!n$|T$Q!v%T!mcOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%x!lcOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%xQ!p`T!ym$X!maOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%x!mbOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%x!mfOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%x!mnOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%xR$T!vQ$R!vR%s%TQ%v%VR&Z%wQ!{mR%Y$XT!zm$XS!xm$XT$U!x$VRpQS#`!T#sR$h#`Q#d!WR$l#dQ$_#QR%_$_Q#[!PR$f#[!vYOPQWgjsz{!Z!_!`!a!c!e!f!g!h!i!n#X#Z#]#a#e#p#r#|#}$W$[$]$`$o${%S%V%b%e%w%x&lS!mY&O_&O%j%l&`&d&n&o&rQ%f$rS%{%f&^R&^&PQ&b&SR&i&bQ&e&WR&k&eQ$}#wR%o$}S$O!t#tR%R$OQ%U$RR%t%UQ$V!xR%W$VQ$Y!{R%Z$YQ#Y}R$d#YQpOQ}PR$c#XUTOP#XW!OQ!i#Z#]Q!lWQ!rgQ!tjQ!}sQ#VzQ#W{Q#g!ZQ#h!_Q#i!`Q#j!aQ#l!eQ#m!fQ#n!gQ#o!hQ#t!nQ$i#aQ$m#eQ$p#pQ%P#|Q%Q#}Q%X$WQ%[$[Q%]$]Q%`$`Q%c$oQ%m${S%u%V%wQ%y%bR&[%x!moOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%x!mSOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%xR!XST!VS#cQ#a!UR$]#OR#e!Y!msOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%x!muOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%xR#RuT#Pu$^V!QQ#]#p!X!_T!O!r!t!}#V#W#g#l#m#n#o#t$i$m$p%P%Q%X%[%]%`%c%m%u%y&[!Z!`T!O!r!t!}#V#W#g#h#l#m#n#o#t$i$m$p%P%Q%X%[%]%`%c%m%u%y&[!]!aT!O!r!t!}#V#W#g#h#i#l#m#n#o#t$i$m$p%P%Q%X%[%]%`%c%m%u%y&[!mWOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%xR&T%kT&X%l&r!a!cT!O!l!r!t!}#V#W#g#h#i#j#l#m#n#o#t$i$m$p%P%Q%X%[%]%`%c%m%u%y&[!a!eT!O!l!r!t!}#V#W#g#h#i#j#l#m#n#o#t$i$m$p%P%Q%X%[%]%`%c%m%u%y&[!m[OPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%xQ!o[R!qaR#x!nQ!ujR#y!n!mdOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%x!mjOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%x!mkOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%xR$S!v!mmOPQWgjsz{!Z!_!`!a!e!f!g!h!i!n#X#Z#]#a#e#p#|#}$W$[$]$`$o${%V%b%w%xR!|m",
24298
- nodeNames: "⚠ LineComment BlockComment Expression ForExpression for InExpressions InExpression Name Identifier Identifier ArithOp ArithOp ArithOp ArithOp ArithOp in IterationContext return IfExpression if then else QuantifiedExpression some every InExpressions InExpression satisfies Disjunction or Conjunction and Comparison CompareOp CompareOp between PositiveUnaryTest ( PositiveUnaryTests ) ArithmeticExpression InstanceOfExpression instance of Type QualifiedName VariableName SpecialType days time duration years months date > ListType list < ContextType context ContextEntryTypes ContextEntryType FunctionType function ArgumentTypes ArgumentType PathExpression ] FilterExpression [ FunctionInvocation SpecialFunctionName NamedParameters NamedParameter ParameterName PositionalParameters null NumericLiteral StringLiteral BooleanLiteral DateTimeLiteral DateTimeConstructor AtLiteral ? SimplePositiveUnaryTest Interval ParenthesizedExpression List FunctionDefinition FormalParameters FormalParameter external FunctionBody } { Context ContextEntry Key Name Identifier Expressions UnaryTests Wildcard not",
24299
- maxTerm: 171,
24769
+ states: "C|O`QYOOO`QYOOO$mQYOOOOQU'#Ce'#CeO$wQYO'#C`O&QQYO'#FQOOQQ'#Ff'#FfO&[QYO'#FfO`QYO'#DVOOQU'#En'#EnO'{Q^O'#D]OOQU'#D^'#D^OOQU'#D]'#D]OOQO'#Fn'#FnO)xQWO'#DvOOQQ'#D}'#D}OOQQ'#EO'#EOOOQQ'#EP'#EPO)}OWO'#ESO)xQWO'#EQOOQQ'#EQ'#EQOOQQ'#Ft'#FtOOQQ'#Fr'#FrOOQQ'#Fy'#FyOOQQ'#EU'#EUO`QYO'#EWOOQQ'#FS'#FSO*SQ^O'#FSO+yQYO'#EXO,QQWO'#EYOOQP'#F}'#F}O,VQXO'#EaOOQQ'#Fz'#FzOOQQ'#FR'#FRQOQWOOOOQQ'#FT'#FTOOQQ'#F^'#F^O`QYO'#CoOOQQ'#F_'#F_O$wQYO'#CsO,bQYO'#DwOOQQ'#Fs'#FsO,gQYO'#EROOQO'#ER'#ERO`QYO'#EVO`QYO'#EUOOQO'#F{'#F{Q,oQWOOO,tQYO'#DRO-kQWO'#FbOOQO'#DT'#DTO-vQYO'#FfO-}QWOOO.tQYO'#CdO/RQYO'#FVOOQQ'#Cc'#CcO/WQYO'#FUOOQQ'#Cb'#CbO/`QYO,58zO`QYO,59iOOQQ'#Fc'#FcOOQQ'#Fd'#FdOOQQ'#Fe'#FeO`QYO,59qO`QYO,59qO`QYO,59qOOQQ'#Fl'#FlO/eQYO,5:^OOQQ'#Fm'#FmO`QYO,5:`O`QYO,59eO`QYO,59gO`QYO,59iO1^QYO,59iO1eQYO,59rOOQQ,5:i,5:iO1jQYO,59qOOQU-E8l-E8lO3^QYO'#FoOOQQ,5:b,5:bOOQQ,5:n,5:nOOQQ,5:l,5:lO3eQYO,5:rOOQQ,5;n,5;nO3oQYO,5:qO3|QWO,5:sO4RQYO,5:tOOQP'#Ee'#EeO4xQXO'#EdOOQO'#Ec'#EcO5PQWO'#EbO5UQWO'#GOO5^QWO,5:{O5cQYO,59ZO/RQYO'#FaOOQQ'#Cw'#CwO5jQYO'#F`OOQQ'#Cv'#CvO5rQYO,59_O5wQYO,5:cO5|QYO,5:mO3hQYO,5:qO6RQYO,5:pO`QYO'#EwQ,oQWOOO`QYO'#EmO6xQWO,5;|O`QYOOOOQR'#Cf'#CfOOQQ'#Ej'#EjO7rQYO,59OO`QYO,5;qOOQQ'#FY'#FYO$wQYO'#EkO8SQYO,5;pO`QYO1G.fOOQQ'#F]'#F]O8yQYO1G/TO;pQYO1G/]O;zQYO1G/]O<UQYO1G/]OOQQ1G/x1G/xO=xQYO1G/zO>PQYO1G/PO?YQYO1G/RO@cQYO1G/TO`QYO1G/TOOQQ1G/T1G/TO@yQYO1G/^OAhQ^O'#CdOBzQYO'#FqOOQO'#Dz'#DzOCUQWO'#DyOCZQWO'#FpOOQO'#Dx'#DxOOQO'#D{'#D{OCcQWO,5<ZOOQQ1G0^1G0^O`QYO1G0]O`QYO'#EsOChQWO,5<]OOQQ1G0_1G0_OCsQWO'#E[ODOQWO'#F|OOQO'#EZ'#EZODWQWO1G0`OOQP'#Eu'#EuOD]QXO,5;OO`QYO,5:|ODdQXO'#EvODlQWO,5<jOOQQ1G0g1G0gO`QYO1G.uO`QYO,5;{O$wQYO'#ElODtQYO,5;zO`QYO1G.yOD|QYO1G/}OOQO1G0X1G0XOOQO,5;c,5;cOOQO-E8u-E8uOOQO,5;X,5;XOOQO-E8k-E8kOERQWOOOOQQ-E8h-E8hOEWQYO'#CmOOQQ1G1]1G1]OOQQ,5;V,5;VOOQQ-E8i-E8iOEeQYO7+$QOOQQ7+%f7+%fO`QYO7+$oOF[QYO,5:rOFiQWO7+$oOFnQYO'#D[OOQQ'#DZ'#DZOHbQYO'#D_OHgQYO'#D_OHlQYO'#D_OHqQ`O'#DgOHvQ`O'#DjOH{Q`O'#DnOOQQ7+$x7+$xO`QYO,5:eO$wQYO'#ErOIQQWO,5<[OOQQ1G1u1G1uOJWQYO7+%wOJeQYO,5;_OOQO-E8q-E8qO@yQYO,5:vO$wQYO'#EtOJrQWO,5<hOJzQYO7+%zOOQP-E8s-E8sOKRQYO1G0hOOQO,5;b,5;bOOQO-E8t-E8tOK]QYO7+$aOKdQYO1G1gOOQQ,5;W,5;WOOQQ-E8j-E8jOKnQYO7+$eOOQO7+%i7+%iO`QYO,59XOLeQYO<<HZOOQQ<<HZ<<HZO/eQYO'#EoOMnQYO,59vO! bQYO,59yO! gQYO,59yO! lQYO,59yO! qQYO,5:RO$wQYO,5:UO!!`QbO,5:YO!!gQYO1G0POOQO,5;^,5;^OOQO-E8p-E8pO!!qQYO<<IcOOQQ<<Ic<<IcOOQO1G0b1G0bOOQO,5;`,5;`OOQO-E8r-E8rO!%pQYO'#E^OOQQ<<If<<IfO`QYO<<IfO`QYO<<G{O!&gQYO1G.sOOQQ,5;Z,5;ZOOQQ-E8m-E8mO!&qQYO1G/eOOQQ1G/e1G/eO!&vQbO'#D]O!'XQ`O'#D[O!'dQ`O1G/mO!'iQWO'#DmO!'nQ`O'#FhOOQO'#Dl'#DlO!'vQ`O1G/pOOQO'#Dq'#DqO!'{Q`O'#FjOOQO'#Dp'#DpO!(TQ`O1G/tOOQQAN?QAN?QO!(YQYOAN=gOOQQ7+%P7+%PO!)PQ`O,59vOOQQ7+%X7+%XO! qQYO,5:XO$wQYO'#EpO!)[Q`O,5<SOOQQ7+%[7+%[O! qQYO'#EqO!)dQ`O,5<UO!)lQ`O7+%`OOQO1G/s1G/sOOQO,5;[,5;[OOQO-E8n-E8nOOQO,5;],5;]OOQO-E8o-E8oO@yQYO<<HzOOQQAN>fAN>fO/eQYO'#EoO! qQYO<<HzO!)qQ`O7+%`O!)vQ`O1G/tO!!`QbO,5:YO!){Q`O'#Dn",
24770
+ stateData: "!*[~O#rOS#sOSPOSQOS~OTsOZVO[UOdtOhvOivOs}OviO!T{O!U{O!VxO!XzO!c!OO!g|O!igO!pyO!wjO#SnO#nRO#oRO$ZZO$i_O$j`O$kaO$lbO~OTsO[UOdtOhvOivOs}OviO!T{O!U{O!VxO!XzO!c!OO!g|O!igO!pyO!wjO#SnO#nRO#oRO$ZZO$i_O$j`O$kaO$lbO~OZ!TO#]!UO~P#PO#nRO#oRO~OZ!^O[!^O]!_O^!_O_!`O`!kOn!hOp!iOr!]Os!]Ot!jO{!lO!i!fO#z!dOv$bX~O#l#tX$s#tX~P%PO$i!mOT$YXZ$YX[$YXd$YXh$YXi$YXs$YXv$YX!T$YX!U$YX!V$YX!X$YX!c$YX!g$YX!i$YX!p$YX!w$YX#S$YX#n$YX#o$YX$Z$YX$j$YX$k$YX$l$YX~O#nRO#oROZ!PX[!PX]!PX^!PX_!PX`!PXn!PXp!PXr!PXs!PXt!PXv!PX{!PX!i!PX#l!PX#p!PX#z!PX$s!PX$O!PXx!PX#}!PX!g!PXe!PXb!PX#R!PXf!PXl!PX~Ov!pO~O$j`O~O#p!uOZ#vX[#vX]#vX^#vX_#vX`#vXn#vXp#vXr#vXs#vXt#vXv#vX{#vX!i#vX#l#vX#z#vX$s#vX$O#vXx#vX#}#vX!g#vXe#vXb#vX#R#vXf#vXl#vX~O!g$eP~P`Ov!xO~O#m!yO$j`O#R$rP~Op#VO~Op#WOv!uX~O$s#ZO~O#luX$OuX$suXxuX#}uX!guXeuXbuX#RuXfuXluX~P%PO$O#]O#l$UXx$UX~O#l#[X~P&[Ov#_O~OZ#`O[#`O]#`O^#`O_#`O#nRO#oRO#z#`O#{#`O$]WX~O`WXxWX$OWX~P.SO`#dO~O$O#eOb#xX~Ob#hO~O#nRO#oRO$ZZO~OTsOZVO[UOdtOhvOivOs}O!T{O!U{O!VxO!XzO!c!OO!g|O!igO!pyO!wjO#SnO#nRO#oRO$ZZO$i_O$j`O$kaO$lbO~Ov#rO~P/pO|#tO~O{!lO!i!fO#z!dOZya[ya]ya^ya_ya`yanyapyaryasyatyav$bX#lya$sya$Oyaxya#}ya!gyaeyabya#Ryafyalya~Ox$eP~P`Ox#}O#}$OO~P%PO#}$OO$O$PO!g$eX~P%PO!g$RO~O#nRO#oROx$pP~OZ#`O[#`O]#`O^#`O_#`O#m!yO#z#`O#{#`O~O$]#WX~P4^O$]$YO~O$O$ZO#R$rX~O#R$]O~Oe$^O~P%PO$O$`Ol$SX~Ol$bO~O!W$cO~O!T$dO~O#l!xa$s!xa$O!xax!xa#}!xa!g!xae!xab!xa#R!xaf!xal!xa~P%PO$O#]O#l$Uax$Ua~OZ#`O[#`O]#`O^#`O_#`O#nRO#oRO#z#`O#{#`O~O`Wa$]WaxWa$OWa~P7TO$O#eOb#xa~OZ!^O[!^O]!_O^!_O_!`O{!lO!i!fO#z!dOv$bX~O`qinqipqirqisqitqi#lqi$sqi$Oqixqi#}qi!gqieqibqi#Rqifqilqi~P8[O_!`O{!lO!i!fO#z!dOZyi[yi`yinyipyiryisyityiv$bX#lyi$syi$Oyixyi#}yi!gyieyibyi#Ryifyilyi~O]!_O^!_O~P:SO]yi^yi~P:SO{!lO!i!fO#z!dOZyi[yi]yi^yi_yi`yinyipyiryisyityiv$bX#lyi$syi$Oyixyi#}yi!gyieyibyi#Ryifyilyi~O!g$pO~P%PO`!kOp!iOr!]Os!]Ot!jOnmi#lmi$smi$Omixmi#}mi!gmiemibmi#Rmifmilmi~P8[O`!kOr!]Os!]Ot!jOnoipoi#loi$soi$Ooixoi#}oi!goieoiboi#Roifoiloi~P8[O`!kOn!hOp$qOr!]Os!]Ot!jO~P8[O!S$vO!V$wO!X$xO![$yO!_$zO!c${O#nRO#oRO$ZZO~OZ#bX[#bX]#bX^#bX_#bX`#bXn#bXp#bXr#bXs#bXt#bXv#bXx#bX{#bX!i#bX#n#bX#o#bX#p#bX#z#bX$O#bX~P.SO$O$POx$eX~P%PO$]$}O~O$O%OOx$dX~Ox%QO~O$O$PO!g$eax$ea~O$]%UOx#OX$O#OX~O$O%VOx$pX~Ox%XO~O$]#Wa~P4^O#m!yO$j`O~O$O$ZO#R$ra~O$O$`Ol$Sa~O!U%cO~OxrO~O#}%dObaX$OaX~P%PO#lSq$sSq$OSqxSq#}Sq!gSqeSqbSq#RSqfSqlSq~P%POx#}O#}$OO$OuX~P%POx%fO~O#z%gOZ!OX[!OX]!OX^!OX_!OX`!OXn!OXp!OXr!OXs!OXt!OXv!OX{!OX!i!OX#l!OX$s!OX$O!OXx!OX#}!OX!g!OXe!OXb!OX#R!OXf!OXl!OX~Op%iO~Op%jO~Op%kO~O!]%lO~O!]%mO~O!]%nO~O$O%OOx$da~OZ!^O[!^O]!_O^!_O_!`O`!kOn!hOp!iOr!]Os!]Ot!jO{!lO#z!dOv$bX~Ox%sO!g%sO!i%rO~PIYO!g#ga$O#gax#ga~P%PO$O%VOx$pa~O#P%yO~P`O#R#Ui$O#Ui~P%POf%zO~P%POl$Ti$O$Ti~P%PO#lgq$sgq$Ogqxgq#}gq!ggqegqbgq#Rgqfgqlgq~P%PO`qynqypqyrqysqytqy#lqy$sqy$Oqyxqy#}qy!gqyeqybqy#Rqyfqylqy~P8[O#z%gOZ!Oa[!Oa]!Oa^!Oa_!Oa`!Oan!Oap!Oar!Oas!Oat!Oav!Oa{!Oa!i!Oa#l!Oa$s!Oa$O!Oax!Oa#}!Oa!g!Oae!Oab!Oa#R!Oaf!Oal!Oa~O!T&OO~O!W&OO~O!T&PO~O!S$vO!V$wO!X$xO![$yO!_$zO!c&uO#nRO#oRO$ZZO~O!Y$^P~P! qOx!mi$O!mi~P%POT$aXZ$aX[$aX]!yy^!yy_!yy`!yyd$aXh$aXi$aXn!yyp!yyr!yys$aXt!yyv$aX{!yy!T$aX!U$aX!V$aX!X$aX!c$aX!g$aX!i$aX!p$aX!w$aX#S$aX#l!yy#n$aX#o$aX#z!yy$Z$aX$i$aX$j$aX$k$aX$l$aX$s!yy$O!yyx!yy#}!yye!yyb!yy#R!yyf!yyl!yy~O#l#QX$s#QX$O#QXx#QX#}#QX!g#QXe#QXb#QX#R#QXf#QXl#QX~P%PObai$Oai~P%PO!U&_O~O#nRO#oRO!Y!PX#z!PX$O!PX~O#z&pO!Y!OX$O!OX~O!Y&aO~O$]&bO~O$O&cO!Y$[X~O!Y&eO~O$O&fO!Y$^X~O!Y&hO~O#lc!R$sc!R$Oc!Rxc!R#}c!R!gc!Rec!Rbc!R#Rc!Rfc!Rlc!R~P%PO#z&pO!Y!Oa$O!Oa~O$O&cO!Y$[a~O$O&fO!Y$^a~O$_&nO~O$_&qO~O!Y&rO~O!]&tO~O$Z~QP_^$i]#z~",
24771
+ goto: "E|$sPPPP$tP%m%p%v&Y'sPPPPPP'|P$tPPP$tPP(P(SP$tP$tP$tPPP(YP(eP$t$tPP(n)T)`*m)TPPPPPPP)TPP)TP+r+u)TP+{,R$tP$tP$t,Y-R-U-[-RP-d.]-d-d/]0UP$t0}$t1v1v2o2rP2xPP1v3O3U/X3YPP3bP3e3l3r3x4O5Z5e5k5q5w6O6U6[6bPPPPPPPP6h6q8x9q:j:mPP:qPP:w:z;s<l<o<s<x=g>V>vP?oP?rP?v@iA[BTBZB^$tBdBdPPPPC]8xDUD}EQEy!mjOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%zR![SQ!YSR$m#eS!WS#eS#Qw$`W#w!p!x%O%VT&T%m&c#WXOPQWYilu|}!]!a!b!c!e!g!h!i!j!k#Z#]#_#c#g#r#t$O$P$Y$^$_$b$q$}%U%X%d%g%l%n%y%z&Q&b&f&n&p&q&tb!VSw!x#e$`%O%V%m&cU#a!V#b#uR#u!pU#a!V#b#uT$W!z$XR$l#cR#UwQ#SwR%`$`U!RQ#_#rQ#s!kR$g#]QrQQ$i#_R$s#rQ$|#tQ%t%UQ&S%lU&X%n&f&tQ&i&bT&o&n&qc$u#t%U%l%n&b&f&n&q&t!lkOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%zQ#m!eU$t#t%U&nS%|%g&p]&R%l%n&b&f&q&t#V[OPQWilu|}!]!a!b!c!e!g!h!i!j!k!p#Z#]#_#c#g#r#t$O$P$Y$^$_$b$q$}%U%X%d%g%l%n%y%z&b&f&n&p&q&tR&W%mQ&U%mR&j&cQ&[%nR&s&tS&Y%n&tR&l&f!m]OPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%zR#|!pQ#y!pR%p%OS#x!p%OT$S!x%V!meOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%z!leOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%zQ!rbT!{o$Z!mcOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%z!mdOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%z!mhOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%z!mpOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%zR$V!xQ$T!xR%u%VQ%x%XR&]%yQ!}oR%[$ZT!|o$ZS!zo$ZT$W!z$XRrQS#b!V#uR$j#bQ#f!YR$n#fQ$a#SR%a$aQ#^!RR$h#^!vYOPQWilu|}!]!a!b!c!e!g!h!i!j!k!p#Z#]#_#c#g#r#t$O$P$Y$^$_$b$q$}%U%X%d%g%y%z&nS!oY&Q_&Q%l%n&b&f&p&q&tQ%h$tS%}%h&`R&`&RQ&d&UR&k&dQ&g&YR&m&gQ%P#yR%q%PS$Q!v#vR%T$QQ%W$TR%v%WQ$X!zR%Y$XQ$[!}R%]$[Q#[!PR$f#[QrOQ!PPR$e#ZUTOP#ZW!QQ!k#]#_Q!nWQ!tiQ!vlQ#PuQ#X|Q#Y}Q#i!]Q#j!aQ#k!bQ#l!cQ#n!gQ#o!hQ#p!iQ#q!jQ#v!pQ$k#cQ$o#gQ$r#rQ%R$OQ%S$PQ%Z$YQ%^$^Q%_$_Q%b$bQ%e$qQ%o$}S%w%X%yQ%{%dR&^%z!mqOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%z!mSOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%zR!ZST!XS#eQ#c!WR$_#QR#g![!muOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%z!mwOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%zR#TwT#Rw$`V!SQ#_#r!X!aT!Q!t!v#P#X#Y#i#n#o#p#q#v$k$o$r%R%S%Z%^%_%b%e%o%w%{&^!Z!bT!Q!t!v#P#X#Y#i#j#n#o#p#q#v$k$o$r%R%S%Z%^%_%b%e%o%w%{&^!]!cT!Q!t!v#P#X#Y#i#j#k#n#o#p#q#v$k$o$r%R%S%Z%^%_%b%e%o%w%{&^!mWOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%zR&V%mT&Z%n&t!a!eT!Q!n!t!v#P#X#Y#i#j#k#l#n#o#p#q#v$k$o$r%R%S%Z%^%_%b%e%o%w%{&^!a!gT!Q!n!t!v#P#X#Y#i#j#k#l#n#o#p#q#v$k$o$r%R%S%Z%^%_%b%e%o%w%{&^!m^OPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%zQ!q^R!scR#z!pQ!wlR#{!p!mfOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%z!mlOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%z!mmOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%zR$U!x!moOPQWilu|}!]!a!b!c!g!h!i!j!k!p#Z#]#_#c#g#r$O$P$Y$^$_$b$q$}%X%d%y%zR#Oo",
24772
+ nodeNames: "⚠ LineComment BlockComment Expression ForExpression for InExpressions InExpression Name Identifier Identifier ArithOp ArithOp ArithOp ArithOp ArithOp in IterationContext return IfExpression if then else QuantifiedExpression some every InExpressions InExpression satisfies Disjunction or Conjunction and Comparison CompareOp CompareOp between PositiveUnaryTest ( PositiveUnaryTests ) ArithmeticExpression InstanceOfExpression instance of Type QualifiedName VariableName BacktickIdentifier SpecialType days time duration years months date > ListType list < ContextType context ContextEntryTypes ContextEntryType FunctionType function ArgumentTypes ArgumentType PathExpression ] FilterExpression [ FunctionInvocation SpecialFunctionName NamedParameters NamedParameter ParameterName PositionalParameters null NumericLiteral StringLiteral BooleanLiteral DateTimeLiteral DateTimeConstructor AtLiteral ? SimplePositiveUnaryTest Interval ParenthesizedExpression List FunctionDefinition FormalParameters FormalParameter external FunctionBody } { Context ContextEntry Key Name Identifier Expressions UnaryTests Wildcard not",
24773
+ maxTerm: 173,
24300
24774
  context: variableTracker,
24301
24775
  nodeProps: [
24302
24776
  [
24303
24777
  "closedBy",
24304
24778
  38,
24305
24779
  ")",
24306
- 70,
24780
+ 71,
24307
24781
  "]",
24308
- 95,
24782
+ 96,
24309
24783
  "}"
24310
24784
  ],
24311
24785
  [
24312
24786
  "openedBy",
24313
24787
  40,
24314
24788
  "(",
24315
- 68,
24789
+ 69,
24316
24790
  "[",
24317
- 94,
24791
+ 95,
24318
24792
  "{"
24319
24793
  ],
24320
24794
  [
24321
24795
  "group",
24322
24796
  -5,
24323
- 77,
24324
24797
  78,
24325
24798
  79,
24326
24799
  80,
24327
24800
  81,
24801
+ 82,
24328
24802
  "Literal"
24329
24803
  ]
24330
24804
  ],
@@ -24337,7 +24811,7 @@ var parser = LRParser.deserialize({
24337
24811
  2
24338
24812
  ],
24339
24813
  repeatNodeCount: 14,
24340
- tokenData: "+l~RuXY#fYZ$ZZ[#f]^$Zpq#fqr$`rs$kwx&cxy&hyz&mz{&r{|'P|}'U}!O'Z!O!P'h!P!Q(Q!Q![){![!]*^!]!^*c!^!_*h!_!`$f!`!a*w!b!c+R!}#O+W#P#Q+]#Q#R&z#o#p+b#q#r+g$f$g#f#BY#BZ#f$IS$I_#f$I|$I}$Z$I}$JO$Z$JT$JU#f$KV$KW#f&FU&FV#f?HT?HU#f~#kY#q~XY#fZ[#fpq#f$f$g#f#BY#BZ#f$IS$I_#f$JT$JU#f$KV$KW#f&FU&FV#f?HT?HU#f~$`O#r~~$cP!_!`$f~$kOr~~$pW$h~OY$kZr$krs%Ys#O$k#O#P%_#P;'S$k;'S;=`&]<%lO$k~%_O$h~~%bRO;'S$k;'S;=`%k;=`O$k~%pX$h~OY$kZr$krs%Ys#O$k#O#P%_#P;'S$k;'S;=`&];=`<%l$k<%lO$k~&`P;=`<%l$k~&hO#z~~&mOv~~&rOx~~&wP^~z{&z~'PO_~~'UO[~~'ZO#}~R'`PZP!`!a'cQ'hO$]Q~'mQ#y~!O!P's!Q!['x~'xO#|~~'}P$g~!Q!['x~(VQ]~z{(]!P!Q)d~(`TOz(]z{(o{;'S(];'S;=`)^<%lO(]~(rVOz(]z{(o{!P(]!P!Q)X!Q;'S(];'S;=`)^<%lO(]~)^OQ~~)aP;=`<%l(]~)iSP~OY)dZ;'S)d;'S;=`)u<%lO)d~)xP;=`<%l)d~*QQ$g~!O!P*W!Q![){~*ZP!Q!['x~*cO$Z~~*hO$q~R*oP![QsP!_!`*rP*wOsPR+OP!XQsP!_!`*r~+WO$j~~+]O!h~~+bO!f~~+gO#R~~+lO#Q~",
24814
+ tokenData: "-c~RvXY#iYZ$^Z[#i]^$^pq#iqr$crs$nwx&fxy&kyz&pz{&u{|'S|}'X}!O'^!O!P'k!P!Q(T!Q![*O![!]*a!]!^*f!^!_*k!_!`$i!`!a*z!b!c+U!}#O+Z#P#Q+`#Q#R&}#S#T+e#o#p-X#q#r-^$f$g#i#BY#BZ#i$IS$I_#i$I|$I}$^$I}$JO$^$JT$JU#i$KV$KW#i&FU&FV#i?HT?HU#i~#nY#r~XY#iZ[#ipq#i$f$g#i#BY#BZ#i$IS$I_#i$JT$JU#i$KV$KW#i&FU&FV#i?HT?HU#i~$cO#s~~$fP!_!`$i~$nOr~~$sW$j~OY$nZr$nrs%]s#O$n#O#P%b#P;'S$n;'S;=`&`<%lO$n~%bO$j~~%eRO;'S$n;'S;=`%n;=`O$n~%sX$j~OY$nZr$nrs%]s#O$n#O#P%b#P;'S$n;'S;=`&`;=`<%l$n<%lO$n~&cP;=`<%l$n~&kO#{~~&pOv~~&uOx~~&zP^~z{&}~'SO_~~'XO[~~'^O$O~R'cPZP!`!a'fQ'kO$_Q~'pQ#z~!O!P'v!Q!['{~'{O#}~~(QP$i~!Q!['{~(YQ]~z{(`!P!Q)g~(cTOz(`z{(r{;'S(`;'S;=`)a<%lO(`~(uVOz(`z{(r{!P(`!P!Q)[!Q;'S(`;'S;=`)a<%lO(`~)aOQ~~)dP;=`<%l(`~)lSP~OY)gZ;'S)g;'S;=`)x<%lO)g~){P;=`<%l)g~*TQ$i~!O!P*Z!Q![*O~*^P!Q!['{~*fO$]~~*kO$s~R*rP!]QsP!_!`*uP*zOsPR+RP!YQsP!_!`*u~+ZO$l~~+`O!i~~+eO!g~~+hWOY+eZ#O+e#O#P,Q#P#S+e#S#T,|#T;'S+e;'S;=`-R<%lO+e~,TRO;'S+e;'S;=`,^;=`O+e~,aXOY+eZ#O+e#O#P,Q#P#S+e#S#T,|#T;'S+e;'S;=`-R;=`<%l+e<%lO+e~-RO$Z~~-UP;=`<%l+e~-^O#S~~-cO#R~",
24341
24815
  tokenizers: [
24342
24816
  propertyIdentifiers,
24343
24817
  identifiers,
@@ -24352,28 +24826,31 @@ var parser = LRParser.deserialize({
24352
24826
  ],
24353
24827
  "Expressions": [
24354
24828
  1,
24355
- 101
24829
+ 102
24356
24830
  ],
24357
24831
  "UnaryTests": [
24358
24832
  2,
24359
- 102
24833
+ 103
24360
24834
  ]
24361
24835
  },
24836
+ dialects: {
24837
+ camunda: 2532
24838
+ },
24362
24839
  dynamicPrecedences: {
24363
24840
  "31": -1,
24364
- "67": 1,
24365
- "71": -1,
24366
- "73": -1
24841
+ "68": 1,
24842
+ "72": -1,
24843
+ "74": -1
24367
24844
  },
24368
24845
  specialized: [
24369
24846
  {
24370
- term: 121,
24847
+ term: 122,
24371
24848
  get: function(value) {
24372
24849
  return spec_identifier[value] || -1;
24373
24850
  }
24374
24851
  }
24375
24852
  ],
24376
- tokenPrec: 2500
24853
+ tokenPrec: 2534
24377
24854
  });
24378
24855
 
24379
24856
  function _array_like_to_array(arr, len) {
@@ -25448,10 +25925,10 @@ var builtins = {
25448
25925
  // 10.3.4.5 Numeric functions
25449
25926
  "decimal": fn(function(n, scale) {
25450
25927
  if (!scale) {
25451
- return round(n);
25928
+ return bankersRound(n);
25452
25929
  }
25453
25930
  var offset = Math.pow(10, scale);
25454
- return round(n * offset) / offset;
25931
+ return bankersRound(n * offset) / offset;
25455
25932
  }, [
25456
25933
  "number",
25457
25934
  "number"
@@ -25680,7 +26157,8 @@ var builtins = {
25680
26157
  ]),
25681
26158
  // 10.3.4.10 Context function
25682
26159
  "get value": fn(function(m, key) {
25683
- return getFromContext(key, m) || null;
26160
+ var value = getFromContext(key, m);
26161
+ return value != undefined ? value : null;
25684
26162
  }, [
25685
26163
  "context",
25686
26164
  "string"
@@ -26007,13 +26485,13 @@ function countSymbols(str) {
26007
26485
  // cf. https://mathiasbynens.be/notes/javascript-unicode
26008
26486
  return str.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g, "_").length;
26009
26487
  }
26010
- function round(n) {
26011
- var integral = Math.trunc(n);
26012
- if (n - integral > .5) {
26013
- return integral + 1;
26014
- } else {
26015
- return integral;
26488
+ function bankersRound(n) {
26489
+ var floored = Math.floor(n);
26490
+ var decimalPart = n - floored;
26491
+ if (decimalPart === 0.5) {
26492
+ return floored % 2 === 0 ? floored : floored + 1;
26016
26493
  }
26494
+ return Math.round(n);
26017
26495
  }
26018
26496
  // adapted from https://stackoverflow.com/a/53577159
26019
26497
  function stddev(array) {
@@ -26094,17 +26572,19 @@ function ifValid(o) {
26094
26572
  return o.isValid ? o : null;
26095
26573
  }
26096
26574
  function parseExpression(expression) {
26097
- var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
26575
+ var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, dialect = arguments.length > 2 ? arguments[2] : void 0;
26098
26576
  return parser.configure({
26099
26577
  top: "Expression",
26100
- contextTracker: trackVariables(context)
26578
+ contextTracker: trackVariables(context),
26579
+ dialect: dialect
26101
26580
  }).parse(expression);
26102
26581
  }
26103
26582
  function parseUnaryTests(expression) {
26104
- var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
26583
+ var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, dialect = arguments.length > 2 ? arguments[2] : void 0;
26105
26584
  return parser.configure({
26106
26585
  top: "UnaryTests",
26107
- contextTracker: trackVariables(context)
26586
+ contextTracker: trackVariables(context),
26587
+ dialect: dialect
26108
26588
  }).parse(expression);
26109
26589
  }
26110
26590
  var SyntaxError$1 = /*#__PURE__*/ function(Error1) {
@@ -26173,8 +26653,8 @@ var Interpreter = /*#__PURE__*/ function() {
26173
26653
  {
26174
26654
  key: "evaluate",
26175
26655
  value: function evaluate(expression) {
26176
- var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
26177
- var parseTree = parseExpression(expression, context);
26656
+ var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, dialect = arguments.length > 2 ? arguments[2] : void 0;
26657
+ var parseTree = parseExpression(expression, context, dialect);
26178
26658
  var root = this._buildExecutionTree(parseTree, expression);
26179
26659
  return {
26180
26660
  parseTree: parseTree,
@@ -26185,8 +26665,8 @@ var Interpreter = /*#__PURE__*/ function() {
26185
26665
  {
26186
26666
  key: "unaryTest",
26187
26667
  value: function unaryTest(expression) {
26188
- var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
26189
- var parseTree = parseUnaryTests(expression, context);
26668
+ var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, dialect = arguments.length > 2 ? arguments[2] : void 0;
26669
+ var parseTree = parseUnaryTests(expression, context, dialect);
26190
26670
  var root = this._buildExecutionTree(parseTree, expression);
26191
26671
  return {
26192
26672
  parseTree: parseTree,
@@ -26200,8 +26680,8 @@ var Interpreter = /*#__PURE__*/ function() {
26200
26680
  var interpreter = new Interpreter();
26201
26681
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
26202
26682
  function evaluate(expression) {
26203
- var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
26204
- var root = interpreter.evaluate(expression, context).root;
26683
+ var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, dialect = arguments.length > 2 ? arguments[2] : void 0;
26684
+ var root = interpreter.evaluate(expression, context, dialect).root;
26205
26685
  // root = Expression :: fn(ctx)
26206
26686
  return root(context);
26207
26687
  }
@@ -26244,6 +26724,12 @@ function evalNode(node, input, args) {
26244
26724
  switch(input){
26245
26725
  case "+":
26246
26726
  return nullable(function(a, b) {
26727
+ // flip these as luxon operations with durations aren't commutative
26728
+ if (isDuration(a) && !isDuration(b)) {
26729
+ var tmp = a;
26730
+ a = b;
26731
+ b = tmp;
26732
+ }
26247
26733
  if (isType(a, "time") && isDuration(b)) {
26248
26734
  return a.plus(b).set({
26249
26735
  year: 1900,
@@ -26337,6 +26823,8 @@ function evalNode(node, input, args) {
26337
26823
  };
26338
26824
  }
26339
26825
  }, Test("boolean"));
26826
+ case "BacktickIdentifier":
26827
+ return input.replace(/`/g, "");
26340
26828
  case "Wildcard":
26341
26829
  return function(_context) {
26342
26830
  return true;
@@ -26810,7 +27298,7 @@ function evalNode(node, input, args) {
26810
27298
  if (isNumber(value)) {
26811
27299
  filterFn.type = "number";
26812
27300
  }
26813
- } catch (err) {
27301
+ } catch (_err) {
26814
27302
  // ignore
26815
27303
  }
26816
27304
  }
@@ -27273,7 +27761,6 @@ function parseString(str) {
27273
27761
  if (str.endsWith('"')) {
27274
27762
  str = str.slice(0, -1);
27275
27763
  }
27276
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
27277
27764
  return str.replace(/(\\")|(\\\\)|(\\u[a-fA-F0-9]{5,6})|((?:\\u[a-fA-F0-9]{1,4})+)/ig, function(substring) {
27278
27765
  for(var _len = arguments.length, groups = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){
27279
27766
  groups[_key - 1] = arguments[_key];