@digipair/skill-client-websocket 0.41.4 → 0.43.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.esm.js CHANGED
@@ -8161,7 +8161,7 @@ function _type_of(obj) {
8161
8161
  }
8162
8162
  return self;
8163
8163
  }
8164
- function _class_call_check$p(instance, Constructor) {
8164
+ function _class_call_check$q(instance, Constructor) {
8165
8165
  if (!(instance instanceof Constructor)) {
8166
8166
  throw new TypeError("Cannot call a class as a function");
8167
8167
  }
@@ -8276,7 +8276,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8276
8276
  _inherits$b(LuxonError, Error1);
8277
8277
  var _super = _create_super$b(LuxonError);
8278
8278
  function LuxonError() {
8279
- _class_call_check$p(this, LuxonError);
8279
+ _class_call_check$q(this, LuxonError);
8280
8280
  return _super.apply(this, arguments);
8281
8281
  }
8282
8282
  return LuxonError;
@@ -8287,7 +8287,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8287
8287
  _inherits$b(InvalidDateTimeError, LuxonError);
8288
8288
  var _super = _create_super$b(InvalidDateTimeError);
8289
8289
  function InvalidDateTimeError(reason) {
8290
- _class_call_check$p(this, InvalidDateTimeError);
8290
+ _class_call_check$q(this, InvalidDateTimeError);
8291
8291
  return _super.call(this, "Invalid DateTime: ".concat(reason.toMessage()));
8292
8292
  }
8293
8293
  return InvalidDateTimeError;
@@ -8298,7 +8298,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8298
8298
  _inherits$b(InvalidIntervalError, LuxonError);
8299
8299
  var _super = _create_super$b(InvalidIntervalError);
8300
8300
  function InvalidIntervalError(reason) {
8301
- _class_call_check$p(this, InvalidIntervalError);
8301
+ _class_call_check$q(this, InvalidIntervalError);
8302
8302
  return _super.call(this, "Invalid Interval: ".concat(reason.toMessage()));
8303
8303
  }
8304
8304
  return InvalidIntervalError;
@@ -8309,7 +8309,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8309
8309
  _inherits$b(InvalidDurationError, LuxonError);
8310
8310
  var _super = _create_super$b(InvalidDurationError);
8311
8311
  function InvalidDurationError(reason) {
8312
- _class_call_check$p(this, InvalidDurationError);
8312
+ _class_call_check$q(this, InvalidDurationError);
8313
8313
  return _super.call(this, "Invalid Duration: ".concat(reason.toMessage()));
8314
8314
  }
8315
8315
  return InvalidDurationError;
@@ -8320,7 +8320,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8320
8320
  _inherits$b(ConflictingSpecificationError, LuxonError);
8321
8321
  var _super = _create_super$b(ConflictingSpecificationError);
8322
8322
  function ConflictingSpecificationError() {
8323
- _class_call_check$p(this, ConflictingSpecificationError);
8323
+ _class_call_check$q(this, ConflictingSpecificationError);
8324
8324
  return _super.apply(this, arguments);
8325
8325
  }
8326
8326
  return ConflictingSpecificationError;
@@ -8331,7 +8331,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8331
8331
  _inherits$b(InvalidUnitError, LuxonError);
8332
8332
  var _super = _create_super$b(InvalidUnitError);
8333
8333
  function InvalidUnitError(unit) {
8334
- _class_call_check$p(this, InvalidUnitError);
8334
+ _class_call_check$q(this, InvalidUnitError);
8335
8335
  return _super.call(this, "Invalid unit ".concat(unit));
8336
8336
  }
8337
8337
  return InvalidUnitError;
@@ -8342,7 +8342,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8342
8342
  _inherits$b(InvalidArgumentError, LuxonError);
8343
8343
  var _super = _create_super$b(InvalidArgumentError);
8344
8344
  function InvalidArgumentError() {
8345
- _class_call_check$p(this, InvalidArgumentError);
8345
+ _class_call_check$q(this, InvalidArgumentError);
8346
8346
  return _super.apply(this, arguments);
8347
8347
  }
8348
8348
  return InvalidArgumentError;
@@ -8353,7 +8353,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8353
8353
  _inherits$b(ZoneIsAbstractError, LuxonError);
8354
8354
  var _super = _create_super$b(ZoneIsAbstractError);
8355
8355
  function ZoneIsAbstractError() {
8356
- _class_call_check$p(this, ZoneIsAbstractError);
8356
+ _class_call_check$q(this, ZoneIsAbstractError);
8357
8357
  return _super.call(this, "Zone is an abstract class");
8358
8358
  }
8359
8359
  return ZoneIsAbstractError;
@@ -8510,12 +8510,12 @@ var DATETIME_HUGE_WITH_SECONDS = {
8510
8510
  timeZoneName: l
8511
8511
  };
8512
8512
 
8513
- function _class_call_check$o(instance, Constructor) {
8513
+ function _class_call_check$p(instance, Constructor) {
8514
8514
  if (!(instance instanceof Constructor)) {
8515
8515
  throw new TypeError("Cannot call a class as a function");
8516
8516
  }
8517
8517
  }
8518
- function _defineProperties$o(target, props) {
8518
+ function _defineProperties$p(target, props) {
8519
8519
  for(var i = 0; i < props.length; i++){
8520
8520
  var descriptor = props[i];
8521
8521
  descriptor.enumerable = descriptor.enumerable || false;
@@ -8524,16 +8524,16 @@ function _defineProperties$o(target, props) {
8524
8524
  Object.defineProperty(target, descriptor.key, descriptor);
8525
8525
  }
8526
8526
  }
8527
- function _create_class$o(Constructor, protoProps, staticProps) {
8528
- if (protoProps) _defineProperties$o(Constructor.prototype, protoProps);
8529
- if (staticProps) _defineProperties$o(Constructor, staticProps);
8527
+ function _create_class$p(Constructor, protoProps, staticProps) {
8528
+ if (protoProps) _defineProperties$p(Constructor.prototype, protoProps);
8529
+ if (staticProps) _defineProperties$p(Constructor, staticProps);
8530
8530
  return Constructor;
8531
8531
  }
8532
8532
  var Zone = /*#__PURE__*/ function() {
8533
8533
  function Zone() {
8534
- _class_call_check$o(this, Zone);
8534
+ _class_call_check$p(this, Zone);
8535
8535
  }
8536
- _create_class$o(Zone, [
8536
+ _create_class$p(Zone, [
8537
8537
  {
8538
8538
  key: "type",
8539
8539
  get: /**
@@ -8556,7 +8556,12 @@ var Zone = /*#__PURE__*/ function() {
8556
8556
  },
8557
8557
  {
8558
8558
  key: "ianaName",
8559
- get: function get() {
8559
+ get: /**
8560
+ * The IANA name of this zone.
8561
+ * Defaults to `name` if not overwritten by a subclass.
8562
+ * @abstract
8563
+ * @type {string}
8564
+ */ function get() {
8560
8565
  return this.name;
8561
8566
  }
8562
8567
  },
@@ -8639,12 +8644,12 @@ function _assert_this_initialized$a(self) {
8639
8644
  }
8640
8645
  return self;
8641
8646
  }
8642
- function _class_call_check$n(instance, Constructor) {
8647
+ function _class_call_check$o(instance, Constructor) {
8643
8648
  if (!(instance instanceof Constructor)) {
8644
8649
  throw new TypeError("Cannot call a class as a function");
8645
8650
  }
8646
8651
  }
8647
- function _defineProperties$n(target, props) {
8652
+ function _defineProperties$o(target, props) {
8648
8653
  for(var i = 0; i < props.length; i++){
8649
8654
  var descriptor = props[i];
8650
8655
  descriptor.enumerable = descriptor.enumerable || false;
@@ -8653,9 +8658,9 @@ function _defineProperties$n(target, props) {
8653
8658
  Object.defineProperty(target, descriptor.key, descriptor);
8654
8659
  }
8655
8660
  }
8656
- function _create_class$n(Constructor, protoProps, staticProps) {
8657
- if (protoProps) _defineProperties$n(Constructor.prototype, protoProps);
8658
- if (staticProps) _defineProperties$n(Constructor, staticProps);
8661
+ function _create_class$o(Constructor, protoProps, staticProps) {
8662
+ if (protoProps) _defineProperties$o(Constructor.prototype, protoProps);
8663
+ if (staticProps) _defineProperties$o(Constructor, staticProps);
8659
8664
  return Constructor;
8660
8665
  }
8661
8666
  function _get_prototype_of$a(o) {
@@ -8723,10 +8728,10 @@ var SystemZone = /*#__PURE__*/ function(Zone) {
8723
8728
  _inherits$a(SystemZone, Zone);
8724
8729
  var _super = _create_super$a(SystemZone);
8725
8730
  function SystemZone() {
8726
- _class_call_check$n(this, SystemZone);
8731
+ _class_call_check$o(this, SystemZone);
8727
8732
  return _super.apply(this, arguments);
8728
8733
  }
8729
- _create_class$n(SystemZone, [
8734
+ _create_class$o(SystemZone, [
8730
8735
  {
8731
8736
  key: "type",
8732
8737
  get: /** @override **/ function get() {
@@ -8807,12 +8812,12 @@ function _assert_this_initialized$9(self) {
8807
8812
  }
8808
8813
  return self;
8809
8814
  }
8810
- function _class_call_check$m(instance, Constructor) {
8815
+ function _class_call_check$n(instance, Constructor) {
8811
8816
  if (!(instance instanceof Constructor)) {
8812
8817
  throw new TypeError("Cannot call a class as a function");
8813
8818
  }
8814
8819
  }
8815
- function _defineProperties$m(target, props) {
8820
+ function _defineProperties$n(target, props) {
8816
8821
  for(var i = 0; i < props.length; i++){
8817
8822
  var descriptor = props[i];
8818
8823
  descriptor.enumerable = descriptor.enumerable || false;
@@ -8821,9 +8826,9 @@ function _defineProperties$m(target, props) {
8821
8826
  Object.defineProperty(target, descriptor.key, descriptor);
8822
8827
  }
8823
8828
  }
8824
- function _create_class$m(Constructor, protoProps, staticProps) {
8825
- if (protoProps) _defineProperties$m(Constructor.prototype, protoProps);
8826
- if (staticProps) _defineProperties$m(Constructor, staticProps);
8829
+ function _create_class$n(Constructor, protoProps, staticProps) {
8830
+ if (protoProps) _defineProperties$n(Constructor.prototype, protoProps);
8831
+ if (staticProps) _defineProperties$n(Constructor, staticProps);
8827
8832
  return Constructor;
8828
8833
  }
8829
8834
  function _get_prototype_of$9(o) {
@@ -8970,7 +8975,7 @@ function partsOffset(dtf, date) {
8970
8975
  var pos = typeToPos[type];
8971
8976
  if (type === "era") {
8972
8977
  filled[pos] = value;
8973
- } else if (!isUndefined(pos)) {
8978
+ } else if (!isUndefined$1(pos)) {
8974
8979
  filled[pos] = parseInt(value, 10);
8975
8980
  }
8976
8981
  }
@@ -8981,47 +8986,80 @@ var IANAZone = /*#__PURE__*/ function(Zone) {
8981
8986
  _inherits$9(IANAZone, Zone);
8982
8987
  var _super = _create_super$9(IANAZone);
8983
8988
  function IANAZone(name) {
8984
- _class_call_check$m(this, IANAZone);
8989
+ _class_call_check$n(this, IANAZone);
8985
8990
  var _this;
8986
8991
  _this = _super.call(this);
8987
8992
  /** @private **/ _this.zoneName = name;
8988
8993
  /** @private **/ _this.valid = IANAZone.isValidZone(name);
8989
8994
  return _this;
8990
8995
  }
8991
- _create_class$m(IANAZone, [
8996
+ _create_class$n(IANAZone, [
8992
8997
  {
8993
8998
  key: "type",
8994
- get: /** @override **/ function get() {
8999
+ get: /**
9000
+ * The type of zone. `iana` for all instances of `IANAZone`.
9001
+ * @override
9002
+ * @type {string}
9003
+ */ function get() {
8995
9004
  return "iana";
8996
9005
  }
8997
9006
  },
8998
9007
  {
8999
9008
  key: "name",
9000
- get: /** @override **/ function get() {
9009
+ get: /**
9010
+ * The name of this zone (i.e. the IANA zone name).
9011
+ * @override
9012
+ * @type {string}
9013
+ */ function get() {
9001
9014
  return this.zoneName;
9002
9015
  }
9003
9016
  },
9004
9017
  {
9005
9018
  key: "isUniversal",
9006
- get: /** @override **/ function get() {
9019
+ get: /**
9020
+ * Returns whether the offset is known to be fixed for the whole year:
9021
+ * Always returns false for all IANA zones.
9022
+ * @override
9023
+ * @type {boolean}
9024
+ */ function get() {
9007
9025
  return false;
9008
9026
  }
9009
9027
  },
9010
9028
  {
9011
- /** @override **/ key: "offsetName",
9029
+ /**
9030
+ * Returns the offset's common name (such as EST) at the specified timestamp
9031
+ * @override
9032
+ * @param {number} ts - Epoch milliseconds for which to get the name
9033
+ * @param {Object} opts - Options to affect the format
9034
+ * @param {string} opts.format - What style of offset to return. Accepts 'long' or 'short'.
9035
+ * @param {string} opts.locale - What locale to return the offset name in.
9036
+ * @return {string}
9037
+ */ key: "offsetName",
9012
9038
  value: function offsetName(ts, param) {
9013
9039
  var format = param.format, locale = param.locale;
9014
9040
  return parseZoneInfo(ts, format, locale, this.name);
9015
9041
  }
9016
9042
  },
9017
9043
  {
9018
- /** @override **/ key: "formatOffset",
9044
+ /**
9045
+ * Returns the offset's value as a string
9046
+ * @override
9047
+ * @param {number} ts - Epoch milliseconds for which to get the offset
9048
+ * @param {string} format - What style of offset to return.
9049
+ * Accepts 'narrow', 'short', or 'techie'. Returning '+6', '+06:00', or '+0600' respectively
9050
+ * @return {string}
9051
+ */ key: "formatOffset",
9019
9052
  value: function formatOffset1(ts, format) {
9020
9053
  return formatOffset(this.offset(ts), format);
9021
9054
  }
9022
9055
  },
9023
9056
  {
9024
- /** @override **/ key: "offset",
9057
+ /**
9058
+ * Return the offset in minutes for this zone at the specified timestamp.
9059
+ * @override
9060
+ * @param {number} ts - Epoch milliseconds for which to compute the offset
9061
+ * @return {number}
9062
+ */ key: "offset",
9025
9063
  value: function offset(ts) {
9026
9064
  var date = new Date(ts);
9027
9065
  if (isNaN(date)) return NaN;
@@ -9048,14 +9086,23 @@ var IANAZone = /*#__PURE__*/ function(Zone) {
9048
9086
  }
9049
9087
  },
9050
9088
  {
9051
- /** @override **/ key: "equals",
9089
+ /**
9090
+ * Return whether this Zone is equal to another zone
9091
+ * @override
9092
+ * @param {Zone} otherZone - the zone to compare
9093
+ * @return {boolean}
9094
+ */ key: "equals",
9052
9095
  value: function equals(otherZone) {
9053
9096
  return otherZone.type === "iana" && otherZone.name === this.name;
9054
9097
  }
9055
9098
  },
9056
9099
  {
9057
9100
  key: "isValid",
9058
- get: /** @override **/ function get() {
9101
+ get: /**
9102
+ * Return whether this Zone is valid.
9103
+ * @override
9104
+ * @type {boolean}
9105
+ */ function get() {
9059
9106
  return this.valid;
9060
9107
  }
9061
9108
  }
@@ -9089,7 +9136,7 @@ var IANAZone = /*#__PURE__*/ function(Zone) {
9089
9136
  * @param {string} s - The string to check validity on
9090
9137
  * @example IANAZone.isValidSpecifier("America/New_York") //=> true
9091
9138
  * @example IANAZone.isValidSpecifier("Sport~~blorp") //=> false
9092
- * @deprecated This method returns false for some valid IANA names. Use isValidZone instead.
9139
+ * @deprecated For backward compatibility, this forwards to isValidZone, better use `isValidZone()` directly instead.
9093
9140
  * @return {boolean}
9094
9141
  */ function isValidSpecifier(s) {
9095
9142
  return this.isValidZone(s);
@@ -9130,12 +9177,12 @@ function _array_like_to_array$e(arr, len) {
9130
9177
  function _array_with_holes$c(arr) {
9131
9178
  if (Array.isArray(arr)) return arr;
9132
9179
  }
9133
- function _class_call_check$l(instance, Constructor) {
9180
+ function _class_call_check$m(instance, Constructor) {
9134
9181
  if (!(instance instanceof Constructor)) {
9135
9182
  throw new TypeError("Cannot call a class as a function");
9136
9183
  }
9137
9184
  }
9138
- function _defineProperties$l(target, props) {
9185
+ function _defineProperties$m(target, props) {
9139
9186
  for(var i = 0; i < props.length; i++){
9140
9187
  var descriptor = props[i];
9141
9188
  descriptor.enumerable = descriptor.enumerable || false;
@@ -9144,9 +9191,9 @@ function _defineProperties$l(target, props) {
9144
9191
  Object.defineProperty(target, descriptor.key, descriptor);
9145
9192
  }
9146
9193
  }
9147
- function _create_class$l(Constructor, protoProps, staticProps) {
9148
- if (protoProps) _defineProperties$l(Constructor.prototype, protoProps);
9149
- if (staticProps) _defineProperties$l(Constructor, staticProps);
9194
+ function _create_class$m(Constructor, protoProps, staticProps) {
9195
+ if (protoProps) _defineProperties$m(Constructor.prototype, protoProps);
9196
+ if (staticProps) _defineProperties$m(Constructor, staticProps);
9150
9197
  return Constructor;
9151
9198
  }
9152
9199
  function _define_property$e(obj, key, value) {
@@ -9437,7 +9484,7 @@ function supportsFastNumbers(loc) {
9437
9484
  * @private
9438
9485
  */ var PolyNumberFormatter = /*#__PURE__*/ function() {
9439
9486
  function PolyNumberFormatter(intl, forceSimple, opts) {
9440
- _class_call_check$l(this, PolyNumberFormatter);
9487
+ _class_call_check$m(this, PolyNumberFormatter);
9441
9488
  this.padTo = opts.padTo || 0;
9442
9489
  this.floor = opts.floor || false;
9443
9490
  opts.padTo; opts.floor; var otherOpts = _object_without_properties(opts, [
@@ -9452,7 +9499,7 @@ function supportsFastNumbers(loc) {
9452
9499
  this.inf = getCachedINF(intl, intlOpts);
9453
9500
  }
9454
9501
  }
9455
- _create_class$l(PolyNumberFormatter, [
9502
+ _create_class$m(PolyNumberFormatter, [
9456
9503
  {
9457
9504
  key: "format",
9458
9505
  value: function format(i) {
@@ -9473,7 +9520,7 @@ function supportsFastNumbers(loc) {
9473
9520
  * @private
9474
9521
  */ var PolyDateFormatter = /*#__PURE__*/ function() {
9475
9522
  function PolyDateFormatter(dt, intl, opts) {
9476
- _class_call_check$l(this, PolyDateFormatter);
9523
+ _class_call_check$m(this, PolyDateFormatter);
9477
9524
  this.opts = opts;
9478
9525
  this.originalZone = undefined;
9479
9526
  var z = undefined;
@@ -9519,7 +9566,7 @@ function supportsFastNumbers(loc) {
9519
9566
  intlOpts.timeZone = intlOpts.timeZone || z;
9520
9567
  this.dtf = getCachedDTF(intl, intlOpts);
9521
9568
  }
9522
- _create_class$l(PolyDateFormatter, [
9569
+ _create_class$m(PolyDateFormatter, [
9523
9570
  {
9524
9571
  key: "format",
9525
9572
  value: function format() {
@@ -9570,7 +9617,7 @@ function supportsFastNumbers(loc) {
9570
9617
  * @private
9571
9618
  */ var PolyRelFormatter = /*#__PURE__*/ function() {
9572
9619
  function PolyRelFormatter(intl, isEnglish, opts) {
9573
- _class_call_check$l(this, PolyRelFormatter);
9620
+ _class_call_check$m(this, PolyRelFormatter);
9574
9621
  this.opts = _object_spread$b({
9575
9622
  style: "long"
9576
9623
  }, opts);
@@ -9578,7 +9625,7 @@ function supportsFastNumbers(loc) {
9578
9625
  this.rtf = getCachedRTF(intl, opts);
9579
9626
  }
9580
9627
  }
9581
- _create_class$l(PolyRelFormatter, [
9628
+ _create_class$m(PolyRelFormatter, [
9582
9629
  {
9583
9630
  key: "format",
9584
9631
  value: function format(count, unit) {
@@ -9612,7 +9659,7 @@ var fallbackWeekSettings = {
9612
9659
  };
9613
9660
  var Locale = /*#__PURE__*/ function() {
9614
9661
  function Locale(locale, numbering, outputCalendar, weekSettings, specifiedLocale) {
9615
- _class_call_check$l(this, Locale);
9662
+ _class_call_check$m(this, Locale);
9616
9663
  var _parseLocaleString = _sliced_to_array$c(parseLocaleString(locale), 3), parsedLocale = _parseLocaleString[0], parsedNumberingSystem = _parseLocaleString[1], parsedOutputCalendar = _parseLocaleString[2];
9617
9664
  this.locale = parsedLocale;
9618
9665
  this.numberingSystem = numbering || parsedNumberingSystem || null;
@@ -9632,7 +9679,7 @@ var Locale = /*#__PURE__*/ function() {
9632
9679
  this.specifiedLocale = specifiedLocale;
9633
9680
  this.fastNumbersCached = null;
9634
9681
  }
9635
- _create_class$l(Locale, [
9682
+ _create_class$m(Locale, [
9636
9683
  {
9637
9684
  key: "fastNumbers",
9638
9685
  get: function get() {
@@ -9849,6 +9896,12 @@ var Locale = /*#__PURE__*/ function() {
9849
9896
  value: function equals(other) {
9850
9897
  return this.locale === other.locale && this.numberingSystem === other.numberingSystem && this.outputCalendar === other.outputCalendar;
9851
9898
  }
9899
+ },
9900
+ {
9901
+ key: "toString",
9902
+ value: function toString() {
9903
+ return "Locale(".concat(this.locale, ", ").concat(this.numberingSystem, ", ").concat(this.outputCalendar, ")");
9904
+ }
9852
9905
  }
9853
9906
  ], [
9854
9907
  {
@@ -9862,7 +9915,7 @@ var Locale = /*#__PURE__*/ function() {
9862
9915
  value: function create(locale, numberingSystem, outputCalendar, weekSettings) {
9863
9916
  var defaultToEN = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : false;
9864
9917
  var specifiedLocale = locale || Settings.defaultLocale;
9865
- // the system locale is useful for human readable strings but annoying for parsing/formatting known formats
9918
+ // the system locale is useful for human-readable strings but annoying for parsing/formatting known formats
9866
9919
  var localeR = specifiedLocale || (defaultToEN ? "en-US" : systemLocale());
9867
9920
  var numberingSystemR = numberingSystem || Settings.defaultNumberingSystem;
9868
9921
  var outputCalendarR = outputCalendar || Settings.defaultOutputCalendar;
@@ -9896,12 +9949,12 @@ function _assert_this_initialized$8(self) {
9896
9949
  }
9897
9950
  return self;
9898
9951
  }
9899
- function _class_call_check$k(instance, Constructor) {
9952
+ function _class_call_check$l(instance, Constructor) {
9900
9953
  if (!(instance instanceof Constructor)) {
9901
9954
  throw new TypeError("Cannot call a class as a function");
9902
9955
  }
9903
9956
  }
9904
- function _defineProperties$k(target, props) {
9957
+ function _defineProperties$l(target, props) {
9905
9958
  for(var i = 0; i < props.length; i++){
9906
9959
  var descriptor = props[i];
9907
9960
  descriptor.enumerable = descriptor.enumerable || false;
@@ -9910,9 +9963,9 @@ function _defineProperties$k(target, props) {
9910
9963
  Object.defineProperty(target, descriptor.key, descriptor);
9911
9964
  }
9912
9965
  }
9913
- function _create_class$k(Constructor, protoProps, staticProps) {
9914
- if (protoProps) _defineProperties$k(Constructor.prototype, protoProps);
9915
- if (staticProps) _defineProperties$k(Constructor, staticProps);
9966
+ function _create_class$l(Constructor, protoProps, staticProps) {
9967
+ if (protoProps) _defineProperties$l(Constructor.prototype, protoProps);
9968
+ if (staticProps) _defineProperties$l(Constructor, staticProps);
9916
9969
  return Constructor;
9917
9970
  }
9918
9971
  function _get_prototype_of$8(o) {
@@ -9980,28 +10033,42 @@ var FixedOffsetZone = /*#__PURE__*/ function(Zone) {
9980
10033
  _inherits$8(FixedOffsetZone, Zone);
9981
10034
  var _super = _create_super$8(FixedOffsetZone);
9982
10035
  function FixedOffsetZone(offset) {
9983
- _class_call_check$k(this, FixedOffsetZone);
10036
+ _class_call_check$l(this, FixedOffsetZone);
9984
10037
  var _this;
9985
10038
  _this = _super.call(this);
9986
10039
  /** @private **/ _this.fixed = offset;
9987
10040
  return _this;
9988
10041
  }
9989
- _create_class$k(FixedOffsetZone, [
10042
+ _create_class$l(FixedOffsetZone, [
9990
10043
  {
9991
10044
  key: "type",
9992
- get: /** @override **/ function get() {
10045
+ get: /**
10046
+ * The type of zone. `fixed` for all instances of `FixedOffsetZone`.
10047
+ * @override
10048
+ * @type {string}
10049
+ */ function get() {
9993
10050
  return "fixed";
9994
10051
  }
9995
10052
  },
9996
10053
  {
9997
10054
  key: "name",
9998
- get: /** @override **/ function get() {
10055
+ get: /**
10056
+ * The name of this zone.
10057
+ * All fixed zones' names always start with "UTC" (plus optional offset)
10058
+ * @override
10059
+ * @type {string}
10060
+ */ function get() {
9999
10061
  return this.fixed === 0 ? "UTC" : "UTC".concat(formatOffset(this.fixed, "narrow"));
10000
10062
  }
10001
10063
  },
10002
10064
  {
10003
10065
  key: "ianaName",
10004
- get: function get() {
10066
+ get: /**
10067
+ * The IANA name of this zone, i.e. `Etc/UTC` or `Etc/GMT+/-nn`
10068
+ *
10069
+ * @override
10070
+ * @type {string}
10071
+ */ function get() {
10005
10072
  if (this.fixed === 0) {
10006
10073
  return "Etc/UTC";
10007
10074
  } else {
@@ -10010,38 +10077,71 @@ var FixedOffsetZone = /*#__PURE__*/ function(Zone) {
10010
10077
  }
10011
10078
  },
10012
10079
  {
10013
- /** @override **/ key: "offsetName",
10080
+ /**
10081
+ * Returns the offset's common name at the specified timestamp.
10082
+ *
10083
+ * For fixed offset zones this equals to the zone name.
10084
+ * @override
10085
+ */ key: "offsetName",
10014
10086
  value: function offsetName() {
10015
10087
  return this.name;
10016
10088
  }
10017
10089
  },
10018
10090
  {
10019
- /** @override **/ key: "formatOffset",
10091
+ /**
10092
+ * Returns the offset's value as a string
10093
+ * @override
10094
+ * @param {number} ts - Epoch milliseconds for which to get the offset
10095
+ * @param {string} format - What style of offset to return.
10096
+ * Accepts 'narrow', 'short', or 'techie'. Returning '+6', '+06:00', or '+0600' respectively
10097
+ * @return {string}
10098
+ */ key: "formatOffset",
10020
10099
  value: function formatOffset1(ts, format) {
10021
10100
  return formatOffset(this.fixed, format);
10022
10101
  }
10023
10102
  },
10024
10103
  {
10025
10104
  key: "isUniversal",
10026
- get: /** @override **/ function get() {
10105
+ get: /**
10106
+ * Returns whether the offset is known to be fixed for the whole year:
10107
+ * Always returns true for all fixed offset zones.
10108
+ * @override
10109
+ * @type {boolean}
10110
+ */ function get() {
10027
10111
  return true;
10028
10112
  }
10029
10113
  },
10030
10114
  {
10031
- /** @override **/ key: "offset",
10115
+ /**
10116
+ * Return the offset in minutes for this zone at the specified timestamp.
10117
+ *
10118
+ * For fixed offset zones, this is constant and does not depend on a timestamp.
10119
+ * @override
10120
+ * @return {number}
10121
+ */ key: "offset",
10032
10122
  value: function offset() {
10033
10123
  return this.fixed;
10034
10124
  }
10035
10125
  },
10036
10126
  {
10037
- /** @override **/ key: "equals",
10127
+ /**
10128
+ * Return whether this Zone is equal to another zone (i.e. also fixed and same offset)
10129
+ * @override
10130
+ * @param {Zone} otherZone - the zone to compare
10131
+ * @return {boolean}
10132
+ */ key: "equals",
10038
10133
  value: function equals(otherZone) {
10039
10134
  return otherZone.type === "fixed" && otherZone.fixed === this.fixed;
10040
10135
  }
10041
10136
  },
10042
10137
  {
10043
10138
  key: "isValid",
10044
- get: /** @override **/ function get() {
10139
+ get: /**
10140
+ * Return whether this Zone is valid:
10141
+ * All fixed offset zones are valid.
10142
+ * @override
10143
+ * @type {boolean}
10144
+ */ function get() {
10045
10145
  return true;
10046
10146
  }
10047
10147
  }
@@ -10097,12 +10197,12 @@ function _assert_this_initialized$7(self) {
10097
10197
  }
10098
10198
  return self;
10099
10199
  }
10100
- function _class_call_check$j(instance, Constructor) {
10200
+ function _class_call_check$k(instance, Constructor) {
10101
10201
  if (!(instance instanceof Constructor)) {
10102
10202
  throw new TypeError("Cannot call a class as a function");
10103
10203
  }
10104
10204
  }
10105
- function _defineProperties$j(target, props) {
10205
+ function _defineProperties$k(target, props) {
10106
10206
  for(var i = 0; i < props.length; i++){
10107
10207
  var descriptor = props[i];
10108
10208
  descriptor.enumerable = descriptor.enumerable || false;
@@ -10111,9 +10211,9 @@ function _defineProperties$j(target, props) {
10111
10211
  Object.defineProperty(target, descriptor.key, descriptor);
10112
10212
  }
10113
10213
  }
10114
- function _create_class$j(Constructor, protoProps, staticProps) {
10115
- if (protoProps) _defineProperties$j(Constructor.prototype, protoProps);
10116
- if (staticProps) _defineProperties$j(Constructor, staticProps);
10214
+ function _create_class$k(Constructor, protoProps, staticProps) {
10215
+ if (protoProps) _defineProperties$k(Constructor.prototype, protoProps);
10216
+ if (staticProps) _defineProperties$k(Constructor, staticProps);
10117
10217
  return Constructor;
10118
10218
  }
10119
10219
  function _get_prototype_of$7(o) {
@@ -10180,13 +10280,13 @@ var InvalidZone = /*#__PURE__*/ function(Zone) {
10180
10280
  _inherits$7(InvalidZone, Zone);
10181
10281
  var _super = _create_super$7(InvalidZone);
10182
10282
  function InvalidZone(zoneName) {
10183
- _class_call_check$j(this, InvalidZone);
10283
+ _class_call_check$k(this, InvalidZone);
10184
10284
  var _this;
10185
10285
  _this = _super.call(this);
10186
10286
  /** @private */ _this.zoneName = zoneName;
10187
10287
  return _this;
10188
10288
  }
10189
- _create_class$j(InvalidZone, [
10289
+ _create_class$k(InvalidZone, [
10190
10290
  {
10191
10291
  key: "type",
10192
10292
  get: /** @override **/ function get() {
@@ -10241,7 +10341,7 @@ var InvalidZone = /*#__PURE__*/ function(Zone) {
10241
10341
 
10242
10342
  /**
10243
10343
  * @private
10244
- */ function _instanceof$9(left, right) {
10344
+ */ function _instanceof$a(left, right) {
10245
10345
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
10246
10346
  return !!right[Symbol.hasInstance](left);
10247
10347
  } else {
@@ -10249,9 +10349,9 @@ var InvalidZone = /*#__PURE__*/ function(Zone) {
10249
10349
  }
10250
10350
  }
10251
10351
  function normalizeZone(input, defaultZone) {
10252
- if (isUndefined(input) || input === null) {
10352
+ if (isUndefined$1(input) || input === null) {
10253
10353
  return defaultZone;
10254
- } else if (_instanceof$9(input, Zone)) {
10354
+ } else if (_instanceof$a(input, Zone)) {
10255
10355
  return input;
10256
10356
  } else if (isString$1(input)) {
10257
10357
  var lowered = input.toLowerCase();
@@ -10270,80 +10370,267 @@ function normalizeZone(input, defaultZone) {
10270
10370
  }
10271
10371
  }
10272
10372
 
10273
- function _class_call_check$i(instance, Constructor) {
10274
- if (!(instance instanceof Constructor)) {
10275
- throw new TypeError("Cannot call a class as a function");
10276
- }
10373
+ function _array_like_to_array$d(arr, len) {
10374
+ if (len == null || len > arr.length) len = arr.length;
10375
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
10376
+ return arr2;
10277
10377
  }
10278
- function _defineProperties$i(target, props) {
10279
- for(var i = 0; i < props.length; i++){
10280
- var descriptor = props[i];
10281
- descriptor.enumerable = descriptor.enumerable || false;
10282
- descriptor.configurable = true;
10283
- if ("value" in descriptor) descriptor.writable = true;
10284
- Object.defineProperty(target, descriptor.key, descriptor);
10378
+ function _array_with_holes$b(arr) {
10379
+ if (Array.isArray(arr)) return arr;
10380
+ }
10381
+ function _iterable_to_array_limit$b(arr, i) {
10382
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
10383
+ if (_i == null) return;
10384
+ var _arr = [];
10385
+ var _n = true;
10386
+ var _d = false;
10387
+ var _s, _e;
10388
+ try {
10389
+ for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
10390
+ _arr.push(_s.value);
10391
+ if (i && _arr.length === i) break;
10392
+ }
10393
+ } catch (err) {
10394
+ _d = true;
10395
+ _e = err;
10396
+ } finally{
10397
+ try {
10398
+ if (!_n && _i["return"] != null) _i["return"]();
10399
+ } finally{
10400
+ if (_d) throw _e;
10401
+ }
10285
10402
  }
10403
+ return _arr;
10286
10404
  }
10287
- function _create_class$i(Constructor, protoProps, staticProps) {
10288
- if (protoProps) _defineProperties$i(Constructor.prototype, protoProps);
10289
- if (staticProps) _defineProperties$i(Constructor, staticProps);
10290
- return Constructor;
10405
+ function _non_iterable_rest$b() {
10406
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
10291
10407
  }
10292
- var now = function() {
10293
- return Date.now();
10294
- }, defaultZone = "system", defaultLocale = null, defaultNumberingSystem = null, defaultOutputCalendar = null, twoDigitCutoffYear = 60, throwOnInvalid, defaultWeekSettings = null;
10295
- var Settings = /*#__PURE__*/ function() {
10296
- function Settings() {
10297
- _class_call_check$i(this, Settings);
10298
- }
10299
- _create_class$i(Settings, null, [
10300
- {
10301
- key: "now",
10302
- get: /**
10303
- * Get the callback for returning the current timestamp.
10304
- * @type {function}
10305
- */ function get() {
10306
- return now;
10307
- },
10308
- set: /**
10309
- * Set the callback for returning the current timestamp.
10310
- * The function should return a number, which will be interpreted as an Epoch millisecond count
10311
- * @type {function}
10312
- * @example Settings.now = () => Date.now() + 3000 // pretend it is 3 seconds in the future
10313
- * @example Settings.now = () => 0 // always pretend it's Jan 1, 1970 at midnight in UTC time
10314
- */ function set(n) {
10315
- now = n;
10316
- }
10317
- },
10318
- {
10319
- key: "defaultZone",
10320
- get: /**
10321
- * Get the default time zone object currently used to create DateTimes. Does not affect existing instances.
10322
- * The default value is the system's time zone (the one set on the machine that runs this code).
10323
- * @type {Zone}
10324
- */ function get() {
10325
- return normalizeZone(defaultZone, SystemZone.instance);
10326
- },
10327
- set: /**
10328
- * Set the default time zone to create DateTimes in. Does not affect existing instances.
10329
- * Use the value "system" to reset this value to the system's time zone.
10330
- * @type {string}
10331
- */ function set(zone) {
10332
- defaultZone = zone;
10333
- }
10334
- },
10335
- {
10336
- key: "defaultLocale",
10337
- get: /**
10338
- * Get the default locale to create DateTimes with. Does not affect existing instances.
10339
- * @type {string}
10340
- */ function get() {
10341
- return defaultLocale;
10342
- },
10343
- set: /**
10344
- * Set the default locale to create DateTimes with. Does not affect existing instances.
10345
- * @type {string}
10346
- */ function set(locale) {
10408
+ function _sliced_to_array$b(arr, i) {
10409
+ return _array_with_holes$b(arr) || _iterable_to_array_limit$b(arr, i) || _unsupported_iterable_to_array$d(arr, i) || _non_iterable_rest$b();
10410
+ }
10411
+ function _unsupported_iterable_to_array$d(o, minLen) {
10412
+ if (!o) return;
10413
+ if (typeof o === "string") return _array_like_to_array$d(o, minLen);
10414
+ var n = Object.prototype.toString.call(o).slice(8, -1);
10415
+ if (n === "Object" && o.constructor) n = o.constructor.name;
10416
+ if (n === "Map" || n === "Set") return Array.from(n);
10417
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$d(o, minLen);
10418
+ }
10419
+ var numberingSystems = {
10420
+ arab: "[٠-٩]",
10421
+ arabext: "[۰-۹]",
10422
+ bali: "[᭐-᭙]",
10423
+ beng: "[০-৯]",
10424
+ deva: "[०-९]",
10425
+ fullwide: "[0-9]",
10426
+ gujr: "[૦-૯]",
10427
+ hanidec: "[〇|一|二|三|四|五|六|七|八|九]",
10428
+ khmr: "[០-៩]",
10429
+ knda: "[೦-೯]",
10430
+ laoo: "[໐-໙]",
10431
+ limb: "[᥆-᥏]",
10432
+ mlym: "[൦-൯]",
10433
+ mong: "[᠐-᠙]",
10434
+ mymr: "[၀-၉]",
10435
+ orya: "[୦-୯]",
10436
+ tamldec: "[௦-௯]",
10437
+ telu: "[౦-౯]",
10438
+ thai: "[๐-๙]",
10439
+ tibt: "[༠-༩]",
10440
+ latn: "\\d"
10441
+ };
10442
+ var numberingSystemsUTF16 = {
10443
+ arab: [
10444
+ 1632,
10445
+ 1641
10446
+ ],
10447
+ arabext: [
10448
+ 1776,
10449
+ 1785
10450
+ ],
10451
+ bali: [
10452
+ 6992,
10453
+ 7001
10454
+ ],
10455
+ beng: [
10456
+ 2534,
10457
+ 2543
10458
+ ],
10459
+ deva: [
10460
+ 2406,
10461
+ 2415
10462
+ ],
10463
+ fullwide: [
10464
+ 65296,
10465
+ 65303
10466
+ ],
10467
+ gujr: [
10468
+ 2790,
10469
+ 2799
10470
+ ],
10471
+ khmr: [
10472
+ 6112,
10473
+ 6121
10474
+ ],
10475
+ knda: [
10476
+ 3302,
10477
+ 3311
10478
+ ],
10479
+ laoo: [
10480
+ 3792,
10481
+ 3801
10482
+ ],
10483
+ limb: [
10484
+ 6470,
10485
+ 6479
10486
+ ],
10487
+ mlym: [
10488
+ 3430,
10489
+ 3439
10490
+ ],
10491
+ mong: [
10492
+ 6160,
10493
+ 6169
10494
+ ],
10495
+ mymr: [
10496
+ 4160,
10497
+ 4169
10498
+ ],
10499
+ orya: [
10500
+ 2918,
10501
+ 2927
10502
+ ],
10503
+ tamldec: [
10504
+ 3046,
10505
+ 3055
10506
+ ],
10507
+ telu: [
10508
+ 3174,
10509
+ 3183
10510
+ ],
10511
+ thai: [
10512
+ 3664,
10513
+ 3673
10514
+ ],
10515
+ tibt: [
10516
+ 3872,
10517
+ 3881
10518
+ ]
10519
+ };
10520
+ var hanidecChars = numberingSystems.hanidec.replace(/[\[|\]]/g, "").split("");
10521
+ function parseDigits(str) {
10522
+ var value = parseInt(str, 10);
10523
+ if (isNaN(value)) {
10524
+ value = "";
10525
+ for(var i = 0; i < str.length; i++){
10526
+ var code = str.charCodeAt(i);
10527
+ if (str[i].search(numberingSystems.hanidec) !== -1) {
10528
+ value += hanidecChars.indexOf(str[i]);
10529
+ } else {
10530
+ for(var key in numberingSystemsUTF16){
10531
+ var _numberingSystemsUTF16_key = _sliced_to_array$b(numberingSystemsUTF16[key], 2), min = _numberingSystemsUTF16_key[0], max = _numberingSystemsUTF16_key[1];
10532
+ if (code >= min && code <= max) {
10533
+ value += code - min;
10534
+ }
10535
+ }
10536
+ }
10537
+ }
10538
+ return parseInt(value, 10);
10539
+ } else {
10540
+ return value;
10541
+ }
10542
+ }
10543
+ // cache of {numberingSystem: {append: regex}}
10544
+ var digitRegexCache = {};
10545
+ function resetDigitRegexCache() {
10546
+ digitRegexCache = {};
10547
+ }
10548
+ function digitRegex(param) {
10549
+ var numberingSystem = param.numberingSystem, append = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "";
10550
+ var ns = numberingSystem || "latn";
10551
+ if (!digitRegexCache[ns]) {
10552
+ digitRegexCache[ns] = {};
10553
+ }
10554
+ if (!digitRegexCache[ns][append]) {
10555
+ digitRegexCache[ns][append] = new RegExp("".concat(numberingSystems[ns]).concat(append));
10556
+ }
10557
+ return digitRegexCache[ns][append];
10558
+ }
10559
+
10560
+ function _class_call_check$j(instance, Constructor) {
10561
+ if (!(instance instanceof Constructor)) {
10562
+ throw new TypeError("Cannot call a class as a function");
10563
+ }
10564
+ }
10565
+ function _defineProperties$j(target, props) {
10566
+ for(var i = 0; i < props.length; i++){
10567
+ var descriptor = props[i];
10568
+ descriptor.enumerable = descriptor.enumerable || false;
10569
+ descriptor.configurable = true;
10570
+ if ("value" in descriptor) descriptor.writable = true;
10571
+ Object.defineProperty(target, descriptor.key, descriptor);
10572
+ }
10573
+ }
10574
+ function _create_class$j(Constructor, protoProps, staticProps) {
10575
+ if (protoProps) _defineProperties$j(Constructor.prototype, protoProps);
10576
+ if (staticProps) _defineProperties$j(Constructor, staticProps);
10577
+ return Constructor;
10578
+ }
10579
+ var now = function() {
10580
+ return Date.now();
10581
+ }, defaultZone = "system", defaultLocale = null, defaultNumberingSystem = null, defaultOutputCalendar = null, twoDigitCutoffYear = 60, throwOnInvalid, defaultWeekSettings = null;
10582
+ var Settings = /*#__PURE__*/ function() {
10583
+ function Settings() {
10584
+ _class_call_check$j(this, Settings);
10585
+ }
10586
+ _create_class$j(Settings, null, [
10587
+ {
10588
+ key: "now",
10589
+ get: /**
10590
+ * Get the callback for returning the current timestamp.
10591
+ * @type {function}
10592
+ */ function get() {
10593
+ return now;
10594
+ },
10595
+ set: /**
10596
+ * Set the callback for returning the current timestamp.
10597
+ * The function should return a number, which will be interpreted as an Epoch millisecond count
10598
+ * @type {function}
10599
+ * @example Settings.now = () => Date.now() + 3000 // pretend it is 3 seconds in the future
10600
+ * @example Settings.now = () => 0 // always pretend it's Jan 1, 1970 at midnight in UTC time
10601
+ */ function set(n) {
10602
+ now = n;
10603
+ }
10604
+ },
10605
+ {
10606
+ key: "defaultZone",
10607
+ get: /**
10608
+ * Get the default time zone object currently used to create DateTimes. Does not affect existing instances.
10609
+ * The default value is the system's time zone (the one set on the machine that runs this code).
10610
+ * @type {Zone}
10611
+ */ function get() {
10612
+ return normalizeZone(defaultZone, SystemZone.instance);
10613
+ },
10614
+ set: /**
10615
+ * Set the default time zone to create DateTimes in. Does not affect existing instances.
10616
+ * Use the value "system" to reset this value to the system's time zone.
10617
+ * @type {string}
10618
+ */ function set(zone) {
10619
+ defaultZone = zone;
10620
+ }
10621
+ },
10622
+ {
10623
+ key: "defaultLocale",
10624
+ get: /**
10625
+ * Get the default locale to create DateTimes with. Does not affect existing instances.
10626
+ * @type {string}
10627
+ */ function get() {
10628
+ return defaultLocale;
10629
+ },
10630
+ set: /**
10631
+ * Set the default locale to create DateTimes with. Does not affect existing instances.
10632
+ * @type {string}
10633
+ */ function set(locale) {
10347
10634
  defaultLocale = locale;
10348
10635
  }
10349
10636
  },
@@ -10402,16 +10689,17 @@ var Settings = /*#__PURE__*/ function() {
10402
10689
  {
10403
10690
  key: "twoDigitCutoffYear",
10404
10691
  get: /**
10405
- * Get the cutoff year after which a string encoding a year as two digits is interpreted to occur in the current century.
10692
+ * 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.
10406
10693
  * @type {number}
10407
10694
  */ function get() {
10408
10695
  return twoDigitCutoffYear;
10409
10696
  },
10410
10697
  set: /**
10411
- * Set the cutoff year after which a string encoding a year as two digits is interpreted to occur in the current century.
10698
+ * 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.
10412
10699
  * @type {number}
10413
- * @example Settings.twoDigitCutoffYear = 0 // cut-off year is 0, so all 'yy' are interpreted as current century
10414
- * @example Settings.twoDigitCutoffYear = 50 // '49' -> 1949; '50' -> 2050
10700
+ * @example Settings.twoDigitCutoffYear = 0 // all 'yy' are interpreted as 20th century
10701
+ * @example Settings.twoDigitCutoffYear = 99 // all 'yy' are interpreted as 21st century
10702
+ * @example Settings.twoDigitCutoffYear = 50 // '49' -> 2049; '50' -> 1950
10415
10703
  * @example Settings.twoDigitCutoffYear = 1950 // interpreted as 50
10416
10704
  * @example Settings.twoDigitCutoffYear = 2050 // ALSO interpreted as 50
10417
10705
  */ function set(cutoffYear) {
@@ -10441,18 +10729,20 @@ var Settings = /*#__PURE__*/ function() {
10441
10729
  */ function resetCaches() {
10442
10730
  Locale.resetCache();
10443
10731
  IANAZone.resetCache();
10732
+ DateTime.resetCache();
10733
+ resetDigitRegexCache();
10444
10734
  }
10445
10735
  }
10446
10736
  ]);
10447
10737
  return Settings;
10448
10738
  }();
10449
10739
 
10450
- function _class_call_check$h(instance, Constructor) {
10740
+ function _class_call_check$i(instance, Constructor) {
10451
10741
  if (!(instance instanceof Constructor)) {
10452
10742
  throw new TypeError("Cannot call a class as a function");
10453
10743
  }
10454
10744
  }
10455
- function _defineProperties$h(target, props) {
10745
+ function _defineProperties$i(target, props) {
10456
10746
  for(var i = 0; i < props.length; i++){
10457
10747
  var descriptor = props[i];
10458
10748
  descriptor.enumerable = descriptor.enumerable || false;
@@ -10461,18 +10751,18 @@ function _defineProperties$h(target, props) {
10461
10751
  Object.defineProperty(target, descriptor.key, descriptor);
10462
10752
  }
10463
10753
  }
10464
- function _create_class$h(Constructor, protoProps, staticProps) {
10465
- if (protoProps) _defineProperties$h(Constructor.prototype, protoProps);
10466
- if (staticProps) _defineProperties$h(Constructor, staticProps);
10754
+ function _create_class$i(Constructor, protoProps, staticProps) {
10755
+ if (protoProps) _defineProperties$i(Constructor.prototype, protoProps);
10756
+ if (staticProps) _defineProperties$i(Constructor, staticProps);
10467
10757
  return Constructor;
10468
10758
  }
10469
10759
  var Invalid = /*#__PURE__*/ function() {
10470
10760
  function Invalid(reason, explanation) {
10471
- _class_call_check$h(this, Invalid);
10761
+ _class_call_check$i(this, Invalid);
10472
10762
  this.reason = reason;
10473
10763
  this.explanation = explanation;
10474
10764
  }
10475
- _create_class$h(Invalid, [
10765
+ _create_class$i(Invalid, [
10476
10766
  {
10477
10767
  key: "toMessage",
10478
10768
  value: function toMessage() {
@@ -10636,15 +10926,15 @@ function ordinalToGregorian(ordinalData) {
10636
10926
  * Modifies obj in-place!
10637
10927
  * @param obj the object values
10638
10928
  */ function usesLocalWeekValues(obj, loc) {
10639
- var hasLocaleWeekData = !isUndefined(obj.localWeekday) || !isUndefined(obj.localWeekNumber) || !isUndefined(obj.localWeekYear);
10929
+ var hasLocaleWeekData = !isUndefined$1(obj.localWeekday) || !isUndefined$1(obj.localWeekNumber) || !isUndefined$1(obj.localWeekYear);
10640
10930
  if (hasLocaleWeekData) {
10641
- var hasIsoWeekData = !isUndefined(obj.weekday) || !isUndefined(obj.weekNumber) || !isUndefined(obj.weekYear);
10931
+ var hasIsoWeekData = !isUndefined$1(obj.weekday) || !isUndefined$1(obj.weekNumber) || !isUndefined$1(obj.weekYear);
10642
10932
  if (hasIsoWeekData) {
10643
10933
  throw new ConflictingSpecificationError("Cannot mix locale-based week fields with ISO-based week fields");
10644
10934
  }
10645
- if (!isUndefined(obj.localWeekday)) obj.weekday = obj.localWeekday;
10646
- if (!isUndefined(obj.localWeekNumber)) obj.weekNumber = obj.localWeekNumber;
10647
- if (!isUndefined(obj.localWeekYear)) obj.weekYear = obj.localWeekYear;
10935
+ if (!isUndefined$1(obj.localWeekday)) obj.weekday = obj.localWeekday;
10936
+ if (!isUndefined$1(obj.localWeekNumber)) obj.weekNumber = obj.localWeekNumber;
10937
+ if (!isUndefined$1(obj.localWeekYear)) obj.weekYear = obj.localWeekYear;
10648
10938
  delete obj.localWeekday;
10649
10939
  delete obj.localWeekNumber;
10650
10940
  delete obj.localWeekYear;
@@ -10737,7 +11027,7 @@ function _object_spread$9(target) {
10737
11027
  /**
10738
11028
  * @private
10739
11029
  */ // TYPES
10740
- function isUndefined(o) {
11030
+ function isUndefined$1(o) {
10741
11031
  return typeof o === "undefined";
10742
11032
  }
10743
11033
  function isNumber$1(o) {
@@ -10838,14 +11128,14 @@ function padStart(input) {
10838
11128
  return padded;
10839
11129
  }
10840
11130
  function parseInteger(string) {
10841
- if (isUndefined(string) || string === null || string === "") {
11131
+ if (isUndefined$1(string) || string === null || string === "") {
10842
11132
  return undefined;
10843
11133
  } else {
10844
11134
  return parseInt(string, 10);
10845
11135
  }
10846
11136
  }
10847
11137
  function parseFloating(string) {
10848
- if (isUndefined(string) || string === null || string === "") {
11138
+ if (isUndefined$1(string) || string === null || string === "") {
10849
11139
  return undefined;
10850
11140
  } else {
10851
11141
  return parseFloat(string);
@@ -10853,7 +11143,7 @@ function parseFloating(string) {
10853
11143
  }
10854
11144
  function parseMillis(fraction) {
10855
11145
  // Return undefined (instead of 0) in these cases, where fraction is not set
10856
- if (isUndefined(fraction) || fraction === null || fraction === "") {
11146
+ if (isUndefined$1(fraction) || fraction === null || fraction === "") {
10857
11147
  return undefined;
10858
11148
  } else {
10859
11149
  var f = parseFloat("0." + fraction) * 1000;
@@ -10971,7 +11261,13 @@ function normalizeObject(obj, normalizer) {
10971
11261
  }
10972
11262
  return normalized;
10973
11263
  }
10974
- function formatOffset(offset, format) {
11264
+ /**
11265
+ * Returns the offset's value as a string
11266
+ * @param {number} ts - Epoch milliseconds for which to get the offset
11267
+ * @param {string} format - What style of offset to return.
11268
+ * Accepts 'narrow', 'short', or 'techie'. Returning '+6', '+06:00', or '+0600' respectively
11269
+ * @return {string}
11270
+ */ function formatOffset(offset, format) {
10975
11271
  var hours = Math.trunc(Math.abs(offset / 60)), minutes = Math.trunc(Math.abs(offset % 60)), sign = offset >= 0 ? "+" : "-";
10976
11272
  switch(format){
10977
11273
  case "short":
@@ -10993,13 +11289,13 @@ function timeObject(obj) {
10993
11289
  ]);
10994
11290
  }
10995
11291
 
10996
- function _array_like_to_array$d(arr, len) {
11292
+ function _array_like_to_array$c(arr, len) {
10997
11293
  if (len == null || len > arr.length) len = arr.length;
10998
11294
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
10999
11295
  return arr2;
11000
11296
  }
11001
11297
  function _array_without_holes$7(arr) {
11002
- if (Array.isArray(arr)) return _array_like_to_array$d(arr);
11298
+ if (Array.isArray(arr)) return _array_like_to_array$c(arr);
11003
11299
  }
11004
11300
  function _iterable_to_array$7(iter) {
11005
11301
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
@@ -11008,15 +11304,15 @@ function _non_iterable_spread$7() {
11008
11304
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
11009
11305
  }
11010
11306
  function _to_consumable_array$7(arr) {
11011
- return _array_without_holes$7(arr) || _iterable_to_array$7(arr) || _unsupported_iterable_to_array$d(arr) || _non_iterable_spread$7();
11307
+ return _array_without_holes$7(arr) || _iterable_to_array$7(arr) || _unsupported_iterable_to_array$c(arr) || _non_iterable_spread$7();
11012
11308
  }
11013
- function _unsupported_iterable_to_array$d(o, minLen) {
11309
+ function _unsupported_iterable_to_array$c(o, minLen) {
11014
11310
  if (!o) return;
11015
- if (typeof o === "string") return _array_like_to_array$d(o, minLen);
11311
+ if (typeof o === "string") return _array_like_to_array$c(o, minLen);
11016
11312
  var n = Object.prototype.toString.call(o).slice(8, -1);
11017
11313
  if (n === "Object" && o.constructor) n = o.constructor.name;
11018
11314
  if (n === "Map" || n === "Set") return Array.from(n);
11019
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$d(o, minLen);
11315
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$c(o, minLen);
11020
11316
  }
11021
11317
  /**
11022
11318
  * @private
@@ -11250,20 +11546,20 @@ function formatRelativeTime(unit, count) {
11250
11546
  return isInPast ? "".concat(fmtValue, " ").concat(fmtUnit, " ago") : "in ".concat(fmtValue, " ").concat(fmtUnit);
11251
11547
  }
11252
11548
 
11253
- function _array_like_to_array$c(arr, len) {
11549
+ function _array_like_to_array$b(arr, len) {
11254
11550
  if (len == null || len > arr.length) len = arr.length;
11255
11551
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
11256
11552
  return arr2;
11257
11553
  }
11258
11554
  function _array_without_holes$6(arr) {
11259
- if (Array.isArray(arr)) return _array_like_to_array$c(arr);
11555
+ if (Array.isArray(arr)) return _array_like_to_array$b(arr);
11260
11556
  }
11261
- function _class_call_check$g(instance, Constructor) {
11557
+ function _class_call_check$h(instance, Constructor) {
11262
11558
  if (!(instance instanceof Constructor)) {
11263
11559
  throw new TypeError("Cannot call a class as a function");
11264
11560
  }
11265
11561
  }
11266
- function _defineProperties$g(target, props) {
11562
+ function _defineProperties$h(target, props) {
11267
11563
  for(var i = 0; i < props.length; i++){
11268
11564
  var descriptor = props[i];
11269
11565
  descriptor.enumerable = descriptor.enumerable || false;
@@ -11272,9 +11568,9 @@ function _defineProperties$g(target, props) {
11272
11568
  Object.defineProperty(target, descriptor.key, descriptor);
11273
11569
  }
11274
11570
  }
11275
- function _create_class$g(Constructor, protoProps, staticProps) {
11276
- if (protoProps) _defineProperties$g(Constructor.prototype, protoProps);
11277
- if (staticProps) _defineProperties$g(Constructor, staticProps);
11571
+ function _create_class$h(Constructor, protoProps, staticProps) {
11572
+ if (protoProps) _defineProperties$h(Constructor.prototype, protoProps);
11573
+ if (staticProps) _defineProperties$h(Constructor, staticProps);
11278
11574
  return Constructor;
11279
11575
  }
11280
11576
  function _define_property$b(obj, key, value) {
@@ -11312,15 +11608,15 @@ function _object_spread$8(target) {
11312
11608
  return target;
11313
11609
  }
11314
11610
  function _to_consumable_array$6(arr) {
11315
- return _array_without_holes$6(arr) || _iterable_to_array$6(arr) || _unsupported_iterable_to_array$c(arr) || _non_iterable_spread$6();
11611
+ return _array_without_holes$6(arr) || _iterable_to_array$6(arr) || _unsupported_iterable_to_array$b(arr) || _non_iterable_spread$6();
11316
11612
  }
11317
- function _unsupported_iterable_to_array$c(o, minLen) {
11613
+ function _unsupported_iterable_to_array$b(o, minLen) {
11318
11614
  if (!o) return;
11319
- if (typeof o === "string") return _array_like_to_array$c(o, minLen);
11615
+ if (typeof o === "string") return _array_like_to_array$b(o, minLen);
11320
11616
  var n = Object.prototype.toString.call(o).slice(8, -1);
11321
11617
  if (n === "Object" && o.constructor) n = o.constructor.name;
11322
11618
  if (n === "Map" || n === "Set") return Array.from(n);
11323
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$c(o, minLen);
11619
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$b(o, minLen);
11324
11620
  }
11325
11621
  function stringifyTokens(splits, tokenToString) {
11326
11622
  var s = "";
@@ -11374,12 +11670,12 @@ var macroTokenToFormatOpts = {
11374
11670
  };
11375
11671
  var Formatter = /*#__PURE__*/ function() {
11376
11672
  function Formatter(locale, formatOpts) {
11377
- _class_call_check$g(this, Formatter);
11673
+ _class_call_check$h(this, Formatter);
11378
11674
  this.opts = formatOpts;
11379
11675
  this.loc = locale;
11380
11676
  this.systemLoc = null;
11381
11677
  }
11382
- _create_class$g(Formatter, [
11678
+ _create_class$h(Formatter, [
11383
11679
  {
11384
11680
  key: "formatWithSystemDefault",
11385
11681
  value: function formatWithSystemDefault(dt, opts) {
@@ -11800,12 +12096,12 @@ var Formatter = /*#__PURE__*/ function() {
11800
12096
  return Formatter;
11801
12097
  }();
11802
12098
 
11803
- function _array_like_to_array$b(arr, len) {
12099
+ function _array_like_to_array$a(arr, len) {
11804
12100
  if (len == null || len > arr.length) len = arr.length;
11805
12101
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
11806
12102
  return arr2;
11807
12103
  }
11808
- function _array_with_holes$b(arr) {
12104
+ function _array_with_holes$a(arr) {
11809
12105
  if (Array.isArray(arr)) return arr;
11810
12106
  }
11811
12107
  function _define_property$a(obj, key, value) {
@@ -11821,7 +12117,7 @@ function _define_property$a(obj, key, value) {
11821
12117
  }
11822
12118
  return obj;
11823
12119
  }
11824
- function _iterable_to_array_limit$b(arr, i) {
12120
+ function _iterable_to_array_limit$a(arr, i) {
11825
12121
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
11826
12122
  if (_i == null) return;
11827
12123
  var _arr = [];
@@ -11845,7 +12141,7 @@ function _iterable_to_array_limit$b(arr, i) {
11845
12141
  }
11846
12142
  return _arr;
11847
12143
  }
11848
- function _non_iterable_rest$b() {
12144
+ function _non_iterable_rest$a() {
11849
12145
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
11850
12146
  }
11851
12147
  function _object_spread$7(target) {
@@ -11863,16 +12159,16 @@ function _object_spread$7(target) {
11863
12159
  }
11864
12160
  return target;
11865
12161
  }
11866
- function _sliced_to_array$b(arr, i) {
11867
- return _array_with_holes$b(arr) || _iterable_to_array_limit$b(arr, i) || _unsupported_iterable_to_array$b(arr, i) || _non_iterable_rest$b();
12162
+ function _sliced_to_array$a(arr, i) {
12163
+ return _array_with_holes$a(arr) || _iterable_to_array_limit$a(arr, i) || _unsupported_iterable_to_array$a(arr, i) || _non_iterable_rest$a();
11868
12164
  }
11869
- function _unsupported_iterable_to_array$b(o, minLen) {
12165
+ function _unsupported_iterable_to_array$a(o, minLen) {
11870
12166
  if (!o) return;
11871
- if (typeof o === "string") return _array_like_to_array$b(o, minLen);
12167
+ if (typeof o === "string") return _array_like_to_array$a(o, minLen);
11872
12168
  var n = Object.prototype.toString.call(o).slice(8, -1);
11873
12169
  if (n === "Object" && o.constructor) n = o.constructor.name;
11874
12170
  if (n === "Map" || n === "Set") return Array.from(n);
11875
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$b(o, minLen);
12171
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$a(o, minLen);
11876
12172
  }
11877
12173
  /*
11878
12174
  * This file handles parsing for well-specified formats. Here's how it works:
@@ -11898,8 +12194,8 @@ function combineExtractors() {
11898
12194
  }
11899
12195
  return function(m) {
11900
12196
  return extractors.reduce(function(param, ex) {
11901
- var _param = _sliced_to_array$b(param, 3), mergedVals = _param[0], mergedZone = _param[1], cursor = _param[2];
11902
- var _ex = _sliced_to_array$b(ex(m, cursor), 3), val = _ex[0], zone = _ex[1], next = _ex[2];
12197
+ var _param = _sliced_to_array$a(param, 3), mergedVals = _param[0], mergedZone = _param[1], cursor = _param[2];
12198
+ var _ex = _sliced_to_array$a(ex(m, cursor), 3), val = _ex[0], zone = _ex[1], next = _ex[2];
11903
12199
  return [
11904
12200
  _object_spread$7({}, mergedVals, val),
11905
12201
  zone || mergedZone,
@@ -11925,7 +12221,7 @@ function parse$3(s) {
11925
12221
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
11926
12222
  try {
11927
12223
  for(var _iterator = patterns[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
11928
- var _step_value = _sliced_to_array$b(_step.value, 2), regex = _step_value[0], extractor = _step_value[1];
12224
+ var _step_value = _sliced_to_array$a(_step.value, 2), regex = _step_value[0], extractor = _step_value[1];
11929
12225
  var m = regex.exec(s);
11930
12226
  if (m) {
11931
12227
  return extractor(m);
@@ -11983,7 +12279,7 @@ var sqlTimeRegex = RegExp("".concat(isoTimeBaseRegex.source, " ?(?:").concat(off
11983
12279
  var sqlTimeExtensionRegex = RegExp("(?: ".concat(sqlTimeRegex.source, ")?"));
11984
12280
  function int(match, pos, fallback) {
11985
12281
  var m = match[pos];
11986
- return isUndefined(m) ? fallback : parseInteger(m);
12282
+ return isUndefined$1(m) ? fallback : parseInteger(m);
11987
12283
  }
11988
12284
  function extractISOYmd(match, cursor) {
11989
12285
  var item = {
@@ -12031,7 +12327,7 @@ var isoTimeOnly = RegExp("^T?".concat(isoTimeBaseRegex.source, "$"));
12031
12327
  // ISO duration parsing
12032
12328
  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)?)?)$/;
12033
12329
  function extractISODuration(match) {
12034
- var _match = _sliced_to_array$b(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];
12330
+ 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];
12035
12331
  var hasNegativePrefix = s[0] === "-";
12036
12332
  var negativeSeconds = secondStr && secondStr[0] === "-";
12037
12333
  var maybeNegate = function(num) {
@@ -12082,7 +12378,7 @@ function fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr,
12082
12378
  // RFC 2822/5322
12083
12379
  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)))$/;
12084
12380
  function extractRFC2822(match) {
12085
- var _match = _sliced_to_array$b(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);
12381
+ 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);
12086
12382
  var offset;
12087
12383
  if (obsOffset) {
12088
12384
  offset = obsOffsets[obsOffset];
@@ -12103,14 +12399,14 @@ function preprocessRFC2822(s) {
12103
12399
  // http date
12104
12400
  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})$/;
12105
12401
  function extractRFC1123Or850(match) {
12106
- var _match = _sliced_to_array$b(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);
12402
+ 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);
12107
12403
  return [
12108
12404
  result,
12109
12405
  FixedOffsetZone.utcInstance
12110
12406
  ];
12111
12407
  }
12112
12408
  function extractASCII(match) {
12113
- var _match = _sliced_to_array$b(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);
12409
+ 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);
12114
12410
  return [
12115
12411
  result,
12116
12412
  FixedOffsetZone.utcInstance
@@ -12185,20 +12481,20 @@ function parseSQL(s) {
12185
12481
  ]);
12186
12482
  }
12187
12483
 
12188
- function _array_like_to_array$a(arr, len) {
12484
+ function _array_like_to_array$9(arr, len) {
12189
12485
  if (len == null || len > arr.length) len = arr.length;
12190
12486
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
12191
12487
  return arr2;
12192
12488
  }
12193
- function _array_with_holes$a(arr) {
12489
+ function _array_with_holes$9(arr) {
12194
12490
  if (Array.isArray(arr)) return arr;
12195
12491
  }
12196
- function _class_call_check$f(instance, Constructor) {
12492
+ function _class_call_check$g(instance, Constructor) {
12197
12493
  if (!(instance instanceof Constructor)) {
12198
12494
  throw new TypeError("Cannot call a class as a function");
12199
12495
  }
12200
12496
  }
12201
- function _defineProperties$f(target, props) {
12497
+ function _defineProperties$g(target, props) {
12202
12498
  for(var i = 0; i < props.length; i++){
12203
12499
  var descriptor = props[i];
12204
12500
  descriptor.enumerable = descriptor.enumerable || false;
@@ -12207,9 +12503,9 @@ function _defineProperties$f(target, props) {
12207
12503
  Object.defineProperty(target, descriptor.key, descriptor);
12208
12504
  }
12209
12505
  }
12210
- function _create_class$f(Constructor, protoProps, staticProps) {
12211
- if (protoProps) _defineProperties$f(Constructor.prototype, protoProps);
12212
- if (staticProps) _defineProperties$f(Constructor, staticProps);
12506
+ function _create_class$g(Constructor, protoProps, staticProps) {
12507
+ if (protoProps) _defineProperties$g(Constructor.prototype, protoProps);
12508
+ if (staticProps) _defineProperties$g(Constructor, staticProps);
12213
12509
  return Constructor;
12214
12510
  }
12215
12511
  function _define_property$9(obj, key, value) {
@@ -12225,14 +12521,14 @@ function _define_property$9(obj, key, value) {
12225
12521
  }
12226
12522
  return obj;
12227
12523
  }
12228
- function _instanceof$8(left, right) {
12524
+ function _instanceof$9(left, right) {
12229
12525
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
12230
12526
  return !!right[Symbol.hasInstance](left);
12231
12527
  } else {
12232
12528
  return left instanceof right;
12233
12529
  }
12234
12530
  }
12235
- function _iterable_to_array_limit$a(arr, i) {
12531
+ function _iterable_to_array_limit$9(arr, i) {
12236
12532
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
12237
12533
  if (_i == null) return;
12238
12534
  var _arr = [];
@@ -12256,7 +12552,7 @@ function _iterable_to_array_limit$a(arr, i) {
12256
12552
  }
12257
12553
  return _arr;
12258
12554
  }
12259
- function _non_iterable_rest$a() {
12555
+ function _non_iterable_rest$9() {
12260
12556
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
12261
12557
  }
12262
12558
  function _object_spread$6(target) {
@@ -12298,20 +12594,20 @@ function _object_spread_props$5(target, source) {
12298
12594
  }
12299
12595
  return target;
12300
12596
  }
12301
- function _sliced_to_array$a(arr, i) {
12302
- return _array_with_holes$a(arr) || _iterable_to_array_limit$a(arr, i) || _unsupported_iterable_to_array$a(arr, i) || _non_iterable_rest$a();
12597
+ function _sliced_to_array$9(arr, i) {
12598
+ return _array_with_holes$9(arr) || _iterable_to_array_limit$9(arr, i) || _unsupported_iterable_to_array$9(arr, i) || _non_iterable_rest$9();
12303
12599
  }
12304
12600
  function _type_of$9(obj) {
12305
12601
  "@swc/helpers - typeof";
12306
12602
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
12307
12603
  }
12308
- function _unsupported_iterable_to_array$a(o, minLen) {
12604
+ function _unsupported_iterable_to_array$9(o, minLen) {
12309
12605
  if (!o) return;
12310
- if (typeof o === "string") return _array_like_to_array$a(o, minLen);
12606
+ if (typeof o === "string") return _array_like_to_array$9(o, minLen);
12311
12607
  var n = Object.prototype.toString.call(o).slice(8, -1);
12312
12608
  if (n === "Object" && o.constructor) n = o.constructor.name;
12313
12609
  if (n === "Map" || n === "Set") return Array.from(n);
12314
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$a(o, minLen);
12610
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$9(o, minLen);
12315
12611
  }
12316
12612
  var INVALID$2 = "Invalid Duration";
12317
12613
  // unit conversion constants
@@ -12456,7 +12752,7 @@ function normalizeValues(matrix, vals) {
12456
12752
  // if this is not the case, factor is used to make it so
12457
12753
  var factor = durationToMillis(matrix, vals) < 0 ? -1 : 1;
12458
12754
  orderedUnits$1.reduceRight(function(previous, current) {
12459
- if (!isUndefined(vals[current])) {
12755
+ if (!isUndefined$1(vals[current])) {
12460
12756
  if (previous) {
12461
12757
  var previousVal = vals[previous] * factor;
12462
12758
  var conv = matrix[current][previous];
@@ -12487,7 +12783,7 @@ function normalizeValues(matrix, vals) {
12487
12783
  // try to convert any decimals into smaller units if possible
12488
12784
  // for example for { years: 2.5, days: 0, seconds: 0 } we want to get { years: 2, days: 182, hours: 12 }
12489
12785
  orderedUnits$1.reduce(function(previous, current) {
12490
- if (!isUndefined(vals[current])) {
12786
+ if (!isUndefined$1(vals[current])) {
12491
12787
  if (previous) {
12492
12788
  var fraction = vals[previous] % 1;
12493
12789
  vals[previous] -= fraction;
@@ -12505,7 +12801,7 @@ function removeZeroes(vals) {
12505
12801
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
12506
12802
  try {
12507
12803
  for(var _iterator = Object.entries(vals)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
12508
- var _step_value = _sliced_to_array$a(_step.value, 2), key = _step_value[0], value = _step_value[1];
12804
+ var _step_value = _sliced_to_array$9(_step.value, 2), key = _step_value[0], value = _step_value[1];
12509
12805
  if (value !== 0) {
12510
12806
  newVals[key] = value;
12511
12807
  }
@@ -12528,7 +12824,7 @@ function removeZeroes(vals) {
12528
12824
  }
12529
12825
  var Duration = /*#__PURE__*/ function() {
12530
12826
  function Duration(config) {
12531
- _class_call_check$f(this, Duration);
12827
+ _class_call_check$g(this, Duration);
12532
12828
  var accurate = config.conversionAccuracy === "longterm" || false;
12533
12829
  var matrix = accurate ? accurateMatrix : casualMatrix;
12534
12830
  if (config.matrix) {
@@ -12553,7 +12849,7 @@ var Duration = /*#__PURE__*/ function() {
12553
12849
  * @access private
12554
12850
  */ this.isLuxonDuration = true;
12555
12851
  }
12556
- _create_class$f(Duration, [
12852
+ _create_class$g(Duration, [
12557
12853
  {
12558
12854
  key: "locale",
12559
12855
  get: /**
@@ -12626,7 +12922,7 @@ var Duration = /*#__PURE__*/ function() {
12626
12922
  if (!this.isValid) return INVALID$2;
12627
12923
  var l = orderedUnits$1.map(function(unit) {
12628
12924
  var val = _this.values[unit];
12629
- if (isUndefined(val)) {
12925
+ if (isUndefined$1(val)) {
12630
12926
  return null;
12631
12927
  }
12632
12928
  return _this.loc.numberFormatter(_object_spread_props$5(_object_spread$6({
@@ -13315,7 +13611,7 @@ var Duration = /*#__PURE__*/ function() {
13315
13611
  * @example Duration.fromISO('P5Y3M').toObject() //=> { years: 5, months: 3 }
13316
13612
  * @return {Duration}
13317
13613
  */ function fromISO(text, opts) {
13318
- var _parseISODuration = _sliced_to_array$a(parseISODuration(text), 1), parsed = _parseISODuration[0];
13614
+ var _parseISODuration = _sliced_to_array$9(parseISODuration(text), 1), parsed = _parseISODuration[0];
13319
13615
  if (parsed) {
13320
13616
  return Duration.fromObject(parsed, opts);
13321
13617
  } else {
@@ -13341,7 +13637,7 @@ var Duration = /*#__PURE__*/ function() {
13341
13637
  * @example Duration.fromISOTime('T1100').toObject() //=> { hours: 11, minutes: 0, seconds: 0 }
13342
13638
  * @return {Duration}
13343
13639
  */ function fromISOTime(text, opts) {
13344
- var _parseISOTimeOnly = _sliced_to_array$a(parseISOTimeOnly(text), 1), parsed = _parseISOTimeOnly[0];
13640
+ var _parseISOTimeOnly = _sliced_to_array$9(parseISOTimeOnly(text), 1), parsed = _parseISOTimeOnly[0];
13345
13641
  if (parsed) {
13346
13642
  return Duration.fromObject(parsed, opts);
13347
13643
  } else {
@@ -13361,7 +13657,7 @@ var Duration = /*#__PURE__*/ function() {
13361
13657
  if (!reason) {
13362
13658
  throw new InvalidArgumentError("need to specify a reason the Duration is invalid");
13363
13659
  }
13364
- var invalid = _instanceof$8(reason, Invalid) ? reason : new Invalid(reason, explanation);
13660
+ var invalid = _instanceof$9(reason, Invalid) ? reason : new Invalid(reason, explanation);
13365
13661
  if (Settings.throwOnInvalid) {
13366
13662
  throw new InvalidDurationError(invalid);
13367
13663
  } else {
@@ -13414,23 +13710,23 @@ var Duration = /*#__PURE__*/ function() {
13414
13710
  return Duration;
13415
13711
  }();
13416
13712
 
13417
- function _array_like_to_array$9(arr, len) {
13713
+ function _array_like_to_array$8(arr, len) {
13418
13714
  if (len == null || len > arr.length) len = arr.length;
13419
13715
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
13420
13716
  return arr2;
13421
13717
  }
13422
- function _array_with_holes$9(arr) {
13718
+ function _array_with_holes$8(arr) {
13423
13719
  if (Array.isArray(arr)) return arr;
13424
13720
  }
13425
13721
  function _array_without_holes$5(arr) {
13426
- if (Array.isArray(arr)) return _array_like_to_array$9(arr);
13722
+ if (Array.isArray(arr)) return _array_like_to_array$8(arr);
13427
13723
  }
13428
- function _class_call_check$e(instance, Constructor) {
13724
+ function _class_call_check$f(instance, Constructor) {
13429
13725
  if (!(instance instanceof Constructor)) {
13430
13726
  throw new TypeError("Cannot call a class as a function");
13431
13727
  }
13432
13728
  }
13433
- function _defineProperties$e(target, props) {
13729
+ function _defineProperties$f(target, props) {
13434
13730
  for(var i = 0; i < props.length; i++){
13435
13731
  var descriptor = props[i];
13436
13732
  descriptor.enumerable = descriptor.enumerable || false;
@@ -13439,12 +13735,12 @@ function _defineProperties$e(target, props) {
13439
13735
  Object.defineProperty(target, descriptor.key, descriptor);
13440
13736
  }
13441
13737
  }
13442
- function _create_class$e(Constructor, protoProps, staticProps) {
13443
- if (protoProps) _defineProperties$e(Constructor.prototype, protoProps);
13444
- if (staticProps) _defineProperties$e(Constructor, staticProps);
13738
+ function _create_class$f(Constructor, protoProps, staticProps) {
13739
+ if (protoProps) _defineProperties$f(Constructor.prototype, protoProps);
13740
+ if (staticProps) _defineProperties$f(Constructor, staticProps);
13445
13741
  return Constructor;
13446
13742
  }
13447
- function _instanceof$7(left, right) {
13743
+ function _instanceof$8(left, right) {
13448
13744
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
13449
13745
  return !!right[Symbol.hasInstance](left);
13450
13746
  } else {
@@ -13454,7 +13750,7 @@ function _instanceof$7(left, right) {
13454
13750
  function _iterable_to_array$5(iter) {
13455
13751
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
13456
13752
  }
13457
- function _iterable_to_array_limit$9(arr, i) {
13753
+ function _iterable_to_array_limit$8(arr, i) {
13458
13754
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
13459
13755
  if (_i == null) return;
13460
13756
  var _arr = [];
@@ -13478,25 +13774,25 @@ function _iterable_to_array_limit$9(arr, i) {
13478
13774
  }
13479
13775
  return _arr;
13480
13776
  }
13481
- function _non_iterable_rest$9() {
13777
+ function _non_iterable_rest$8() {
13482
13778
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
13483
13779
  }
13484
13780
  function _non_iterable_spread$5() {
13485
13781
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
13486
13782
  }
13487
- function _sliced_to_array$9(arr, i) {
13488
- return _array_with_holes$9(arr) || _iterable_to_array_limit$9(arr, i) || _unsupported_iterable_to_array$9(arr, i) || _non_iterable_rest$9();
13783
+ function _sliced_to_array$8(arr, i) {
13784
+ return _array_with_holes$8(arr) || _iterable_to_array_limit$8(arr, i) || _unsupported_iterable_to_array$8(arr, i) || _non_iterable_rest$8();
13489
13785
  }
13490
13786
  function _to_consumable_array$5(arr) {
13491
- return _array_without_holes$5(arr) || _iterable_to_array$5(arr) || _unsupported_iterable_to_array$9(arr) || _non_iterable_spread$5();
13787
+ return _array_without_holes$5(arr) || _iterable_to_array$5(arr) || _unsupported_iterable_to_array$8(arr) || _non_iterable_spread$5();
13492
13788
  }
13493
- function _unsupported_iterable_to_array$9(o, minLen) {
13789
+ function _unsupported_iterable_to_array$8(o, minLen) {
13494
13790
  if (!o) return;
13495
- if (typeof o === "string") return _array_like_to_array$9(o, minLen);
13791
+ if (typeof o === "string") return _array_like_to_array$8(o, minLen);
13496
13792
  var n = Object.prototype.toString.call(o).slice(8, -1);
13497
13793
  if (n === "Object" && o.constructor) n = o.constructor.name;
13498
13794
  if (n === "Map" || n === "Set") return Array.from(n);
13499
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$9(o, minLen);
13795
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$8(o, minLen);
13500
13796
  }
13501
13797
  var INVALID$1 = "Invalid Interval";
13502
13798
  // checks if the start is equal to or before the end
@@ -13513,7 +13809,7 @@ function validateStartEnd(start, end) {
13513
13809
  }
13514
13810
  var Interval = /*#__PURE__*/ function() {
13515
13811
  function Interval(config) {
13516
- _class_call_check$e(this, Interval);
13812
+ _class_call_check$f(this, Interval);
13517
13813
  /**
13518
13814
  * @access private
13519
13815
  */ this.s = config.start;
@@ -13527,7 +13823,7 @@ var Interval = /*#__PURE__*/ function() {
13527
13823
  * @access private
13528
13824
  */ this.isLuxonInterval = true;
13529
13825
  }
13530
- _create_class$e(Interval, [
13826
+ _create_class$f(Interval, [
13531
13827
  {
13532
13828
  key: "start",
13533
13829
  get: /**
@@ -13776,7 +14072,7 @@ var Interval = /*#__PURE__*/ function() {
13776
14072
  },
13777
14073
  {
13778
14074
  /**
13779
- * Return whether this Interval engulfs the start and end of the specified Interval.
14075
+ * 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.
13780
14076
  * @param {Interval} other
13781
14077
  * @return {boolean}
13782
14078
  */ key: "engulfs",
@@ -13996,7 +14292,7 @@ var Interval = /*#__PURE__*/ function() {
13996
14292
  if (!reason) {
13997
14293
  throw new InvalidArgumentError("need to specify a reason the Interval is invalid");
13998
14294
  }
13999
- var invalid = _instanceof$7(reason, Invalid) ? reason : new Invalid(reason, explanation);
14295
+ var invalid = _instanceof$8(reason, Invalid) ? reason : new Invalid(reason, explanation);
14000
14296
  if (Settings.throwOnInvalid) {
14001
14297
  throw new InvalidIntervalError(invalid);
14002
14298
  } else {
@@ -14060,7 +14356,7 @@ var Interval = /*#__PURE__*/ function() {
14060
14356
  * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals
14061
14357
  * @return {Interval}
14062
14358
  */ function fromISO(text, opts) {
14063
- var _split = _sliced_to_array$9((text || "").split("/", 2), 2), s = _split[0], e = _split[1];
14359
+ var _split = _sliced_to_array$8((text || "").split("/", 2), 2), s = _split[0], e = _split[1];
14064
14360
  if (s && e) {
14065
14361
  var start, startIsValid;
14066
14362
  try {
@@ -14112,10 +14408,10 @@ var Interval = /*#__PURE__*/ function() {
14112
14408
  * @param {Array} intervals
14113
14409
  * @return {Array}
14114
14410
  */ function merge(intervals) {
14115
- var _intervals_sort_reduce = _sliced_to_array$9(intervals.sort(function(a, b) {
14411
+ var _intervals_sort_reduce = _sliced_to_array$8(intervals.sort(function(a, b) {
14116
14412
  return a.s - b.s;
14117
14413
  }).reduce(function(param, item) {
14118
- var _param = _sliced_to_array$9(param, 2), sofar = _param[0], current = _param[1];
14414
+ var _param = _sliced_to_array$8(param, 2), sofar = _param[0], current = _param[1];
14119
14415
  if (!current) {
14120
14416
  return [
14121
14417
  sofar,
@@ -14202,12 +14498,12 @@ var Interval = /*#__PURE__*/ function() {
14202
14498
  return Interval;
14203
14499
  }();
14204
14500
 
14205
- function _class_call_check$d(instance, Constructor) {
14501
+ function _class_call_check$e(instance, Constructor) {
14206
14502
  if (!(instance instanceof Constructor)) {
14207
14503
  throw new TypeError("Cannot call a class as a function");
14208
14504
  }
14209
14505
  }
14210
- function _defineProperties$d(target, props) {
14506
+ function _defineProperties$e(target, props) {
14211
14507
  for(var i = 0; i < props.length; i++){
14212
14508
  var descriptor = props[i];
14213
14509
  descriptor.enumerable = descriptor.enumerable || false;
@@ -14216,16 +14512,16 @@ function _defineProperties$d(target, props) {
14216
14512
  Object.defineProperty(target, descriptor.key, descriptor);
14217
14513
  }
14218
14514
  }
14219
- function _create_class$d(Constructor, protoProps, staticProps) {
14220
- if (protoProps) _defineProperties$d(Constructor.prototype, protoProps);
14221
- if (staticProps) _defineProperties$d(Constructor, staticProps);
14515
+ function _create_class$e(Constructor, protoProps, staticProps) {
14516
+ if (protoProps) _defineProperties$e(Constructor.prototype, protoProps);
14517
+ if (staticProps) _defineProperties$e(Constructor, staticProps);
14222
14518
  return Constructor;
14223
14519
  }
14224
14520
  var Info = /*#__PURE__*/ function() {
14225
14521
  function Info() {
14226
- _class_call_check$d(this, Info);
14522
+ _class_call_check$e(this, Info);
14227
14523
  }
14228
- _create_class$d(Info, null, [
14524
+ _create_class$e(Info, null, [
14229
14525
  {
14230
14526
  key: "hasDST",
14231
14527
  value: /**
@@ -14443,16 +14739,16 @@ var Info = /*#__PURE__*/ function() {
14443
14739
  return Info;
14444
14740
  }();
14445
14741
 
14446
- function _array_like_to_array$8(arr, len) {
14742
+ function _array_like_to_array$7(arr, len) {
14447
14743
  if (len == null || len > arr.length) len = arr.length;
14448
14744
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
14449
14745
  return arr2;
14450
14746
  }
14451
- function _array_with_holes$8(arr) {
14747
+ function _array_with_holes$7(arr) {
14452
14748
  if (Array.isArray(arr)) return arr;
14453
14749
  }
14454
14750
  function _array_without_holes$4(arr) {
14455
- if (Array.isArray(arr)) return _array_like_to_array$8(arr);
14751
+ if (Array.isArray(arr)) return _array_like_to_array$7(arr);
14456
14752
  }
14457
14753
  function _define_property$8(obj, key, value) {
14458
14754
  if (key in obj) {
@@ -14470,7 +14766,7 @@ function _define_property$8(obj, key, value) {
14470
14766
  function _iterable_to_array$4(iter) {
14471
14767
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
14472
14768
  }
14473
- function _iterable_to_array_limit$8(arr, i) {
14769
+ function _iterable_to_array_limit$7(arr, i) {
14474
14770
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
14475
14771
  if (_i == null) return;
14476
14772
  var _arr = [];
@@ -14494,25 +14790,25 @@ function _iterable_to_array_limit$8(arr, i) {
14494
14790
  }
14495
14791
  return _arr;
14496
14792
  }
14497
- function _non_iterable_rest$8() {
14793
+ function _non_iterable_rest$7() {
14498
14794
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
14499
14795
  }
14500
14796
  function _non_iterable_spread$4() {
14501
14797
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
14502
14798
  }
14503
- function _sliced_to_array$8(arr, i) {
14504
- return _array_with_holes$8(arr) || _iterable_to_array_limit$8(arr, i) || _unsupported_iterable_to_array$8(arr, i) || _non_iterable_rest$8();
14799
+ function _sliced_to_array$7(arr, i) {
14800
+ return _array_with_holes$7(arr) || _iterable_to_array_limit$7(arr, i) || _unsupported_iterable_to_array$7(arr, i) || _non_iterable_rest$7();
14505
14801
  }
14506
14802
  function _to_consumable_array$4(arr) {
14507
- return _array_without_holes$4(arr) || _iterable_to_array$4(arr) || _unsupported_iterable_to_array$8(arr) || _non_iterable_spread$4();
14803
+ return _array_without_holes$4(arr) || _iterable_to_array$4(arr) || _unsupported_iterable_to_array$7(arr) || _non_iterable_spread$4();
14508
14804
  }
14509
- function _unsupported_iterable_to_array$8(o, minLen) {
14805
+ function _unsupported_iterable_to_array$7(o, minLen) {
14510
14806
  if (!o) return;
14511
- if (typeof o === "string") return _array_like_to_array$8(o, minLen);
14807
+ if (typeof o === "string") return _array_like_to_array$7(o, minLen);
14512
14808
  var n = Object.prototype.toString.call(o).slice(8, -1);
14513
14809
  if (n === "Object" && o.constructor) n = o.constructor.name;
14514
14810
  if (n === "Map" || n === "Set") return Array.from(n);
14515
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$8(o, minLen);
14811
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$7(o, minLen);
14516
14812
  }
14517
14813
  function dayDiff(earlier, later) {
14518
14814
  var utcDayStart = function(dt) {
@@ -14567,7 +14863,7 @@ function highOrderDiffs(cursor, later, units) {
14567
14863
  this is used later to potentially convert any difference smaller than the smallest higher order unit
14568
14864
  into a fraction of that smallest higher order unit
14569
14865
  */ for(var _iterator = differs[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
14570
- var _step_value = _sliced_to_array$8(_step.value, 2), unit = _step_value[0], differ = _step_value[1];
14866
+ var _step_value = _sliced_to_array$7(_step.value, 2), unit = _step_value[0], differ = _step_value[1];
14571
14867
  if (units.indexOf(unit) >= 0) {
14572
14868
  lowestOrder = unit;
14573
14869
  results[unit] = differ(cursor, later);
@@ -14594,225 +14890,50 @@ function highOrderDiffs(cursor, later, units) {
14594
14890
  } catch (err) {
14595
14891
  _didIteratorError = true;
14596
14892
  _iteratorError = err;
14597
- } finally{
14598
- try {
14599
- if (!_iteratorNormalCompletion && _iterator.return != null) {
14600
- _iterator.return();
14601
- }
14602
- } finally{
14603
- if (_didIteratorError) {
14604
- throw _iteratorError;
14605
- }
14606
- }
14607
- }
14608
- return [
14609
- cursor,
14610
- results,
14611
- highWater,
14612
- lowestOrder
14613
- ];
14614
- }
14615
- function diff(earlier, later, units, opts) {
14616
- var _highOrderDiffs = _sliced_to_array$8(highOrderDiffs(earlier, later, units), 4), cursor = _highOrderDiffs[0], results = _highOrderDiffs[1], highWater = _highOrderDiffs[2], lowestOrder = _highOrderDiffs[3];
14617
- var remainingMillis = later - cursor;
14618
- var lowerOrderUnits = units.filter(function(u) {
14619
- return [
14620
- "hours",
14621
- "minutes",
14622
- "seconds",
14623
- "milliseconds"
14624
- ].indexOf(u) >= 0;
14625
- });
14626
- if (lowerOrderUnits.length === 0) {
14627
- if (highWater < later) {
14628
- highWater = cursor.plus(_define_property$8({}, lowestOrder, 1));
14629
- }
14630
- if (highWater !== cursor) {
14631
- results[lowestOrder] = (results[lowestOrder] || 0) + remainingMillis / (highWater - cursor);
14632
- }
14633
- }
14634
- var duration = Duration.fromObject(results, opts);
14635
- if (lowerOrderUnits.length > 0) {
14636
- var _Duration_fromMillis;
14637
- return (_Duration_fromMillis = Duration.fromMillis(remainingMillis, opts)).shiftTo.apply(_Duration_fromMillis, _to_consumable_array$4(lowerOrderUnits)).plus(duration);
14638
- } else {
14639
- return duration;
14640
- }
14641
- }
14642
-
14643
- function _array_like_to_array$7(arr, len) {
14644
- if (len == null || len > arr.length) len = arr.length;
14645
- for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
14646
- return arr2;
14647
- }
14648
- function _array_with_holes$7(arr) {
14649
- if (Array.isArray(arr)) return arr;
14650
- }
14651
- function _iterable_to_array_limit$7(arr, i) {
14652
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
14653
- if (_i == null) return;
14654
- var _arr = [];
14655
- var _n = true;
14656
- var _d = false;
14657
- var _s, _e;
14658
- try {
14659
- for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
14660
- _arr.push(_s.value);
14661
- if (i && _arr.length === i) break;
14662
- }
14663
- } catch (err) {
14664
- _d = true;
14665
- _e = err;
14666
- } finally{
14667
- try {
14668
- if (!_n && _i["return"] != null) _i["return"]();
14669
- } finally{
14670
- if (_d) throw _e;
14671
- }
14672
- }
14673
- return _arr;
14674
- }
14675
- function _non_iterable_rest$7() {
14676
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
14677
- }
14678
- function _sliced_to_array$7(arr, i) {
14679
- return _array_with_holes$7(arr) || _iterable_to_array_limit$7(arr, i) || _unsupported_iterable_to_array$7(arr, i) || _non_iterable_rest$7();
14680
- }
14681
- function _unsupported_iterable_to_array$7(o, minLen) {
14682
- if (!o) return;
14683
- if (typeof o === "string") return _array_like_to_array$7(o, minLen);
14684
- var n = Object.prototype.toString.call(o).slice(8, -1);
14685
- if (n === "Object" && o.constructor) n = o.constructor.name;
14686
- if (n === "Map" || n === "Set") return Array.from(n);
14687
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$7(o, minLen);
14688
- }
14689
- var numberingSystems = {
14690
- arab: "[٠-٩]",
14691
- arabext: "[۰-۹]",
14692
- bali: "[᭐-᭙]",
14693
- beng: "[০-৯]",
14694
- deva: "[०-९]",
14695
- fullwide: "[0-9]",
14696
- gujr: "[૦-૯]",
14697
- hanidec: "[〇|一|二|三|四|五|六|七|八|九]",
14698
- khmr: "[០-៩]",
14699
- knda: "[೦-೯]",
14700
- laoo: "[໐-໙]",
14701
- limb: "[᥆-᥏]",
14702
- mlym: "[൦-൯]",
14703
- mong: "[᠐-᠙]",
14704
- mymr: "[၀-၉]",
14705
- orya: "[୦-୯]",
14706
- tamldec: "[௦-௯]",
14707
- telu: "[౦-౯]",
14708
- thai: "[๐-๙]",
14709
- tibt: "[༠-༩]",
14710
- latn: "\\d"
14711
- };
14712
- var numberingSystemsUTF16 = {
14713
- arab: [
14714
- 1632,
14715
- 1641
14716
- ],
14717
- arabext: [
14718
- 1776,
14719
- 1785
14720
- ],
14721
- bali: [
14722
- 6992,
14723
- 7001
14724
- ],
14725
- beng: [
14726
- 2534,
14727
- 2543
14728
- ],
14729
- deva: [
14730
- 2406,
14731
- 2415
14732
- ],
14733
- fullwide: [
14734
- 65296,
14735
- 65303
14736
- ],
14737
- gujr: [
14738
- 2790,
14739
- 2799
14740
- ],
14741
- khmr: [
14742
- 6112,
14743
- 6121
14744
- ],
14745
- knda: [
14746
- 3302,
14747
- 3311
14748
- ],
14749
- laoo: [
14750
- 3792,
14751
- 3801
14752
- ],
14753
- limb: [
14754
- 6470,
14755
- 6479
14756
- ],
14757
- mlym: [
14758
- 3430,
14759
- 3439
14760
- ],
14761
- mong: [
14762
- 6160,
14763
- 6169
14764
- ],
14765
- mymr: [
14766
- 4160,
14767
- 4169
14768
- ],
14769
- orya: [
14770
- 2918,
14771
- 2927
14772
- ],
14773
- tamldec: [
14774
- 3046,
14775
- 3055
14776
- ],
14777
- telu: [
14778
- 3174,
14779
- 3183
14780
- ],
14781
- thai: [
14782
- 3664,
14783
- 3673
14784
- ],
14785
- tibt: [
14786
- 3872,
14787
- 3881
14788
- ]
14789
- };
14790
- var hanidecChars = numberingSystems.hanidec.replace(/[\[|\]]/g, "").split("");
14791
- function parseDigits(str) {
14792
- var value = parseInt(str, 10);
14793
- if (isNaN(value)) {
14794
- value = "";
14795
- for(var i = 0; i < str.length; i++){
14796
- var code = str.charCodeAt(i);
14797
- if (str[i].search(numberingSystems.hanidec) !== -1) {
14798
- value += hanidecChars.indexOf(str[i]);
14799
- } else {
14800
- for(var key in numberingSystemsUTF16){
14801
- var _numberingSystemsUTF16_key = _sliced_to_array$7(numberingSystemsUTF16[key], 2), min = _numberingSystemsUTF16_key[0], max = _numberingSystemsUTF16_key[1];
14802
- if (code >= min && code <= max) {
14803
- value += code - min;
14804
- }
14805
- }
14893
+ } finally{
14894
+ try {
14895
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
14896
+ _iterator.return();
14897
+ }
14898
+ } finally{
14899
+ if (_didIteratorError) {
14900
+ throw _iteratorError;
14806
14901
  }
14807
14902
  }
14808
- return parseInt(value, 10);
14809
- } else {
14810
- return value;
14811
14903
  }
14904
+ return [
14905
+ cursor,
14906
+ results,
14907
+ highWater,
14908
+ lowestOrder
14909
+ ];
14812
14910
  }
14813
- function digitRegex(param) {
14814
- var numberingSystem = param.numberingSystem, append = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "";
14815
- return new RegExp("".concat(numberingSystems[numberingSystem || "latn"]).concat(append));
14911
+ function diff(earlier, later, units, opts) {
14912
+ var _highOrderDiffs = _sliced_to_array$7(highOrderDiffs(earlier, later, units), 4), cursor = _highOrderDiffs[0], results = _highOrderDiffs[1], highWater = _highOrderDiffs[2], lowestOrder = _highOrderDiffs[3];
14913
+ var remainingMillis = later - cursor;
14914
+ var lowerOrderUnits = units.filter(function(u) {
14915
+ return [
14916
+ "hours",
14917
+ "minutes",
14918
+ "seconds",
14919
+ "milliseconds"
14920
+ ].indexOf(u) >= 0;
14921
+ });
14922
+ if (lowerOrderUnits.length === 0) {
14923
+ if (highWater < later) {
14924
+ highWater = cursor.plus(_define_property$8({}, lowestOrder, 1));
14925
+ }
14926
+ if (highWater !== cursor) {
14927
+ results[lowestOrder] = (results[lowestOrder] || 0) + remainingMillis / (highWater - cursor);
14928
+ }
14929
+ }
14930
+ var duration = Duration.fromObject(results, opts);
14931
+ if (lowerOrderUnits.length > 0) {
14932
+ var _Duration_fromMillis;
14933
+ return (_Duration_fromMillis = Duration.fromMillis(remainingMillis, opts)).shiftTo.apply(_Duration_fromMillis, _to_consumable_array$4(lowerOrderUnits)).plus(duration);
14934
+ } else {
14935
+ return duration;
14936
+ }
14816
14937
  }
14817
14938
 
14818
14939
  function _array_like_to_array$6(arr, len) {
@@ -14826,6 +14947,25 @@ function _array_with_holes$6(arr) {
14826
14947
  function _array_without_holes$3(arr) {
14827
14948
  if (Array.isArray(arr)) return _array_like_to_array$6(arr);
14828
14949
  }
14950
+ function _class_call_check$d(instance, Constructor) {
14951
+ if (!(instance instanceof Constructor)) {
14952
+ throw new TypeError("Cannot call a class as a function");
14953
+ }
14954
+ }
14955
+ function _defineProperties$d(target, props) {
14956
+ for(var i = 0; i < props.length; i++){
14957
+ var descriptor = props[i];
14958
+ descriptor.enumerable = descriptor.enumerable || false;
14959
+ descriptor.configurable = true;
14960
+ if ("value" in descriptor) descriptor.writable = true;
14961
+ Object.defineProperty(target, descriptor.key, descriptor);
14962
+ }
14963
+ }
14964
+ function _create_class$d(Constructor, protoProps, staticProps) {
14965
+ if (protoProps) _defineProperties$d(Constructor.prototype, protoProps);
14966
+ if (staticProps) _defineProperties$d(Constructor, staticProps);
14967
+ return Constructor;
14968
+ }
14829
14969
  function _iterable_to_array$3(iter) {
14830
14970
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
14831
14971
  }
@@ -15232,19 +15372,19 @@ function dateTimeFromMatches(matches) {
15232
15372
  };
15233
15373
  var zone = null;
15234
15374
  var specificOffset;
15235
- if (!isUndefined(matches.z)) {
15375
+ if (!isUndefined$1(matches.z)) {
15236
15376
  zone = IANAZone.create(matches.z);
15237
15377
  }
15238
- if (!isUndefined(matches.Z)) {
15378
+ if (!isUndefined$1(matches.Z)) {
15239
15379
  if (!zone) {
15240
15380
  zone = new FixedOffsetZone(matches.Z);
15241
15381
  }
15242
15382
  specificOffset = matches.Z;
15243
15383
  }
15244
- if (!isUndefined(matches.q)) {
15384
+ if (!isUndefined$1(matches.q)) {
15245
15385
  matches.M = (matches.q - 1) * 3 + 1;
15246
15386
  }
15247
- if (!isUndefined(matches.h)) {
15387
+ if (!isUndefined$1(matches.h)) {
15248
15388
  if (matches.h < 12 && matches.a === 1) {
15249
15389
  matches.h += 12;
15250
15390
  } else if (matches.h === 12 && matches.a === 0) {
@@ -15254,7 +15394,7 @@ function dateTimeFromMatches(matches) {
15254
15394
  if (matches.G === 0 && matches.y) {
15255
15395
  matches.y = -matches.y;
15256
15396
  }
15257
- if (!isUndefined(matches.u)) {
15397
+ if (!isUndefined$1(matches.u)) {
15258
15398
  matches.S = parseMillis(matches.u);
15259
15399
  }
15260
15400
  var vals = Object.keys(matches).reduce(function(r, k) {
@@ -15296,38 +15436,74 @@ function expandMacroTokens(tokens, locale) {
15296
15436
  }
15297
15437
  /**
15298
15438
  * @private
15299
- */ function explainFromTokens(locale, input, format) {
15300
- var tokens = expandMacroTokens(Formatter.parseFormat(format), locale), units = tokens.map(function(t) {
15301
- return unitForToken(t, locale);
15302
- }), disqualifyingUnit = units.find(function(t) {
15303
- return t.invalidReason;
15304
- });
15305
- if (disqualifyingUnit) {
15306
- return {
15307
- input: input,
15308
- tokens: tokens,
15309
- invalidReason: disqualifyingUnit.invalidReason
15310
- };
15311
- } else {
15312
- var _buildRegex = _sliced_to_array$6(buildRegex(units), 2), regexString = _buildRegex[0], handlers = _buildRegex[1], regex = RegExp(regexString, "i"), _match = _sliced_to_array$6(match(input, regex, handlers), 2), rawMatches = _match[0], matches = _match[1], _ref = _sliced_to_array$6(matches ? dateTimeFromMatches(matches) : [
15313
- null,
15314
- null,
15315
- undefined
15316
- ], 3), result = _ref[0], zone = _ref[1], specificOffset = _ref[2];
15317
- if (hasOwnProperty(matches, "a") && hasOwnProperty(matches, "H")) {
15318
- throw new ConflictingSpecificationError("Can't include meridiem when specifying 24-hour format");
15439
+ */ var TokenParser = /*#__PURE__*/ function() {
15440
+ function TokenParser(locale, format) {
15441
+ _class_call_check$d(this, TokenParser);
15442
+ this.locale = locale;
15443
+ this.format = format;
15444
+ this.tokens = expandMacroTokens(Formatter.parseFormat(format), locale);
15445
+ this.units = this.tokens.map(function(t) {
15446
+ return unitForToken(t, locale);
15447
+ });
15448
+ this.disqualifyingUnit = this.units.find(function(t) {
15449
+ return t.invalidReason;
15450
+ });
15451
+ if (!this.disqualifyingUnit) {
15452
+ var _buildRegex = _sliced_to_array$6(buildRegex(this.units), 2), regexString = _buildRegex[0], handlers = _buildRegex[1];
15453
+ this.regex = RegExp(regexString, "i");
15454
+ this.handlers = handlers;
15319
15455
  }
15320
- return {
15321
- input: input,
15322
- tokens: tokens,
15323
- regex: regex,
15324
- rawMatches: rawMatches,
15325
- matches: matches,
15326
- result: result,
15327
- zone: zone,
15328
- specificOffset: specificOffset
15329
- };
15330
15456
  }
15457
+ _create_class$d(TokenParser, [
15458
+ {
15459
+ key: "explainFromTokens",
15460
+ value: function explainFromTokens(input) {
15461
+ if (!this.isValid) {
15462
+ return {
15463
+ input: input,
15464
+ tokens: this.tokens,
15465
+ invalidReason: this.invalidReason
15466
+ };
15467
+ } else {
15468
+ var _match = _sliced_to_array$6(match(input, this.regex, this.handlers), 2), rawMatches = _match[0], matches = _match[1], _ref = _sliced_to_array$6(matches ? dateTimeFromMatches(matches) : [
15469
+ null,
15470
+ null,
15471
+ undefined
15472
+ ], 3), result = _ref[0], zone = _ref[1], specificOffset = _ref[2];
15473
+ if (hasOwnProperty(matches, "a") && hasOwnProperty(matches, "H")) {
15474
+ throw new ConflictingSpecificationError("Can't include meridiem when specifying 24-hour format");
15475
+ }
15476
+ return {
15477
+ input: input,
15478
+ tokens: this.tokens,
15479
+ regex: this.regex,
15480
+ rawMatches: rawMatches,
15481
+ matches: matches,
15482
+ result: result,
15483
+ zone: zone,
15484
+ specificOffset: specificOffset
15485
+ };
15486
+ }
15487
+ }
15488
+ },
15489
+ {
15490
+ key: "isValid",
15491
+ get: function get() {
15492
+ return !this.disqualifyingUnit;
15493
+ }
15494
+ },
15495
+ {
15496
+ key: "invalidReason",
15497
+ get: function get() {
15498
+ return this.disqualifyingUnit ? this.disqualifyingUnit.invalidReason : null;
15499
+ }
15500
+ }
15501
+ ]);
15502
+ return TokenParser;
15503
+ }();
15504
+ function explainFromTokens(locale, input, format) {
15505
+ var parser = new TokenParser(locale, format);
15506
+ return parser.explainFromTokens(input);
15331
15507
  }
15332
15508
  function parseFromTokens(locale, input, format) {
15333
15509
  var _explainFromTokens = explainFromTokens(locale, input, format), result = _explainFromTokens.result, zone = _explainFromTokens.zone, specificOffset = _explainFromTokens.specificOffset, invalidReason = _explainFromTokens.invalidReason;
@@ -15391,7 +15567,7 @@ function _define_property$7(obj, key, value) {
15391
15567
  }
15392
15568
  return obj;
15393
15569
  }
15394
- function _instanceof$6(left, right) {
15570
+ function _instanceof$7(left, right) {
15395
15571
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
15396
15572
  return !!right[Symbol.hasInstance](left);
15397
15573
  } else {
@@ -15762,19 +15938,51 @@ function normalizeUnitWithLocalWeeks(unit) {
15762
15938
  return normalizeUnit(unit);
15763
15939
  }
15764
15940
  }
15941
+ // cache offsets for zones based on the current timestamp when this function is
15942
+ // first called. When we are handling a datetime from components like (year,
15943
+ // month, day, hour) in a time zone, we need a guess about what the timezone
15944
+ // offset is so that we can convert into a UTC timestamp. One way is to find the
15945
+ // offset of now in the zone. The actual date may have a different offset (for
15946
+ // example, if we handle a date in June while we're in December in a zone that
15947
+ // observes DST), but we can check and adjust that.
15948
+ //
15949
+ // When handling many dates, calculating the offset for now every time is
15950
+ // expensive. It's just a guess, so we can cache the offset to use even if we
15951
+ // are right on a time change boundary (we'll just correct in the other
15952
+ // direction). Using a timestamp from first read is a slight optimization for
15953
+ // handling dates close to the current date, since those dates will usually be
15954
+ // in the same offset (we could set the timestamp statically, instead). We use a
15955
+ // single timestamp for all zones to make things a bit more predictable.
15956
+ //
15957
+ // This is safe for quickDT (used by local() and utc()) because we don't fill in
15958
+ // higher-order units from tsNow (as we do in fromObject, this requires that
15959
+ // offset is calculated from tsNow).
15960
+ function guessOffsetForZone(zone) {
15961
+ if (!zoneOffsetGuessCache[zone]) {
15962
+ if (zoneOffsetTs === undefined) {
15963
+ zoneOffsetTs = Settings.now();
15964
+ }
15965
+ zoneOffsetGuessCache[zone] = zone.offset(zoneOffsetTs);
15966
+ }
15967
+ return zoneOffsetGuessCache[zone];
15968
+ }
15765
15969
  // this is a dumbed down version of fromObject() that runs about 60% faster
15766
15970
  // but doesn't do any validation, makes a bunch of assumptions about what units
15767
15971
  // are present, and so on.
15768
15972
  function quickDT(obj, opts) {
15769
- var zone = normalizeZone(opts.zone, Settings.defaultZone), loc = Locale.fromObject(opts), tsNow = Settings.now();
15973
+ var zone = normalizeZone(opts.zone, Settings.defaultZone);
15974
+ if (!zone.isValid) {
15975
+ return DateTime.invalid(unsupportedZone(zone));
15976
+ }
15977
+ var loc = Locale.fromObject(opts);
15770
15978
  var ts, o;
15771
15979
  // assume we have the higher-order units
15772
- if (!isUndefined(obj.year)) {
15980
+ if (!isUndefined$1(obj.year)) {
15773
15981
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
15774
15982
  try {
15775
15983
  for(var _iterator = orderedUnits[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
15776
15984
  var u = _step.value;
15777
- if (isUndefined(obj[u])) {
15985
+ if (isUndefined$1(obj[u])) {
15778
15986
  obj[u] = defaultUnitValues[u];
15779
15987
  }
15780
15988
  }
@@ -15796,11 +16004,11 @@ function quickDT(obj, opts) {
15796
16004
  if (invalid) {
15797
16005
  return DateTime.invalid(invalid);
15798
16006
  }
15799
- var offsetProvis = zone.offset(tsNow);
16007
+ var offsetProvis = guessOffsetForZone(zone);
15800
16008
  var ref;
15801
16009
  ref = _sliced_to_array$5(objToTS(obj, offsetProvis, zone), 2), ts = ref[0], o = ref[1];
15802
16010
  } else {
15803
- ts = tsNow;
16011
+ ts = Settings.now();
15804
16012
  }
15805
16013
  return new DateTime({
15806
16014
  ts: ts,
@@ -15810,7 +16018,7 @@ function quickDT(obj, opts) {
15810
16018
  });
15811
16019
  }
15812
16020
  function diffRelative(start, end, opts) {
15813
- var round = isUndefined(opts.round) ? true : opts.round, format = function(c, unit) {
16021
+ var round = isUndefined$1(opts.round) ? true : opts.round, format = function(c, unit) {
15814
16022
  c = roundTo(c, round || opts.calendary ? 0 : 2, true);
15815
16023
  var formatter = end.loc.clone(opts).relFormatter(opts);
15816
16024
  return formatter.format(c, unit);
@@ -15864,6 +16072,15 @@ function lastOpts(argList) {
15864
16072
  args
15865
16073
  ];
15866
16074
  }
16075
+ /**
16076
+ * Timestamp to use for cached zone offset guesses (exposed for test)
16077
+ */ var zoneOffsetTs;
16078
+ /**
16079
+ * Cache for zone offset guesses (exposed for test).
16080
+ *
16081
+ * This optimizes quickDT via guessOffsetForZone to avoid repeated calls of
16082
+ * zone.offset().
16083
+ */ var zoneOffsetGuessCache = {};
15867
16084
  var DateTime = /*#__PURE__*/ function() {
15868
16085
  function DateTime(config) {
15869
16086
  _class_call_check$c(this, DateTime);
@@ -15871,7 +16088,7 @@ var DateTime = /*#__PURE__*/ function() {
15871
16088
  var invalid = config.invalid || (Number.isNaN(config.ts) ? new Invalid("invalid input") : null) || (!zone.isValid ? unsupportedZone(zone) : null);
15872
16089
  /**
15873
16090
  * @access private
15874
- */ this.ts = isUndefined(config.ts) ? Settings.now() : config.ts;
16091
+ */ this.ts = isUndefined$1(config.ts) ? Settings.now() : config.ts;
15875
16092
  var c = null, o = null;
15876
16093
  if (!invalid) {
15877
16094
  var unchanged = config.old && config.old.ts === this.ts && config.old.zone.equals(zone);
@@ -15882,7 +16099,9 @@ var DateTime = /*#__PURE__*/ function() {
15882
16099
  config.old.o
15883
16100
  ], c = ref[0], o = ref[1];
15884
16101
  } else {
15885
- var ot = zone.offset(this.ts);
16102
+ // If an offset has been passed and we have not been called from
16103
+ // clone(), we can trust it and avoid the offset calculation.
16104
+ var ot = isNumber$1(config.o) && !config.old ? config.o : zone.offset(this.ts);
15886
16105
  c = tsToObj(this.ts, ot);
15887
16106
  invalid = Number.isNaN(c.year) ? new Invalid("invalid input") : null;
15888
16107
  c = invalid ? null : c;
@@ -16520,7 +16739,7 @@ var DateTime = /*#__PURE__*/ function() {
16520
16739
  if (!this.isValid) return this;
16521
16740
  var normalized = normalizeObject(values, normalizeUnitWithLocalWeeks);
16522
16741
  var _usesLocalWeekValues = usesLocalWeekValues(normalized, this.loc), minDaysInFirstWeek = _usesLocalWeekValues.minDaysInFirstWeek, startOfWeek = _usesLocalWeekValues.startOfWeek;
16523
- 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;
16742
+ 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;
16524
16743
  if ((containsGregor || containsOrdinal) && definiteWeekDef) {
16525
16744
  throw new ConflictingSpecificationError("Can't mix weekYear/weekNumber units with year/month/day or ordinals");
16526
16745
  }
@@ -16530,13 +16749,13 @@ var DateTime = /*#__PURE__*/ function() {
16530
16749
  var mixed;
16531
16750
  if (settingWeekStuff) {
16532
16751
  mixed = weekToGregorian(_object_spread$5({}, gregorianToWeek(this.c, minDaysInFirstWeek, startOfWeek), normalized), minDaysInFirstWeek, startOfWeek);
16533
- } else if (!isUndefined(normalized.ordinal)) {
16752
+ } else if (!isUndefined$1(normalized.ordinal)) {
16534
16753
  mixed = ordinalToGregorian(_object_spread$5({}, gregorianToOrdinal(this.c), normalized));
16535
16754
  } else {
16536
16755
  mixed = _object_spread$5({}, this.toObject(), normalized);
16537
16756
  // if we didn't set the day but we ended up on an overflow date,
16538
16757
  // use the last day of the right month
16539
- if (isUndefined(normalized.day)) {
16758
+ if (isUndefined$1(normalized.day)) {
16540
16759
  mixed.day = Math.min(daysInMonth(mixed.year, mixed.month), mixed.day);
16541
16760
  }
16542
16761
  }
@@ -17215,6 +17434,7 @@ var DateTime = /*#__PURE__*/ function() {
17215
17434
  * @param {string} [options.locale] - a locale to set on the resulting DateTime instance
17216
17435
  * @param {string} [options.outputCalendar] - the output calendar to set on the resulting DateTime instance
17217
17436
  * @param {string} [options.numberingSystem] - the numbering system to set on the resulting DateTime instance
17437
+ * @param {string} [options.weekSettings] - the week settings to set on the resulting DateTime instance
17218
17438
  * @example DateTime.utc() //~> now
17219
17439
  * @example DateTime.utc(2017) //~> 2017-01-01T00:00:00Z
17220
17440
  * @example DateTime.utc(2017, 3) //~> 2017-03-01T00:00:00Z
@@ -17274,13 +17494,14 @@ var DateTime = /*#__PURE__*/ function() {
17274
17494
  * @param {string} [options.locale] - a locale to set on the resulting DateTime instance
17275
17495
  * @param {string} options.outputCalendar - the output calendar to set on the resulting DateTime instance
17276
17496
  * @param {string} options.numberingSystem - the numbering system to set on the resulting DateTime instance
17497
+ * @param {string} options.weekSettings - the week settings to set on the resulting DateTime instance
17277
17498
  * @return {DateTime}
17278
17499
  */ function fromMillis(milliseconds) {
17279
17500
  var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
17280
17501
  if (!isNumber$1(milliseconds)) {
17281
17502
  throw new InvalidArgumentError("fromMillis requires a numerical input, but received a ".concat(typeof milliseconds === "undefined" ? "undefined" : _type_of$8(milliseconds), " with value ").concat(milliseconds));
17282
17503
  } else if (milliseconds < -MAX_DATE || milliseconds > MAX_DATE) {
17283
- // this isn't perfect because because we can still end up out of range because of additional shifting, but it's a start
17504
+ // this isn't perfect because we can still end up out of range because of additional shifting, but it's a start
17284
17505
  return DateTime.invalid("Timestamp out of range");
17285
17506
  } else {
17286
17507
  return new DateTime({
@@ -17301,6 +17522,7 @@ var DateTime = /*#__PURE__*/ function() {
17301
17522
  * @param {string} [options.locale] - a locale to set on the resulting DateTime instance
17302
17523
  * @param {string} options.outputCalendar - the output calendar to set on the resulting DateTime instance
17303
17524
  * @param {string} options.numberingSystem - the numbering system to set on the resulting DateTime instance
17525
+ * @param {string} options.weekSettings - the week settings to set on the resulting DateTime instance
17304
17526
  * @return {DateTime}
17305
17527
  */ function fromSeconds(seconds) {
17306
17528
  var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
@@ -17339,6 +17561,7 @@ var DateTime = /*#__PURE__*/ function() {
17339
17561
  * @param {string} [opts.locale='system\'s locale'] - a locale to set on the resulting DateTime instance
17340
17562
  * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
17341
17563
  * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance
17564
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
17342
17565
  * @example DateTime.fromObject({ year: 1982, month: 5, day: 25}).toISODate() //=> '1982-05-25'
17343
17566
  * @example DateTime.fromObject({ year: 1982 }).toISODate() //=> '1982-01-01'
17344
17567
  * @example DateTime.fromObject({ hour: 10, minute: 26, second: 6 }) //~> today at 10:26:06
@@ -17358,7 +17581,7 @@ var DateTime = /*#__PURE__*/ function() {
17358
17581
  var loc = Locale.fromObject(opts);
17359
17582
  var normalized = normalizeObject(obj, normalizeUnitWithLocalWeeks);
17360
17583
  var _usesLocalWeekValues = usesLocalWeekValues(normalized, loc), minDaysInFirstWeek = _usesLocalWeekValues.minDaysInFirstWeek, startOfWeek = _usesLocalWeekValues.startOfWeek;
17361
- 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;
17584
+ 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;
17362
17585
  // cases:
17363
17586
  // just a weekday -> this week's instance of that weekday, no worries
17364
17587
  // (gregorian data or ordinal) + (weekYear or weekNumber) -> error
@@ -17392,7 +17615,7 @@ var DateTime = /*#__PURE__*/ function() {
17392
17615
  for(var _iterator = units[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
17393
17616
  var u = _step.value;
17394
17617
  var v = normalized[u];
17395
- if (!isUndefined(v)) {
17618
+ if (!isUndefined$1(v)) {
17396
17619
  foundFirst = true;
17397
17620
  } else if (foundFirst) {
17398
17621
  normalized[u] = defaultValues[u];
@@ -17430,6 +17653,9 @@ var DateTime = /*#__PURE__*/ function() {
17430
17653
  if (normalized.weekday && containsGregor && obj.weekday !== inst.weekday) {
17431
17654
  return DateTime.invalid("mismatched weekday", "you can't specify both a weekday of ".concat(normalized.weekday, " and a date of ").concat(inst.toISO()));
17432
17655
  }
17656
+ if (!inst.isValid) {
17657
+ return DateTime.invalid(inst.invalid);
17658
+ }
17433
17659
  return inst;
17434
17660
  }
17435
17661
  },
@@ -17444,6 +17670,7 @@ var DateTime = /*#__PURE__*/ function() {
17444
17670
  * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance
17445
17671
  * @param {string} [opts.outputCalendar] - the output calendar to set on the resulting DateTime instance
17446
17672
  * @param {string} [opts.numberingSystem] - the numbering system to set on the resulting DateTime instance
17673
+ * @param {string} [opts.weekSettings] - the week settings to set on the resulting DateTime instance
17447
17674
  * @example DateTime.fromISO('2016-05-25T09:08:34.123')
17448
17675
  * @example DateTime.fromISO('2016-05-25T09:08:34.123+06:00')
17449
17676
  * @example DateTime.fromISO('2016-05-25T09:08:34.123+06:00', {setZone: true})
@@ -17467,6 +17694,7 @@ var DateTime = /*#__PURE__*/ function() {
17467
17694
  * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance
17468
17695
  * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
17469
17696
  * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance
17697
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
17470
17698
  * @example DateTime.fromRFC2822('25 Nov 2016 13:23:12 GMT')
17471
17699
  * @example DateTime.fromRFC2822('Fri, 25 Nov 2016 13:23:12 +0600')
17472
17700
  * @example DateTime.fromRFC2822('25 Nov 2016 13:23 Z')
@@ -17489,6 +17717,7 @@ var DateTime = /*#__PURE__*/ function() {
17489
17717
  * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance
17490
17718
  * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
17491
17719
  * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance
17720
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
17492
17721
  * @example DateTime.fromHTTP('Sun, 06 Nov 1994 08:49:37 GMT')
17493
17722
  * @example DateTime.fromHTTP('Sunday, 06-Nov-94 08:49:37 GMT')
17494
17723
  * @example DateTime.fromHTTP('Sun Nov 6 08:49:37 1994')
@@ -17511,11 +17740,12 @@ var DateTime = /*#__PURE__*/ function() {
17511
17740
  * @param {boolean} [opts.setZone=false] - override the zone with a zone specified in the string itself, if it specifies one
17512
17741
  * @param {string} [opts.locale='en-US'] - a locale string to use when parsing. Will also set the DateTime to this locale
17513
17742
  * @param {string} opts.numberingSystem - the numbering system to use when parsing. Will also set the resulting DateTime to this numbering system
17743
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
17514
17744
  * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
17515
17745
  * @return {DateTime}
17516
17746
  */ function fromFormat(text, fmt) {
17517
17747
  var opts = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
17518
- if (isUndefined(text) || isUndefined(fmt)) {
17748
+ if (isUndefined$1(text) || isUndefined$1(fmt)) {
17519
17749
  throw new InvalidArgumentError("fromFormat requires an input string and a format");
17520
17750
  }
17521
17751
  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({
@@ -17550,6 +17780,7 @@ var DateTime = /*#__PURE__*/ function() {
17550
17780
  * @param {boolean} [opts.setZone=false] - override the zone with a zone specified in the string itself, if it specifies one
17551
17781
  * @param {string} [opts.locale='en-US'] - a locale string to use when parsing. Will also set the DateTime to this locale
17552
17782
  * @param {string} opts.numberingSystem - the numbering system to use when parsing. Will also set the resulting DateTime to this numbering system
17783
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
17553
17784
  * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
17554
17785
  * @example DateTime.fromSQL('2017-05-15')
17555
17786
  * @example DateTime.fromSQL('2017-05-15 09:12:34')
@@ -17578,7 +17809,7 @@ var DateTime = /*#__PURE__*/ function() {
17578
17809
  if (!reason) {
17579
17810
  throw new InvalidArgumentError("need to specify a reason the DateTime is invalid");
17580
17811
  }
17581
- var invalid = _instanceof$6(reason, Invalid) ? reason : new Invalid(reason, explanation);
17812
+ var invalid = _instanceof$7(reason, Invalid) ? reason : new Invalid(reason, explanation);
17582
17813
  if (Settings.throwOnInvalid) {
17583
17814
  throw new InvalidDateTimeError(invalid);
17584
17815
  } else {
@@ -17629,6 +17860,13 @@ var DateTime = /*#__PURE__*/ function() {
17629
17860
  }).join("");
17630
17861
  }
17631
17862
  },
17863
+ {
17864
+ key: "resetCache",
17865
+ value: function resetCache() {
17866
+ zoneOffsetTs = undefined;
17867
+ zoneOffsetGuessCache = {};
17868
+ }
17869
+ },
17632
17870
  {
17633
17871
  key: "min",
17634
17872
  value: /**
@@ -17693,6 +17931,61 @@ var DateTime = /*#__PURE__*/ function() {
17693
17931
  return DateTime.fromFormatExplain(text, fmt, options);
17694
17932
  }
17695
17933
  },
17934
+ {
17935
+ key: "buildFormatParser",
17936
+ value: /**
17937
+ * Build a parser for `fmt` using the given locale. This parser can be passed
17938
+ * to {@link DateTime.fromFormatParser} to a parse a date in this format. This
17939
+ * can be used to optimize cases where many dates need to be parsed in a
17940
+ * specific format.
17941
+ *
17942
+ * @param {String} fmt - the format the string is expected to be in (see
17943
+ * description)
17944
+ * @param {Object} options - options used to set locale and numberingSystem
17945
+ * for parser
17946
+ * @returns {TokenParser} - opaque object to be used
17947
+ */ function buildFormatParser(fmt) {
17948
+ var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
17949
+ 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({
17950
+ locale: locale,
17951
+ numberingSystem: numberingSystem,
17952
+ defaultToEN: true
17953
+ });
17954
+ return new TokenParser(localeToUse, fmt);
17955
+ }
17956
+ },
17957
+ {
17958
+ key: "fromFormatParser",
17959
+ value: /**
17960
+ * Create a DateTime from an input string and format parser.
17961
+ *
17962
+ * The format parser must have been created with the same locale as this call.
17963
+ *
17964
+ * @param {String} text - the string to parse
17965
+ * @param {TokenParser} formatParser - parser from {@link DateTime.buildFormatParser}
17966
+ * @param {Object} opts - options taken by fromFormat()
17967
+ * @returns {DateTime}
17968
+ */ function fromFormatParser(text, formatParser) {
17969
+ var opts = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
17970
+ if (isUndefined$1(text) || isUndefined$1(formatParser)) {
17971
+ throw new InvalidArgumentError("fromFormatParser requires an input string and a format parser");
17972
+ }
17973
+ 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({
17974
+ locale: locale,
17975
+ numberingSystem: numberingSystem,
17976
+ defaultToEN: true
17977
+ });
17978
+ if (!localeToUse.equals(formatParser.locale)) {
17979
+ throw new InvalidArgumentError("fromFormatParser called with a locale of ".concat(localeToUse, ", ") + "but the format parser was created for ".concat(formatParser.locale));
17980
+ }
17981
+ var _formatParser_explainFromTokens = formatParser.explainFromTokens(text), result = _formatParser_explainFromTokens.result, zone = _formatParser_explainFromTokens.zone, specificOffset = _formatParser_explainFromTokens.specificOffset, invalidReason = _formatParser_explainFromTokens.invalidReason;
17982
+ if (invalidReason) {
17983
+ return DateTime.invalid(invalidReason);
17984
+ } else {
17985
+ return parseDataToDateTime(result, zone, opts, "format ".concat(formatParser.format), text, specificOffset);
17986
+ }
17987
+ }
17988
+ },
17696
17989
  {
17697
17990
  key: "DATE_SHORT",
17698
17991
  get: // FORMAT PRESETS
@@ -17963,7 +18256,7 @@ function _inherits$6(subClass, superClass) {
17963
18256
  });
17964
18257
  if (superClass) _set_prototype_of$6(subClass, superClass);
17965
18258
  }
17966
- function _instanceof$5(left, right) {
18259
+ function _instanceof$6(left, right) {
17967
18260
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
17968
18261
  return !!right[Symbol.hasInstance](left);
17969
18262
  } else {
@@ -18892,14 +19185,14 @@ function resolveNode(node, pos, side, overlays) {
18892
19185
  var _a;
18893
19186
  // Move up to a node that actually holds the position, if possible
18894
19187
  while(node.from == node.to || (side < 1 ? node.from >= pos : node.from > pos) || (side > -1 ? node.to <= pos : node.to < pos)){
18895
- var parent = !overlays && _instanceof$5(node, TreeNode) && node.index < 0 ? null : node.parent;
19188
+ var parent = !overlays && _instanceof$6(node, TreeNode) && node.index < 0 ? null : node.parent;
18896
19189
  if (!parent) return node;
18897
19190
  node = parent;
18898
19191
  }
18899
19192
  var mode = overlays ? 0 : IterMode.IgnoreOverlays;
18900
19193
  // Must go up out of overlays when those do not overlap with pos
18901
19194
  if (overlays) for(var scan = node, parent1 = scan.parent; parent1; scan = parent1, parent1 = scan.parent){
18902
- if (_instanceof$5(scan, TreeNode) && scan.index < 0 && ((_a = parent1.enter(pos, side, mode)) === null || _a === void 0 ? void 0 : _a.from) != scan.from) node = parent1;
19195
+ if (_instanceof$6(scan, TreeNode) && scan.index < 0 && ((_a = parent1.enter(pos, side, mode)) === null || _a === void 0 ? void 0 : _a.from) != scan.from) node = parent1;
18903
19196
  }
18904
19197
  for(;;){
18905
19198
  var inner = node.enter(pos, side, mode);
@@ -18951,7 +19244,7 @@ var BaseNode = /*#__PURE__*/ function() {
18951
19244
  {
18952
19245
  key: "matchContext",
18953
19246
  value: function matchContext(context) {
18954
- return matchNodeContext(this, context);
19247
+ return matchNodeContext(this.parent, context);
18955
19248
  }
18956
19249
  },
18957
19250
  {
@@ -19027,7 +19320,7 @@ var TreeNode = /*#__PURE__*/ function(BaseNode) {
19027
19320
  for(var _parent__tree = parent._tree, children = _parent__tree.children, positions = _parent__tree.positions, e = dir > 0 ? children.length : -1; i != e; i += dir){
19028
19321
  var next = children[i], start = positions[i] + parent.from;
19029
19322
  if (!checkSide(side, pos, start, start + next.length)) continue;
19030
- if (_instanceof$5(next, TreeBuffer)) {
19323
+ if (_instanceof$6(next, TreeBuffer)) {
19031
19324
  if (mode & IterMode.ExcludeBuffers) continue;
19032
19325
  var index = next.findChild(0, next.buffer.length, dir, pos - start, side);
19033
19326
  if (index > -1) return new BufferNode(new BufferContext(parent, next, i, start), null, index);
@@ -19165,7 +19458,7 @@ function getChildren(node, type, before, after) {
19165
19458
  }
19166
19459
  function matchNodeContext(node, context) {
19167
19460
  var i = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : context.length - 1;
19168
- for(var p = node.parent; i >= 0; p = p.parent){
19461
+ for(var p = node; i >= 0; p = p.parent){
19169
19462
  if (!p) return false;
19170
19463
  if (!p.type.isAnonymous) {
19171
19464
  if (context[i] && context[i] != p.name) return false;
@@ -19326,7 +19619,7 @@ function iterStack(heads) {
19326
19619
  pick = i;
19327
19620
  }
19328
19621
  }
19329
- var next = _instanceof$5(picked, TreeNode) && picked.index < 0 ? null : picked.parent;
19622
+ var next = _instanceof$6(picked, TreeNode) && picked.index < 0 ? null : picked.parent;
19330
19623
  var newHeads = heads.slice();
19331
19624
  if (next) newHeads[pick] = next;
19332
19625
  else newHeads.splice(pick, 1);
@@ -19350,7 +19643,7 @@ var StackIterator = /*#__PURE__*/ function() {
19350
19643
  }();
19351
19644
  function stackIterator(tree, pos, side) {
19352
19645
  var inner = tree.resolveInner(pos, side), layers = null;
19353
- for(var scan = _instanceof$5(inner, TreeNode) ? inner : inner.context.parent; scan; scan = scan.parent){
19646
+ for(var scan = _instanceof$6(inner, TreeNode) ? inner : inner.context.parent; scan; scan = scan.parent){
19354
19647
  if (scan.index < 0) {
19355
19648
  var parent = scan.parent;
19356
19649
  (layers || (layers = [
@@ -19388,7 +19681,7 @@ allows you to move to adjacent nodes.
19388
19681
  @internal
19389
19682
  */ this.index = 0;
19390
19683
  this.bufferNode = null;
19391
- if (_instanceof$5(node, TreeNode)) {
19684
+ if (_instanceof$6(node, TreeNode)) {
19392
19685
  this.yieldNode(node);
19393
19686
  } else {
19394
19687
  this._tree = node.context.parent;
@@ -19435,7 +19728,7 @@ allows you to move to adjacent nodes.
19435
19728
  */ key: "yield",
19436
19729
  value: function _yield(node) {
19437
19730
  if (!node) return false;
19438
- if (_instanceof$5(node, TreeNode)) {
19731
+ if (_instanceof$6(node, TreeNode)) {
19439
19732
  this.buffer = null;
19440
19733
  return this.yieldNode(node);
19441
19734
  }
@@ -19576,7 +19869,7 @@ allows you to move to adjacent nodes.
19576
19869
  for(; parent; ref2 = parent, index = ref2.index, parent = ref2._parent, ref2){
19577
19870
  if (index > -1) for(var i1 = index + dir, e = dir < 0 ? -1 : parent._tree.children.length; i1 != e; i1 += dir){
19578
19871
  var child = parent._tree.children[i1];
19579
- if (this.mode & IterMode.IncludeAnonymous || _instanceof$5(child, TreeBuffer) || !child.type.isAnonymous || hasChild(child)) return false;
19872
+ if (this.mode & IterMode.IncludeAnonymous || _instanceof$6(child, TreeBuffer) || !child.type.isAnonymous || hasChild(child)) return false;
19580
19873
  }
19581
19874
  }
19582
19875
  return true;
@@ -19607,7 +19900,7 @@ allows you to move to adjacent nodes.
19607
19900
  },
19608
19901
  {
19609
19902
  /**
19610
- Move to the next node in a last-to-first pre-order traveral. A
19903
+ Move to the next node in a last-to-first pre-order traversal. A
19611
19904
  node is followed by its last child or, if it has none, its
19612
19905
  previous sibling or the previous sibling of the first parent
19613
19906
  node that has one.
@@ -19685,8 +19978,8 @@ allows you to move to adjacent nodes.
19685
19978
  for(;;){
19686
19979
  if (mustLeave && leave) leave(this);
19687
19980
  mustLeave = this.type.isAnonymous;
19688
- if (this.nextSibling()) break;
19689
19981
  if (!depth) return;
19982
+ if (this.nextSibling()) break;
19690
19983
  this.parent();
19691
19984
  depth--;
19692
19985
  mustLeave = true;
@@ -19701,10 +19994,10 @@ allows you to move to adjacent nodes.
19701
19994
  are treated as wildcards.
19702
19995
  */ key: "matchContext",
19703
19996
  value: function matchContext(context) {
19704
- if (!this.buffer) return matchNodeContext(this.node, context);
19997
+ if (!this.buffer) return matchNodeContext(this.node.parent, context);
19705
19998
  var buffer = this.buffer.buffer, types = buffer.set.types;
19706
19999
  for(var i = context.length - 1, d = this.stack.length - 1; i >= 0; d--){
19707
- if (d < 0) return matchNodeContext(this.node, context, i);
20000
+ if (d < 0) return matchNodeContext(this._tree, context, i);
19708
20001
  var type = types[buffer.buffer[this.stack[d]]];
19709
20002
  if (!type.isAnonymous) {
19710
20003
  if (context[i] && context[i] != type.name) return false;
@@ -19719,7 +20012,7 @@ allows you to move to adjacent nodes.
19719
20012
  }();
19720
20013
  function hasChild(tree) {
19721
20014
  return tree.children.some(function(ch) {
19722
- return _instanceof$5(ch, TreeBuffer) || !ch.type.isAnonymous || hasChild(ch);
20015
+ return _instanceof$6(ch, TreeBuffer) || !ch.type.isAnonymous || hasChild(ch);
19723
20016
  });
19724
20017
  }
19725
20018
  function buildTree(data) {
@@ -19730,7 +20023,7 @@ function buildTree(data) {
19730
20023
  var contextHash = 0, lookAhead = 0;
19731
20024
  function takeNode(parentStart, minPos, children, positions, inRepeat, depth) {
19732
20025
  var id = cursor.id, start = cursor.start, end = cursor.end, size = cursor.size;
19733
- var lookAheadAtStart = lookAhead;
20026
+ var lookAheadAtStart = lookAhead, contextAtStart = contextHash;
19734
20027
  while(size < 0){
19735
20028
  cursor.next();
19736
20029
  if (size == -1 /* SpecialRecord.Reuse */ ) {
@@ -19766,7 +20059,7 @@ function buildTree(data) {
19766
20059
  while(cursor.pos > endPos1){
19767
20060
  if (localInRepeat >= 0 && cursor.id == localInRepeat && cursor.size >= 0) {
19768
20061
  if (cursor.end <= lastEnd - maxBufferLength) {
19769
- makeRepeatLeaf(localChildren, localPositions, start, lastGroup, cursor.end, lastEnd, localInRepeat, lookAheadAtStart);
20062
+ makeRepeatLeaf(localChildren, localPositions, start, lastGroup, cursor.end, lastEnd, localInRepeat, lookAheadAtStart, contextAtStart);
19770
20063
  lastGroup = localChildren.length;
19771
20064
  lastEnd = cursor.end;
19772
20065
  }
@@ -19777,14 +20070,14 @@ function buildTree(data) {
19777
20070
  takeNode(start, endPos1, localChildren, localPositions, localInRepeat, depth + 1);
19778
20071
  }
19779
20072
  }
19780
- if (localInRepeat >= 0 && lastGroup > 0 && lastGroup < localChildren.length) makeRepeatLeaf(localChildren, localPositions, start, lastGroup, start, lastEnd, localInRepeat, lookAheadAtStart);
20073
+ if (localInRepeat >= 0 && lastGroup > 0 && lastGroup < localChildren.length) makeRepeatLeaf(localChildren, localPositions, start, lastGroup, start, lastEnd, localInRepeat, lookAheadAtStart, contextAtStart);
19781
20074
  localChildren.reverse();
19782
20075
  localPositions.reverse();
19783
20076
  if (localInRepeat > -1 && lastGroup > 0) {
19784
- var make = makeBalanced(type);
20077
+ var make = makeBalanced(type, contextAtStart);
19785
20078
  node1 = balanceRange(type, localChildren, localPositions, 0, localChildren.length, 0, end - start, make, make);
19786
20079
  } else {
19787
- node1 = makeTree(type, localChildren, localPositions, end - start, lookAheadAtStart - end);
20080
+ node1 = makeTree(type, localChildren, localPositions, end - start, lookAheadAtStart - end, contextAtStart);
19788
20081
  }
19789
20082
  }
19790
20083
  children.push(node1);
@@ -19819,27 +20112,26 @@ function buildTree(data) {
19819
20112
  positions.push(start1 - parentStart);
19820
20113
  }
19821
20114
  }
19822
- function makeBalanced(type) {
20115
+ function makeBalanced(type, contextHash) {
19823
20116
  return function(children, positions, length) {
19824
20117
  var lookAhead = 0, lastI = children.length - 1, last, lookAheadProp;
19825
- if (lastI >= 0 && _instanceof$5(last = children[lastI], Tree)) {
20118
+ if (lastI >= 0 && _instanceof$6(last = children[lastI], Tree)) {
19826
20119
  if (!lastI && last.type == type && last.length == length) return last;
19827
20120
  if (lookAheadProp = last.prop(NodeProp.lookAhead)) lookAhead = positions[lastI] + last.length + lookAheadProp;
19828
20121
  }
19829
- return makeTree(type, children, positions, length, lookAhead);
20122
+ return makeTree(type, children, positions, length, lookAhead, contextHash);
19830
20123
  };
19831
20124
  }
19832
- function makeRepeatLeaf(children, positions, base, i, from, to, type, lookAhead) {
20125
+ function makeRepeatLeaf(children, positions, base, i, from, to, type, lookAhead, contextHash) {
19833
20126
  var localChildren = [], localPositions = [];
19834
20127
  while(children.length > i){
19835
20128
  localChildren.push(children.pop());
19836
20129
  localPositions.push(positions.pop() + base - from);
19837
20130
  }
19838
- children.push(makeTree(nodeSet.types[type], localChildren, localPositions, to - from, lookAhead - to));
20131
+ children.push(makeTree(nodeSet.types[type], localChildren, localPositions, to - from, lookAhead - to, contextHash));
19839
20132
  positions.push(from - base);
19840
20133
  }
19841
- function makeTree(type, children, positions, length) {
19842
- var lookAhead = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : 0, props = arguments.length > 5 ? arguments[5] : void 0;
20134
+ function makeTree(type, children, positions, length, lookAhead, contextHash, props) {
19843
20135
  if (contextHash) {
19844
20136
  var pair = [
19845
20137
  NodeProp.contextHash,
@@ -19944,7 +20236,7 @@ function buildTree(data) {
19944
20236
  }
19945
20237
  var nodeSizeCache = new WeakMap;
19946
20238
  function nodeSize(balanceType, node) {
19947
- if (!balanceType.isAnonymous || _instanceof$5(node, TreeBuffer) || node.type != balanceType) return 1;
20239
+ if (!balanceType.isAnonymous || _instanceof$6(node, TreeBuffer) || node.type != balanceType) return 1;
19948
20240
  var size = nodeSizeCache.get(node);
19949
20241
  if (size == null) {
19950
20242
  size = 1;
@@ -19952,7 +20244,7 @@ function nodeSize(balanceType, node) {
19952
20244
  try {
19953
20245
  for(var _iterator = node.children[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
19954
20246
  var child = _step.value;
19955
- if (child.type != balanceType || !_instanceof$5(child, Tree)) {
20247
+ if (child.type != balanceType || !_instanceof$6(child, Tree)) {
19956
20248
  size = 1;
19957
20249
  break;
19958
20250
  }
@@ -20151,7 +20443,7 @@ function _inherits$5(subClass, superClass) {
20151
20443
  });
20152
20444
  if (superClass) _set_prototype_of$5(subClass, superClass);
20153
20445
  }
20154
- function _instanceof$4(left, right) {
20446
+ function _instanceof$5(left, right) {
20155
20447
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
20156
20448
  return !!right[Symbol.hasInstance](left);
20157
20449
  } else {
@@ -20350,14 +20642,15 @@ about the parse state.
20350
20642
  var _a;
20351
20643
  var depth = action >> 19 /* Action.ReduceDepthShift */ , type = action & 65535 /* Action.ValueMask */ ;
20352
20644
  var parser = this.p.parser;
20353
- if (this.reducePos < this.pos - 25 /* Lookahead.Margin */ ) this.setLookAhead(this.pos);
20645
+ var lookaheadRecord = this.reducePos < this.pos - 25 /* Lookahead.Margin */ ;
20646
+ if (lookaheadRecord) this.setLookAhead(this.pos);
20354
20647
  var dPrec = parser.dynamicPrecedence(type);
20355
20648
  if (dPrec) this.score += dPrec;
20356
20649
  if (depth == 0) {
20357
20650
  this.pushState(parser.getGoto(this.state, type, true), this.reducePos);
20358
20651
  // Zero-depth reductions are a special case—they add stuff to
20359
20652
  // the stack without popping anything off.
20360
- if (type < parser.minRepeatTerm) this.storeNode(type, this.reducePos, this.reducePos, 4, true);
20653
+ if (type < parser.minRepeatTerm) this.storeNode(type, this.reducePos, this.reducePos, lookaheadRecord ? 8 : 4, true);
20361
20654
  this.reduceContext(type, this.reducePos);
20362
20655
  return;
20363
20656
  }
@@ -20403,7 +20696,7 @@ about the parse state.
20403
20696
  @internal
20404
20697
  */ key: "storeNode",
20405
20698
  value: function storeNode(term, start, end) {
20406
- var size = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : 4, isReduce = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : false;
20699
+ var size = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : 4, mustSink = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : false;
20407
20700
  if (term == 0 /* Term.Err */ && (!this.stack.length || this.stack[this.stack.length - 1] < this.buffer.length + this.bufferBase)) {
20408
20701
  // Try to omit/merge adjacent error nodes
20409
20702
  var cur = this, top = this.buffer.length;
@@ -20419,18 +20712,27 @@ about the parse state.
20419
20712
  }
20420
20713
  }
20421
20714
  }
20422
- if (!isReduce || this.pos == end) {
20715
+ if (!mustSink || this.pos == end) {
20423
20716
  this.buffer.push(term, start, end, size);
20424
20717
  } else {
20425
20718
  var index = this.buffer.length;
20426
- if (index > 0 && this.buffer[index - 4] != 0 /* Term.Err */ ) while(index > 0 && this.buffer[index - 2] > end){
20427
- // Move this record forward
20428
- this.buffer[index] = this.buffer[index - 4];
20429
- this.buffer[index + 1] = this.buffer[index - 3];
20430
- this.buffer[index + 2] = this.buffer[index - 2];
20431
- this.buffer[index + 3] = this.buffer[index - 1];
20432
- index -= 4;
20433
- if (size > 4) size -= 4;
20719
+ if (index > 0 && this.buffer[index - 4] != 0 /* Term.Err */ ) {
20720
+ var mustMove = false;
20721
+ for(var scan = index; scan > 0 && this.buffer[scan - 2] > end; scan -= 4){
20722
+ if (this.buffer[scan - 1] >= 0) {
20723
+ mustMove = true;
20724
+ break;
20725
+ }
20726
+ }
20727
+ if (mustMove) while(index > 0 && this.buffer[index - 2] > end){
20728
+ // Move this record forward
20729
+ this.buffer[index] = this.buffer[index - 4];
20730
+ this.buffer[index + 1] = this.buffer[index - 3];
20731
+ this.buffer[index + 2] = this.buffer[index - 2];
20732
+ this.buffer[index + 3] = this.buffer[index - 1];
20733
+ index -= 4;
20734
+ if (size > 4) size -= 4;
20735
+ }
20434
20736
  }
20435
20737
  this.buffer[index] = term;
20436
20738
  this.buffer[index + 1] = start;
@@ -21371,7 +21673,7 @@ var FragmentCursor = /*#__PURE__*/ function() {
21371
21673
  this.nextStart = start;
21372
21674
  return null;
21373
21675
  }
21374
- if (_instanceof$4(next, Tree)) {
21676
+ if (_instanceof$5(next, Tree)) {
21375
21677
  if (start == pos) {
21376
21678
  if (start < this.safeFrom) return null;
21377
21679
  var end = start + next.length;
@@ -21674,9 +21976,9 @@ var Parse = /*#__PURE__*/ function() {
21674
21976
  if (verbose) console.log(base + this.stackID(stack) + " (via reuse of ".concat(parser.getName(cached.type.id), ")"));
21675
21977
  return true;
21676
21978
  }
21677
- if (!_instanceof$4(cached, Tree) || cached.children.length == 0 || cached.positions[0] > 0) break;
21979
+ if (!_instanceof$5(cached, Tree) || cached.children.length == 0 || cached.positions[0] > 0) break;
21678
21980
  var inner = cached.children[0];
21679
- if (_instanceof$4(inner, Tree) && cached.positions[0] == 0) cached = inner;
21981
+ if (_instanceof$5(inner, Tree) && cached.positions[0] == 0) cached = inner;
21680
21982
  else break;
21681
21983
  }
21682
21984
  }
@@ -22267,6 +22569,76 @@ function getSpecializer(spec) {
22267
22569
  return spec.get;
22268
22570
  }
22269
22571
 
22572
+ var nativeToString = Object.prototype.toString;
22573
+ var nativeHasOwnProperty = Object.prototype.hasOwnProperty;
22574
+ function isUndefined(obj) {
22575
+ return obj === undefined;
22576
+ }
22577
+ function isNil(obj) {
22578
+ return obj == null;
22579
+ }
22580
+ function isArray$1(obj) {
22581
+ return nativeToString.call(obj) === "[object Array]";
22582
+ }
22583
+ /**
22584
+ * Return true, if target owns a property with the given key.
22585
+ *
22586
+ * @param {Object} target
22587
+ * @param {String} key
22588
+ *
22589
+ * @return {Boolean}
22590
+ */ function has(target, key) {
22591
+ return !isNil(target) && nativeHasOwnProperty.call(target, key);
22592
+ }
22593
+ /**
22594
+ * Iterate over collection; returning something
22595
+ * (non-undefined) will stop iteration.
22596
+ *
22597
+ * @template T
22598
+ * @param {Collection<T>} collection
22599
+ * @param { ((item: T, idx: number) => (boolean|void)) | ((item: T, key: string) => (boolean|void)) } iterator
22600
+ *
22601
+ * @return {T} return result that stopped the iteration
22602
+ */ function forEach(collection, iterator) {
22603
+ var val, result;
22604
+ if (isUndefined(collection)) {
22605
+ return;
22606
+ }
22607
+ var convertKey = isArray$1(collection) ? toNum : identity;
22608
+ for(var key in collection){
22609
+ if (has(collection, key)) {
22610
+ val = collection[key];
22611
+ result = iterator(val, convertKey(key));
22612
+ if (result === false) {
22613
+ return val;
22614
+ }
22615
+ }
22616
+ }
22617
+ }
22618
+ /**
22619
+ * Reduce collection, returning a single result.
22620
+ *
22621
+ * @template T
22622
+ * @template V
22623
+ *
22624
+ * @param {Collection<T>} collection
22625
+ * @param {(result: V, entry: T, index: any) => V} iterator
22626
+ * @param {V} result
22627
+ *
22628
+ * @return {V} result returned from last iterator
22629
+ */ function reduce(collection, iterator, result) {
22630
+ forEach(collection, function(value, idx) {
22631
+ result = iterator(result, value, idx);
22632
+ });
22633
+ return result;
22634
+ }
22635
+ function identity(arg) {
22636
+ return arg;
22637
+ }
22638
+ function toNum(arg) {
22639
+ return Number(arg);
22640
+ }
22641
+
22270
22642
  function _class_call_check$9(instance, Constructor) {
22271
22643
  if (!(instance instanceof Constructor)) {
22272
22644
  throw new TypeError("Cannot call a class as a function");
@@ -22286,6 +22658,13 @@ function _create_class$9(Constructor, protoProps, staticProps) {
22286
22658
  if (staticProps) _defineProperties$9(Constructor, staticProps);
22287
22659
  return Constructor;
22288
22660
  }
22661
+ function _instanceof$4(left, right) {
22662
+ if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
22663
+ return !!right[Symbol.hasInstance](left);
22664
+ } else {
22665
+ return left instanceof right;
22666
+ }
22667
+ }
22289
22668
  var nextTagID = 0;
22290
22669
  /**
22291
22670
  Highlighting tags are markers that denote a highlighting category.
@@ -22307,6 +22686,8 @@ be picked up by regular highlighters (though you can derive them
22307
22686
  from standard tags to allow highlighters to fall back to those).
22308
22687
  */ var Tag = /*#__PURE__*/ function() {
22309
22688
  function Tag(/**
22689
+ The optional name of the base tag @internal
22690
+ */ name, /**
22310
22691
  The set of this tag and all its parent tags, starting with
22311
22692
  this one itself and sorted in order of decreasing specificity.
22312
22693
  */ set, /**
@@ -22316,6 +22697,7 @@ from standard tags to allow highlighters to fall back to those).
22316
22697
  The modifiers applied to this.base @internal
22317
22698
  */ modified) {
22318
22699
  _class_call_check$9(this, Tag);
22700
+ this.name = name;
22319
22701
  this.set = set;
22320
22702
  this.base = base;
22321
22703
  this.modified = modified;
@@ -22323,18 +22705,42 @@ from standard tags to allow highlighters to fall back to those).
22323
22705
  @internal
22324
22706
  */ this.id = nextTagID++;
22325
22707
  }
22326
- _create_class$9(Tag, null, [
22708
+ _create_class$9(Tag, [
22709
+ {
22710
+ key: "toString",
22711
+ value: function toString() {
22712
+ var name = this.name;
22713
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
22714
+ try {
22715
+ for(var _iterator = this.modified[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
22716
+ var mod = _step.value;
22717
+ if (mod.name) name = "".concat(mod.name, "(").concat(name, ")");
22718
+ }
22719
+ } catch (err) {
22720
+ _didIteratorError = true;
22721
+ _iteratorError = err;
22722
+ } finally{
22723
+ try {
22724
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
22725
+ _iterator.return();
22726
+ }
22727
+ } finally{
22728
+ if (_didIteratorError) {
22729
+ throw _iteratorError;
22730
+ }
22731
+ }
22732
+ }
22733
+ return name;
22734
+ }
22735
+ }
22736
+ ], [
22327
22737
  {
22328
22738
  key: "define",
22329
- value: /**
22330
- Define a new tag. If `parent` is given, the tag is treated as a
22331
- sub-tag of that parent, and
22332
- [highlighters](#highlight.tagHighlighter) that don't mention
22333
- this tag will try to fall back to the parent tag (or grandparent
22334
- tag, etc).
22335
- */ function define(parent) {
22739
+ value: function define(nameOrParent, parent) {
22740
+ var name = typeof nameOrParent == "string" ? nameOrParent : "?";
22741
+ if (_instanceof$4(nameOrParent, Tag)) parent = nameOrParent;
22336
22742
  if (parent === null || parent === void 0 ? void 0 : parent.base) throw new Error("Can not derive from a modified tag");
22337
- var tag = new Tag([], null, []);
22743
+ var tag = new Tag(name, [], null, []);
22338
22744
  tag.set.push(tag);
22339
22745
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
22340
22746
  if (parent) try {
@@ -22372,8 +22778,8 @@ from standard tags to allow highlighters to fall back to those).
22372
22778
  smaller set of modifiers is registered as a parent, so that for
22373
22779
  example `m1(m2(m3(t1)))` is a subtype of `m1(m2(t1))`,
22374
22780
  `m1(m3(t1)`, and so on.
22375
- */ function defineModifier() {
22376
- var mod = new Modifier;
22781
+ */ function defineModifier(name) {
22782
+ var mod = new Modifier(name);
22377
22783
  return function(tag) {
22378
22784
  if (tag.modified.indexOf(mod) > -1) return tag;
22379
22785
  return Modifier.get(tag.base || tag, tag.modified.concat(mod).sort(function(a, b) {
@@ -22387,8 +22793,9 @@ from standard tags to allow highlighters to fall back to those).
22387
22793
  }();
22388
22794
  var nextModifierID = 0;
22389
22795
  var Modifier = /*#__PURE__*/ function() {
22390
- function Modifier() {
22796
+ function Modifier(name) {
22391
22797
  _class_call_check$9(this, Modifier);
22798
+ this.name = name;
22392
22799
  this.instances = [];
22393
22800
  this.id = nextModifierID++;
22394
22801
  }
@@ -22401,7 +22808,7 @@ var Modifier = /*#__PURE__*/ function() {
22401
22808
  return t.base == base && sameArray(mods, t.modified);
22402
22809
  });
22403
22810
  if (exists) return exists;
22404
- var set = [], tag = new Tag(set, base, mods);
22811
+ var set = [], tag = new Tag(base.name, set, base, mods);
22405
22812
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
22406
22813
  try {
22407
22814
  for(var _iterator = mods[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
@@ -22947,7 +23354,7 @@ the parent.
22947
23354
  A level 6 [heading](#highlight.tags.heading).
22948
23355
  */ heading6: t(heading),
22949
23356
  /**
22950
- A prose separator (such as a horizontal rule).
23357
+ A prose [content](#highlight.tags.content) separator (such as a horizontal rule).
22951
23358
  */ contentSeparator: t(content),
22952
23359
  /**
22953
23360
  [Content](#highlight.tags.content) that represents a list.
@@ -23003,27 +23410,27 @@ the parent.
23003
23410
  [Modifier](#highlight.Tag^defineModifier) that indicates that a
23004
23411
  given element is being defined. Expected to be used with the
23005
23412
  various [name](#highlight.tags.name) tags.
23006
- */ definition: Tag.defineModifier(),
23413
+ */ definition: Tag.defineModifier("definition"),
23007
23414
  /**
23008
23415
  [Modifier](#highlight.Tag^defineModifier) that indicates that
23009
23416
  something is constant. Mostly expected to be used with
23010
23417
  [variable names](#highlight.tags.variableName).
23011
- */ constant: Tag.defineModifier(),
23418
+ */ constant: Tag.defineModifier("constant"),
23012
23419
  /**
23013
23420
  [Modifier](#highlight.Tag^defineModifier) used to indicate that
23014
23421
  a [variable](#highlight.tags.variableName) or [property
23015
23422
  name](#highlight.tags.propertyName) is being called or defined
23016
23423
  as a function.
23017
- */ function: Tag.defineModifier(),
23424
+ */ function: Tag.defineModifier("function"),
23018
23425
  /**
23019
23426
  [Modifier](#highlight.Tag^defineModifier) that can be applied to
23020
23427
  [names](#highlight.tags.name) to indicate that they belong to
23021
23428
  the language's standard environment.
23022
- */ standard: Tag.defineModifier(),
23429
+ */ standard: Tag.defineModifier("standard"),
23023
23430
  /**
23024
23431
  [Modifier](#highlight.Tag^defineModifier) that indicates a given
23025
23432
  [names](#highlight.tags.name) is local to some scope.
23026
- */ local: Tag.defineModifier(),
23433
+ */ local: Tag.defineModifier("local"),
23027
23434
  /**
23028
23435
  A generic variant [modifier](#highlight.Tag^defineModifier) that
23029
23436
  can be used to tag language-specific alternative variants of
@@ -23031,8 +23438,12 @@ the parent.
23031
23438
  forms of at least the [string](#highlight.tags.string) and
23032
23439
  [variable name](#highlight.tags.variableName) tags, since those
23033
23440
  come up a lot.
23034
- */ special: Tag.defineModifier()
23441
+ */ special: Tag.defineModifier("special")
23035
23442
  };
23443
+ for(var name1 in tags){
23444
+ var val = tags[name1];
23445
+ if (_instanceof$4(val, Tag)) val.name = name1;
23446
+ }
23036
23447
  /**
23037
23448
  This is a highlighter that adds stable, predictable classes to
23038
23449
  tokens, for styling with external CSS.
@@ -23351,7 +23762,7 @@ function _unsupported_iterable_to_array$2(o, minLen) {
23351
23762
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$2(o, minLen);
23352
23763
  }
23353
23764
  // This file was generated by lezer-generator. You probably shouldn't edit it.
23354
- 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;
23765
+ 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;
23355
23766
  /* global console,process */ // @ts-expect-error env access
23356
23767
  var LOG_PARSE = typeof process != "undefined" && process.env && /\bfparse(:dbg)?\b/.test(process.env.LOG);
23357
23768
  // @ts-expect-error env access
@@ -23427,7 +23838,6 @@ var additionalNameChars = chars$1("'./-+*^");
23427
23838
  */ function isSpace(ch) {
23428
23839
  return spaceChars.includes(ch);
23429
23840
  }
23430
- // eslint-disable-next-line
23431
23841
  function indent(str, spaces) {
23432
23842
  return spaces.concat(str.split(/\n/g).join("\n" + spaces));
23433
23843
  }
@@ -23517,14 +23927,14 @@ function indent(str, spaces) {
23517
23927
  var match = parseIdentifier(input, i1, namePart) || namePart && parseAdditionalSymbol(input, i1) || maybeSpace && parseSpaces(input, i1);
23518
23928
  // match is required
23519
23929
  if (!match) {
23520
- return i = i1, tokens = tokens1, nextMatch = nextMatch1, {
23930
+ return tokens = tokens1, nextMatch = nextMatch1, i = i1, {
23521
23931
  v: nextMatch1
23522
23932
  };
23523
23933
  }
23524
23934
  var token = match.token, offset = match.offset;
23525
23935
  i1 += offset;
23526
23936
  if (token === " ") {
23527
- return i = i1, tokens = tokens1, nextMatch = nextMatch1, "continue";
23937
+ return tokens = tokens1, nextMatch = nextMatch1, i = i1, "continue";
23528
23938
  }
23529
23939
  tokens1 = _to_consumable_array$1(tokens1).concat([
23530
23940
  token
@@ -23543,7 +23953,7 @@ function indent(str, spaces) {
23543
23953
  if (contextKeys.some(function(el) {
23544
23954
  return el.startsWith(name);
23545
23955
  })) {
23546
- return i = i1, tokens = tokens1, nextMatch = nextMatch1, "continue";
23956
+ return tokens = tokens1, nextMatch = nextMatch1, i = i1, "continue";
23547
23957
  }
23548
23958
  if (dateTimeIdentifiers.some(function(el) {
23549
23959
  return el === name;
@@ -23562,9 +23972,9 @@ function indent(str, spaces) {
23562
23972
  if (dateTimeIdentifiers.some(function(el) {
23563
23973
  return el.startsWith(name);
23564
23974
  })) {
23565
- return i = i1, tokens = tokens1, nextMatch = nextMatch1, "continue";
23975
+ return tokens = tokens1, nextMatch = nextMatch1, i = i1, "continue";
23566
23976
  }
23567
- return i = i1, tokens = tokens1, nextMatch = nextMatch1, {
23977
+ return tokens = tokens1, nextMatch = nextMatch1, i = i1, {
23568
23978
  v: nextMatch1
23569
23979
  };
23570
23980
  };
@@ -23630,7 +24040,10 @@ var _obj2;
23630
24040
  var contextStarts = (_obj2 = {}, _define_property$6(_obj2, contextStart, "Context"), _define_property$6(_obj2, functionDefinitionStart, "FunctionDefinition"), _define_property$6(_obj2, forExpressionStart, "ForExpression"), _define_property$6(_obj2, listStart, "List"), _define_property$6(_obj2, ifExpressionStart, "IfExpression"), _define_property$6(_obj2, quantifiedExpressionStart, "QuantifiedExpression"), _obj2);
23631
24041
  var _obj3;
23632
24042
  var contextEnds = (_obj3 = {}, _define_property$6(_obj3, Context, "Context"), _define_property$6(_obj3, FunctionDefinition, "FunctionDefinition"), _define_property$6(_obj3, ForExpression, "ForExpression"), _define_property$6(_obj3, List, "List"), _define_property$6(_obj3, IfExpression, "IfExpression"), _define_property$6(_obj3, QuantifiedExpression, "QuantifiedExpression"), _define_property$6(_obj3, PathExpression, "PathExpression"), _define_property$6(_obj3, FunctionInvocation, "FunctionInvocation"), _define_property$6(_obj3, FilterExpression, "FilterExpression"), _define_property$6(_obj3, ArithmeticExpression, "ArithmeticExpression"), _obj3);
23633
- var ValueProducer = /*#__PURE__*/ function() {
24043
+ /**
24044
+ * A simple producer that retrievs a value from
24045
+ * a given context. Used to lazily take things.
24046
+ */ var ValueProducer = /*#__PURE__*/ function() {
23634
24047
  function ValueProducer(fn) {
23635
24048
  _class_call_check$8(this, ValueProducer);
23636
24049
  this.fn = fn;
@@ -23716,6 +24129,20 @@ var dateTimeIdentifiers = Object.keys(dateTimeLiterals);
23716
24129
  var constructor = /** @type { typeof VariableContext } */ this.constructor;
23717
24130
  return constructor.of(_object_spread_props$3(_object_spread$4({}, this.value), _define_property$6({}, key, value)));
23718
24131
  }
24132
+ },
24133
+ {
24134
+ /**
24135
+ * Non-destructively merge another context into this one,
24136
+ * and return the result.
24137
+ *
24138
+ * @param {ContextValue} other
24139
+ *
24140
+ * @return {VariableContext}
24141
+ */ key: "merge",
24142
+ value: function merge(other) {
24143
+ var constructor = /** @type { typeof VariableContext } */ this.constructor;
24144
+ return new constructor(constructor.__merge(this.value, other));
24145
+ }
23719
24146
  }
23720
24147
  ], [
23721
24148
  {
@@ -23733,36 +24160,71 @@ var dateTimeIdentifiers = Object.keys(dateTimeLiterals);
23733
24160
  {
23734
24161
  key: "of",
23735
24162
  value: /**
23736
- * Takes any number of Contexts and merges them into a single Context.
24163
+ * Takes any number of Contexts and merges them into a single context.
23737
24164
  *
23738
- * @param {...Context} contexts
23739
- * @returns {VariableContext}
24165
+ * @param { ...VariableContext } contexts
24166
+ * @returns { VariableContext }
23740
24167
  */ function of() {
23741
- var _this = this;
23742
24168
  for(var _len = arguments.length, contexts = new Array(_len), _key = 0; _key < _len; _key++){
23743
24169
  contexts[_key] = arguments[_key];
23744
24170
  }
23745
- var unwrap = function(context) {
23746
- if (!context || typeof context !== "object") {
23747
- return {};
24171
+ return contexts.reduce(function(context, otherContext) {
24172
+ return context.merge(otherContext);
24173
+ }, new this({}));
24174
+ }
24175
+ },
24176
+ {
24177
+ key: "__unwrap",
24178
+ value: /**
24179
+ * Returns the raw representation of the given context.
24180
+ *
24181
+ * @param {VariableContext | any} context
24182
+ *
24183
+ * @return {any}
24184
+ */ function __unwrap(context) {
24185
+ if (!context) {
24186
+ return {};
24187
+ }
24188
+ if (_instanceof$3(context, this)) {
24189
+ return context.value;
24190
+ }
24191
+ if (typeof context !== "object") {
24192
+ return {};
24193
+ }
24194
+ return _object_spread$4({}, context);
24195
+ }
24196
+ },
24197
+ {
24198
+ key: "__merge",
24199
+ value: /**
24200
+ * Non-destructively merges two contexts (or their values)
24201
+ * with each other, returning the result.
24202
+ *
24203
+ * @param {ContextValue} context
24204
+ * @param {ContextValue} other
24205
+ *
24206
+ * @return {any}
24207
+ */ function __merge(context, other) {
24208
+ var _this = this;
24209
+ return reduce(this.__unwrap(other), function(merged, value, key) {
24210
+ if (_instanceof$3(value, ValueProducer)) {
24211
+ // keep value producers in tact
24212
+ return _object_spread_props$3(_object_spread$4({}, merged), _define_property$6({}, key, value));
23748
24213
  }
23749
- if (_instanceof$3(context, _this)) {
23750
- return context.value;
24214
+ value = _this.__unwrap(value);
24215
+ if (has(merged, key)) {
24216
+ value = _this.__merge(_this.__unwrap(merged[key]), value);
23751
24217
  }
23752
- return _object_spread$4({}, context);
23753
- };
23754
- var merged = contexts.reduce(function(merged, context) {
23755
- return _object_spread$4({}, merged, unwrap(context));
23756
- }, {});
23757
- return new this(merged);
24218
+ return _object_spread_props$3(_object_spread$4({}, merged), _define_property$6({}, key, value));
24219
+ }, this.__unwrap(context));
23758
24220
  }
23759
24221
  }
23760
24222
  ]);
23761
24223
  return VariableContext;
23762
24224
  }();
23763
24225
  var Variables = /*#__PURE__*/ function() {
23764
- function Variables() {
23765
- 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;
24226
+ function Variables(param) {
24227
+ 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;
23766
24228
  _class_call_check$8(this, Variables);
23767
24229
  this.name = name;
23768
24230
  this.tokens = tokens;
@@ -23993,7 +24455,19 @@ var Variables = /*#__PURE__*/ function() {
23993
24455
  ], [
23994
24456
  {
23995
24457
  key: "of",
23996
- value: function of(options) {
24458
+ value: /**
24459
+ * @param { {
24460
+ * name?: string,
24461
+ * tokens?: string[],
24462
+ * children?: Variables[],
24463
+ * parent?: Variables | null
24464
+ * context: VariableContext,
24465
+ * value?: any,
24466
+ * raw?: any
24467
+ * } } options
24468
+ *
24469
+ * @return {Variables}
24470
+ */ function of(options) {
23997
24471
  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;
23998
24472
  if (!context) {
23999
24473
  throw new Error("must provide <context>");
@@ -24280,57 +24754,57 @@ var spec_identifier = {
24280
24754
  between: 72,
24281
24755
  instance: 86,
24282
24756
  of: 89,
24283
- days: 99,
24284
- time: 101,
24285
- duration: 103,
24286
- years: 105,
24287
- months: 107,
24288
- date: 109,
24289
- list: 115,
24290
- context: 121,
24291
- function: 128,
24292
- null: 154,
24293
- true: 326,
24294
- false: 326,
24295
- "?": 168,
24296
- external: 184,
24297
- not: 209
24757
+ days: 101,
24758
+ time: 103,
24759
+ duration: 105,
24760
+ years: 107,
24761
+ months: 109,
24762
+ date: 111,
24763
+ list: 117,
24764
+ context: 123,
24765
+ function: 130,
24766
+ null: 156,
24767
+ true: 330,
24768
+ false: 330,
24769
+ "?": 170,
24770
+ external: 186,
24771
+ not: 211
24298
24772
  };
24299
24773
  var parser = LRParser.deserialize({
24300
24774
  version: 14,
24301
- 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",
24302
- 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~",
24303
- 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",
24304
- 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",
24305
- maxTerm: 171,
24775
+ 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",
24776
+ 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~",
24777
+ 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",
24778
+ 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",
24779
+ maxTerm: 173,
24306
24780
  context: variableTracker,
24307
24781
  nodeProps: [
24308
24782
  [
24309
24783
  "closedBy",
24310
24784
  38,
24311
24785
  ")",
24312
- 70,
24786
+ 71,
24313
24787
  "]",
24314
- 95,
24788
+ 96,
24315
24789
  "}"
24316
24790
  ],
24317
24791
  [
24318
24792
  "openedBy",
24319
24793
  40,
24320
24794
  "(",
24321
- 68,
24795
+ 69,
24322
24796
  "[",
24323
- 94,
24797
+ 95,
24324
24798
  "{"
24325
24799
  ],
24326
24800
  [
24327
24801
  "group",
24328
24802
  -5,
24329
- 77,
24330
24803
  78,
24331
24804
  79,
24332
24805
  80,
24333
24806
  81,
24807
+ 82,
24334
24808
  "Literal"
24335
24809
  ]
24336
24810
  ],
@@ -24343,7 +24817,7 @@ var parser = LRParser.deserialize({
24343
24817
  2
24344
24818
  ],
24345
24819
  repeatNodeCount: 14,
24346
- 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~",
24820
+ 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~",
24347
24821
  tokenizers: [
24348
24822
  propertyIdentifiers,
24349
24823
  identifiers,
@@ -24358,28 +24832,31 @@ var parser = LRParser.deserialize({
24358
24832
  ],
24359
24833
  "Expressions": [
24360
24834
  1,
24361
- 101
24835
+ 102
24362
24836
  ],
24363
24837
  "UnaryTests": [
24364
24838
  2,
24365
- 102
24839
+ 103
24366
24840
  ]
24367
24841
  },
24842
+ dialects: {
24843
+ camunda: 2532
24844
+ },
24368
24845
  dynamicPrecedences: {
24369
24846
  "31": -1,
24370
- "67": 1,
24371
- "71": -1,
24372
- "73": -1
24847
+ "68": 1,
24848
+ "72": -1,
24849
+ "74": -1
24373
24850
  },
24374
24851
  specialized: [
24375
24852
  {
24376
- term: 121,
24853
+ term: 122,
24377
24854
  get: function(value) {
24378
24855
  return spec_identifier[value] || -1;
24379
24856
  }
24380
24857
  }
24381
24858
  ],
24382
- tokenPrec: 2500
24859
+ tokenPrec: 2534
24383
24860
  });
24384
24861
 
24385
24862
  function _array_like_to_array$1(arr, len) {
@@ -25454,10 +25931,10 @@ var builtins = {
25454
25931
  // 10.3.4.5 Numeric functions
25455
25932
  "decimal": fn(function(n, scale) {
25456
25933
  if (!scale) {
25457
- return round(n);
25934
+ return bankersRound(n);
25458
25935
  }
25459
25936
  var offset = Math.pow(10, scale);
25460
- return round(n * offset) / offset;
25937
+ return bankersRound(n * offset) / offset;
25461
25938
  }, [
25462
25939
  "number",
25463
25940
  "number"
@@ -25686,7 +26163,8 @@ var builtins = {
25686
26163
  ]),
25687
26164
  // 10.3.4.10 Context function
25688
26165
  "get value": fn(function(m, key) {
25689
- return getFromContext(key, m) || null;
26166
+ var value = getFromContext(key, m);
26167
+ return value != undefined ? value : null;
25690
26168
  }, [
25691
26169
  "context",
25692
26170
  "string"
@@ -26013,13 +26491,13 @@ function countSymbols(str) {
26013
26491
  // cf. https://mathiasbynens.be/notes/javascript-unicode
26014
26492
  return str.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g, "_").length;
26015
26493
  }
26016
- function round(n) {
26017
- var integral = Math.trunc(n);
26018
- if (n - integral > .5) {
26019
- return integral + 1;
26020
- } else {
26021
- return integral;
26494
+ function bankersRound(n) {
26495
+ var floored = Math.floor(n);
26496
+ var decimalPart = n - floored;
26497
+ if (decimalPart === 0.5) {
26498
+ return floored % 2 === 0 ? floored : floored + 1;
26022
26499
  }
26500
+ return Math.round(n);
26023
26501
  }
26024
26502
  // adapted from https://stackoverflow.com/a/53577159
26025
26503
  function stddev(array) {
@@ -26100,17 +26578,19 @@ function ifValid(o) {
26100
26578
  return o.isValid ? o : null;
26101
26579
  }
26102
26580
  function parseExpression(expression) {
26103
- var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
26581
+ var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, dialect = arguments.length > 2 ? arguments[2] : void 0;
26104
26582
  return parser.configure({
26105
26583
  top: "Expression",
26106
- contextTracker: trackVariables(context)
26584
+ contextTracker: trackVariables(context),
26585
+ dialect: dialect
26107
26586
  }).parse(expression);
26108
26587
  }
26109
26588
  function parseUnaryTests(expression) {
26110
- var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
26589
+ var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, dialect = arguments.length > 2 ? arguments[2] : void 0;
26111
26590
  return parser.configure({
26112
26591
  top: "UnaryTests",
26113
- contextTracker: trackVariables(context)
26592
+ contextTracker: trackVariables(context),
26593
+ dialect: dialect
26114
26594
  }).parse(expression);
26115
26595
  }
26116
26596
  var SyntaxError$1 = /*#__PURE__*/ function(Error1) {
@@ -26179,8 +26659,8 @@ var Interpreter = /*#__PURE__*/ function() {
26179
26659
  {
26180
26660
  key: "evaluate",
26181
26661
  value: function evaluate(expression) {
26182
- var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
26183
- var parseTree = parseExpression(expression, context);
26662
+ var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, dialect = arguments.length > 2 ? arguments[2] : void 0;
26663
+ var parseTree = parseExpression(expression, context, dialect);
26184
26664
  var root = this._buildExecutionTree(parseTree, expression);
26185
26665
  return {
26186
26666
  parseTree: parseTree,
@@ -26191,8 +26671,8 @@ var Interpreter = /*#__PURE__*/ function() {
26191
26671
  {
26192
26672
  key: "unaryTest",
26193
26673
  value: function unaryTest(expression) {
26194
- var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
26195
- var parseTree = parseUnaryTests(expression, context);
26674
+ var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, dialect = arguments.length > 2 ? arguments[2] : void 0;
26675
+ var parseTree = parseUnaryTests(expression, context, dialect);
26196
26676
  var root = this._buildExecutionTree(parseTree, expression);
26197
26677
  return {
26198
26678
  parseTree: parseTree,
@@ -26206,8 +26686,8 @@ var Interpreter = /*#__PURE__*/ function() {
26206
26686
  var interpreter = new Interpreter();
26207
26687
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
26208
26688
  function evaluate(expression) {
26209
- var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
26210
- var root = interpreter.evaluate(expression, context).root;
26689
+ var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, dialect = arguments.length > 2 ? arguments[2] : void 0;
26690
+ var root = interpreter.evaluate(expression, context, dialect).root;
26211
26691
  // root = Expression :: fn(ctx)
26212
26692
  return root(context);
26213
26693
  }
@@ -26250,6 +26730,12 @@ function evalNode(node, input, args) {
26250
26730
  switch(input){
26251
26731
  case "+":
26252
26732
  return nullable(function(a, b) {
26733
+ // flip these as luxon operations with durations aren't commutative
26734
+ if (isDuration(a) && !isDuration(b)) {
26735
+ var tmp = a;
26736
+ a = b;
26737
+ b = tmp;
26738
+ }
26253
26739
  if (isType(a, "time") && isDuration(b)) {
26254
26740
  return a.plus(b).set({
26255
26741
  year: 1900,
@@ -26343,6 +26829,8 @@ function evalNode(node, input, args) {
26343
26829
  };
26344
26830
  }
26345
26831
  }, Test("boolean"));
26832
+ case "BacktickIdentifier":
26833
+ return input.replace(/`/g, "");
26346
26834
  case "Wildcard":
26347
26835
  return function(_context) {
26348
26836
  return true;
@@ -26816,7 +27304,7 @@ function evalNode(node, input, args) {
26816
27304
  if (isNumber(value)) {
26817
27305
  filterFn.type = "number";
26818
27306
  }
26819
- } catch (err) {
27307
+ } catch (_err) {
26820
27308
  // ignore
26821
27309
  }
26822
27310
  }
@@ -27279,7 +27767,6 @@ function parseString(str) {
27279
27767
  if (str.endsWith('"')) {
27280
27768
  str = str.slice(0, -1);
27281
27769
  }
27282
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
27283
27770
  return str.replace(/(\\")|(\\\\)|(\\u[a-fA-F0-9]{5,6})|((?:\\u[a-fA-F0-9]{1,4})+)/ig, function(substring) {
27284
27771
  for(var _len = arguments.length, groups = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){
27285
27772
  groups[_key - 1] = arguments[_key];