@digipair/skill-keycloak 0.41.4 → 0.43.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. package/index.esm.js +1173 -686
  2. package/package.json +1 -1
package/index.esm.js CHANGED
@@ -8138,7 +8138,7 @@ function _type_of(obj) {
8138
8138
  }
8139
8139
  return self;
8140
8140
  }
8141
- function _class_call_check$m(instance, Constructor) {
8141
+ function _class_call_check$n(instance, Constructor) {
8142
8142
  if (!(instance instanceof Constructor)) {
8143
8143
  throw new TypeError("Cannot call a class as a function");
8144
8144
  }
@@ -8253,7 +8253,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8253
8253
  _inherits$7(LuxonError, Error1);
8254
8254
  var _super = _create_super$7(LuxonError);
8255
8255
  function LuxonError() {
8256
- _class_call_check$m(this, LuxonError);
8256
+ _class_call_check$n(this, LuxonError);
8257
8257
  return _super.apply(this, arguments);
8258
8258
  }
8259
8259
  return LuxonError;
@@ -8264,7 +8264,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8264
8264
  _inherits$7(InvalidDateTimeError, LuxonError);
8265
8265
  var _super = _create_super$7(InvalidDateTimeError);
8266
8266
  function InvalidDateTimeError(reason) {
8267
- _class_call_check$m(this, InvalidDateTimeError);
8267
+ _class_call_check$n(this, InvalidDateTimeError);
8268
8268
  return _super.call(this, "Invalid DateTime: ".concat(reason.toMessage()));
8269
8269
  }
8270
8270
  return InvalidDateTimeError;
@@ -8275,7 +8275,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8275
8275
  _inherits$7(InvalidIntervalError, LuxonError);
8276
8276
  var _super = _create_super$7(InvalidIntervalError);
8277
8277
  function InvalidIntervalError(reason) {
8278
- _class_call_check$m(this, InvalidIntervalError);
8278
+ _class_call_check$n(this, InvalidIntervalError);
8279
8279
  return _super.call(this, "Invalid Interval: ".concat(reason.toMessage()));
8280
8280
  }
8281
8281
  return InvalidIntervalError;
@@ -8286,7 +8286,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8286
8286
  _inherits$7(InvalidDurationError, LuxonError);
8287
8287
  var _super = _create_super$7(InvalidDurationError);
8288
8288
  function InvalidDurationError(reason) {
8289
- _class_call_check$m(this, InvalidDurationError);
8289
+ _class_call_check$n(this, InvalidDurationError);
8290
8290
  return _super.call(this, "Invalid Duration: ".concat(reason.toMessage()));
8291
8291
  }
8292
8292
  return InvalidDurationError;
@@ -8297,7 +8297,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8297
8297
  _inherits$7(ConflictingSpecificationError, LuxonError);
8298
8298
  var _super = _create_super$7(ConflictingSpecificationError);
8299
8299
  function ConflictingSpecificationError() {
8300
- _class_call_check$m(this, ConflictingSpecificationError);
8300
+ _class_call_check$n(this, ConflictingSpecificationError);
8301
8301
  return _super.apply(this, arguments);
8302
8302
  }
8303
8303
  return ConflictingSpecificationError;
@@ -8308,7 +8308,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8308
8308
  _inherits$7(InvalidUnitError, LuxonError);
8309
8309
  var _super = _create_super$7(InvalidUnitError);
8310
8310
  function InvalidUnitError(unit) {
8311
- _class_call_check$m(this, InvalidUnitError);
8311
+ _class_call_check$n(this, InvalidUnitError);
8312
8312
  return _super.call(this, "Invalid unit ".concat(unit));
8313
8313
  }
8314
8314
  return InvalidUnitError;
@@ -8319,7 +8319,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8319
8319
  _inherits$7(InvalidArgumentError, LuxonError);
8320
8320
  var _super = _create_super$7(InvalidArgumentError);
8321
8321
  function InvalidArgumentError() {
8322
- _class_call_check$m(this, InvalidArgumentError);
8322
+ _class_call_check$n(this, InvalidArgumentError);
8323
8323
  return _super.apply(this, arguments);
8324
8324
  }
8325
8325
  return InvalidArgumentError;
@@ -8330,7 +8330,7 @@ var LuxonError = /*#__PURE__*/ function(Error1) {
8330
8330
  _inherits$7(ZoneIsAbstractError, LuxonError);
8331
8331
  var _super = _create_super$7(ZoneIsAbstractError);
8332
8332
  function ZoneIsAbstractError() {
8333
- _class_call_check$m(this, ZoneIsAbstractError);
8333
+ _class_call_check$n(this, ZoneIsAbstractError);
8334
8334
  return _super.call(this, "Zone is an abstract class");
8335
8335
  }
8336
8336
  return ZoneIsAbstractError;
@@ -8487,12 +8487,12 @@ var DATETIME_HUGE_WITH_SECONDS = {
8487
8487
  timeZoneName: l
8488
8488
  };
8489
8489
 
8490
- function _class_call_check$l(instance, Constructor) {
8490
+ function _class_call_check$m(instance, Constructor) {
8491
8491
  if (!(instance instanceof Constructor)) {
8492
8492
  throw new TypeError("Cannot call a class as a function");
8493
8493
  }
8494
8494
  }
8495
- function _defineProperties$l(target, props) {
8495
+ function _defineProperties$m(target, props) {
8496
8496
  for(var i = 0; i < props.length; i++){
8497
8497
  var descriptor = props[i];
8498
8498
  descriptor.enumerable = descriptor.enumerable || false;
@@ -8501,16 +8501,16 @@ function _defineProperties$l(target, props) {
8501
8501
  Object.defineProperty(target, descriptor.key, descriptor);
8502
8502
  }
8503
8503
  }
8504
- function _create_class$l(Constructor, protoProps, staticProps) {
8505
- if (protoProps) _defineProperties$l(Constructor.prototype, protoProps);
8506
- if (staticProps) _defineProperties$l(Constructor, staticProps);
8504
+ function _create_class$m(Constructor, protoProps, staticProps) {
8505
+ if (protoProps) _defineProperties$m(Constructor.prototype, protoProps);
8506
+ if (staticProps) _defineProperties$m(Constructor, staticProps);
8507
8507
  return Constructor;
8508
8508
  }
8509
8509
  var Zone = /*#__PURE__*/ function() {
8510
8510
  function Zone() {
8511
- _class_call_check$l(this, Zone);
8511
+ _class_call_check$m(this, Zone);
8512
8512
  }
8513
- _create_class$l(Zone, [
8513
+ _create_class$m(Zone, [
8514
8514
  {
8515
8515
  key: "type",
8516
8516
  get: /**
@@ -8533,7 +8533,12 @@ var Zone = /*#__PURE__*/ function() {
8533
8533
  },
8534
8534
  {
8535
8535
  key: "ianaName",
8536
- get: function get() {
8536
+ get: /**
8537
+ * The IANA name of this zone.
8538
+ * Defaults to `name` if not overwritten by a subclass.
8539
+ * @abstract
8540
+ * @type {string}
8541
+ */ function get() {
8537
8542
  return this.name;
8538
8543
  }
8539
8544
  },
@@ -8616,12 +8621,12 @@ function _assert_this_initialized$6(self) {
8616
8621
  }
8617
8622
  return self;
8618
8623
  }
8619
- function _class_call_check$k(instance, Constructor) {
8624
+ function _class_call_check$l(instance, Constructor) {
8620
8625
  if (!(instance instanceof Constructor)) {
8621
8626
  throw new TypeError("Cannot call a class as a function");
8622
8627
  }
8623
8628
  }
8624
- function _defineProperties$k(target, props) {
8629
+ function _defineProperties$l(target, props) {
8625
8630
  for(var i = 0; i < props.length; i++){
8626
8631
  var descriptor = props[i];
8627
8632
  descriptor.enumerable = descriptor.enumerable || false;
@@ -8630,9 +8635,9 @@ function _defineProperties$k(target, props) {
8630
8635
  Object.defineProperty(target, descriptor.key, descriptor);
8631
8636
  }
8632
8637
  }
8633
- function _create_class$k(Constructor, protoProps, staticProps) {
8634
- if (protoProps) _defineProperties$k(Constructor.prototype, protoProps);
8635
- if (staticProps) _defineProperties$k(Constructor, staticProps);
8638
+ function _create_class$l(Constructor, protoProps, staticProps) {
8639
+ if (protoProps) _defineProperties$l(Constructor.prototype, protoProps);
8640
+ if (staticProps) _defineProperties$l(Constructor, staticProps);
8636
8641
  return Constructor;
8637
8642
  }
8638
8643
  function _get_prototype_of$6(o) {
@@ -8700,10 +8705,10 @@ var SystemZone = /*#__PURE__*/ function(Zone) {
8700
8705
  _inherits$6(SystemZone, Zone);
8701
8706
  var _super = _create_super$6(SystemZone);
8702
8707
  function SystemZone() {
8703
- _class_call_check$k(this, SystemZone);
8708
+ _class_call_check$l(this, SystemZone);
8704
8709
  return _super.apply(this, arguments);
8705
8710
  }
8706
- _create_class$k(SystemZone, [
8711
+ _create_class$l(SystemZone, [
8707
8712
  {
8708
8713
  key: "type",
8709
8714
  get: /** @override **/ function get() {
@@ -8784,12 +8789,12 @@ function _assert_this_initialized$5(self) {
8784
8789
  }
8785
8790
  return self;
8786
8791
  }
8787
- function _class_call_check$j(instance, Constructor) {
8792
+ function _class_call_check$k(instance, Constructor) {
8788
8793
  if (!(instance instanceof Constructor)) {
8789
8794
  throw new TypeError("Cannot call a class as a function");
8790
8795
  }
8791
8796
  }
8792
- function _defineProperties$j(target, props) {
8797
+ function _defineProperties$k(target, props) {
8793
8798
  for(var i = 0; i < props.length; i++){
8794
8799
  var descriptor = props[i];
8795
8800
  descriptor.enumerable = descriptor.enumerable || false;
@@ -8798,9 +8803,9 @@ function _defineProperties$j(target, props) {
8798
8803
  Object.defineProperty(target, descriptor.key, descriptor);
8799
8804
  }
8800
8805
  }
8801
- function _create_class$j(Constructor, protoProps, staticProps) {
8802
- if (protoProps) _defineProperties$j(Constructor.prototype, protoProps);
8803
- if (staticProps) _defineProperties$j(Constructor, staticProps);
8806
+ function _create_class$k(Constructor, protoProps, staticProps) {
8807
+ if (protoProps) _defineProperties$k(Constructor.prototype, protoProps);
8808
+ if (staticProps) _defineProperties$k(Constructor, staticProps);
8804
8809
  return Constructor;
8805
8810
  }
8806
8811
  function _get_prototype_of$5(o) {
@@ -8947,7 +8952,7 @@ function partsOffset(dtf, date) {
8947
8952
  var pos = typeToPos[type];
8948
8953
  if (type === "era") {
8949
8954
  filled[pos] = value;
8950
- } else if (!isUndefined(pos)) {
8955
+ } else if (!isUndefined$1(pos)) {
8951
8956
  filled[pos] = parseInt(value, 10);
8952
8957
  }
8953
8958
  }
@@ -8958,47 +8963,80 @@ var IANAZone = /*#__PURE__*/ function(Zone) {
8958
8963
  _inherits$5(IANAZone, Zone);
8959
8964
  var _super = _create_super$5(IANAZone);
8960
8965
  function IANAZone(name) {
8961
- _class_call_check$j(this, IANAZone);
8966
+ _class_call_check$k(this, IANAZone);
8962
8967
  var _this;
8963
8968
  _this = _super.call(this);
8964
8969
  /** @private **/ _this.zoneName = name;
8965
8970
  /** @private **/ _this.valid = IANAZone.isValidZone(name);
8966
8971
  return _this;
8967
8972
  }
8968
- _create_class$j(IANAZone, [
8973
+ _create_class$k(IANAZone, [
8969
8974
  {
8970
8975
  key: "type",
8971
- get: /** @override **/ function get() {
8976
+ get: /**
8977
+ * The type of zone. `iana` for all instances of `IANAZone`.
8978
+ * @override
8979
+ * @type {string}
8980
+ */ function get() {
8972
8981
  return "iana";
8973
8982
  }
8974
8983
  },
8975
8984
  {
8976
8985
  key: "name",
8977
- get: /** @override **/ function get() {
8986
+ get: /**
8987
+ * The name of this zone (i.e. the IANA zone name).
8988
+ * @override
8989
+ * @type {string}
8990
+ */ function get() {
8978
8991
  return this.zoneName;
8979
8992
  }
8980
8993
  },
8981
8994
  {
8982
8995
  key: "isUniversal",
8983
- get: /** @override **/ function get() {
8996
+ get: /**
8997
+ * Returns whether the offset is known to be fixed for the whole year:
8998
+ * Always returns false for all IANA zones.
8999
+ * @override
9000
+ * @type {boolean}
9001
+ */ function get() {
8984
9002
  return false;
8985
9003
  }
8986
9004
  },
8987
9005
  {
8988
- /** @override **/ key: "offsetName",
9006
+ /**
9007
+ * Returns the offset's common name (such as EST) at the specified timestamp
9008
+ * @override
9009
+ * @param {number} ts - Epoch milliseconds for which to get the name
9010
+ * @param {Object} opts - Options to affect the format
9011
+ * @param {string} opts.format - What style of offset to return. Accepts 'long' or 'short'.
9012
+ * @param {string} opts.locale - What locale to return the offset name in.
9013
+ * @return {string}
9014
+ */ key: "offsetName",
8989
9015
  value: function offsetName(ts, param) {
8990
9016
  var format = param.format, locale = param.locale;
8991
9017
  return parseZoneInfo(ts, format, locale, this.name);
8992
9018
  }
8993
9019
  },
8994
9020
  {
8995
- /** @override **/ key: "formatOffset",
9021
+ /**
9022
+ * Returns the offset's value as a string
9023
+ * @override
9024
+ * @param {number} ts - Epoch milliseconds for which to get the offset
9025
+ * @param {string} format - What style of offset to return.
9026
+ * Accepts 'narrow', 'short', or 'techie'. Returning '+6', '+06:00', or '+0600' respectively
9027
+ * @return {string}
9028
+ */ key: "formatOffset",
8996
9029
  value: function formatOffset1(ts, format) {
8997
9030
  return formatOffset(this.offset(ts), format);
8998
9031
  }
8999
9032
  },
9000
9033
  {
9001
- /** @override **/ key: "offset",
9034
+ /**
9035
+ * Return the offset in minutes for this zone at the specified timestamp.
9036
+ * @override
9037
+ * @param {number} ts - Epoch milliseconds for which to compute the offset
9038
+ * @return {number}
9039
+ */ key: "offset",
9002
9040
  value: function offset(ts) {
9003
9041
  var date = new Date(ts);
9004
9042
  if (isNaN(date)) return NaN;
@@ -9025,14 +9063,23 @@ var IANAZone = /*#__PURE__*/ function(Zone) {
9025
9063
  }
9026
9064
  },
9027
9065
  {
9028
- /** @override **/ key: "equals",
9066
+ /**
9067
+ * Return whether this Zone is equal to another zone
9068
+ * @override
9069
+ * @param {Zone} otherZone - the zone to compare
9070
+ * @return {boolean}
9071
+ */ key: "equals",
9029
9072
  value: function equals(otherZone) {
9030
9073
  return otherZone.type === "iana" && otherZone.name === this.name;
9031
9074
  }
9032
9075
  },
9033
9076
  {
9034
9077
  key: "isValid",
9035
- get: /** @override **/ function get() {
9078
+ get: /**
9079
+ * Return whether this Zone is valid.
9080
+ * @override
9081
+ * @type {boolean}
9082
+ */ function get() {
9036
9083
  return this.valid;
9037
9084
  }
9038
9085
  }
@@ -9066,7 +9113,7 @@ var IANAZone = /*#__PURE__*/ function(Zone) {
9066
9113
  * @param {string} s - The string to check validity on
9067
9114
  * @example IANAZone.isValidSpecifier("America/New_York") //=> true
9068
9115
  * @example IANAZone.isValidSpecifier("Sport~~blorp") //=> false
9069
- * @deprecated This method returns false for some valid IANA names. Use isValidZone instead.
9116
+ * @deprecated For backward compatibility, this forwards to isValidZone, better use `isValidZone()` directly instead.
9070
9117
  * @return {boolean}
9071
9118
  */ function isValidSpecifier(s) {
9072
9119
  return this.isValidZone(s);
@@ -9107,12 +9154,12 @@ function _array_like_to_array$g(arr, len) {
9107
9154
  function _array_with_holes$c(arr) {
9108
9155
  if (Array.isArray(arr)) return arr;
9109
9156
  }
9110
- function _class_call_check$i(instance, Constructor) {
9157
+ function _class_call_check$j(instance, Constructor) {
9111
9158
  if (!(instance instanceof Constructor)) {
9112
9159
  throw new TypeError("Cannot call a class as a function");
9113
9160
  }
9114
9161
  }
9115
- function _defineProperties$i(target, props) {
9162
+ function _defineProperties$j(target, props) {
9116
9163
  for(var i = 0; i < props.length; i++){
9117
9164
  var descriptor = props[i];
9118
9165
  descriptor.enumerable = descriptor.enumerable || false;
@@ -9121,9 +9168,9 @@ function _defineProperties$i(target, props) {
9121
9168
  Object.defineProperty(target, descriptor.key, descriptor);
9122
9169
  }
9123
9170
  }
9124
- function _create_class$i(Constructor, protoProps, staticProps) {
9125
- if (protoProps) _defineProperties$i(Constructor.prototype, protoProps);
9126
- if (staticProps) _defineProperties$i(Constructor, staticProps);
9171
+ function _create_class$j(Constructor, protoProps, staticProps) {
9172
+ if (protoProps) _defineProperties$j(Constructor.prototype, protoProps);
9173
+ if (staticProps) _defineProperties$j(Constructor, staticProps);
9127
9174
  return Constructor;
9128
9175
  }
9129
9176
  function _define_property$9(obj, key, value) {
@@ -9414,7 +9461,7 @@ function supportsFastNumbers(loc) {
9414
9461
  * @private
9415
9462
  */ var PolyNumberFormatter = /*#__PURE__*/ function() {
9416
9463
  function PolyNumberFormatter(intl, forceSimple, opts) {
9417
- _class_call_check$i(this, PolyNumberFormatter);
9464
+ _class_call_check$j(this, PolyNumberFormatter);
9418
9465
  this.padTo = opts.padTo || 0;
9419
9466
  this.floor = opts.floor || false;
9420
9467
  opts.padTo; opts.floor; var otherOpts = _object_without_properties(opts, [
@@ -9429,7 +9476,7 @@ function supportsFastNumbers(loc) {
9429
9476
  this.inf = getCachedINF(intl, intlOpts);
9430
9477
  }
9431
9478
  }
9432
- _create_class$i(PolyNumberFormatter, [
9479
+ _create_class$j(PolyNumberFormatter, [
9433
9480
  {
9434
9481
  key: "format",
9435
9482
  value: function format(i) {
@@ -9450,7 +9497,7 @@ function supportsFastNumbers(loc) {
9450
9497
  * @private
9451
9498
  */ var PolyDateFormatter = /*#__PURE__*/ function() {
9452
9499
  function PolyDateFormatter(dt, intl, opts) {
9453
- _class_call_check$i(this, PolyDateFormatter);
9500
+ _class_call_check$j(this, PolyDateFormatter);
9454
9501
  this.opts = opts;
9455
9502
  this.originalZone = undefined;
9456
9503
  var z = undefined;
@@ -9496,7 +9543,7 @@ function supportsFastNumbers(loc) {
9496
9543
  intlOpts.timeZone = intlOpts.timeZone || z;
9497
9544
  this.dtf = getCachedDTF(intl, intlOpts);
9498
9545
  }
9499
- _create_class$i(PolyDateFormatter, [
9546
+ _create_class$j(PolyDateFormatter, [
9500
9547
  {
9501
9548
  key: "format",
9502
9549
  value: function format() {
@@ -9547,7 +9594,7 @@ function supportsFastNumbers(loc) {
9547
9594
  * @private
9548
9595
  */ var PolyRelFormatter = /*#__PURE__*/ function() {
9549
9596
  function PolyRelFormatter(intl, isEnglish, opts) {
9550
- _class_call_check$i(this, PolyRelFormatter);
9597
+ _class_call_check$j(this, PolyRelFormatter);
9551
9598
  this.opts = _object_spread$7({
9552
9599
  style: "long"
9553
9600
  }, opts);
@@ -9555,7 +9602,7 @@ function supportsFastNumbers(loc) {
9555
9602
  this.rtf = getCachedRTF(intl, opts);
9556
9603
  }
9557
9604
  }
9558
- _create_class$i(PolyRelFormatter, [
9605
+ _create_class$j(PolyRelFormatter, [
9559
9606
  {
9560
9607
  key: "format",
9561
9608
  value: function format(count, unit) {
@@ -9589,7 +9636,7 @@ var fallbackWeekSettings = {
9589
9636
  };
9590
9637
  var Locale = /*#__PURE__*/ function() {
9591
9638
  function Locale(locale, numbering, outputCalendar, weekSettings, specifiedLocale) {
9592
- _class_call_check$i(this, Locale);
9639
+ _class_call_check$j(this, Locale);
9593
9640
  var _parseLocaleString = _sliced_to_array$c(parseLocaleString(locale), 3), parsedLocale = _parseLocaleString[0], parsedNumberingSystem = _parseLocaleString[1], parsedOutputCalendar = _parseLocaleString[2];
9594
9641
  this.locale = parsedLocale;
9595
9642
  this.numberingSystem = numbering || parsedNumberingSystem || null;
@@ -9609,7 +9656,7 @@ var Locale = /*#__PURE__*/ function() {
9609
9656
  this.specifiedLocale = specifiedLocale;
9610
9657
  this.fastNumbersCached = null;
9611
9658
  }
9612
- _create_class$i(Locale, [
9659
+ _create_class$j(Locale, [
9613
9660
  {
9614
9661
  key: "fastNumbers",
9615
9662
  get: function get() {
@@ -9826,6 +9873,12 @@ var Locale = /*#__PURE__*/ function() {
9826
9873
  value: function equals(other) {
9827
9874
  return this.locale === other.locale && this.numberingSystem === other.numberingSystem && this.outputCalendar === other.outputCalendar;
9828
9875
  }
9876
+ },
9877
+ {
9878
+ key: "toString",
9879
+ value: function toString() {
9880
+ return "Locale(".concat(this.locale, ", ").concat(this.numberingSystem, ", ").concat(this.outputCalendar, ")");
9881
+ }
9829
9882
  }
9830
9883
  ], [
9831
9884
  {
@@ -9839,7 +9892,7 @@ var Locale = /*#__PURE__*/ function() {
9839
9892
  value: function create(locale, numberingSystem, outputCalendar, weekSettings) {
9840
9893
  var defaultToEN = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : false;
9841
9894
  var specifiedLocale = locale || Settings.defaultLocale;
9842
- // the system locale is useful for human readable strings but annoying for parsing/formatting known formats
9895
+ // the system locale is useful for human-readable strings but annoying for parsing/formatting known formats
9843
9896
  var localeR = specifiedLocale || (defaultToEN ? "en-US" : systemLocale());
9844
9897
  var numberingSystemR = numberingSystem || Settings.defaultNumberingSystem;
9845
9898
  var outputCalendarR = outputCalendar || Settings.defaultOutputCalendar;
@@ -9873,12 +9926,12 @@ function _assert_this_initialized$4(self) {
9873
9926
  }
9874
9927
  return self;
9875
9928
  }
9876
- function _class_call_check$h(instance, Constructor) {
9929
+ function _class_call_check$i(instance, Constructor) {
9877
9930
  if (!(instance instanceof Constructor)) {
9878
9931
  throw new TypeError("Cannot call a class as a function");
9879
9932
  }
9880
9933
  }
9881
- function _defineProperties$h(target, props) {
9934
+ function _defineProperties$i(target, props) {
9882
9935
  for(var i = 0; i < props.length; i++){
9883
9936
  var descriptor = props[i];
9884
9937
  descriptor.enumerable = descriptor.enumerable || false;
@@ -9887,9 +9940,9 @@ function _defineProperties$h(target, props) {
9887
9940
  Object.defineProperty(target, descriptor.key, descriptor);
9888
9941
  }
9889
9942
  }
9890
- function _create_class$h(Constructor, protoProps, staticProps) {
9891
- if (protoProps) _defineProperties$h(Constructor.prototype, protoProps);
9892
- if (staticProps) _defineProperties$h(Constructor, staticProps);
9943
+ function _create_class$i(Constructor, protoProps, staticProps) {
9944
+ if (protoProps) _defineProperties$i(Constructor.prototype, protoProps);
9945
+ if (staticProps) _defineProperties$i(Constructor, staticProps);
9893
9946
  return Constructor;
9894
9947
  }
9895
9948
  function _get_prototype_of$4(o) {
@@ -9957,28 +10010,42 @@ var FixedOffsetZone = /*#__PURE__*/ function(Zone) {
9957
10010
  _inherits$4(FixedOffsetZone, Zone);
9958
10011
  var _super = _create_super$4(FixedOffsetZone);
9959
10012
  function FixedOffsetZone(offset) {
9960
- _class_call_check$h(this, FixedOffsetZone);
10013
+ _class_call_check$i(this, FixedOffsetZone);
9961
10014
  var _this;
9962
10015
  _this = _super.call(this);
9963
10016
  /** @private **/ _this.fixed = offset;
9964
10017
  return _this;
9965
10018
  }
9966
- _create_class$h(FixedOffsetZone, [
10019
+ _create_class$i(FixedOffsetZone, [
9967
10020
  {
9968
10021
  key: "type",
9969
- get: /** @override **/ function get() {
10022
+ get: /**
10023
+ * The type of zone. `fixed` for all instances of `FixedOffsetZone`.
10024
+ * @override
10025
+ * @type {string}
10026
+ */ function get() {
9970
10027
  return "fixed";
9971
10028
  }
9972
10029
  },
9973
10030
  {
9974
10031
  key: "name",
9975
- get: /** @override **/ function get() {
10032
+ get: /**
10033
+ * The name of this zone.
10034
+ * All fixed zones' names always start with "UTC" (plus optional offset)
10035
+ * @override
10036
+ * @type {string}
10037
+ */ function get() {
9976
10038
  return this.fixed === 0 ? "UTC" : "UTC".concat(formatOffset(this.fixed, "narrow"));
9977
10039
  }
9978
10040
  },
9979
10041
  {
9980
10042
  key: "ianaName",
9981
- get: function get() {
10043
+ get: /**
10044
+ * The IANA name of this zone, i.e. `Etc/UTC` or `Etc/GMT+/-nn`
10045
+ *
10046
+ * @override
10047
+ * @type {string}
10048
+ */ function get() {
9982
10049
  if (this.fixed === 0) {
9983
10050
  return "Etc/UTC";
9984
10051
  } else {
@@ -9987,38 +10054,71 @@ var FixedOffsetZone = /*#__PURE__*/ function(Zone) {
9987
10054
  }
9988
10055
  },
9989
10056
  {
9990
- /** @override **/ key: "offsetName",
10057
+ /**
10058
+ * Returns the offset's common name at the specified timestamp.
10059
+ *
10060
+ * For fixed offset zones this equals to the zone name.
10061
+ * @override
10062
+ */ key: "offsetName",
9991
10063
  value: function offsetName() {
9992
10064
  return this.name;
9993
10065
  }
9994
10066
  },
9995
10067
  {
9996
- /** @override **/ key: "formatOffset",
10068
+ /**
10069
+ * Returns the offset's value as a string
10070
+ * @override
10071
+ * @param {number} ts - Epoch milliseconds for which to get the offset
10072
+ * @param {string} format - What style of offset to return.
10073
+ * Accepts 'narrow', 'short', or 'techie'. Returning '+6', '+06:00', or '+0600' respectively
10074
+ * @return {string}
10075
+ */ key: "formatOffset",
9997
10076
  value: function formatOffset1(ts, format) {
9998
10077
  return formatOffset(this.fixed, format);
9999
10078
  }
10000
10079
  },
10001
10080
  {
10002
10081
  key: "isUniversal",
10003
- get: /** @override **/ function get() {
10082
+ get: /**
10083
+ * Returns whether the offset is known to be fixed for the whole year:
10084
+ * Always returns true for all fixed offset zones.
10085
+ * @override
10086
+ * @type {boolean}
10087
+ */ function get() {
10004
10088
  return true;
10005
10089
  }
10006
10090
  },
10007
10091
  {
10008
- /** @override **/ key: "offset",
10092
+ /**
10093
+ * Return the offset in minutes for this zone at the specified timestamp.
10094
+ *
10095
+ * For fixed offset zones, this is constant and does not depend on a timestamp.
10096
+ * @override
10097
+ * @return {number}
10098
+ */ key: "offset",
10009
10099
  value: function offset() {
10010
10100
  return this.fixed;
10011
10101
  }
10012
10102
  },
10013
10103
  {
10014
- /** @override **/ key: "equals",
10104
+ /**
10105
+ * Return whether this Zone is equal to another zone (i.e. also fixed and same offset)
10106
+ * @override
10107
+ * @param {Zone} otherZone - the zone to compare
10108
+ * @return {boolean}
10109
+ */ key: "equals",
10015
10110
  value: function equals(otherZone) {
10016
10111
  return otherZone.type === "fixed" && otherZone.fixed === this.fixed;
10017
10112
  }
10018
10113
  },
10019
10114
  {
10020
10115
  key: "isValid",
10021
- get: /** @override **/ function get() {
10116
+ get: /**
10117
+ * Return whether this Zone is valid:
10118
+ * All fixed offset zones are valid.
10119
+ * @override
10120
+ * @type {boolean}
10121
+ */ function get() {
10022
10122
  return true;
10023
10123
  }
10024
10124
  }
@@ -10074,12 +10174,12 @@ function _assert_this_initialized$3(self) {
10074
10174
  }
10075
10175
  return self;
10076
10176
  }
10077
- function _class_call_check$g(instance, Constructor) {
10177
+ function _class_call_check$h(instance, Constructor) {
10078
10178
  if (!(instance instanceof Constructor)) {
10079
10179
  throw new TypeError("Cannot call a class as a function");
10080
10180
  }
10081
10181
  }
10082
- function _defineProperties$g(target, props) {
10182
+ function _defineProperties$h(target, props) {
10083
10183
  for(var i = 0; i < props.length; i++){
10084
10184
  var descriptor = props[i];
10085
10185
  descriptor.enumerable = descriptor.enumerable || false;
@@ -10088,9 +10188,9 @@ function _defineProperties$g(target, props) {
10088
10188
  Object.defineProperty(target, descriptor.key, descriptor);
10089
10189
  }
10090
10190
  }
10091
- function _create_class$g(Constructor, protoProps, staticProps) {
10092
- if (protoProps) _defineProperties$g(Constructor.prototype, protoProps);
10093
- if (staticProps) _defineProperties$g(Constructor, staticProps);
10191
+ function _create_class$h(Constructor, protoProps, staticProps) {
10192
+ if (protoProps) _defineProperties$h(Constructor.prototype, protoProps);
10193
+ if (staticProps) _defineProperties$h(Constructor, staticProps);
10094
10194
  return Constructor;
10095
10195
  }
10096
10196
  function _get_prototype_of$3(o) {
@@ -10157,13 +10257,13 @@ var InvalidZone = /*#__PURE__*/ function(Zone) {
10157
10257
  _inherits$3(InvalidZone, Zone);
10158
10258
  var _super = _create_super$3(InvalidZone);
10159
10259
  function InvalidZone(zoneName) {
10160
- _class_call_check$g(this, InvalidZone);
10260
+ _class_call_check$h(this, InvalidZone);
10161
10261
  var _this;
10162
10262
  _this = _super.call(this);
10163
10263
  /** @private */ _this.zoneName = zoneName;
10164
10264
  return _this;
10165
10265
  }
10166
- _create_class$g(InvalidZone, [
10266
+ _create_class$h(InvalidZone, [
10167
10267
  {
10168
10268
  key: "type",
10169
10269
  get: /** @override **/ function get() {
@@ -10218,7 +10318,7 @@ var InvalidZone = /*#__PURE__*/ function(Zone) {
10218
10318
 
10219
10319
  /**
10220
10320
  * @private
10221
- */ function _instanceof$g(left, right) {
10321
+ */ function _instanceof$h(left, right) {
10222
10322
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
10223
10323
  return !!right[Symbol.hasInstance](left);
10224
10324
  } else {
@@ -10226,9 +10326,9 @@ var InvalidZone = /*#__PURE__*/ function(Zone) {
10226
10326
  }
10227
10327
  }
10228
10328
  function normalizeZone(input, defaultZone) {
10229
- if (isUndefined(input) || input === null) {
10329
+ if (isUndefined$1(input) || input === null) {
10230
10330
  return defaultZone;
10231
- } else if (_instanceof$g(input, Zone)) {
10331
+ } else if (_instanceof$h(input, Zone)) {
10232
10332
  return input;
10233
10333
  } else if (isString$4(input)) {
10234
10334
  var lowered = input.toLowerCase();
@@ -10247,79 +10347,266 @@ function normalizeZone(input, defaultZone) {
10247
10347
  }
10248
10348
  }
10249
10349
 
10250
- function _class_call_check$f(instance, Constructor) {
10251
- if (!(instance instanceof Constructor)) {
10252
- throw new TypeError("Cannot call a class as a function");
10253
- }
10350
+ function _array_like_to_array$f(arr, len) {
10351
+ if (len == null || len > arr.length) len = arr.length;
10352
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
10353
+ return arr2;
10254
10354
  }
10255
- function _defineProperties$f(target, props) {
10256
- for(var i = 0; i < props.length; i++){
10257
- var descriptor = props[i];
10258
- descriptor.enumerable = descriptor.enumerable || false;
10259
- descriptor.configurable = true;
10260
- if ("value" in descriptor) descriptor.writable = true;
10261
- Object.defineProperty(target, descriptor.key, descriptor);
10355
+ function _array_with_holes$b(arr) {
10356
+ if (Array.isArray(arr)) return arr;
10357
+ }
10358
+ function _iterable_to_array_limit$b(arr, i) {
10359
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
10360
+ if (_i == null) return;
10361
+ var _arr = [];
10362
+ var _n = true;
10363
+ var _d = false;
10364
+ var _s, _e;
10365
+ try {
10366
+ for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
10367
+ _arr.push(_s.value);
10368
+ if (i && _arr.length === i) break;
10369
+ }
10370
+ } catch (err) {
10371
+ _d = true;
10372
+ _e = err;
10373
+ } finally{
10374
+ try {
10375
+ if (!_n && _i["return"] != null) _i["return"]();
10376
+ } finally{
10377
+ if (_d) throw _e;
10378
+ }
10262
10379
  }
10380
+ return _arr;
10263
10381
  }
10264
- function _create_class$f(Constructor, protoProps, staticProps) {
10265
- if (protoProps) _defineProperties$f(Constructor.prototype, protoProps);
10266
- if (staticProps) _defineProperties$f(Constructor, staticProps);
10267
- return Constructor;
10382
+ function _non_iterable_rest$b() {
10383
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
10268
10384
  }
10269
- var now = function() {
10270
- return Date.now();
10271
- }, defaultZone = "system", defaultLocale = null, defaultNumberingSystem = null, defaultOutputCalendar = null, twoDigitCutoffYear = 60, throwOnInvalid, defaultWeekSettings = null;
10272
- var Settings = /*#__PURE__*/ function() {
10273
- function Settings() {
10274
- _class_call_check$f(this, Settings);
10275
- }
10276
- _create_class$f(Settings, null, [
10277
- {
10278
- key: "now",
10279
- get: /**
10280
- * Get the callback for returning the current timestamp.
10281
- * @type {function}
10282
- */ function get() {
10283
- return now;
10284
- },
10285
- set: /**
10286
- * Set the callback for returning the current timestamp.
10287
- * The function should return a number, which will be interpreted as an Epoch millisecond count
10288
- * @type {function}
10289
- * @example Settings.now = () => Date.now() + 3000 // pretend it is 3 seconds in the future
10290
- * @example Settings.now = () => 0 // always pretend it's Jan 1, 1970 at midnight in UTC time
10291
- */ function set(n) {
10292
- now = n;
10293
- }
10294
- },
10295
- {
10296
- key: "defaultZone",
10297
- get: /**
10298
- * Get the default time zone object currently used to create DateTimes. Does not affect existing instances.
10299
- * The default value is the system's time zone (the one set on the machine that runs this code).
10300
- * @type {Zone}
10301
- */ function get() {
10302
- return normalizeZone(defaultZone, SystemZone.instance);
10303
- },
10304
- set: /**
10305
- * Set the default time zone to create DateTimes in. Does not affect existing instances.
10306
- * Use the value "system" to reset this value to the system's time zone.
10307
- * @type {string}
10308
- */ function set(zone) {
10309
- defaultZone = zone;
10310
- }
10311
- },
10312
- {
10313
- key: "defaultLocale",
10314
- get: /**
10315
- * Get the default locale to create DateTimes with. Does not affect existing instances.
10316
- * @type {string}
10317
- */ function get() {
10318
- return defaultLocale;
10319
- },
10320
- set: /**
10321
- * Set the default locale to create DateTimes with. Does not affect existing instances.
10322
- * @type {string}
10385
+ function _sliced_to_array$b(arr, i) {
10386
+ return _array_with_holes$b(arr) || _iterable_to_array_limit$b(arr, i) || _unsupported_iterable_to_array$f(arr, i) || _non_iterable_rest$b();
10387
+ }
10388
+ function _unsupported_iterable_to_array$f(o, minLen) {
10389
+ if (!o) return;
10390
+ if (typeof o === "string") return _array_like_to_array$f(o, minLen);
10391
+ var n = Object.prototype.toString.call(o).slice(8, -1);
10392
+ if (n === "Object" && o.constructor) n = o.constructor.name;
10393
+ if (n === "Map" || n === "Set") return Array.from(n);
10394
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$f(o, minLen);
10395
+ }
10396
+ var numberingSystems = {
10397
+ arab: "[٠-٩]",
10398
+ arabext: "[۰-۹]",
10399
+ bali: "[᭐-᭙]",
10400
+ beng: "[০-৯]",
10401
+ deva: "[०-९]",
10402
+ fullwide: "[0-9]",
10403
+ gujr: "[૦-૯]",
10404
+ hanidec: "[〇|一|二|三|四|五|六|七|八|九]",
10405
+ khmr: "[០-៩]",
10406
+ knda: "[೦-೯]",
10407
+ laoo: "[໐-໙]",
10408
+ limb: "[᥆-᥏]",
10409
+ mlym: "[൦-൯]",
10410
+ mong: "[᠐-᠙]",
10411
+ mymr: "[၀-၉]",
10412
+ orya: "[୦-୯]",
10413
+ tamldec: "[௦-௯]",
10414
+ telu: "[౦-౯]",
10415
+ thai: "[๐-๙]",
10416
+ tibt: "[༠-༩]",
10417
+ latn: "\\d"
10418
+ };
10419
+ var numberingSystemsUTF16 = {
10420
+ arab: [
10421
+ 1632,
10422
+ 1641
10423
+ ],
10424
+ arabext: [
10425
+ 1776,
10426
+ 1785
10427
+ ],
10428
+ bali: [
10429
+ 6992,
10430
+ 7001
10431
+ ],
10432
+ beng: [
10433
+ 2534,
10434
+ 2543
10435
+ ],
10436
+ deva: [
10437
+ 2406,
10438
+ 2415
10439
+ ],
10440
+ fullwide: [
10441
+ 65296,
10442
+ 65303
10443
+ ],
10444
+ gujr: [
10445
+ 2790,
10446
+ 2799
10447
+ ],
10448
+ khmr: [
10449
+ 6112,
10450
+ 6121
10451
+ ],
10452
+ knda: [
10453
+ 3302,
10454
+ 3311
10455
+ ],
10456
+ laoo: [
10457
+ 3792,
10458
+ 3801
10459
+ ],
10460
+ limb: [
10461
+ 6470,
10462
+ 6479
10463
+ ],
10464
+ mlym: [
10465
+ 3430,
10466
+ 3439
10467
+ ],
10468
+ mong: [
10469
+ 6160,
10470
+ 6169
10471
+ ],
10472
+ mymr: [
10473
+ 4160,
10474
+ 4169
10475
+ ],
10476
+ orya: [
10477
+ 2918,
10478
+ 2927
10479
+ ],
10480
+ tamldec: [
10481
+ 3046,
10482
+ 3055
10483
+ ],
10484
+ telu: [
10485
+ 3174,
10486
+ 3183
10487
+ ],
10488
+ thai: [
10489
+ 3664,
10490
+ 3673
10491
+ ],
10492
+ tibt: [
10493
+ 3872,
10494
+ 3881
10495
+ ]
10496
+ };
10497
+ var hanidecChars = numberingSystems.hanidec.replace(/[\[|\]]/g, "").split("");
10498
+ function parseDigits(str) {
10499
+ var value = parseInt(str, 10);
10500
+ if (isNaN(value)) {
10501
+ value = "";
10502
+ for(var i = 0; i < str.length; i++){
10503
+ var code = str.charCodeAt(i);
10504
+ if (str[i].search(numberingSystems.hanidec) !== -1) {
10505
+ value += hanidecChars.indexOf(str[i]);
10506
+ } else {
10507
+ for(var key in numberingSystemsUTF16){
10508
+ var _numberingSystemsUTF16_key = _sliced_to_array$b(numberingSystemsUTF16[key], 2), min = _numberingSystemsUTF16_key[0], max = _numberingSystemsUTF16_key[1];
10509
+ if (code >= min && code <= max) {
10510
+ value += code - min;
10511
+ }
10512
+ }
10513
+ }
10514
+ }
10515
+ return parseInt(value, 10);
10516
+ } else {
10517
+ return value;
10518
+ }
10519
+ }
10520
+ // cache of {numberingSystem: {append: regex}}
10521
+ var digitRegexCache = {};
10522
+ function resetDigitRegexCache() {
10523
+ digitRegexCache = {};
10524
+ }
10525
+ function digitRegex(param) {
10526
+ var numberingSystem = param.numberingSystem, append = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "";
10527
+ var ns = numberingSystem || "latn";
10528
+ if (!digitRegexCache[ns]) {
10529
+ digitRegexCache[ns] = {};
10530
+ }
10531
+ if (!digitRegexCache[ns][append]) {
10532
+ digitRegexCache[ns][append] = new RegExp("".concat(numberingSystems[ns]).concat(append));
10533
+ }
10534
+ return digitRegexCache[ns][append];
10535
+ }
10536
+
10537
+ function _class_call_check$g(instance, Constructor) {
10538
+ if (!(instance instanceof Constructor)) {
10539
+ throw new TypeError("Cannot call a class as a function");
10540
+ }
10541
+ }
10542
+ function _defineProperties$g(target, props) {
10543
+ for(var i = 0; i < props.length; i++){
10544
+ var descriptor = props[i];
10545
+ descriptor.enumerable = descriptor.enumerable || false;
10546
+ descriptor.configurable = true;
10547
+ if ("value" in descriptor) descriptor.writable = true;
10548
+ Object.defineProperty(target, descriptor.key, descriptor);
10549
+ }
10550
+ }
10551
+ function _create_class$g(Constructor, protoProps, staticProps) {
10552
+ if (protoProps) _defineProperties$g(Constructor.prototype, protoProps);
10553
+ if (staticProps) _defineProperties$g(Constructor, staticProps);
10554
+ return Constructor;
10555
+ }
10556
+ var now = function() {
10557
+ return Date.now();
10558
+ }, defaultZone = "system", defaultLocale = null, defaultNumberingSystem = null, defaultOutputCalendar = null, twoDigitCutoffYear = 60, throwOnInvalid, defaultWeekSettings = null;
10559
+ var Settings = /*#__PURE__*/ function() {
10560
+ function Settings() {
10561
+ _class_call_check$g(this, Settings);
10562
+ }
10563
+ _create_class$g(Settings, null, [
10564
+ {
10565
+ key: "now",
10566
+ get: /**
10567
+ * Get the callback for returning the current timestamp.
10568
+ * @type {function}
10569
+ */ function get() {
10570
+ return now;
10571
+ },
10572
+ set: /**
10573
+ * Set the callback for returning the current timestamp.
10574
+ * The function should return a number, which will be interpreted as an Epoch millisecond count
10575
+ * @type {function}
10576
+ * @example Settings.now = () => Date.now() + 3000 // pretend it is 3 seconds in the future
10577
+ * @example Settings.now = () => 0 // always pretend it's Jan 1, 1970 at midnight in UTC time
10578
+ */ function set(n) {
10579
+ now = n;
10580
+ }
10581
+ },
10582
+ {
10583
+ key: "defaultZone",
10584
+ get: /**
10585
+ * Get the default time zone object currently used to create DateTimes. Does not affect existing instances.
10586
+ * The default value is the system's time zone (the one set on the machine that runs this code).
10587
+ * @type {Zone}
10588
+ */ function get() {
10589
+ return normalizeZone(defaultZone, SystemZone.instance);
10590
+ },
10591
+ set: /**
10592
+ * Set the default time zone to create DateTimes in. Does not affect existing instances.
10593
+ * Use the value "system" to reset this value to the system's time zone.
10594
+ * @type {string}
10595
+ */ function set(zone) {
10596
+ defaultZone = zone;
10597
+ }
10598
+ },
10599
+ {
10600
+ key: "defaultLocale",
10601
+ get: /**
10602
+ * Get the default locale to create DateTimes with. Does not affect existing instances.
10603
+ * @type {string}
10604
+ */ function get() {
10605
+ return defaultLocale;
10606
+ },
10607
+ set: /**
10608
+ * Set the default locale to create DateTimes with. Does not affect existing instances.
10609
+ * @type {string}
10323
10610
  */ function set(locale) {
10324
10611
  defaultLocale = locale;
10325
10612
  }
@@ -10379,16 +10666,17 @@ var Settings = /*#__PURE__*/ function() {
10379
10666
  {
10380
10667
  key: "twoDigitCutoffYear",
10381
10668
  get: /**
10382
- * Get the cutoff year after which a string encoding a year as two digits is interpreted to occur in the current century.
10669
+ * 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.
10383
10670
  * @type {number}
10384
10671
  */ function get() {
10385
10672
  return twoDigitCutoffYear;
10386
10673
  },
10387
10674
  set: /**
10388
- * Set the cutoff year after which a string encoding a year as two digits is interpreted to occur in the current century.
10675
+ * 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.
10389
10676
  * @type {number}
10390
- * @example Settings.twoDigitCutoffYear = 0 // cut-off year is 0, so all 'yy' are interpreted as current century
10391
- * @example Settings.twoDigitCutoffYear = 50 // '49' -> 1949; '50' -> 2050
10677
+ * @example Settings.twoDigitCutoffYear = 0 // all 'yy' are interpreted as 20th century
10678
+ * @example Settings.twoDigitCutoffYear = 99 // all 'yy' are interpreted as 21st century
10679
+ * @example Settings.twoDigitCutoffYear = 50 // '49' -> 2049; '50' -> 1950
10392
10680
  * @example Settings.twoDigitCutoffYear = 1950 // interpreted as 50
10393
10681
  * @example Settings.twoDigitCutoffYear = 2050 // ALSO interpreted as 50
10394
10682
  */ function set(cutoffYear) {
@@ -10418,18 +10706,20 @@ var Settings = /*#__PURE__*/ function() {
10418
10706
  */ function resetCaches() {
10419
10707
  Locale.resetCache();
10420
10708
  IANAZone.resetCache();
10709
+ DateTime.resetCache();
10710
+ resetDigitRegexCache();
10421
10711
  }
10422
10712
  }
10423
10713
  ]);
10424
10714
  return Settings;
10425
10715
  }();
10426
10716
 
10427
- function _class_call_check$e(instance, Constructor) {
10717
+ function _class_call_check$f(instance, Constructor) {
10428
10718
  if (!(instance instanceof Constructor)) {
10429
10719
  throw new TypeError("Cannot call a class as a function");
10430
10720
  }
10431
10721
  }
10432
- function _defineProperties$e(target, props) {
10722
+ function _defineProperties$f(target, props) {
10433
10723
  for(var i = 0; i < props.length; i++){
10434
10724
  var descriptor = props[i];
10435
10725
  descriptor.enumerable = descriptor.enumerable || false;
@@ -10438,18 +10728,18 @@ function _defineProperties$e(target, props) {
10438
10728
  Object.defineProperty(target, descriptor.key, descriptor);
10439
10729
  }
10440
10730
  }
10441
- function _create_class$e(Constructor, protoProps, staticProps) {
10442
- if (protoProps) _defineProperties$e(Constructor.prototype, protoProps);
10443
- if (staticProps) _defineProperties$e(Constructor, staticProps);
10731
+ function _create_class$f(Constructor, protoProps, staticProps) {
10732
+ if (protoProps) _defineProperties$f(Constructor.prototype, protoProps);
10733
+ if (staticProps) _defineProperties$f(Constructor, staticProps);
10444
10734
  return Constructor;
10445
10735
  }
10446
10736
  var Invalid = /*#__PURE__*/ function() {
10447
10737
  function Invalid(reason, explanation) {
10448
- _class_call_check$e(this, Invalid);
10738
+ _class_call_check$f(this, Invalid);
10449
10739
  this.reason = reason;
10450
10740
  this.explanation = explanation;
10451
10741
  }
10452
- _create_class$e(Invalid, [
10742
+ _create_class$f(Invalid, [
10453
10743
  {
10454
10744
  key: "toMessage",
10455
10745
  value: function toMessage() {
@@ -10613,15 +10903,15 @@ function ordinalToGregorian(ordinalData) {
10613
10903
  * Modifies obj in-place!
10614
10904
  * @param obj the object values
10615
10905
  */ function usesLocalWeekValues(obj, loc) {
10616
- var hasLocaleWeekData = !isUndefined(obj.localWeekday) || !isUndefined(obj.localWeekNumber) || !isUndefined(obj.localWeekYear);
10906
+ var hasLocaleWeekData = !isUndefined$1(obj.localWeekday) || !isUndefined$1(obj.localWeekNumber) || !isUndefined$1(obj.localWeekYear);
10617
10907
  if (hasLocaleWeekData) {
10618
- var hasIsoWeekData = !isUndefined(obj.weekday) || !isUndefined(obj.weekNumber) || !isUndefined(obj.weekYear);
10908
+ var hasIsoWeekData = !isUndefined$1(obj.weekday) || !isUndefined$1(obj.weekNumber) || !isUndefined$1(obj.weekYear);
10619
10909
  if (hasIsoWeekData) {
10620
10910
  throw new ConflictingSpecificationError("Cannot mix locale-based week fields with ISO-based week fields");
10621
10911
  }
10622
- if (!isUndefined(obj.localWeekday)) obj.weekday = obj.localWeekday;
10623
- if (!isUndefined(obj.localWeekNumber)) obj.weekNumber = obj.localWeekNumber;
10624
- if (!isUndefined(obj.localWeekYear)) obj.weekYear = obj.localWeekYear;
10912
+ if (!isUndefined$1(obj.localWeekday)) obj.weekday = obj.localWeekday;
10913
+ if (!isUndefined$1(obj.localWeekNumber)) obj.weekNumber = obj.localWeekNumber;
10914
+ if (!isUndefined$1(obj.localWeekYear)) obj.weekYear = obj.localWeekYear;
10625
10915
  delete obj.localWeekday;
10626
10916
  delete obj.localWeekNumber;
10627
10917
  delete obj.localWeekYear;
@@ -10714,7 +11004,7 @@ function _object_spread$5(target) {
10714
11004
  /**
10715
11005
  * @private
10716
11006
  */ // TYPES
10717
- function isUndefined(o) {
11007
+ function isUndefined$1(o) {
10718
11008
  return typeof o === "undefined";
10719
11009
  }
10720
11010
  function isNumber$3(o) {
@@ -10815,14 +11105,14 @@ function padStart(input) {
10815
11105
  return padded;
10816
11106
  }
10817
11107
  function parseInteger(string) {
10818
- if (isUndefined(string) || string === null || string === "") {
11108
+ if (isUndefined$1(string) || string === null || string === "") {
10819
11109
  return undefined;
10820
11110
  } else {
10821
11111
  return parseInt(string, 10);
10822
11112
  }
10823
11113
  }
10824
11114
  function parseFloating(string) {
10825
- if (isUndefined(string) || string === null || string === "") {
11115
+ if (isUndefined$1(string) || string === null || string === "") {
10826
11116
  return undefined;
10827
11117
  } else {
10828
11118
  return parseFloat(string);
@@ -10830,7 +11120,7 @@ function parseFloating(string) {
10830
11120
  }
10831
11121
  function parseMillis(fraction) {
10832
11122
  // Return undefined (instead of 0) in these cases, where fraction is not set
10833
- if (isUndefined(fraction) || fraction === null || fraction === "") {
11123
+ if (isUndefined$1(fraction) || fraction === null || fraction === "") {
10834
11124
  return undefined;
10835
11125
  } else {
10836
11126
  var f = parseFloat("0." + fraction) * 1000;
@@ -10948,7 +11238,13 @@ function normalizeObject(obj, normalizer) {
10948
11238
  }
10949
11239
  return normalized;
10950
11240
  }
10951
- function formatOffset(offset, format) {
11241
+ /**
11242
+ * Returns the offset's value as a string
11243
+ * @param {number} ts - Epoch milliseconds for which to get the offset
11244
+ * @param {string} format - What style of offset to return.
11245
+ * Accepts 'narrow', 'short', or 'techie'. Returning '+6', '+06:00', or '+0600' respectively
11246
+ * @return {string}
11247
+ */ function formatOffset(offset, format) {
10952
11248
  var hours = Math.trunc(Math.abs(offset / 60)), minutes = Math.trunc(Math.abs(offset % 60)), sign = offset >= 0 ? "+" : "-";
10953
11249
  switch(format){
10954
11250
  case "short":
@@ -10970,13 +11266,13 @@ function timeObject(obj) {
10970
11266
  ]);
10971
11267
  }
10972
11268
 
10973
- function _array_like_to_array$f(arr, len) {
11269
+ function _array_like_to_array$e(arr, len) {
10974
11270
  if (len == null || len > arr.length) len = arr.length;
10975
11271
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
10976
11272
  return arr2;
10977
11273
  }
10978
11274
  function _array_without_holes$9(arr) {
10979
- if (Array.isArray(arr)) return _array_like_to_array$f(arr);
11275
+ if (Array.isArray(arr)) return _array_like_to_array$e(arr);
10980
11276
  }
10981
11277
  function _iterable_to_array$9(iter) {
10982
11278
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
@@ -10985,15 +11281,15 @@ function _non_iterable_spread$9() {
10985
11281
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
10986
11282
  }
10987
11283
  function _to_consumable_array$9(arr) {
10988
- return _array_without_holes$9(arr) || _iterable_to_array$9(arr) || _unsupported_iterable_to_array$f(arr) || _non_iterable_spread$9();
11284
+ return _array_without_holes$9(arr) || _iterable_to_array$9(arr) || _unsupported_iterable_to_array$e(arr) || _non_iterable_spread$9();
10989
11285
  }
10990
- function _unsupported_iterable_to_array$f(o, minLen) {
11286
+ function _unsupported_iterable_to_array$e(o, minLen) {
10991
11287
  if (!o) return;
10992
- if (typeof o === "string") return _array_like_to_array$f(o, minLen);
11288
+ if (typeof o === "string") return _array_like_to_array$e(o, minLen);
10993
11289
  var n = Object.prototype.toString.call(o).slice(8, -1);
10994
11290
  if (n === "Object" && o.constructor) n = o.constructor.name;
10995
11291
  if (n === "Map" || n === "Set") return Array.from(n);
10996
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$f(o, minLen);
11292
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$e(o, minLen);
10997
11293
  }
10998
11294
  /**
10999
11295
  * @private
@@ -11227,20 +11523,20 @@ function formatRelativeTime(unit, count) {
11227
11523
  return isInPast ? "".concat(fmtValue, " ").concat(fmtUnit, " ago") : "in ".concat(fmtValue, " ").concat(fmtUnit);
11228
11524
  }
11229
11525
 
11230
- function _array_like_to_array$e(arr, len) {
11526
+ function _array_like_to_array$d(arr, len) {
11231
11527
  if (len == null || len > arr.length) len = arr.length;
11232
11528
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
11233
11529
  return arr2;
11234
11530
  }
11235
11531
  function _array_without_holes$8(arr) {
11236
- if (Array.isArray(arr)) return _array_like_to_array$e(arr);
11532
+ if (Array.isArray(arr)) return _array_like_to_array$d(arr);
11237
11533
  }
11238
- function _class_call_check$d(instance, Constructor) {
11534
+ function _class_call_check$e(instance, Constructor) {
11239
11535
  if (!(instance instanceof Constructor)) {
11240
11536
  throw new TypeError("Cannot call a class as a function");
11241
11537
  }
11242
11538
  }
11243
- function _defineProperties$d(target, props) {
11539
+ function _defineProperties$e(target, props) {
11244
11540
  for(var i = 0; i < props.length; i++){
11245
11541
  var descriptor = props[i];
11246
11542
  descriptor.enumerable = descriptor.enumerable || false;
@@ -11249,9 +11545,9 @@ function _defineProperties$d(target, props) {
11249
11545
  Object.defineProperty(target, descriptor.key, descriptor);
11250
11546
  }
11251
11547
  }
11252
- function _create_class$d(Constructor, protoProps, staticProps) {
11253
- if (protoProps) _defineProperties$d(Constructor.prototype, protoProps);
11254
- if (staticProps) _defineProperties$d(Constructor, staticProps);
11548
+ function _create_class$e(Constructor, protoProps, staticProps) {
11549
+ if (protoProps) _defineProperties$e(Constructor.prototype, protoProps);
11550
+ if (staticProps) _defineProperties$e(Constructor, staticProps);
11255
11551
  return Constructor;
11256
11552
  }
11257
11553
  function _define_property$6(obj, key, value) {
@@ -11289,15 +11585,15 @@ function _object_spread$4(target) {
11289
11585
  return target;
11290
11586
  }
11291
11587
  function _to_consumable_array$8(arr) {
11292
- return _array_without_holes$8(arr) || _iterable_to_array$8(arr) || _unsupported_iterable_to_array$e(arr) || _non_iterable_spread$8();
11588
+ return _array_without_holes$8(arr) || _iterable_to_array$8(arr) || _unsupported_iterable_to_array$d(arr) || _non_iterable_spread$8();
11293
11589
  }
11294
- function _unsupported_iterable_to_array$e(o, minLen) {
11590
+ function _unsupported_iterable_to_array$d(o, minLen) {
11295
11591
  if (!o) return;
11296
- if (typeof o === "string") return _array_like_to_array$e(o, minLen);
11592
+ if (typeof o === "string") return _array_like_to_array$d(o, minLen);
11297
11593
  var n = Object.prototype.toString.call(o).slice(8, -1);
11298
11594
  if (n === "Object" && o.constructor) n = o.constructor.name;
11299
11595
  if (n === "Map" || n === "Set") return Array.from(n);
11300
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$e(o, minLen);
11596
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$d(o, minLen);
11301
11597
  }
11302
11598
  function stringifyTokens(splits, tokenToString) {
11303
11599
  var s = "";
@@ -11351,12 +11647,12 @@ var macroTokenToFormatOpts = {
11351
11647
  };
11352
11648
  var Formatter = /*#__PURE__*/ function() {
11353
11649
  function Formatter(locale, formatOpts) {
11354
- _class_call_check$d(this, Formatter);
11650
+ _class_call_check$e(this, Formatter);
11355
11651
  this.opts = formatOpts;
11356
11652
  this.loc = locale;
11357
11653
  this.systemLoc = null;
11358
11654
  }
11359
- _create_class$d(Formatter, [
11655
+ _create_class$e(Formatter, [
11360
11656
  {
11361
11657
  key: "formatWithSystemDefault",
11362
11658
  value: function formatWithSystemDefault(dt, opts) {
@@ -11777,12 +12073,12 @@ var Formatter = /*#__PURE__*/ function() {
11777
12073
  return Formatter;
11778
12074
  }();
11779
12075
 
11780
- function _array_like_to_array$d(arr, len) {
12076
+ function _array_like_to_array$c(arr, len) {
11781
12077
  if (len == null || len > arr.length) len = arr.length;
11782
12078
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
11783
12079
  return arr2;
11784
12080
  }
11785
- function _array_with_holes$b(arr) {
12081
+ function _array_with_holes$a(arr) {
11786
12082
  if (Array.isArray(arr)) return arr;
11787
12083
  }
11788
12084
  function _define_property$5(obj, key, value) {
@@ -11798,7 +12094,7 @@ function _define_property$5(obj, key, value) {
11798
12094
  }
11799
12095
  return obj;
11800
12096
  }
11801
- function _iterable_to_array_limit$b(arr, i) {
12097
+ function _iterable_to_array_limit$a(arr, i) {
11802
12098
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
11803
12099
  if (_i == null) return;
11804
12100
  var _arr = [];
@@ -11822,7 +12118,7 @@ function _iterable_to_array_limit$b(arr, i) {
11822
12118
  }
11823
12119
  return _arr;
11824
12120
  }
11825
- function _non_iterable_rest$b() {
12121
+ function _non_iterable_rest$a() {
11826
12122
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
11827
12123
  }
11828
12124
  function _object_spread$3(target) {
@@ -11840,16 +12136,16 @@ function _object_spread$3(target) {
11840
12136
  }
11841
12137
  return target;
11842
12138
  }
11843
- function _sliced_to_array$b(arr, i) {
11844
- return _array_with_holes$b(arr) || _iterable_to_array_limit$b(arr, i) || _unsupported_iterable_to_array$d(arr, i) || _non_iterable_rest$b();
12139
+ function _sliced_to_array$a(arr, i) {
12140
+ return _array_with_holes$a(arr) || _iterable_to_array_limit$a(arr, i) || _unsupported_iterable_to_array$c(arr, i) || _non_iterable_rest$a();
11845
12141
  }
11846
- function _unsupported_iterable_to_array$d(o, minLen) {
12142
+ function _unsupported_iterable_to_array$c(o, minLen) {
11847
12143
  if (!o) return;
11848
- if (typeof o === "string") return _array_like_to_array$d(o, minLen);
12144
+ if (typeof o === "string") return _array_like_to_array$c(o, minLen);
11849
12145
  var n = Object.prototype.toString.call(o).slice(8, -1);
11850
12146
  if (n === "Object" && o.constructor) n = o.constructor.name;
11851
12147
  if (n === "Map" || n === "Set") return Array.from(n);
11852
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$d(o, minLen);
12148
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$c(o, minLen);
11853
12149
  }
11854
12150
  /*
11855
12151
  * This file handles parsing for well-specified formats. Here's how it works:
@@ -11875,8 +12171,8 @@ function combineExtractors() {
11875
12171
  }
11876
12172
  return function(m) {
11877
12173
  return extractors.reduce(function(param, ex) {
11878
- var _param = _sliced_to_array$b(param, 3), mergedVals = _param[0], mergedZone = _param[1], cursor = _param[2];
11879
- var _ex = _sliced_to_array$b(ex(m, cursor), 3), val = _ex[0], zone = _ex[1], next = _ex[2];
12174
+ var _param = _sliced_to_array$a(param, 3), mergedVals = _param[0], mergedZone = _param[1], cursor = _param[2];
12175
+ var _ex = _sliced_to_array$a(ex(m, cursor), 3), val = _ex[0], zone = _ex[1], next = _ex[2];
11880
12176
  return [
11881
12177
  _object_spread$3({}, mergedVals, val),
11882
12178
  zone || mergedZone,
@@ -11902,7 +12198,7 @@ function parse$8(s) {
11902
12198
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
11903
12199
  try {
11904
12200
  for(var _iterator = patterns[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
11905
- var _step_value = _sliced_to_array$b(_step.value, 2), regex = _step_value[0], extractor = _step_value[1];
12201
+ var _step_value = _sliced_to_array$a(_step.value, 2), regex = _step_value[0], extractor = _step_value[1];
11906
12202
  var m = regex.exec(s);
11907
12203
  if (m) {
11908
12204
  return extractor(m);
@@ -11960,7 +12256,7 @@ var sqlTimeRegex = RegExp("".concat(isoTimeBaseRegex.source, " ?(?:").concat(off
11960
12256
  var sqlTimeExtensionRegex = RegExp("(?: ".concat(sqlTimeRegex.source, ")?"));
11961
12257
  function int(match, pos, fallback) {
11962
12258
  var m = match[pos];
11963
- return isUndefined(m) ? fallback : parseInteger(m);
12259
+ return isUndefined$1(m) ? fallback : parseInteger(m);
11964
12260
  }
11965
12261
  function extractISOYmd(match, cursor) {
11966
12262
  var item = {
@@ -12008,7 +12304,7 @@ var isoTimeOnly = RegExp("^T?".concat(isoTimeBaseRegex.source, "$"));
12008
12304
  // ISO duration parsing
12009
12305
  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)?)?)$/;
12010
12306
  function extractISODuration(match) {
12011
- 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];
12307
+ 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];
12012
12308
  var hasNegativePrefix = s[0] === "-";
12013
12309
  var negativeSeconds = secondStr && secondStr[0] === "-";
12014
12310
  var maybeNegate = function(num) {
@@ -12059,7 +12355,7 @@ function fromStrings(weekdayStr, yearStr, monthStr, dayStr, hourStr, minuteStr,
12059
12355
  // RFC 2822/5322
12060
12356
  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)))$/;
12061
12357
  function extractRFC2822(match) {
12062
- 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);
12358
+ 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);
12063
12359
  var offset;
12064
12360
  if (obsOffset) {
12065
12361
  offset = obsOffsets[obsOffset];
@@ -12080,14 +12376,14 @@ function preprocessRFC2822(s) {
12080
12376
  // http date
12081
12377
  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})$/;
12082
12378
  function extractRFC1123Or850(match) {
12083
- 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);
12379
+ 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);
12084
12380
  return [
12085
12381
  result,
12086
12382
  FixedOffsetZone.utcInstance
12087
12383
  ];
12088
12384
  }
12089
12385
  function extractASCII(match) {
12090
- 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);
12386
+ 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);
12091
12387
  return [
12092
12388
  result,
12093
12389
  FixedOffsetZone.utcInstance
@@ -12162,20 +12458,20 @@ function parseSQL(s) {
12162
12458
  ]);
12163
12459
  }
12164
12460
 
12165
- function _array_like_to_array$c(arr, len) {
12461
+ function _array_like_to_array$b(arr, len) {
12166
12462
  if (len == null || len > arr.length) len = arr.length;
12167
12463
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
12168
12464
  return arr2;
12169
12465
  }
12170
- function _array_with_holes$a(arr) {
12466
+ function _array_with_holes$9(arr) {
12171
12467
  if (Array.isArray(arr)) return arr;
12172
12468
  }
12173
- function _class_call_check$c(instance, Constructor) {
12469
+ function _class_call_check$d(instance, Constructor) {
12174
12470
  if (!(instance instanceof Constructor)) {
12175
12471
  throw new TypeError("Cannot call a class as a function");
12176
12472
  }
12177
12473
  }
12178
- function _defineProperties$c(target, props) {
12474
+ function _defineProperties$d(target, props) {
12179
12475
  for(var i = 0; i < props.length; i++){
12180
12476
  var descriptor = props[i];
12181
12477
  descriptor.enumerable = descriptor.enumerable || false;
@@ -12184,9 +12480,9 @@ function _defineProperties$c(target, props) {
12184
12480
  Object.defineProperty(target, descriptor.key, descriptor);
12185
12481
  }
12186
12482
  }
12187
- function _create_class$c(Constructor, protoProps, staticProps) {
12188
- if (protoProps) _defineProperties$c(Constructor.prototype, protoProps);
12189
- if (staticProps) _defineProperties$c(Constructor, staticProps);
12483
+ function _create_class$d(Constructor, protoProps, staticProps) {
12484
+ if (protoProps) _defineProperties$d(Constructor.prototype, protoProps);
12485
+ if (staticProps) _defineProperties$d(Constructor, staticProps);
12190
12486
  return Constructor;
12191
12487
  }
12192
12488
  function _define_property$4(obj, key, value) {
@@ -12202,14 +12498,14 @@ function _define_property$4(obj, key, value) {
12202
12498
  }
12203
12499
  return obj;
12204
12500
  }
12205
- function _instanceof$f(left, right) {
12501
+ function _instanceof$g(left, right) {
12206
12502
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
12207
12503
  return !!right[Symbol.hasInstance](left);
12208
12504
  } else {
12209
12505
  return left instanceof right;
12210
12506
  }
12211
12507
  }
12212
- function _iterable_to_array_limit$a(arr, i) {
12508
+ function _iterable_to_array_limit$9(arr, i) {
12213
12509
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
12214
12510
  if (_i == null) return;
12215
12511
  var _arr = [];
@@ -12233,7 +12529,7 @@ function _iterable_to_array_limit$a(arr, i) {
12233
12529
  }
12234
12530
  return _arr;
12235
12531
  }
12236
- function _non_iterable_rest$a() {
12532
+ function _non_iterable_rest$9() {
12237
12533
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
12238
12534
  }
12239
12535
  function _object_spread$2(target) {
@@ -12275,20 +12571,20 @@ function _object_spread_props$2(target, source) {
12275
12571
  }
12276
12572
  return target;
12277
12573
  }
12278
- function _sliced_to_array$a(arr, i) {
12279
- return _array_with_holes$a(arr) || _iterable_to_array_limit$a(arr, i) || _unsupported_iterable_to_array$c(arr, i) || _non_iterable_rest$a();
12574
+ function _sliced_to_array$9(arr, i) {
12575
+ return _array_with_holes$9(arr) || _iterable_to_array_limit$9(arr, i) || _unsupported_iterable_to_array$b(arr, i) || _non_iterable_rest$9();
12280
12576
  }
12281
12577
  function _type_of$d(obj) {
12282
12578
  "@swc/helpers - typeof";
12283
12579
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
12284
12580
  }
12285
- function _unsupported_iterable_to_array$c(o, minLen) {
12581
+ function _unsupported_iterable_to_array$b(o, minLen) {
12286
12582
  if (!o) return;
12287
- if (typeof o === "string") return _array_like_to_array$c(o, minLen);
12583
+ if (typeof o === "string") return _array_like_to_array$b(o, minLen);
12288
12584
  var n = Object.prototype.toString.call(o).slice(8, -1);
12289
12585
  if (n === "Object" && o.constructor) n = o.constructor.name;
12290
12586
  if (n === "Map" || n === "Set") return Array.from(n);
12291
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$c(o, minLen);
12587
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$b(o, minLen);
12292
12588
  }
12293
12589
  var INVALID$2 = "Invalid Duration";
12294
12590
  // unit conversion constants
@@ -12433,7 +12729,7 @@ function normalizeValues(matrix, vals) {
12433
12729
  // if this is not the case, factor is used to make it so
12434
12730
  var factor = durationToMillis(matrix, vals) < 0 ? -1 : 1;
12435
12731
  orderedUnits$1.reduceRight(function(previous, current) {
12436
- if (!isUndefined(vals[current])) {
12732
+ if (!isUndefined$1(vals[current])) {
12437
12733
  if (previous) {
12438
12734
  var previousVal = vals[previous] * factor;
12439
12735
  var conv = matrix[current][previous];
@@ -12464,7 +12760,7 @@ function normalizeValues(matrix, vals) {
12464
12760
  // try to convert any decimals into smaller units if possible
12465
12761
  // for example for { years: 2.5, days: 0, seconds: 0 } we want to get { years: 2, days: 182, hours: 12 }
12466
12762
  orderedUnits$1.reduce(function(previous, current) {
12467
- if (!isUndefined(vals[current])) {
12763
+ if (!isUndefined$1(vals[current])) {
12468
12764
  if (previous) {
12469
12765
  var fraction = vals[previous] % 1;
12470
12766
  vals[previous] -= fraction;
@@ -12482,7 +12778,7 @@ function removeZeroes(vals) {
12482
12778
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
12483
12779
  try {
12484
12780
  for(var _iterator = Object.entries(vals)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
12485
- var _step_value = _sliced_to_array$a(_step.value, 2), key = _step_value[0], value = _step_value[1];
12781
+ var _step_value = _sliced_to_array$9(_step.value, 2), key = _step_value[0], value = _step_value[1];
12486
12782
  if (value !== 0) {
12487
12783
  newVals[key] = value;
12488
12784
  }
@@ -12505,7 +12801,7 @@ function removeZeroes(vals) {
12505
12801
  }
12506
12802
  var Duration = /*#__PURE__*/ function() {
12507
12803
  function Duration(config) {
12508
- _class_call_check$c(this, Duration);
12804
+ _class_call_check$d(this, Duration);
12509
12805
  var accurate = config.conversionAccuracy === "longterm" || false;
12510
12806
  var matrix = accurate ? accurateMatrix : casualMatrix;
12511
12807
  if (config.matrix) {
@@ -12530,7 +12826,7 @@ var Duration = /*#__PURE__*/ function() {
12530
12826
  * @access private
12531
12827
  */ this.isLuxonDuration = true;
12532
12828
  }
12533
- _create_class$c(Duration, [
12829
+ _create_class$d(Duration, [
12534
12830
  {
12535
12831
  key: "locale",
12536
12832
  get: /**
@@ -12603,7 +12899,7 @@ var Duration = /*#__PURE__*/ function() {
12603
12899
  if (!this.isValid) return INVALID$2;
12604
12900
  var l = orderedUnits$1.map(function(unit) {
12605
12901
  var val = _this.values[unit];
12606
- if (isUndefined(val)) {
12902
+ if (isUndefined$1(val)) {
12607
12903
  return null;
12608
12904
  }
12609
12905
  return _this.loc.numberFormatter(_object_spread_props$2(_object_spread$2({
@@ -13292,7 +13588,7 @@ var Duration = /*#__PURE__*/ function() {
13292
13588
  * @example Duration.fromISO('P5Y3M').toObject() //=> { years: 5, months: 3 }
13293
13589
  * @return {Duration}
13294
13590
  */ function fromISO(text, opts) {
13295
- var _parseISODuration = _sliced_to_array$a(parseISODuration(text), 1), parsed = _parseISODuration[0];
13591
+ var _parseISODuration = _sliced_to_array$9(parseISODuration(text), 1), parsed = _parseISODuration[0];
13296
13592
  if (parsed) {
13297
13593
  return Duration.fromObject(parsed, opts);
13298
13594
  } else {
@@ -13318,7 +13614,7 @@ var Duration = /*#__PURE__*/ function() {
13318
13614
  * @example Duration.fromISOTime('T1100').toObject() //=> { hours: 11, minutes: 0, seconds: 0 }
13319
13615
  * @return {Duration}
13320
13616
  */ function fromISOTime(text, opts) {
13321
- var _parseISOTimeOnly = _sliced_to_array$a(parseISOTimeOnly(text), 1), parsed = _parseISOTimeOnly[0];
13617
+ var _parseISOTimeOnly = _sliced_to_array$9(parseISOTimeOnly(text), 1), parsed = _parseISOTimeOnly[0];
13322
13618
  if (parsed) {
13323
13619
  return Duration.fromObject(parsed, opts);
13324
13620
  } else {
@@ -13338,7 +13634,7 @@ var Duration = /*#__PURE__*/ function() {
13338
13634
  if (!reason) {
13339
13635
  throw new InvalidArgumentError("need to specify a reason the Duration is invalid");
13340
13636
  }
13341
- var invalid = _instanceof$f(reason, Invalid) ? reason : new Invalid(reason, explanation);
13637
+ var invalid = _instanceof$g(reason, Invalid) ? reason : new Invalid(reason, explanation);
13342
13638
  if (Settings.throwOnInvalid) {
13343
13639
  throw new InvalidDurationError(invalid);
13344
13640
  } else {
@@ -13391,23 +13687,23 @@ var Duration = /*#__PURE__*/ function() {
13391
13687
  return Duration;
13392
13688
  }();
13393
13689
 
13394
- function _array_like_to_array$b(arr, len) {
13690
+ function _array_like_to_array$a(arr, len) {
13395
13691
  if (len == null || len > arr.length) len = arr.length;
13396
13692
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
13397
13693
  return arr2;
13398
13694
  }
13399
- function _array_with_holes$9(arr) {
13695
+ function _array_with_holes$8(arr) {
13400
13696
  if (Array.isArray(arr)) return arr;
13401
13697
  }
13402
13698
  function _array_without_holes$7(arr) {
13403
- if (Array.isArray(arr)) return _array_like_to_array$b(arr);
13699
+ if (Array.isArray(arr)) return _array_like_to_array$a(arr);
13404
13700
  }
13405
- function _class_call_check$b(instance, Constructor) {
13701
+ function _class_call_check$c(instance, Constructor) {
13406
13702
  if (!(instance instanceof Constructor)) {
13407
13703
  throw new TypeError("Cannot call a class as a function");
13408
13704
  }
13409
13705
  }
13410
- function _defineProperties$b(target, props) {
13706
+ function _defineProperties$c(target, props) {
13411
13707
  for(var i = 0; i < props.length; i++){
13412
13708
  var descriptor = props[i];
13413
13709
  descriptor.enumerable = descriptor.enumerable || false;
@@ -13416,12 +13712,12 @@ function _defineProperties$b(target, props) {
13416
13712
  Object.defineProperty(target, descriptor.key, descriptor);
13417
13713
  }
13418
13714
  }
13419
- function _create_class$b(Constructor, protoProps, staticProps) {
13420
- if (protoProps) _defineProperties$b(Constructor.prototype, protoProps);
13421
- if (staticProps) _defineProperties$b(Constructor, staticProps);
13715
+ function _create_class$c(Constructor, protoProps, staticProps) {
13716
+ if (protoProps) _defineProperties$c(Constructor.prototype, protoProps);
13717
+ if (staticProps) _defineProperties$c(Constructor, staticProps);
13422
13718
  return Constructor;
13423
13719
  }
13424
- function _instanceof$e(left, right) {
13720
+ function _instanceof$f(left, right) {
13425
13721
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
13426
13722
  return !!right[Symbol.hasInstance](left);
13427
13723
  } else {
@@ -13431,7 +13727,7 @@ function _instanceof$e(left, right) {
13431
13727
  function _iterable_to_array$7(iter) {
13432
13728
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
13433
13729
  }
13434
- function _iterable_to_array_limit$9(arr, i) {
13730
+ function _iterable_to_array_limit$8(arr, i) {
13435
13731
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
13436
13732
  if (_i == null) return;
13437
13733
  var _arr = [];
@@ -13455,25 +13751,25 @@ function _iterable_to_array_limit$9(arr, i) {
13455
13751
  }
13456
13752
  return _arr;
13457
13753
  }
13458
- function _non_iterable_rest$9() {
13754
+ function _non_iterable_rest$8() {
13459
13755
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
13460
13756
  }
13461
13757
  function _non_iterable_spread$7() {
13462
13758
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
13463
13759
  }
13464
- function _sliced_to_array$9(arr, i) {
13465
- return _array_with_holes$9(arr) || _iterable_to_array_limit$9(arr, i) || _unsupported_iterable_to_array$b(arr, i) || _non_iterable_rest$9();
13760
+ function _sliced_to_array$8(arr, i) {
13761
+ return _array_with_holes$8(arr) || _iterable_to_array_limit$8(arr, i) || _unsupported_iterable_to_array$a(arr, i) || _non_iterable_rest$8();
13466
13762
  }
13467
13763
  function _to_consumable_array$7(arr) {
13468
- return _array_without_holes$7(arr) || _iterable_to_array$7(arr) || _unsupported_iterable_to_array$b(arr) || _non_iterable_spread$7();
13764
+ return _array_without_holes$7(arr) || _iterable_to_array$7(arr) || _unsupported_iterable_to_array$a(arr) || _non_iterable_spread$7();
13469
13765
  }
13470
- function _unsupported_iterable_to_array$b(o, minLen) {
13766
+ function _unsupported_iterable_to_array$a(o, minLen) {
13471
13767
  if (!o) return;
13472
- if (typeof o === "string") return _array_like_to_array$b(o, minLen);
13768
+ if (typeof o === "string") return _array_like_to_array$a(o, minLen);
13473
13769
  var n = Object.prototype.toString.call(o).slice(8, -1);
13474
13770
  if (n === "Object" && o.constructor) n = o.constructor.name;
13475
13771
  if (n === "Map" || n === "Set") return Array.from(n);
13476
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$b(o, minLen);
13772
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$a(o, minLen);
13477
13773
  }
13478
13774
  var INVALID$1 = "Invalid Interval";
13479
13775
  // checks if the start is equal to or before the end
@@ -13490,7 +13786,7 @@ function validateStartEnd(start, end) {
13490
13786
  }
13491
13787
  var Interval = /*#__PURE__*/ function() {
13492
13788
  function Interval(config) {
13493
- _class_call_check$b(this, Interval);
13789
+ _class_call_check$c(this, Interval);
13494
13790
  /**
13495
13791
  * @access private
13496
13792
  */ this.s = config.start;
@@ -13504,7 +13800,7 @@ var Interval = /*#__PURE__*/ function() {
13504
13800
  * @access private
13505
13801
  */ this.isLuxonInterval = true;
13506
13802
  }
13507
- _create_class$b(Interval, [
13803
+ _create_class$c(Interval, [
13508
13804
  {
13509
13805
  key: "start",
13510
13806
  get: /**
@@ -13753,7 +14049,7 @@ var Interval = /*#__PURE__*/ function() {
13753
14049
  },
13754
14050
  {
13755
14051
  /**
13756
- * Return whether this Interval engulfs the start and end of the specified Interval.
14052
+ * 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.
13757
14053
  * @param {Interval} other
13758
14054
  * @return {boolean}
13759
14055
  */ key: "engulfs",
@@ -13973,7 +14269,7 @@ var Interval = /*#__PURE__*/ function() {
13973
14269
  if (!reason) {
13974
14270
  throw new InvalidArgumentError("need to specify a reason the Interval is invalid");
13975
14271
  }
13976
- var invalid = _instanceof$e(reason, Invalid) ? reason : new Invalid(reason, explanation);
14272
+ var invalid = _instanceof$f(reason, Invalid) ? reason : new Invalid(reason, explanation);
13977
14273
  if (Settings.throwOnInvalid) {
13978
14274
  throw new InvalidIntervalError(invalid);
13979
14275
  } else {
@@ -14037,7 +14333,7 @@ var Interval = /*#__PURE__*/ function() {
14037
14333
  * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals
14038
14334
  * @return {Interval}
14039
14335
  */ function fromISO(text, opts) {
14040
- var _split = _sliced_to_array$9((text || "").split("/", 2), 2), s = _split[0], e = _split[1];
14336
+ var _split = _sliced_to_array$8((text || "").split("/", 2), 2), s = _split[0], e = _split[1];
14041
14337
  if (s && e) {
14042
14338
  var start, startIsValid;
14043
14339
  try {
@@ -14089,10 +14385,10 @@ var Interval = /*#__PURE__*/ function() {
14089
14385
  * @param {Array} intervals
14090
14386
  * @return {Array}
14091
14387
  */ function merge(intervals) {
14092
- var _intervals_sort_reduce = _sliced_to_array$9(intervals.sort(function(a, b) {
14388
+ var _intervals_sort_reduce = _sliced_to_array$8(intervals.sort(function(a, b) {
14093
14389
  return a.s - b.s;
14094
14390
  }).reduce(function(param, item) {
14095
- var _param = _sliced_to_array$9(param, 2), sofar = _param[0], current = _param[1];
14391
+ var _param = _sliced_to_array$8(param, 2), sofar = _param[0], current = _param[1];
14096
14392
  if (!current) {
14097
14393
  return [
14098
14394
  sofar,
@@ -14179,12 +14475,12 @@ var Interval = /*#__PURE__*/ function() {
14179
14475
  return Interval;
14180
14476
  }();
14181
14477
 
14182
- function _class_call_check$a(instance, Constructor) {
14478
+ function _class_call_check$b(instance, Constructor) {
14183
14479
  if (!(instance instanceof Constructor)) {
14184
14480
  throw new TypeError("Cannot call a class as a function");
14185
14481
  }
14186
14482
  }
14187
- function _defineProperties$a(target, props) {
14483
+ function _defineProperties$b(target, props) {
14188
14484
  for(var i = 0; i < props.length; i++){
14189
14485
  var descriptor = props[i];
14190
14486
  descriptor.enumerable = descriptor.enumerable || false;
@@ -14193,16 +14489,16 @@ function _defineProperties$a(target, props) {
14193
14489
  Object.defineProperty(target, descriptor.key, descriptor);
14194
14490
  }
14195
14491
  }
14196
- function _create_class$a(Constructor, protoProps, staticProps) {
14197
- if (protoProps) _defineProperties$a(Constructor.prototype, protoProps);
14198
- if (staticProps) _defineProperties$a(Constructor, staticProps);
14492
+ function _create_class$b(Constructor, protoProps, staticProps) {
14493
+ if (protoProps) _defineProperties$b(Constructor.prototype, protoProps);
14494
+ if (staticProps) _defineProperties$b(Constructor, staticProps);
14199
14495
  return Constructor;
14200
14496
  }
14201
14497
  var Info = /*#__PURE__*/ function() {
14202
14498
  function Info() {
14203
- _class_call_check$a(this, Info);
14499
+ _class_call_check$b(this, Info);
14204
14500
  }
14205
- _create_class$a(Info, null, [
14501
+ _create_class$b(Info, null, [
14206
14502
  {
14207
14503
  key: "hasDST",
14208
14504
  value: /**
@@ -14420,16 +14716,16 @@ var Info = /*#__PURE__*/ function() {
14420
14716
  return Info;
14421
14717
  }();
14422
14718
 
14423
- function _array_like_to_array$a(arr, len) {
14719
+ function _array_like_to_array$9(arr, len) {
14424
14720
  if (len == null || len > arr.length) len = arr.length;
14425
14721
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
14426
14722
  return arr2;
14427
14723
  }
14428
- function _array_with_holes$8(arr) {
14724
+ function _array_with_holes$7(arr) {
14429
14725
  if (Array.isArray(arr)) return arr;
14430
14726
  }
14431
14727
  function _array_without_holes$6(arr) {
14432
- if (Array.isArray(arr)) return _array_like_to_array$a(arr);
14728
+ if (Array.isArray(arr)) return _array_like_to_array$9(arr);
14433
14729
  }
14434
14730
  function _define_property$3(obj, key, value) {
14435
14731
  if (key in obj) {
@@ -14447,7 +14743,7 @@ function _define_property$3(obj, key, value) {
14447
14743
  function _iterable_to_array$6(iter) {
14448
14744
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
14449
14745
  }
14450
- function _iterable_to_array_limit$8(arr, i) {
14746
+ function _iterable_to_array_limit$7(arr, i) {
14451
14747
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
14452
14748
  if (_i == null) return;
14453
14749
  var _arr = [];
@@ -14471,25 +14767,25 @@ function _iterable_to_array_limit$8(arr, i) {
14471
14767
  }
14472
14768
  return _arr;
14473
14769
  }
14474
- function _non_iterable_rest$8() {
14770
+ function _non_iterable_rest$7() {
14475
14771
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
14476
14772
  }
14477
14773
  function _non_iterable_spread$6() {
14478
14774
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
14479
14775
  }
14480
- function _sliced_to_array$8(arr, i) {
14481
- return _array_with_holes$8(arr) || _iterable_to_array_limit$8(arr, i) || _unsupported_iterable_to_array$a(arr, i) || _non_iterable_rest$8();
14776
+ function _sliced_to_array$7(arr, i) {
14777
+ return _array_with_holes$7(arr) || _iterable_to_array_limit$7(arr, i) || _unsupported_iterable_to_array$9(arr, i) || _non_iterable_rest$7();
14482
14778
  }
14483
14779
  function _to_consumable_array$6(arr) {
14484
- return _array_without_holes$6(arr) || _iterable_to_array$6(arr) || _unsupported_iterable_to_array$a(arr) || _non_iterable_spread$6();
14780
+ return _array_without_holes$6(arr) || _iterable_to_array$6(arr) || _unsupported_iterable_to_array$9(arr) || _non_iterable_spread$6();
14485
14781
  }
14486
- function _unsupported_iterable_to_array$a(o, minLen) {
14782
+ function _unsupported_iterable_to_array$9(o, minLen) {
14487
14783
  if (!o) return;
14488
- if (typeof o === "string") return _array_like_to_array$a(o, minLen);
14784
+ if (typeof o === "string") return _array_like_to_array$9(o, minLen);
14489
14785
  var n = Object.prototype.toString.call(o).slice(8, -1);
14490
14786
  if (n === "Object" && o.constructor) n = o.constructor.name;
14491
14787
  if (n === "Map" || n === "Set") return Array.from(n);
14492
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$a(o, minLen);
14788
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$9(o, minLen);
14493
14789
  }
14494
14790
  function dayDiff(earlier, later) {
14495
14791
  var utcDayStart = function(dt) {
@@ -14544,7 +14840,7 @@ function highOrderDiffs(cursor, later, units) {
14544
14840
  this is used later to potentially convert any difference smaller than the smallest higher order unit
14545
14841
  into a fraction of that smallest higher order unit
14546
14842
  */ for(var _iterator = differs[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
14547
- var _step_value = _sliced_to_array$8(_step.value, 2), unit = _step_value[0], differ = _step_value[1];
14843
+ var _step_value = _sliced_to_array$7(_step.value, 2), unit = _step_value[0], differ = _step_value[1];
14548
14844
  if (units.indexOf(unit) >= 0) {
14549
14845
  lowestOrder = unit;
14550
14846
  results[unit] = differ(cursor, later);
@@ -14572,224 +14868,49 @@ function highOrderDiffs(cursor, later, units) {
14572
14868
  _didIteratorError = true;
14573
14869
  _iteratorError = err;
14574
14870
  } finally{
14575
- try {
14576
- if (!_iteratorNormalCompletion && _iterator.return != null) {
14577
- _iterator.return();
14578
- }
14579
- } finally{
14580
- if (_didIteratorError) {
14581
- throw _iteratorError;
14582
- }
14583
- }
14584
- }
14585
- return [
14586
- cursor,
14587
- results,
14588
- highWater,
14589
- lowestOrder
14590
- ];
14591
- }
14592
- function diff$2(earlier, later, units, opts) {
14593
- var _highOrderDiffs = _sliced_to_array$8(highOrderDiffs(earlier, later, units), 4), cursor = _highOrderDiffs[0], results = _highOrderDiffs[1], highWater = _highOrderDiffs[2], lowestOrder = _highOrderDiffs[3];
14594
- var remainingMillis = later - cursor;
14595
- var lowerOrderUnits = units.filter(function(u) {
14596
- return [
14597
- "hours",
14598
- "minutes",
14599
- "seconds",
14600
- "milliseconds"
14601
- ].indexOf(u) >= 0;
14602
- });
14603
- if (lowerOrderUnits.length === 0) {
14604
- if (highWater < later) {
14605
- highWater = cursor.plus(_define_property$3({}, lowestOrder, 1));
14606
- }
14607
- if (highWater !== cursor) {
14608
- results[lowestOrder] = (results[lowestOrder] || 0) + remainingMillis / (highWater - cursor);
14609
- }
14610
- }
14611
- var duration = Duration.fromObject(results, opts);
14612
- if (lowerOrderUnits.length > 0) {
14613
- var _Duration_fromMillis;
14614
- return (_Duration_fromMillis = Duration.fromMillis(remainingMillis, opts)).shiftTo.apply(_Duration_fromMillis, _to_consumable_array$6(lowerOrderUnits)).plus(duration);
14615
- } else {
14616
- return duration;
14617
- }
14618
- }
14619
-
14620
- function _array_like_to_array$9(arr, len) {
14621
- if (len == null || len > arr.length) len = arr.length;
14622
- for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
14623
- return arr2;
14624
- }
14625
- function _array_with_holes$7(arr) {
14626
- if (Array.isArray(arr)) return arr;
14627
- }
14628
- function _iterable_to_array_limit$7(arr, i) {
14629
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
14630
- if (_i == null) return;
14631
- var _arr = [];
14632
- var _n = true;
14633
- var _d = false;
14634
- var _s, _e;
14635
- try {
14636
- for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
14637
- _arr.push(_s.value);
14638
- if (i && _arr.length === i) break;
14639
- }
14640
- } catch (err) {
14641
- _d = true;
14642
- _e = err;
14643
- } finally{
14644
- try {
14645
- if (!_n && _i["return"] != null) _i["return"]();
14646
- } finally{
14647
- if (_d) throw _e;
14648
- }
14649
- }
14650
- return _arr;
14651
- }
14652
- function _non_iterable_rest$7() {
14653
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
14654
- }
14655
- function _sliced_to_array$7(arr, i) {
14656
- return _array_with_holes$7(arr) || _iterable_to_array_limit$7(arr, i) || _unsupported_iterable_to_array$9(arr, i) || _non_iterable_rest$7();
14657
- }
14658
- function _unsupported_iterable_to_array$9(o, minLen) {
14659
- if (!o) return;
14660
- if (typeof o === "string") return _array_like_to_array$9(o, minLen);
14661
- var n = Object.prototype.toString.call(o).slice(8, -1);
14662
- if (n === "Object" && o.constructor) n = o.constructor.name;
14663
- if (n === "Map" || n === "Set") return Array.from(n);
14664
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$9(o, minLen);
14665
- }
14666
- var numberingSystems = {
14667
- arab: "[٠-٩]",
14668
- arabext: "[۰-۹]",
14669
- bali: "[᭐-᭙]",
14670
- beng: "[০-৯]",
14671
- deva: "[०-९]",
14672
- fullwide: "[0-9]",
14673
- gujr: "[૦-૯]",
14674
- hanidec: "[〇|一|二|三|四|五|六|七|八|九]",
14675
- khmr: "[០-៩]",
14676
- knda: "[೦-೯]",
14677
- laoo: "[໐-໙]",
14678
- limb: "[᥆-᥏]",
14679
- mlym: "[൦-൯]",
14680
- mong: "[᠐-᠙]",
14681
- mymr: "[၀-၉]",
14682
- orya: "[୦-୯]",
14683
- tamldec: "[௦-௯]",
14684
- telu: "[౦-౯]",
14685
- thai: "[๐-๙]",
14686
- tibt: "[༠-༩]",
14687
- latn: "\\d"
14688
- };
14689
- var numberingSystemsUTF16 = {
14690
- arab: [
14691
- 1632,
14692
- 1641
14693
- ],
14694
- arabext: [
14695
- 1776,
14696
- 1785
14697
- ],
14698
- bali: [
14699
- 6992,
14700
- 7001
14701
- ],
14702
- beng: [
14703
- 2534,
14704
- 2543
14705
- ],
14706
- deva: [
14707
- 2406,
14708
- 2415
14709
- ],
14710
- fullwide: [
14711
- 65296,
14712
- 65303
14713
- ],
14714
- gujr: [
14715
- 2790,
14716
- 2799
14717
- ],
14718
- khmr: [
14719
- 6112,
14720
- 6121
14721
- ],
14722
- knda: [
14723
- 3302,
14724
- 3311
14725
- ],
14726
- laoo: [
14727
- 3792,
14728
- 3801
14729
- ],
14730
- limb: [
14731
- 6470,
14732
- 6479
14733
- ],
14734
- mlym: [
14735
- 3430,
14736
- 3439
14737
- ],
14738
- mong: [
14739
- 6160,
14740
- 6169
14741
- ],
14742
- mymr: [
14743
- 4160,
14744
- 4169
14745
- ],
14746
- orya: [
14747
- 2918,
14748
- 2927
14749
- ],
14750
- tamldec: [
14751
- 3046,
14752
- 3055
14753
- ],
14754
- telu: [
14755
- 3174,
14756
- 3183
14757
- ],
14758
- thai: [
14759
- 3664,
14760
- 3673
14761
- ],
14762
- tibt: [
14763
- 3872,
14764
- 3881
14765
- ]
14766
- };
14767
- var hanidecChars = numberingSystems.hanidec.replace(/[\[|\]]/g, "").split("");
14768
- function parseDigits(str) {
14769
- var value = parseInt(str, 10);
14770
- if (isNaN(value)) {
14771
- value = "";
14772
- for(var i = 0; i < str.length; i++){
14773
- var code = str.charCodeAt(i);
14774
- if (str[i].search(numberingSystems.hanidec) !== -1) {
14775
- value += hanidecChars.indexOf(str[i]);
14776
- } else {
14777
- for(var key in numberingSystemsUTF16){
14778
- var _numberingSystemsUTF16_key = _sliced_to_array$7(numberingSystemsUTF16[key], 2), min = _numberingSystemsUTF16_key[0], max = _numberingSystemsUTF16_key[1];
14779
- if (code >= min && code <= max) {
14780
- value += code - min;
14781
- }
14782
- }
14871
+ try {
14872
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
14873
+ _iterator.return();
14874
+ }
14875
+ } finally{
14876
+ if (_didIteratorError) {
14877
+ throw _iteratorError;
14783
14878
  }
14784
14879
  }
14785
- return parseInt(value, 10);
14786
- } else {
14787
- return value;
14788
14880
  }
14881
+ return [
14882
+ cursor,
14883
+ results,
14884
+ highWater,
14885
+ lowestOrder
14886
+ ];
14789
14887
  }
14790
- function digitRegex(param) {
14791
- var numberingSystem = param.numberingSystem, append = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "";
14792
- return new RegExp("".concat(numberingSystems[numberingSystem || "latn"]).concat(append));
14888
+ function diff$2(earlier, later, units, opts) {
14889
+ var _highOrderDiffs = _sliced_to_array$7(highOrderDiffs(earlier, later, units), 4), cursor = _highOrderDiffs[0], results = _highOrderDiffs[1], highWater = _highOrderDiffs[2], lowestOrder = _highOrderDiffs[3];
14890
+ var remainingMillis = later - cursor;
14891
+ var lowerOrderUnits = units.filter(function(u) {
14892
+ return [
14893
+ "hours",
14894
+ "minutes",
14895
+ "seconds",
14896
+ "milliseconds"
14897
+ ].indexOf(u) >= 0;
14898
+ });
14899
+ if (lowerOrderUnits.length === 0) {
14900
+ if (highWater < later) {
14901
+ highWater = cursor.plus(_define_property$3({}, lowestOrder, 1));
14902
+ }
14903
+ if (highWater !== cursor) {
14904
+ results[lowestOrder] = (results[lowestOrder] || 0) + remainingMillis / (highWater - cursor);
14905
+ }
14906
+ }
14907
+ var duration = Duration.fromObject(results, opts);
14908
+ if (lowerOrderUnits.length > 0) {
14909
+ var _Duration_fromMillis;
14910
+ return (_Duration_fromMillis = Duration.fromMillis(remainingMillis, opts)).shiftTo.apply(_Duration_fromMillis, _to_consumable_array$6(lowerOrderUnits)).plus(duration);
14911
+ } else {
14912
+ return duration;
14913
+ }
14793
14914
  }
14794
14915
 
14795
14916
  function _array_like_to_array$8(arr, len) {
@@ -14803,6 +14924,25 @@ function _array_with_holes$6(arr) {
14803
14924
  function _array_without_holes$5(arr) {
14804
14925
  if (Array.isArray(arr)) return _array_like_to_array$8(arr);
14805
14926
  }
14927
+ function _class_call_check$a(instance, Constructor) {
14928
+ if (!(instance instanceof Constructor)) {
14929
+ throw new TypeError("Cannot call a class as a function");
14930
+ }
14931
+ }
14932
+ function _defineProperties$a(target, props) {
14933
+ for(var i = 0; i < props.length; i++){
14934
+ var descriptor = props[i];
14935
+ descriptor.enumerable = descriptor.enumerable || false;
14936
+ descriptor.configurable = true;
14937
+ if ("value" in descriptor) descriptor.writable = true;
14938
+ Object.defineProperty(target, descriptor.key, descriptor);
14939
+ }
14940
+ }
14941
+ function _create_class$a(Constructor, protoProps, staticProps) {
14942
+ if (protoProps) _defineProperties$a(Constructor.prototype, protoProps);
14943
+ if (staticProps) _defineProperties$a(Constructor, staticProps);
14944
+ return Constructor;
14945
+ }
14806
14946
  function _iterable_to_array$5(iter) {
14807
14947
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
14808
14948
  }
@@ -15209,19 +15349,19 @@ function dateTimeFromMatches(matches) {
15209
15349
  };
15210
15350
  var zone = null;
15211
15351
  var specificOffset;
15212
- if (!isUndefined(matches.z)) {
15352
+ if (!isUndefined$1(matches.z)) {
15213
15353
  zone = IANAZone.create(matches.z);
15214
15354
  }
15215
- if (!isUndefined(matches.Z)) {
15355
+ if (!isUndefined$1(matches.Z)) {
15216
15356
  if (!zone) {
15217
15357
  zone = new FixedOffsetZone(matches.Z);
15218
15358
  }
15219
15359
  specificOffset = matches.Z;
15220
15360
  }
15221
- if (!isUndefined(matches.q)) {
15361
+ if (!isUndefined$1(matches.q)) {
15222
15362
  matches.M = (matches.q - 1) * 3 + 1;
15223
15363
  }
15224
- if (!isUndefined(matches.h)) {
15364
+ if (!isUndefined$1(matches.h)) {
15225
15365
  if (matches.h < 12 && matches.a === 1) {
15226
15366
  matches.h += 12;
15227
15367
  } else if (matches.h === 12 && matches.a === 0) {
@@ -15231,7 +15371,7 @@ function dateTimeFromMatches(matches) {
15231
15371
  if (matches.G === 0 && matches.y) {
15232
15372
  matches.y = -matches.y;
15233
15373
  }
15234
- if (!isUndefined(matches.u)) {
15374
+ if (!isUndefined$1(matches.u)) {
15235
15375
  matches.S = parseMillis(matches.u);
15236
15376
  }
15237
15377
  var vals = Object.keys(matches).reduce(function(r, k) {
@@ -15273,38 +15413,74 @@ function expandMacroTokens(tokens, locale) {
15273
15413
  }
15274
15414
  /**
15275
15415
  * @private
15276
- */ function explainFromTokens(locale, input, format) {
15277
- var tokens = expandMacroTokens(Formatter.parseFormat(format), locale), units = tokens.map(function(t) {
15278
- return unitForToken(t, locale);
15279
- }), disqualifyingUnit = units.find(function(t) {
15280
- return t.invalidReason;
15281
- });
15282
- if (disqualifyingUnit) {
15283
- return {
15284
- input: input,
15285
- tokens: tokens,
15286
- invalidReason: disqualifyingUnit.invalidReason
15287
- };
15288
- } else {
15289
- 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) : [
15290
- null,
15291
- null,
15292
- undefined
15293
- ], 3), result = _ref[0], zone = _ref[1], specificOffset = _ref[2];
15294
- if (hasOwnProperty$2(matches, "a") && hasOwnProperty$2(matches, "H")) {
15295
- throw new ConflictingSpecificationError("Can't include meridiem when specifying 24-hour format");
15416
+ */ var TokenParser = /*#__PURE__*/ function() {
15417
+ function TokenParser(locale, format) {
15418
+ _class_call_check$a(this, TokenParser);
15419
+ this.locale = locale;
15420
+ this.format = format;
15421
+ this.tokens = expandMacroTokens(Formatter.parseFormat(format), locale);
15422
+ this.units = this.tokens.map(function(t) {
15423
+ return unitForToken(t, locale);
15424
+ });
15425
+ this.disqualifyingUnit = this.units.find(function(t) {
15426
+ return t.invalidReason;
15427
+ });
15428
+ if (!this.disqualifyingUnit) {
15429
+ var _buildRegex = _sliced_to_array$6(buildRegex(this.units), 2), regexString = _buildRegex[0], handlers = _buildRegex[1];
15430
+ this.regex = RegExp(regexString, "i");
15431
+ this.handlers = handlers;
15296
15432
  }
15297
- return {
15298
- input: input,
15299
- tokens: tokens,
15300
- regex: regex,
15301
- rawMatches: rawMatches,
15302
- matches: matches,
15303
- result: result,
15304
- zone: zone,
15305
- specificOffset: specificOffset
15306
- };
15307
15433
  }
15434
+ _create_class$a(TokenParser, [
15435
+ {
15436
+ key: "explainFromTokens",
15437
+ value: function explainFromTokens(input) {
15438
+ if (!this.isValid) {
15439
+ return {
15440
+ input: input,
15441
+ tokens: this.tokens,
15442
+ invalidReason: this.invalidReason
15443
+ };
15444
+ } else {
15445
+ 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) : [
15446
+ null,
15447
+ null,
15448
+ undefined
15449
+ ], 3), result = _ref[0], zone = _ref[1], specificOffset = _ref[2];
15450
+ if (hasOwnProperty$2(matches, "a") && hasOwnProperty$2(matches, "H")) {
15451
+ throw new ConflictingSpecificationError("Can't include meridiem when specifying 24-hour format");
15452
+ }
15453
+ return {
15454
+ input: input,
15455
+ tokens: this.tokens,
15456
+ regex: this.regex,
15457
+ rawMatches: rawMatches,
15458
+ matches: matches,
15459
+ result: result,
15460
+ zone: zone,
15461
+ specificOffset: specificOffset
15462
+ };
15463
+ }
15464
+ }
15465
+ },
15466
+ {
15467
+ key: "isValid",
15468
+ get: function get() {
15469
+ return !this.disqualifyingUnit;
15470
+ }
15471
+ },
15472
+ {
15473
+ key: "invalidReason",
15474
+ get: function get() {
15475
+ return this.disqualifyingUnit ? this.disqualifyingUnit.invalidReason : null;
15476
+ }
15477
+ }
15478
+ ]);
15479
+ return TokenParser;
15480
+ }();
15481
+ function explainFromTokens(locale, input, format) {
15482
+ var parser = new TokenParser(locale, format);
15483
+ return parser.explainFromTokens(input);
15308
15484
  }
15309
15485
  function parseFromTokens(locale, input, format) {
15310
15486
  var _explainFromTokens = explainFromTokens(locale, input, format), result = _explainFromTokens.result, zone = _explainFromTokens.zone, specificOffset = _explainFromTokens.specificOffset, invalidReason = _explainFromTokens.invalidReason;
@@ -15368,7 +15544,7 @@ function _define_property$2(obj, key, value) {
15368
15544
  }
15369
15545
  return obj;
15370
15546
  }
15371
- function _instanceof$d(left, right) {
15547
+ function _instanceof$e(left, right) {
15372
15548
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
15373
15549
  return !!right[Symbol.hasInstance](left);
15374
15550
  } else {
@@ -15739,19 +15915,51 @@ function normalizeUnitWithLocalWeeks(unit) {
15739
15915
  return normalizeUnit(unit);
15740
15916
  }
15741
15917
  }
15918
+ // cache offsets for zones based on the current timestamp when this function is
15919
+ // first called. When we are handling a datetime from components like (year,
15920
+ // month, day, hour) in a time zone, we need a guess about what the timezone
15921
+ // offset is so that we can convert into a UTC timestamp. One way is to find the
15922
+ // offset of now in the zone. The actual date may have a different offset (for
15923
+ // example, if we handle a date in June while we're in December in a zone that
15924
+ // observes DST), but we can check and adjust that.
15925
+ //
15926
+ // When handling many dates, calculating the offset for now every time is
15927
+ // expensive. It's just a guess, so we can cache the offset to use even if we
15928
+ // are right on a time change boundary (we'll just correct in the other
15929
+ // direction). Using a timestamp from first read is a slight optimization for
15930
+ // handling dates close to the current date, since those dates will usually be
15931
+ // in the same offset (we could set the timestamp statically, instead). We use a
15932
+ // single timestamp for all zones to make things a bit more predictable.
15933
+ //
15934
+ // This is safe for quickDT (used by local() and utc()) because we don't fill in
15935
+ // higher-order units from tsNow (as we do in fromObject, this requires that
15936
+ // offset is calculated from tsNow).
15937
+ function guessOffsetForZone(zone) {
15938
+ if (!zoneOffsetGuessCache[zone]) {
15939
+ if (zoneOffsetTs === undefined) {
15940
+ zoneOffsetTs = Settings.now();
15941
+ }
15942
+ zoneOffsetGuessCache[zone] = zone.offset(zoneOffsetTs);
15943
+ }
15944
+ return zoneOffsetGuessCache[zone];
15945
+ }
15742
15946
  // this is a dumbed down version of fromObject() that runs about 60% faster
15743
15947
  // but doesn't do any validation, makes a bunch of assumptions about what units
15744
15948
  // are present, and so on.
15745
15949
  function quickDT(obj, opts) {
15746
- var zone = normalizeZone(opts.zone, Settings.defaultZone), loc = Locale.fromObject(opts), tsNow = Settings.now();
15950
+ var zone = normalizeZone(opts.zone, Settings.defaultZone);
15951
+ if (!zone.isValid) {
15952
+ return DateTime.invalid(unsupportedZone(zone));
15953
+ }
15954
+ var loc = Locale.fromObject(opts);
15747
15955
  var ts, o;
15748
15956
  // assume we have the higher-order units
15749
- if (!isUndefined(obj.year)) {
15957
+ if (!isUndefined$1(obj.year)) {
15750
15958
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
15751
15959
  try {
15752
15960
  for(var _iterator = orderedUnits[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
15753
15961
  var u = _step.value;
15754
- if (isUndefined(obj[u])) {
15962
+ if (isUndefined$1(obj[u])) {
15755
15963
  obj[u] = defaultUnitValues[u];
15756
15964
  }
15757
15965
  }
@@ -15773,11 +15981,11 @@ function quickDT(obj, opts) {
15773
15981
  if (invalid) {
15774
15982
  return DateTime.invalid(invalid);
15775
15983
  }
15776
- var offsetProvis = zone.offset(tsNow);
15984
+ var offsetProvis = guessOffsetForZone(zone);
15777
15985
  var ref;
15778
15986
  ref = _sliced_to_array$5(objToTS(obj, offsetProvis, zone), 2), ts = ref[0], o = ref[1];
15779
15987
  } else {
15780
- ts = tsNow;
15988
+ ts = Settings.now();
15781
15989
  }
15782
15990
  return new DateTime({
15783
15991
  ts: ts,
@@ -15787,7 +15995,7 @@ function quickDT(obj, opts) {
15787
15995
  });
15788
15996
  }
15789
15997
  function diffRelative(start, end, opts) {
15790
- var round = isUndefined(opts.round) ? true : opts.round, format = function(c, unit) {
15998
+ var round = isUndefined$1(opts.round) ? true : opts.round, format = function(c, unit) {
15791
15999
  c = roundTo(c, round || opts.calendary ? 0 : 2, true);
15792
16000
  var formatter = end.loc.clone(opts).relFormatter(opts);
15793
16001
  return formatter.format(c, unit);
@@ -15841,6 +16049,15 @@ function lastOpts(argList) {
15841
16049
  args
15842
16050
  ];
15843
16051
  }
16052
+ /**
16053
+ * Timestamp to use for cached zone offset guesses (exposed for test)
16054
+ */ var zoneOffsetTs;
16055
+ /**
16056
+ * Cache for zone offset guesses (exposed for test).
16057
+ *
16058
+ * This optimizes quickDT via guessOffsetForZone to avoid repeated calls of
16059
+ * zone.offset().
16060
+ */ var zoneOffsetGuessCache = {};
15844
16061
  var DateTime = /*#__PURE__*/ function() {
15845
16062
  function DateTime(config) {
15846
16063
  _class_call_check$9(this, DateTime);
@@ -15848,7 +16065,7 @@ var DateTime = /*#__PURE__*/ function() {
15848
16065
  var invalid = config.invalid || (Number.isNaN(config.ts) ? new Invalid("invalid input") : null) || (!zone.isValid ? unsupportedZone(zone) : null);
15849
16066
  /**
15850
16067
  * @access private
15851
- */ this.ts = isUndefined(config.ts) ? Settings.now() : config.ts;
16068
+ */ this.ts = isUndefined$1(config.ts) ? Settings.now() : config.ts;
15852
16069
  var c = null, o = null;
15853
16070
  if (!invalid) {
15854
16071
  var unchanged = config.old && config.old.ts === this.ts && config.old.zone.equals(zone);
@@ -15859,7 +16076,9 @@ var DateTime = /*#__PURE__*/ function() {
15859
16076
  config.old.o
15860
16077
  ], c = ref[0], o = ref[1];
15861
16078
  } else {
15862
- var ot = zone.offset(this.ts);
16079
+ // If an offset has been passed and we have not been called from
16080
+ // clone(), we can trust it and avoid the offset calculation.
16081
+ var ot = isNumber$3(config.o) && !config.old ? config.o : zone.offset(this.ts);
15863
16082
  c = tsToObj(this.ts, ot);
15864
16083
  invalid = Number.isNaN(c.year) ? new Invalid("invalid input") : null;
15865
16084
  c = invalid ? null : c;
@@ -16497,7 +16716,7 @@ var DateTime = /*#__PURE__*/ function() {
16497
16716
  if (!this.isValid) return this;
16498
16717
  var normalized = normalizeObject(values, normalizeUnitWithLocalWeeks);
16499
16718
  var _usesLocalWeekValues = usesLocalWeekValues(normalized, this.loc), minDaysInFirstWeek = _usesLocalWeekValues.minDaysInFirstWeek, startOfWeek = _usesLocalWeekValues.startOfWeek;
16500
- 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;
16719
+ 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;
16501
16720
  if ((containsGregor || containsOrdinal) && definiteWeekDef) {
16502
16721
  throw new ConflictingSpecificationError("Can't mix weekYear/weekNumber units with year/month/day or ordinals");
16503
16722
  }
@@ -16507,13 +16726,13 @@ var DateTime = /*#__PURE__*/ function() {
16507
16726
  var mixed;
16508
16727
  if (settingWeekStuff) {
16509
16728
  mixed = weekToGregorian(_object_spread$1({}, gregorianToWeek(this.c, minDaysInFirstWeek, startOfWeek), normalized), minDaysInFirstWeek, startOfWeek);
16510
- } else if (!isUndefined(normalized.ordinal)) {
16729
+ } else if (!isUndefined$1(normalized.ordinal)) {
16511
16730
  mixed = ordinalToGregorian(_object_spread$1({}, gregorianToOrdinal(this.c), normalized));
16512
16731
  } else {
16513
16732
  mixed = _object_spread$1({}, this.toObject(), normalized);
16514
16733
  // if we didn't set the day but we ended up on an overflow date,
16515
16734
  // use the last day of the right month
16516
- if (isUndefined(normalized.day)) {
16735
+ if (isUndefined$1(normalized.day)) {
16517
16736
  mixed.day = Math.min(daysInMonth(mixed.year, mixed.month), mixed.day);
16518
16737
  }
16519
16738
  }
@@ -17192,6 +17411,7 @@ var DateTime = /*#__PURE__*/ function() {
17192
17411
  * @param {string} [options.locale] - a locale to set on the resulting DateTime instance
17193
17412
  * @param {string} [options.outputCalendar] - the output calendar to set on the resulting DateTime instance
17194
17413
  * @param {string} [options.numberingSystem] - the numbering system to set on the resulting DateTime instance
17414
+ * @param {string} [options.weekSettings] - the week settings to set on the resulting DateTime instance
17195
17415
  * @example DateTime.utc() //~> now
17196
17416
  * @example DateTime.utc(2017) //~> 2017-01-01T00:00:00Z
17197
17417
  * @example DateTime.utc(2017, 3) //~> 2017-03-01T00:00:00Z
@@ -17251,13 +17471,14 @@ var DateTime = /*#__PURE__*/ function() {
17251
17471
  * @param {string} [options.locale] - a locale to set on the resulting DateTime instance
17252
17472
  * @param {string} options.outputCalendar - the output calendar to set on the resulting DateTime instance
17253
17473
  * @param {string} options.numberingSystem - the numbering system to set on the resulting DateTime instance
17474
+ * @param {string} options.weekSettings - the week settings to set on the resulting DateTime instance
17254
17475
  * @return {DateTime}
17255
17476
  */ function fromMillis(milliseconds) {
17256
17477
  var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
17257
17478
  if (!isNumber$3(milliseconds)) {
17258
17479
  throw new InvalidArgumentError("fromMillis requires a numerical input, but received a ".concat(typeof milliseconds === "undefined" ? "undefined" : _type_of$c(milliseconds), " with value ").concat(milliseconds));
17259
17480
  } else if (milliseconds < -MAX_DATE || milliseconds > MAX_DATE) {
17260
- // this isn't perfect because because we can still end up out of range because of additional shifting, but it's a start
17481
+ // this isn't perfect because we can still end up out of range because of additional shifting, but it's a start
17261
17482
  return DateTime.invalid("Timestamp out of range");
17262
17483
  } else {
17263
17484
  return new DateTime({
@@ -17278,6 +17499,7 @@ var DateTime = /*#__PURE__*/ function() {
17278
17499
  * @param {string} [options.locale] - a locale to set on the resulting DateTime instance
17279
17500
  * @param {string} options.outputCalendar - the output calendar to set on the resulting DateTime instance
17280
17501
  * @param {string} options.numberingSystem - the numbering system to set on the resulting DateTime instance
17502
+ * @param {string} options.weekSettings - the week settings to set on the resulting DateTime instance
17281
17503
  * @return {DateTime}
17282
17504
  */ function fromSeconds(seconds) {
17283
17505
  var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
@@ -17316,6 +17538,7 @@ var DateTime = /*#__PURE__*/ function() {
17316
17538
  * @param {string} [opts.locale='system\'s locale'] - a locale to set on the resulting DateTime instance
17317
17539
  * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
17318
17540
  * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance
17541
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
17319
17542
  * @example DateTime.fromObject({ year: 1982, month: 5, day: 25}).toISODate() //=> '1982-05-25'
17320
17543
  * @example DateTime.fromObject({ year: 1982 }).toISODate() //=> '1982-01-01'
17321
17544
  * @example DateTime.fromObject({ hour: 10, minute: 26, second: 6 }) //~> today at 10:26:06
@@ -17335,7 +17558,7 @@ var DateTime = /*#__PURE__*/ function() {
17335
17558
  var loc = Locale.fromObject(opts);
17336
17559
  var normalized = normalizeObject(obj, normalizeUnitWithLocalWeeks);
17337
17560
  var _usesLocalWeekValues = usesLocalWeekValues(normalized, loc), minDaysInFirstWeek = _usesLocalWeekValues.minDaysInFirstWeek, startOfWeek = _usesLocalWeekValues.startOfWeek;
17338
- 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;
17561
+ 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;
17339
17562
  // cases:
17340
17563
  // just a weekday -> this week's instance of that weekday, no worries
17341
17564
  // (gregorian data or ordinal) + (weekYear or weekNumber) -> error
@@ -17369,7 +17592,7 @@ var DateTime = /*#__PURE__*/ function() {
17369
17592
  for(var _iterator = units[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
17370
17593
  var u = _step.value;
17371
17594
  var v = normalized[u];
17372
- if (!isUndefined(v)) {
17595
+ if (!isUndefined$1(v)) {
17373
17596
  foundFirst = true;
17374
17597
  } else if (foundFirst) {
17375
17598
  normalized[u] = defaultValues[u];
@@ -17407,6 +17630,9 @@ var DateTime = /*#__PURE__*/ function() {
17407
17630
  if (normalized.weekday && containsGregor && obj.weekday !== inst.weekday) {
17408
17631
  return DateTime.invalid("mismatched weekday", "you can't specify both a weekday of ".concat(normalized.weekday, " and a date of ").concat(inst.toISO()));
17409
17632
  }
17633
+ if (!inst.isValid) {
17634
+ return DateTime.invalid(inst.invalid);
17635
+ }
17410
17636
  return inst;
17411
17637
  }
17412
17638
  },
@@ -17421,6 +17647,7 @@ var DateTime = /*#__PURE__*/ function() {
17421
17647
  * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance
17422
17648
  * @param {string} [opts.outputCalendar] - the output calendar to set on the resulting DateTime instance
17423
17649
  * @param {string} [opts.numberingSystem] - the numbering system to set on the resulting DateTime instance
17650
+ * @param {string} [opts.weekSettings] - the week settings to set on the resulting DateTime instance
17424
17651
  * @example DateTime.fromISO('2016-05-25T09:08:34.123')
17425
17652
  * @example DateTime.fromISO('2016-05-25T09:08:34.123+06:00')
17426
17653
  * @example DateTime.fromISO('2016-05-25T09:08:34.123+06:00', {setZone: true})
@@ -17444,6 +17671,7 @@ var DateTime = /*#__PURE__*/ function() {
17444
17671
  * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance
17445
17672
  * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
17446
17673
  * @param {string} opts.numberingSystem - the numbering system to set on the resulting DateTime instance
17674
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
17447
17675
  * @example DateTime.fromRFC2822('25 Nov 2016 13:23:12 GMT')
17448
17676
  * @example DateTime.fromRFC2822('Fri, 25 Nov 2016 13:23:12 +0600')
17449
17677
  * @example DateTime.fromRFC2822('25 Nov 2016 13:23 Z')
@@ -17466,6 +17694,7 @@ var DateTime = /*#__PURE__*/ function() {
17466
17694
  * @param {string} [opts.locale='system's locale'] - a locale to set on the resulting DateTime instance
17467
17695
  * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
17468
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
17469
17698
  * @example DateTime.fromHTTP('Sun, 06 Nov 1994 08:49:37 GMT')
17470
17699
  * @example DateTime.fromHTTP('Sunday, 06-Nov-94 08:49:37 GMT')
17471
17700
  * @example DateTime.fromHTTP('Sun Nov 6 08:49:37 1994')
@@ -17488,11 +17717,12 @@ var DateTime = /*#__PURE__*/ function() {
17488
17717
  * @param {boolean} [opts.setZone=false] - override the zone with a zone specified in the string itself, if it specifies one
17489
17718
  * @param {string} [opts.locale='en-US'] - a locale string to use when parsing. Will also set the DateTime to this locale
17490
17719
  * @param {string} opts.numberingSystem - the numbering system to use when parsing. Will also set the resulting DateTime to this numbering system
17720
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
17491
17721
  * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
17492
17722
  * @return {DateTime}
17493
17723
  */ function fromFormat(text, fmt) {
17494
17724
  var opts = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
17495
- if (isUndefined(text) || isUndefined(fmt)) {
17725
+ if (isUndefined$1(text) || isUndefined$1(fmt)) {
17496
17726
  throw new InvalidArgumentError("fromFormat requires an input string and a format");
17497
17727
  }
17498
17728
  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({
@@ -17527,6 +17757,7 @@ var DateTime = /*#__PURE__*/ function() {
17527
17757
  * @param {boolean} [opts.setZone=false] - override the zone with a zone specified in the string itself, if it specifies one
17528
17758
  * @param {string} [opts.locale='en-US'] - a locale string to use when parsing. Will also set the DateTime to this locale
17529
17759
  * @param {string} opts.numberingSystem - the numbering system to use when parsing. Will also set the resulting DateTime to this numbering system
17760
+ * @param {string} opts.weekSettings - the week settings to set on the resulting DateTime instance
17530
17761
  * @param {string} opts.outputCalendar - the output calendar to set on the resulting DateTime instance
17531
17762
  * @example DateTime.fromSQL('2017-05-15')
17532
17763
  * @example DateTime.fromSQL('2017-05-15 09:12:34')
@@ -17555,7 +17786,7 @@ var DateTime = /*#__PURE__*/ function() {
17555
17786
  if (!reason) {
17556
17787
  throw new InvalidArgumentError("need to specify a reason the DateTime is invalid");
17557
17788
  }
17558
- var invalid = _instanceof$d(reason, Invalid) ? reason : new Invalid(reason, explanation);
17789
+ var invalid = _instanceof$e(reason, Invalid) ? reason : new Invalid(reason, explanation);
17559
17790
  if (Settings.throwOnInvalid) {
17560
17791
  throw new InvalidDateTimeError(invalid);
17561
17792
  } else {
@@ -17606,6 +17837,13 @@ var DateTime = /*#__PURE__*/ function() {
17606
17837
  }).join("");
17607
17838
  }
17608
17839
  },
17840
+ {
17841
+ key: "resetCache",
17842
+ value: function resetCache() {
17843
+ zoneOffsetTs = undefined;
17844
+ zoneOffsetGuessCache = {};
17845
+ }
17846
+ },
17609
17847
  {
17610
17848
  key: "min",
17611
17849
  value: /**
@@ -17670,6 +17908,61 @@ var DateTime = /*#__PURE__*/ function() {
17670
17908
  return DateTime.fromFormatExplain(text, fmt, options);
17671
17909
  }
17672
17910
  },
17911
+ {
17912
+ key: "buildFormatParser",
17913
+ value: /**
17914
+ * Build a parser for `fmt` using the given locale. This parser can be passed
17915
+ * to {@link DateTime.fromFormatParser} to a parse a date in this format. This
17916
+ * can be used to optimize cases where many dates need to be parsed in a
17917
+ * specific format.
17918
+ *
17919
+ * @param {String} fmt - the format the string is expected to be in (see
17920
+ * description)
17921
+ * @param {Object} options - options used to set locale and numberingSystem
17922
+ * for parser
17923
+ * @returns {TokenParser} - opaque object to be used
17924
+ */ function buildFormatParser(fmt) {
17925
+ var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
17926
+ 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({
17927
+ locale: locale,
17928
+ numberingSystem: numberingSystem,
17929
+ defaultToEN: true
17930
+ });
17931
+ return new TokenParser(localeToUse, fmt);
17932
+ }
17933
+ },
17934
+ {
17935
+ key: "fromFormatParser",
17936
+ value: /**
17937
+ * Create a DateTime from an input string and format parser.
17938
+ *
17939
+ * The format parser must have been created with the same locale as this call.
17940
+ *
17941
+ * @param {String} text - the string to parse
17942
+ * @param {TokenParser} formatParser - parser from {@link DateTime.buildFormatParser}
17943
+ * @param {Object} opts - options taken by fromFormat()
17944
+ * @returns {DateTime}
17945
+ */ function fromFormatParser(text, formatParser) {
17946
+ var opts = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
17947
+ if (isUndefined$1(text) || isUndefined$1(formatParser)) {
17948
+ throw new InvalidArgumentError("fromFormatParser requires an input string and a format parser");
17949
+ }
17950
+ 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({
17951
+ locale: locale,
17952
+ numberingSystem: numberingSystem,
17953
+ defaultToEN: true
17954
+ });
17955
+ if (!localeToUse.equals(formatParser.locale)) {
17956
+ throw new InvalidArgumentError("fromFormatParser called with a locale of ".concat(localeToUse, ", ") + "but the format parser was created for ".concat(formatParser.locale));
17957
+ }
17958
+ var _formatParser_explainFromTokens = formatParser.explainFromTokens(text), result = _formatParser_explainFromTokens.result, zone = _formatParser_explainFromTokens.zone, specificOffset = _formatParser_explainFromTokens.specificOffset, invalidReason = _formatParser_explainFromTokens.invalidReason;
17959
+ if (invalidReason) {
17960
+ return DateTime.invalid(invalidReason);
17961
+ } else {
17962
+ return parseDataToDateTime(result, zone, opts, "format ".concat(formatParser.format), text, specificOffset);
17963
+ }
17964
+ }
17965
+ },
17673
17966
  {
17674
17967
  key: "DATE_SHORT",
17675
17968
  get: // FORMAT PRESETS
@@ -17940,7 +18233,7 @@ function _inherits$2(subClass, superClass) {
17940
18233
  });
17941
18234
  if (superClass) _set_prototype_of$2(subClass, superClass);
17942
18235
  }
17943
- function _instanceof$c(left, right) {
18236
+ function _instanceof$d(left, right) {
17944
18237
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
17945
18238
  return !!right[Symbol.hasInstance](left);
17946
18239
  } else {
@@ -18869,14 +19162,14 @@ function resolveNode(node, pos, side, overlays) {
18869
19162
  var _a;
18870
19163
  // Move up to a node that actually holds the position, if possible
18871
19164
  while(node.from == node.to || (side < 1 ? node.from >= pos : node.from > pos) || (side > -1 ? node.to <= pos : node.to < pos)){
18872
- var parent = !overlays && _instanceof$c(node, TreeNode) && node.index < 0 ? null : node.parent;
19165
+ var parent = !overlays && _instanceof$d(node, TreeNode) && node.index < 0 ? null : node.parent;
18873
19166
  if (!parent) return node;
18874
19167
  node = parent;
18875
19168
  }
18876
19169
  var mode = overlays ? 0 : IterMode.IgnoreOverlays;
18877
19170
  // Must go up out of overlays when those do not overlap with pos
18878
19171
  if (overlays) for(var scan = node, parent1 = scan.parent; parent1; scan = parent1, parent1 = scan.parent){
18879
- if (_instanceof$c(scan, TreeNode) && scan.index < 0 && ((_a = parent1.enter(pos, side, mode)) === null || _a === void 0 ? void 0 : _a.from) != scan.from) node = parent1;
19172
+ if (_instanceof$d(scan, TreeNode) && scan.index < 0 && ((_a = parent1.enter(pos, side, mode)) === null || _a === void 0 ? void 0 : _a.from) != scan.from) node = parent1;
18880
19173
  }
18881
19174
  for(;;){
18882
19175
  var inner = node.enter(pos, side, mode);
@@ -18928,7 +19221,7 @@ var BaseNode = /*#__PURE__*/ function() {
18928
19221
  {
18929
19222
  key: "matchContext",
18930
19223
  value: function matchContext(context) {
18931
- return matchNodeContext(this, context);
19224
+ return matchNodeContext(this.parent, context);
18932
19225
  }
18933
19226
  },
18934
19227
  {
@@ -19004,7 +19297,7 @@ var TreeNode = /*#__PURE__*/ function(BaseNode) {
19004
19297
  for(var _parent__tree = parent._tree, children = _parent__tree.children, positions = _parent__tree.positions, e = dir > 0 ? children.length : -1; i != e; i += dir){
19005
19298
  var next = children[i], start = positions[i] + parent.from;
19006
19299
  if (!checkSide(side, pos, start, start + next.length)) continue;
19007
- if (_instanceof$c(next, TreeBuffer)) {
19300
+ if (_instanceof$d(next, TreeBuffer)) {
19008
19301
  if (mode & IterMode.ExcludeBuffers) continue;
19009
19302
  var index = next.findChild(0, next.buffer.length, dir, pos - start, side);
19010
19303
  if (index > -1) return new BufferNode(new BufferContext(parent, next, i, start), null, index);
@@ -19142,7 +19435,7 @@ function getChildren(node, type, before, after) {
19142
19435
  }
19143
19436
  function matchNodeContext(node, context) {
19144
19437
  var i = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : context.length - 1;
19145
- for(var p = node.parent; i >= 0; p = p.parent){
19438
+ for(var p = node; i >= 0; p = p.parent){
19146
19439
  if (!p) return false;
19147
19440
  if (!p.type.isAnonymous) {
19148
19441
  if (context[i] && context[i] != p.name) return false;
@@ -19303,7 +19596,7 @@ function iterStack(heads) {
19303
19596
  pick = i;
19304
19597
  }
19305
19598
  }
19306
- var next = _instanceof$c(picked, TreeNode) && picked.index < 0 ? null : picked.parent;
19599
+ var next = _instanceof$d(picked, TreeNode) && picked.index < 0 ? null : picked.parent;
19307
19600
  var newHeads = heads.slice();
19308
19601
  if (next) newHeads[pick] = next;
19309
19602
  else newHeads.splice(pick, 1);
@@ -19327,7 +19620,7 @@ var StackIterator = /*#__PURE__*/ function() {
19327
19620
  }();
19328
19621
  function stackIterator(tree, pos, side) {
19329
19622
  var inner = tree.resolveInner(pos, side), layers = null;
19330
- for(var scan = _instanceof$c(inner, TreeNode) ? inner : inner.context.parent; scan; scan = scan.parent){
19623
+ for(var scan = _instanceof$d(inner, TreeNode) ? inner : inner.context.parent; scan; scan = scan.parent){
19331
19624
  if (scan.index < 0) {
19332
19625
  var parent = scan.parent;
19333
19626
  (layers || (layers = [
@@ -19365,7 +19658,7 @@ allows you to move to adjacent nodes.
19365
19658
  @internal
19366
19659
  */ this.index = 0;
19367
19660
  this.bufferNode = null;
19368
- if (_instanceof$c(node, TreeNode)) {
19661
+ if (_instanceof$d(node, TreeNode)) {
19369
19662
  this.yieldNode(node);
19370
19663
  } else {
19371
19664
  this._tree = node.context.parent;
@@ -19412,7 +19705,7 @@ allows you to move to adjacent nodes.
19412
19705
  */ key: "yield",
19413
19706
  value: function _yield(node) {
19414
19707
  if (!node) return false;
19415
- if (_instanceof$c(node, TreeNode)) {
19708
+ if (_instanceof$d(node, TreeNode)) {
19416
19709
  this.buffer = null;
19417
19710
  return this.yieldNode(node);
19418
19711
  }
@@ -19553,7 +19846,7 @@ allows you to move to adjacent nodes.
19553
19846
  for(; parent; ref2 = parent, index = ref2.index, parent = ref2._parent, ref2){
19554
19847
  if (index > -1) for(var i1 = index + dir, e = dir < 0 ? -1 : parent._tree.children.length; i1 != e; i1 += dir){
19555
19848
  var child = parent._tree.children[i1];
19556
- if (this.mode & IterMode.IncludeAnonymous || _instanceof$c(child, TreeBuffer) || !child.type.isAnonymous || hasChild(child)) return false;
19849
+ if (this.mode & IterMode.IncludeAnonymous || _instanceof$d(child, TreeBuffer) || !child.type.isAnonymous || hasChild(child)) return false;
19557
19850
  }
19558
19851
  }
19559
19852
  return true;
@@ -19584,7 +19877,7 @@ allows you to move to adjacent nodes.
19584
19877
  },
19585
19878
  {
19586
19879
  /**
19587
- Move to the next node in a last-to-first pre-order traveral. A
19880
+ Move to the next node in a last-to-first pre-order traversal. A
19588
19881
  node is followed by its last child or, if it has none, its
19589
19882
  previous sibling or the previous sibling of the first parent
19590
19883
  node that has one.
@@ -19662,8 +19955,8 @@ allows you to move to adjacent nodes.
19662
19955
  for(;;){
19663
19956
  if (mustLeave && leave) leave(this);
19664
19957
  mustLeave = this.type.isAnonymous;
19665
- if (this.nextSibling()) break;
19666
19958
  if (!depth) return;
19959
+ if (this.nextSibling()) break;
19667
19960
  this.parent();
19668
19961
  depth--;
19669
19962
  mustLeave = true;
@@ -19678,10 +19971,10 @@ allows you to move to adjacent nodes.
19678
19971
  are treated as wildcards.
19679
19972
  */ key: "matchContext",
19680
19973
  value: function matchContext(context) {
19681
- if (!this.buffer) return matchNodeContext(this.node, context);
19974
+ if (!this.buffer) return matchNodeContext(this.node.parent, context);
19682
19975
  var buffer = this.buffer.buffer, types = buffer.set.types;
19683
19976
  for(var i = context.length - 1, d = this.stack.length - 1; i >= 0; d--){
19684
- if (d < 0) return matchNodeContext(this.node, context, i);
19977
+ if (d < 0) return matchNodeContext(this._tree, context, i);
19685
19978
  var type = types[buffer.buffer[this.stack[d]]];
19686
19979
  if (!type.isAnonymous) {
19687
19980
  if (context[i] && context[i] != type.name) return false;
@@ -19696,7 +19989,7 @@ allows you to move to adjacent nodes.
19696
19989
  }();
19697
19990
  function hasChild(tree) {
19698
19991
  return tree.children.some(function(ch) {
19699
- return _instanceof$c(ch, TreeBuffer) || !ch.type.isAnonymous || hasChild(ch);
19992
+ return _instanceof$d(ch, TreeBuffer) || !ch.type.isAnonymous || hasChild(ch);
19700
19993
  });
19701
19994
  }
19702
19995
  function buildTree(data) {
@@ -19707,7 +20000,7 @@ function buildTree(data) {
19707
20000
  var contextHash = 0, lookAhead = 0;
19708
20001
  function takeNode(parentStart, minPos, children, positions, inRepeat, depth) {
19709
20002
  var id = cursor.id, start = cursor.start, end = cursor.end, size = cursor.size;
19710
- var lookAheadAtStart = lookAhead;
20003
+ var lookAheadAtStart = lookAhead, contextAtStart = contextHash;
19711
20004
  while(size < 0){
19712
20005
  cursor.next();
19713
20006
  if (size == -1 /* SpecialRecord.Reuse */ ) {
@@ -19743,7 +20036,7 @@ function buildTree(data) {
19743
20036
  while(cursor.pos > endPos1){
19744
20037
  if (localInRepeat >= 0 && cursor.id == localInRepeat && cursor.size >= 0) {
19745
20038
  if (cursor.end <= lastEnd - maxBufferLength) {
19746
- makeRepeatLeaf(localChildren, localPositions, start, lastGroup, cursor.end, lastEnd, localInRepeat, lookAheadAtStart);
20039
+ makeRepeatLeaf(localChildren, localPositions, start, lastGroup, cursor.end, lastEnd, localInRepeat, lookAheadAtStart, contextAtStart);
19747
20040
  lastGroup = localChildren.length;
19748
20041
  lastEnd = cursor.end;
19749
20042
  }
@@ -19754,14 +20047,14 @@ function buildTree(data) {
19754
20047
  takeNode(start, endPos1, localChildren, localPositions, localInRepeat, depth + 1);
19755
20048
  }
19756
20049
  }
19757
- if (localInRepeat >= 0 && lastGroup > 0 && lastGroup < localChildren.length) makeRepeatLeaf(localChildren, localPositions, start, lastGroup, start, lastEnd, localInRepeat, lookAheadAtStart);
20050
+ if (localInRepeat >= 0 && lastGroup > 0 && lastGroup < localChildren.length) makeRepeatLeaf(localChildren, localPositions, start, lastGroup, start, lastEnd, localInRepeat, lookAheadAtStart, contextAtStart);
19758
20051
  localChildren.reverse();
19759
20052
  localPositions.reverse();
19760
20053
  if (localInRepeat > -1 && lastGroup > 0) {
19761
- var make = makeBalanced(type);
20054
+ var make = makeBalanced(type, contextAtStart);
19762
20055
  node1 = balanceRange(type, localChildren, localPositions, 0, localChildren.length, 0, end - start, make, make);
19763
20056
  } else {
19764
- node1 = makeTree(type, localChildren, localPositions, end - start, lookAheadAtStart - end);
20057
+ node1 = makeTree(type, localChildren, localPositions, end - start, lookAheadAtStart - end, contextAtStart);
19765
20058
  }
19766
20059
  }
19767
20060
  children.push(node1);
@@ -19796,27 +20089,26 @@ function buildTree(data) {
19796
20089
  positions.push(start1 - parentStart);
19797
20090
  }
19798
20091
  }
19799
- function makeBalanced(type) {
20092
+ function makeBalanced(type, contextHash) {
19800
20093
  return function(children, positions, length) {
19801
20094
  var lookAhead = 0, lastI = children.length - 1, last, lookAheadProp;
19802
- if (lastI >= 0 && _instanceof$c(last = children[lastI], Tree)) {
20095
+ if (lastI >= 0 && _instanceof$d(last = children[lastI], Tree)) {
19803
20096
  if (!lastI && last.type == type && last.length == length) return last;
19804
20097
  if (lookAheadProp = last.prop(NodeProp.lookAhead)) lookAhead = positions[lastI] + last.length + lookAheadProp;
19805
20098
  }
19806
- return makeTree(type, children, positions, length, lookAhead);
20099
+ return makeTree(type, children, positions, length, lookAhead, contextHash);
19807
20100
  };
19808
20101
  }
19809
- function makeRepeatLeaf(children, positions, base, i, from, to, type, lookAhead) {
20102
+ function makeRepeatLeaf(children, positions, base, i, from, to, type, lookAhead, contextHash) {
19810
20103
  var localChildren = [], localPositions = [];
19811
20104
  while(children.length > i){
19812
20105
  localChildren.push(children.pop());
19813
20106
  localPositions.push(positions.pop() + base - from);
19814
20107
  }
19815
- children.push(makeTree(nodeSet.types[type], localChildren, localPositions, to - from, lookAhead - to));
20108
+ children.push(makeTree(nodeSet.types[type], localChildren, localPositions, to - from, lookAhead - to, contextHash));
19816
20109
  positions.push(from - base);
19817
20110
  }
19818
- function makeTree(type, children, positions, length) {
19819
- var lookAhead = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : 0, props = arguments.length > 5 ? arguments[5] : void 0;
20111
+ function makeTree(type, children, positions, length, lookAhead, contextHash, props) {
19820
20112
  if (contextHash) {
19821
20113
  var pair = [
19822
20114
  NodeProp.contextHash,
@@ -19921,7 +20213,7 @@ function buildTree(data) {
19921
20213
  }
19922
20214
  var nodeSizeCache = new WeakMap;
19923
20215
  function nodeSize(balanceType, node) {
19924
- if (!balanceType.isAnonymous || _instanceof$c(node, TreeBuffer) || node.type != balanceType) return 1;
20216
+ if (!balanceType.isAnonymous || _instanceof$d(node, TreeBuffer) || node.type != balanceType) return 1;
19925
20217
  var size = nodeSizeCache.get(node);
19926
20218
  if (size == null) {
19927
20219
  size = 1;
@@ -19929,7 +20221,7 @@ function nodeSize(balanceType, node) {
19929
20221
  try {
19930
20222
  for(var _iterator = node.children[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
19931
20223
  var child = _step.value;
19932
- if (child.type != balanceType || !_instanceof$c(child, Tree)) {
20224
+ if (child.type != balanceType || !_instanceof$d(child, Tree)) {
19933
20225
  size = 1;
19934
20226
  break;
19935
20227
  }
@@ -20128,7 +20420,7 @@ function _inherits$1(subClass, superClass) {
20128
20420
  });
20129
20421
  if (superClass) _set_prototype_of$1(subClass, superClass);
20130
20422
  }
20131
- function _instanceof$b(left, right) {
20423
+ function _instanceof$c(left, right) {
20132
20424
  if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
20133
20425
  return !!right[Symbol.hasInstance](left);
20134
20426
  } else {
@@ -20327,14 +20619,15 @@ about the parse state.
20327
20619
  var _a;
20328
20620
  var depth = action >> 19 /* Action.ReduceDepthShift */ , type = action & 65535 /* Action.ValueMask */ ;
20329
20621
  var parser = this.p.parser;
20330
- if (this.reducePos < this.pos - 25 /* Lookahead.Margin */ ) this.setLookAhead(this.pos);
20622
+ var lookaheadRecord = this.reducePos < this.pos - 25 /* Lookahead.Margin */ ;
20623
+ if (lookaheadRecord) this.setLookAhead(this.pos);
20331
20624
  var dPrec = parser.dynamicPrecedence(type);
20332
20625
  if (dPrec) this.score += dPrec;
20333
20626
  if (depth == 0) {
20334
20627
  this.pushState(parser.getGoto(this.state, type, true), this.reducePos);
20335
20628
  // Zero-depth reductions are a special case—they add stuff to
20336
20629
  // the stack without popping anything off.
20337
- if (type < parser.minRepeatTerm) this.storeNode(type, this.reducePos, this.reducePos, 4, true);
20630
+ if (type < parser.minRepeatTerm) this.storeNode(type, this.reducePos, this.reducePos, lookaheadRecord ? 8 : 4, true);
20338
20631
  this.reduceContext(type, this.reducePos);
20339
20632
  return;
20340
20633
  }
@@ -20380,7 +20673,7 @@ about the parse state.
20380
20673
  @internal
20381
20674
  */ key: "storeNode",
20382
20675
  value: function storeNode(term, start, end) {
20383
- var size = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : 4, isReduce = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : false;
20676
+ var size = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : 4, mustSink = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : false;
20384
20677
  if (term == 0 /* Term.Err */ && (!this.stack.length || this.stack[this.stack.length - 1] < this.buffer.length + this.bufferBase)) {
20385
20678
  // Try to omit/merge adjacent error nodes
20386
20679
  var cur = this, top = this.buffer.length;
@@ -20396,18 +20689,27 @@ about the parse state.
20396
20689
  }
20397
20690
  }
20398
20691
  }
20399
- if (!isReduce || this.pos == end) {
20692
+ if (!mustSink || this.pos == end) {
20400
20693
  this.buffer.push(term, start, end, size);
20401
20694
  } else {
20402
20695
  var index = this.buffer.length;
20403
- if (index > 0 && this.buffer[index - 4] != 0 /* Term.Err */ ) while(index > 0 && this.buffer[index - 2] > end){
20404
- // Move this record forward
20405
- this.buffer[index] = this.buffer[index - 4];
20406
- this.buffer[index + 1] = this.buffer[index - 3];
20407
- this.buffer[index + 2] = this.buffer[index - 2];
20408
- this.buffer[index + 3] = this.buffer[index - 1];
20409
- index -= 4;
20410
- if (size > 4) size -= 4;
20696
+ if (index > 0 && this.buffer[index - 4] != 0 /* Term.Err */ ) {
20697
+ var mustMove = false;
20698
+ for(var scan = index; scan > 0 && this.buffer[scan - 2] > end; scan -= 4){
20699
+ if (this.buffer[scan - 1] >= 0) {
20700
+ mustMove = true;
20701
+ break;
20702
+ }
20703
+ }
20704
+ if (mustMove) while(index > 0 && this.buffer[index - 2] > end){
20705
+ // Move this record forward
20706
+ this.buffer[index] = this.buffer[index - 4];
20707
+ this.buffer[index + 1] = this.buffer[index - 3];
20708
+ this.buffer[index + 2] = this.buffer[index - 2];
20709
+ this.buffer[index + 3] = this.buffer[index - 1];
20710
+ index -= 4;
20711
+ if (size > 4) size -= 4;
20712
+ }
20411
20713
  }
20412
20714
  this.buffer[index] = term;
20413
20715
  this.buffer[index + 1] = start;
@@ -21348,7 +21650,7 @@ var FragmentCursor = /*#__PURE__*/ function() {
21348
21650
  this.nextStart = start;
21349
21651
  return null;
21350
21652
  }
21351
- if (_instanceof$b(next, Tree)) {
21653
+ if (_instanceof$c(next, Tree)) {
21352
21654
  if (start == pos) {
21353
21655
  if (start < this.safeFrom) return null;
21354
21656
  var end = start + next.length;
@@ -21651,9 +21953,9 @@ var Parse = /*#__PURE__*/ function() {
21651
21953
  if (verbose) console.log(base + this.stackID(stack) + " (via reuse of ".concat(parser.getName(cached.type.id), ")"));
21652
21954
  return true;
21653
21955
  }
21654
- if (!_instanceof$b(cached, Tree) || cached.children.length == 0 || cached.positions[0] > 0) break;
21956
+ if (!_instanceof$c(cached, Tree) || cached.children.length == 0 || cached.positions[0] > 0) break;
21655
21957
  var inner = cached.children[0];
21656
- if (_instanceof$b(inner, Tree) && cached.positions[0] == 0) cached = inner;
21958
+ if (_instanceof$c(inner, Tree) && cached.positions[0] == 0) cached = inner;
21657
21959
  else break;
21658
21960
  }
21659
21961
  }
@@ -22244,6 +22546,76 @@ function getSpecializer(spec) {
22244
22546
  return spec.get;
22245
22547
  }
22246
22548
 
22549
+ var nativeToString = Object.prototype.toString;
22550
+ var nativeHasOwnProperty = Object.prototype.hasOwnProperty;
22551
+ function isUndefined(obj) {
22552
+ return obj === undefined;
22553
+ }
22554
+ function isNil(obj) {
22555
+ return obj == null;
22556
+ }
22557
+ function isArray$3(obj) {
22558
+ return nativeToString.call(obj) === "[object Array]";
22559
+ }
22560
+ /**
22561
+ * Return true, if target owns a property with the given key.
22562
+ *
22563
+ * @param {Object} target
22564
+ * @param {String} key
22565
+ *
22566
+ * @return {Boolean}
22567
+ */ function has(target, key) {
22568
+ return !isNil(target) && nativeHasOwnProperty.call(target, key);
22569
+ }
22570
+ /**
22571
+ * Iterate over collection; returning something
22572
+ * (non-undefined) will stop iteration.
22573
+ *
22574
+ * @template T
22575
+ * @param {Collection<T>} collection
22576
+ * @param { ((item: T, idx: number) => (boolean|void)) | ((item: T, key: string) => (boolean|void)) } iterator
22577
+ *
22578
+ * @return {T} return result that stopped the iteration
22579
+ */ function forEach(collection, iterator) {
22580
+ var val, result;
22581
+ if (isUndefined(collection)) {
22582
+ return;
22583
+ }
22584
+ var convertKey = isArray$3(collection) ? toNum : identity;
22585
+ for(var key in collection){
22586
+ if (has(collection, key)) {
22587
+ val = collection[key];
22588
+ result = iterator(val, convertKey(key));
22589
+ if (result === false) {
22590
+ return val;
22591
+ }
22592
+ }
22593
+ }
22594
+ }
22595
+ /**
22596
+ * Reduce collection, returning a single result.
22597
+ *
22598
+ * @template T
22599
+ * @template V
22600
+ *
22601
+ * @param {Collection<T>} collection
22602
+ * @param {(result: V, entry: T, index: any) => V} iterator
22603
+ * @param {V} result
22604
+ *
22605
+ * @return {V} result returned from last iterator
22606
+ */ function reduce(collection, iterator, result) {
22607
+ forEach(collection, function(value, idx) {
22608
+ result = iterator(result, value, idx);
22609
+ });
22610
+ return result;
22611
+ }
22612
+ function identity(arg) {
22613
+ return arg;
22614
+ }
22615
+ function toNum(arg) {
22616
+ return Number(arg);
22617
+ }
22618
+
22247
22619
  function _class_call_check$6(instance, Constructor) {
22248
22620
  if (!(instance instanceof Constructor)) {
22249
22621
  throw new TypeError("Cannot call a class as a function");
@@ -22263,6 +22635,13 @@ function _create_class$6(Constructor, protoProps, staticProps) {
22263
22635
  if (staticProps) _defineProperties$6(Constructor, staticProps);
22264
22636
  return Constructor;
22265
22637
  }
22638
+ function _instanceof$b(left, right) {
22639
+ if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
22640
+ return !!right[Symbol.hasInstance](left);
22641
+ } else {
22642
+ return left instanceof right;
22643
+ }
22644
+ }
22266
22645
  var nextTagID = 0;
22267
22646
  /**
22268
22647
  Highlighting tags are markers that denote a highlighting category.
@@ -22284,6 +22663,8 @@ be picked up by regular highlighters (though you can derive them
22284
22663
  from standard tags to allow highlighters to fall back to those).
22285
22664
  */ var Tag = /*#__PURE__*/ function() {
22286
22665
  function Tag(/**
22666
+ The optional name of the base tag @internal
22667
+ */ name, /**
22287
22668
  The set of this tag and all its parent tags, starting with
22288
22669
  this one itself and sorted in order of decreasing specificity.
22289
22670
  */ set, /**
@@ -22293,6 +22674,7 @@ from standard tags to allow highlighters to fall back to those).
22293
22674
  The modifiers applied to this.base @internal
22294
22675
  */ modified) {
22295
22676
  _class_call_check$6(this, Tag);
22677
+ this.name = name;
22296
22678
  this.set = set;
22297
22679
  this.base = base;
22298
22680
  this.modified = modified;
@@ -22300,18 +22682,42 @@ from standard tags to allow highlighters to fall back to those).
22300
22682
  @internal
22301
22683
  */ this.id = nextTagID++;
22302
22684
  }
22303
- _create_class$6(Tag, null, [
22685
+ _create_class$6(Tag, [
22686
+ {
22687
+ key: "toString",
22688
+ value: function toString() {
22689
+ var name = this.name;
22690
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
22691
+ try {
22692
+ for(var _iterator = this.modified[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
22693
+ var mod = _step.value;
22694
+ if (mod.name) name = "".concat(mod.name, "(").concat(name, ")");
22695
+ }
22696
+ } catch (err) {
22697
+ _didIteratorError = true;
22698
+ _iteratorError = err;
22699
+ } finally{
22700
+ try {
22701
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
22702
+ _iterator.return();
22703
+ }
22704
+ } finally{
22705
+ if (_didIteratorError) {
22706
+ throw _iteratorError;
22707
+ }
22708
+ }
22709
+ }
22710
+ return name;
22711
+ }
22712
+ }
22713
+ ], [
22304
22714
  {
22305
22715
  key: "define",
22306
- value: /**
22307
- Define a new tag. If `parent` is given, the tag is treated as a
22308
- sub-tag of that parent, and
22309
- [highlighters](#highlight.tagHighlighter) that don't mention
22310
- this tag will try to fall back to the parent tag (or grandparent
22311
- tag, etc).
22312
- */ function define(parent) {
22716
+ value: function define(nameOrParent, parent) {
22717
+ var name = typeof nameOrParent == "string" ? nameOrParent : "?";
22718
+ if (_instanceof$b(nameOrParent, Tag)) parent = nameOrParent;
22313
22719
  if (parent === null || parent === void 0 ? void 0 : parent.base) throw new Error("Can not derive from a modified tag");
22314
- var tag = new Tag([], null, []);
22720
+ var tag = new Tag(name, [], null, []);
22315
22721
  tag.set.push(tag);
22316
22722
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
22317
22723
  if (parent) try {
@@ -22349,8 +22755,8 @@ from standard tags to allow highlighters to fall back to those).
22349
22755
  smaller set of modifiers is registered as a parent, so that for
22350
22756
  example `m1(m2(m3(t1)))` is a subtype of `m1(m2(t1))`,
22351
22757
  `m1(m3(t1)`, and so on.
22352
- */ function defineModifier() {
22353
- var mod = new Modifier;
22758
+ */ function defineModifier(name) {
22759
+ var mod = new Modifier(name);
22354
22760
  return function(tag) {
22355
22761
  if (tag.modified.indexOf(mod) > -1) return tag;
22356
22762
  return Modifier.get(tag.base || tag, tag.modified.concat(mod).sort(function(a, b) {
@@ -22364,8 +22770,9 @@ from standard tags to allow highlighters to fall back to those).
22364
22770
  }();
22365
22771
  var nextModifierID = 0;
22366
22772
  var Modifier = /*#__PURE__*/ function() {
22367
- function Modifier() {
22773
+ function Modifier(name) {
22368
22774
  _class_call_check$6(this, Modifier);
22775
+ this.name = name;
22369
22776
  this.instances = [];
22370
22777
  this.id = nextModifierID++;
22371
22778
  }
@@ -22378,7 +22785,7 @@ var Modifier = /*#__PURE__*/ function() {
22378
22785
  return t.base == base && sameArray(mods, t.modified);
22379
22786
  });
22380
22787
  if (exists) return exists;
22381
- var set = [], tag = new Tag(set, base, mods);
22788
+ var set = [], tag = new Tag(base.name, set, base, mods);
22382
22789
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
22383
22790
  try {
22384
22791
  for(var _iterator = mods[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
@@ -22924,7 +23331,7 @@ the parent.
22924
23331
  A level 6 [heading](#highlight.tags.heading).
22925
23332
  */ heading6: t$4(heading),
22926
23333
  /**
22927
- A prose separator (such as a horizontal rule).
23334
+ A prose [content](#highlight.tags.content) separator (such as a horizontal rule).
22928
23335
  */ contentSeparator: t$4(content),
22929
23336
  /**
22930
23337
  [Content](#highlight.tags.content) that represents a list.
@@ -22980,27 +23387,27 @@ the parent.
22980
23387
  [Modifier](#highlight.Tag^defineModifier) that indicates that a
22981
23388
  given element is being defined. Expected to be used with the
22982
23389
  various [name](#highlight.tags.name) tags.
22983
- */ definition: Tag.defineModifier(),
23390
+ */ definition: Tag.defineModifier("definition"),
22984
23391
  /**
22985
23392
  [Modifier](#highlight.Tag^defineModifier) that indicates that
22986
23393
  something is constant. Mostly expected to be used with
22987
23394
  [variable names](#highlight.tags.variableName).
22988
- */ constant: Tag.defineModifier(),
23395
+ */ constant: Tag.defineModifier("constant"),
22989
23396
  /**
22990
23397
  [Modifier](#highlight.Tag^defineModifier) used to indicate that
22991
23398
  a [variable](#highlight.tags.variableName) or [property
22992
23399
  name](#highlight.tags.propertyName) is being called or defined
22993
23400
  as a function.
22994
- */ function: Tag.defineModifier(),
23401
+ */ function: Tag.defineModifier("function"),
22995
23402
  /**
22996
23403
  [Modifier](#highlight.Tag^defineModifier) that can be applied to
22997
23404
  [names](#highlight.tags.name) to indicate that they belong to
22998
23405
  the language's standard environment.
22999
- */ standard: Tag.defineModifier(),
23406
+ */ standard: Tag.defineModifier("standard"),
23000
23407
  /**
23001
23408
  [Modifier](#highlight.Tag^defineModifier) that indicates a given
23002
23409
  [names](#highlight.tags.name) is local to some scope.
23003
- */ local: Tag.defineModifier(),
23410
+ */ local: Tag.defineModifier("local"),
23004
23411
  /**
23005
23412
  A generic variant [modifier](#highlight.Tag^defineModifier) that
23006
23413
  can be used to tag language-specific alternative variants of
@@ -23008,8 +23415,12 @@ the parent.
23008
23415
  forms of at least the [string](#highlight.tags.string) and
23009
23416
  [variable name](#highlight.tags.variableName) tags, since those
23010
23417
  come up a lot.
23011
- */ special: Tag.defineModifier()
23418
+ */ special: Tag.defineModifier("special")
23012
23419
  };
23420
+ for(var name1 in tags){
23421
+ var val = tags[name1];
23422
+ if (_instanceof$b(val, Tag)) val.name = name1;
23423
+ }
23013
23424
  /**
23014
23425
  This is a highlighter that adds stable, predictable classes to
23015
23426
  tokens, for styling with external CSS.
@@ -23328,7 +23739,7 @@ function _unsupported_iterable_to_array$4(o, minLen) {
23328
23739
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$4(o, minLen);
23329
23740
  }
23330
23741
  // This file was generated by lezer-generator. You probably shouldn't edit it.
23331
- 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;
23742
+ 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;
23332
23743
  /* global console,process */ // @ts-expect-error env access
23333
23744
  var LOG_PARSE = typeof process != "undefined" && process.env && /\bfparse(:dbg)?\b/.test(process.env.LOG);
23334
23745
  // @ts-expect-error env access
@@ -23404,7 +23815,6 @@ var additionalNameChars = chars$1("'./-+*^");
23404
23815
  */ function isSpace(ch) {
23405
23816
  return spaceChars.includes(ch);
23406
23817
  }
23407
- // eslint-disable-next-line
23408
23818
  function indent(str, spaces) {
23409
23819
  return spaces.concat(str.split(/\n/g).join("\n" + spaces));
23410
23820
  }
@@ -23494,14 +23904,14 @@ function indent(str, spaces) {
23494
23904
  var match = parseIdentifier(input, i1, namePart) || namePart && parseAdditionalSymbol(input, i1) || maybeSpace && parseSpaces(input, i1);
23495
23905
  // match is required
23496
23906
  if (!match) {
23497
- return i = i1, nextMatch = nextMatch1, tokens = tokens1, {
23907
+ return tokens = tokens1, i = i1, nextMatch = nextMatch1, {
23498
23908
  v: nextMatch1
23499
23909
  };
23500
23910
  }
23501
23911
  var token = match.token, offset = match.offset;
23502
23912
  i1 += offset;
23503
23913
  if (token === " ") {
23504
- return i = i1, nextMatch = nextMatch1, tokens = tokens1, "continue";
23914
+ return tokens = tokens1, i = i1, nextMatch = nextMatch1, "continue";
23505
23915
  }
23506
23916
  tokens1 = _to_consumable_array$3(tokens1).concat([
23507
23917
  token
@@ -23520,7 +23930,7 @@ function indent(str, spaces) {
23520
23930
  if (contextKeys.some(function(el) {
23521
23931
  return el.startsWith(name);
23522
23932
  })) {
23523
- return i = i1, nextMatch = nextMatch1, tokens = tokens1, "continue";
23933
+ return tokens = tokens1, i = i1, nextMatch = nextMatch1, "continue";
23524
23934
  }
23525
23935
  if (dateTimeIdentifiers.some(function(el) {
23526
23936
  return el === name;
@@ -23539,9 +23949,9 @@ function indent(str, spaces) {
23539
23949
  if (dateTimeIdentifiers.some(function(el) {
23540
23950
  return el.startsWith(name);
23541
23951
  })) {
23542
- return i = i1, nextMatch = nextMatch1, tokens = tokens1, "continue";
23952
+ return tokens = tokens1, i = i1, nextMatch = nextMatch1, "continue";
23543
23953
  }
23544
- return i = i1, nextMatch = nextMatch1, tokens = tokens1, {
23954
+ return tokens = tokens1, i = i1, nextMatch = nextMatch1, {
23545
23955
  v: nextMatch1
23546
23956
  };
23547
23957
  };
@@ -23607,7 +24017,10 @@ var _obj2;
23607
24017
  var contextStarts = (_obj2 = {}, _define_property$1(_obj2, contextStart, "Context"), _define_property$1(_obj2, functionDefinitionStart, "FunctionDefinition"), _define_property$1(_obj2, forExpressionStart, "ForExpression"), _define_property$1(_obj2, listStart, "List"), _define_property$1(_obj2, ifExpressionStart, "IfExpression"), _define_property$1(_obj2, quantifiedExpressionStart, "QuantifiedExpression"), _obj2);
23608
24018
  var _obj3;
23609
24019
  var contextEnds = (_obj3 = {}, _define_property$1(_obj3, Context, "Context"), _define_property$1(_obj3, FunctionDefinition, "FunctionDefinition"), _define_property$1(_obj3, ForExpression, "ForExpression"), _define_property$1(_obj3, List, "List"), _define_property$1(_obj3, IfExpression, "IfExpression"), _define_property$1(_obj3, QuantifiedExpression, "QuantifiedExpression"), _define_property$1(_obj3, PathExpression, "PathExpression"), _define_property$1(_obj3, FunctionInvocation, "FunctionInvocation"), _define_property$1(_obj3, FilterExpression, "FilterExpression"), _define_property$1(_obj3, ArithmeticExpression, "ArithmeticExpression"), _obj3);
23610
- var ValueProducer = /*#__PURE__*/ function() {
24020
+ /**
24021
+ * A simple producer that retrievs a value from
24022
+ * a given context. Used to lazily take things.
24023
+ */ var ValueProducer = /*#__PURE__*/ function() {
23611
24024
  function ValueProducer(fn) {
23612
24025
  _class_call_check$5(this, ValueProducer);
23613
24026
  this.fn = fn;
@@ -23693,6 +24106,20 @@ var dateTimeIdentifiers = Object.keys(dateTimeLiterals);
23693
24106
  var constructor = /** @type { typeof VariableContext } */ this.constructor;
23694
24107
  return constructor.of(_object_spread_props(_object_spread({}, this.value), _define_property$1({}, key, value)));
23695
24108
  }
24109
+ },
24110
+ {
24111
+ /**
24112
+ * Non-destructively merge another context into this one,
24113
+ * and return the result.
24114
+ *
24115
+ * @param {ContextValue} other
24116
+ *
24117
+ * @return {VariableContext}
24118
+ */ key: "merge",
24119
+ value: function merge(other) {
24120
+ var constructor = /** @type { typeof VariableContext } */ this.constructor;
24121
+ return new constructor(constructor.__merge(this.value, other));
24122
+ }
23696
24123
  }
23697
24124
  ], [
23698
24125
  {
@@ -23710,36 +24137,71 @@ var dateTimeIdentifiers = Object.keys(dateTimeLiterals);
23710
24137
  {
23711
24138
  key: "of",
23712
24139
  value: /**
23713
- * Takes any number of Contexts and merges them into a single Context.
24140
+ * Takes any number of Contexts and merges them into a single context.
23714
24141
  *
23715
- * @param {...Context} contexts
23716
- * @returns {VariableContext}
24142
+ * @param { ...VariableContext } contexts
24143
+ * @returns { VariableContext }
23717
24144
  */ function of() {
23718
- var _this = this;
23719
24145
  for(var _len = arguments.length, contexts = new Array(_len), _key = 0; _key < _len; _key++){
23720
24146
  contexts[_key] = arguments[_key];
23721
24147
  }
23722
- var unwrap = function(context) {
23723
- if (!context || typeof context !== "object") {
23724
- return {};
24148
+ return contexts.reduce(function(context, otherContext) {
24149
+ return context.merge(otherContext);
24150
+ }, new this({}));
24151
+ }
24152
+ },
24153
+ {
24154
+ key: "__unwrap",
24155
+ value: /**
24156
+ * Returns the raw representation of the given context.
24157
+ *
24158
+ * @param {VariableContext | any} context
24159
+ *
24160
+ * @return {any}
24161
+ */ function __unwrap(context) {
24162
+ if (!context) {
24163
+ return {};
24164
+ }
24165
+ if (_instanceof$a(context, this)) {
24166
+ return context.value;
24167
+ }
24168
+ if (typeof context !== "object") {
24169
+ return {};
24170
+ }
24171
+ return _object_spread({}, context);
24172
+ }
24173
+ },
24174
+ {
24175
+ key: "__merge",
24176
+ value: /**
24177
+ * Non-destructively merges two contexts (or their values)
24178
+ * with each other, returning the result.
24179
+ *
24180
+ * @param {ContextValue} context
24181
+ * @param {ContextValue} other
24182
+ *
24183
+ * @return {any}
24184
+ */ function __merge(context, other) {
24185
+ var _this = this;
24186
+ return reduce(this.__unwrap(other), function(merged, value, key) {
24187
+ if (_instanceof$a(value, ValueProducer)) {
24188
+ // keep value producers in tact
24189
+ return _object_spread_props(_object_spread({}, merged), _define_property$1({}, key, value));
23725
24190
  }
23726
- if (_instanceof$a(context, _this)) {
23727
- return context.value;
24191
+ value = _this.__unwrap(value);
24192
+ if (has(merged, key)) {
24193
+ value = _this.__merge(_this.__unwrap(merged[key]), value);
23728
24194
  }
23729
- return _object_spread({}, context);
23730
- };
23731
- var merged = contexts.reduce(function(merged, context) {
23732
- return _object_spread({}, merged, unwrap(context));
23733
- }, {});
23734
- return new this(merged);
24195
+ return _object_spread_props(_object_spread({}, merged), _define_property$1({}, key, value));
24196
+ }, this.__unwrap(context));
23735
24197
  }
23736
24198
  }
23737
24199
  ]);
23738
24200
  return VariableContext;
23739
24201
  }();
23740
24202
  var Variables = /*#__PURE__*/ function() {
23741
- function Variables() {
23742
- 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;
24203
+ function Variables(param) {
24204
+ 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;
23743
24205
  _class_call_check$5(this, Variables);
23744
24206
  this.name = name;
23745
24207
  this.tokens = tokens;
@@ -23970,7 +24432,19 @@ var Variables = /*#__PURE__*/ function() {
23970
24432
  ], [
23971
24433
  {
23972
24434
  key: "of",
23973
- value: function of(options) {
24435
+ value: /**
24436
+ * @param { {
24437
+ * name?: string,
24438
+ * tokens?: string[],
24439
+ * children?: Variables[],
24440
+ * parent?: Variables | null
24441
+ * context: VariableContext,
24442
+ * value?: any,
24443
+ * raw?: any
24444
+ * } } options
24445
+ *
24446
+ * @return {Variables}
24447
+ */ function of(options) {
23974
24448
  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;
23975
24449
  if (!context) {
23976
24450
  throw new Error("must provide <context>");
@@ -24257,57 +24731,57 @@ var spec_identifier = {
24257
24731
  between: 72,
24258
24732
  instance: 86,
24259
24733
  of: 89,
24260
- days: 99,
24261
- time: 101,
24262
- duration: 103,
24263
- years: 105,
24264
- months: 107,
24265
- date: 109,
24266
- list: 115,
24267
- context: 121,
24268
- function: 128,
24269
- null: 154,
24270
- true: 326,
24271
- false: 326,
24272
- "?": 168,
24273
- external: 184,
24274
- not: 209
24734
+ days: 101,
24735
+ time: 103,
24736
+ duration: 105,
24737
+ years: 107,
24738
+ months: 109,
24739
+ date: 111,
24740
+ list: 117,
24741
+ context: 123,
24742
+ function: 130,
24743
+ null: 156,
24744
+ true: 330,
24745
+ false: 330,
24746
+ "?": 170,
24747
+ external: 186,
24748
+ not: 211
24275
24749
  };
24276
24750
  var parser = LRParser.deserialize({
24277
24751
  version: 14,
24278
- 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",
24279
- 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~",
24280
- 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",
24281
- 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",
24282
- maxTerm: 171,
24752
+ 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",
24753
+ 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~",
24754
+ 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",
24755
+ 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",
24756
+ maxTerm: 173,
24283
24757
  context: variableTracker,
24284
24758
  nodeProps: [
24285
24759
  [
24286
24760
  "closedBy",
24287
24761
  38,
24288
24762
  ")",
24289
- 70,
24763
+ 71,
24290
24764
  "]",
24291
- 95,
24765
+ 96,
24292
24766
  "}"
24293
24767
  ],
24294
24768
  [
24295
24769
  "openedBy",
24296
24770
  40,
24297
24771
  "(",
24298
- 68,
24772
+ 69,
24299
24773
  "[",
24300
- 94,
24774
+ 95,
24301
24775
  "{"
24302
24776
  ],
24303
24777
  [
24304
24778
  "group",
24305
24779
  -5,
24306
- 77,
24307
24780
  78,
24308
24781
  79,
24309
24782
  80,
24310
24783
  81,
24784
+ 82,
24311
24785
  "Literal"
24312
24786
  ]
24313
24787
  ],
@@ -24320,7 +24794,7 @@ var parser = LRParser.deserialize({
24320
24794
  2
24321
24795
  ],
24322
24796
  repeatNodeCount: 14,
24323
- 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~",
24797
+ 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~",
24324
24798
  tokenizers: [
24325
24799
  propertyIdentifiers,
24326
24800
  identifiers$2,
@@ -24335,28 +24809,31 @@ var parser = LRParser.deserialize({
24335
24809
  ],
24336
24810
  "Expressions": [
24337
24811
  1,
24338
- 101
24812
+ 102
24339
24813
  ],
24340
24814
  "UnaryTests": [
24341
24815
  2,
24342
- 102
24816
+ 103
24343
24817
  ]
24344
24818
  },
24819
+ dialects: {
24820
+ camunda: 2532
24821
+ },
24345
24822
  dynamicPrecedences: {
24346
24823
  "31": -1,
24347
- "67": 1,
24348
- "71": -1,
24349
- "73": -1
24824
+ "68": 1,
24825
+ "72": -1,
24826
+ "74": -1
24350
24827
  },
24351
24828
  specialized: [
24352
24829
  {
24353
- term: 121,
24830
+ term: 122,
24354
24831
  get: function(value) {
24355
24832
  return spec_identifier[value] || -1;
24356
24833
  }
24357
24834
  }
24358
24835
  ],
24359
- tokenPrec: 2500
24836
+ tokenPrec: 2534
24360
24837
  });
24361
24838
 
24362
24839
  function _array_like_to_array$3(arr, len) {
@@ -25431,10 +25908,10 @@ var builtins = {
25431
25908
  // 10.3.4.5 Numeric functions
25432
25909
  "decimal": fn(function(n, scale) {
25433
25910
  if (!scale) {
25434
- return round(n);
25911
+ return bankersRound(n);
25435
25912
  }
25436
25913
  var offset = Math.pow(10, scale);
25437
- return round(n * offset) / offset;
25914
+ return bankersRound(n * offset) / offset;
25438
25915
  }, [
25439
25916
  "number",
25440
25917
  "number"
@@ -25663,7 +26140,8 @@ var builtins = {
25663
26140
  ]),
25664
26141
  // 10.3.4.10 Context function
25665
26142
  "get value": fn(function(m, key) {
25666
- return getFromContext(key, m) || null;
26143
+ var value = getFromContext(key, m);
26144
+ return value != undefined ? value : null;
25667
26145
  }, [
25668
26146
  "context",
25669
26147
  "string"
@@ -25990,13 +26468,13 @@ function countSymbols(str) {
25990
26468
  // cf. https://mathiasbynens.be/notes/javascript-unicode
25991
26469
  return str.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g, "_").length;
25992
26470
  }
25993
- function round(n) {
25994
- var integral = Math.trunc(n);
25995
- if (n - integral > .5) {
25996
- return integral + 1;
25997
- } else {
25998
- return integral;
26471
+ function bankersRound(n) {
26472
+ var floored = Math.floor(n);
26473
+ var decimalPart = n - floored;
26474
+ if (decimalPart === 0.5) {
26475
+ return floored % 2 === 0 ? floored : floored + 1;
25999
26476
  }
26477
+ return Math.round(n);
26000
26478
  }
26001
26479
  // adapted from https://stackoverflow.com/a/53577159
26002
26480
  function stddev(array) {
@@ -26077,17 +26555,19 @@ function ifValid(o) {
26077
26555
  return o.isValid ? o : null;
26078
26556
  }
26079
26557
  function parseExpression(expression) {
26080
- var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
26558
+ var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, dialect = arguments.length > 2 ? arguments[2] : void 0;
26081
26559
  return parser.configure({
26082
26560
  top: "Expression",
26083
- contextTracker: trackVariables(context)
26561
+ contextTracker: trackVariables(context),
26562
+ dialect: dialect
26084
26563
  }).parse(expression);
26085
26564
  }
26086
26565
  function parseUnaryTests(expression) {
26087
- var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
26566
+ var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, dialect = arguments.length > 2 ? arguments[2] : void 0;
26088
26567
  return parser.configure({
26089
26568
  top: "UnaryTests",
26090
- contextTracker: trackVariables(context)
26569
+ contextTracker: trackVariables(context),
26570
+ dialect: dialect
26091
26571
  }).parse(expression);
26092
26572
  }
26093
26573
  var SyntaxError$1 = /*#__PURE__*/ function(Error1) {
@@ -26156,8 +26636,8 @@ var Interpreter = /*#__PURE__*/ function() {
26156
26636
  {
26157
26637
  key: "evaluate",
26158
26638
  value: function evaluate(expression) {
26159
- var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
26160
- var parseTree = parseExpression(expression, context);
26639
+ var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, dialect = arguments.length > 2 ? arguments[2] : void 0;
26640
+ var parseTree = parseExpression(expression, context, dialect);
26161
26641
  var root = this._buildExecutionTree(parseTree, expression);
26162
26642
  return {
26163
26643
  parseTree: parseTree,
@@ -26168,8 +26648,8 @@ var Interpreter = /*#__PURE__*/ function() {
26168
26648
  {
26169
26649
  key: "unaryTest",
26170
26650
  value: function unaryTest(expression) {
26171
- var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
26172
- var parseTree = parseUnaryTests(expression, context);
26651
+ var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, dialect = arguments.length > 2 ? arguments[2] : void 0;
26652
+ var parseTree = parseUnaryTests(expression, context, dialect);
26173
26653
  var root = this._buildExecutionTree(parseTree, expression);
26174
26654
  return {
26175
26655
  parseTree: parseTree,
@@ -26183,8 +26663,8 @@ var Interpreter = /*#__PURE__*/ function() {
26183
26663
  var interpreter = new Interpreter();
26184
26664
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
26185
26665
  function evaluate(expression) {
26186
- var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
26187
- var root = interpreter.evaluate(expression, context).root;
26666
+ var context = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, dialect = arguments.length > 2 ? arguments[2] : void 0;
26667
+ var root = interpreter.evaluate(expression, context, dialect).root;
26188
26668
  // root = Expression :: fn(ctx)
26189
26669
  return root(context);
26190
26670
  }
@@ -26227,6 +26707,12 @@ function evalNode(node, input, args) {
26227
26707
  switch(input){
26228
26708
  case "+":
26229
26709
  return nullable(function(a, b) {
26710
+ // flip these as luxon operations with durations aren't commutative
26711
+ if (isDuration(a) && !isDuration(b)) {
26712
+ var tmp = a;
26713
+ a = b;
26714
+ b = tmp;
26715
+ }
26230
26716
  if (isType(a, "time") && isDuration(b)) {
26231
26717
  return a.plus(b).set({
26232
26718
  year: 1900,
@@ -26320,6 +26806,8 @@ function evalNode(node, input, args) {
26320
26806
  };
26321
26807
  }
26322
26808
  }, Test("boolean"));
26809
+ case "BacktickIdentifier":
26810
+ return input.replace(/`/g, "");
26323
26811
  case "Wildcard":
26324
26812
  return function(_context) {
26325
26813
  return true;
@@ -26793,7 +27281,7 @@ function evalNode(node, input, args) {
26793
27281
  if (isNumber$2(value)) {
26794
27282
  filterFn.type = "number";
26795
27283
  }
26796
- } catch (err) {
27284
+ } catch (_err) {
26797
27285
  // ignore
26798
27286
  }
26799
27287
  }
@@ -27256,7 +27744,6 @@ function parseString(str) {
27256
27744
  if (str.endsWith('"')) {
27257
27745
  str = str.slice(0, -1);
27258
27746
  }
27259
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
27260
27747
  return str.replace(/(\\")|(\\\\)|(\\u[a-fA-F0-9]{5,6})|((?:\\u[a-fA-F0-9]{1,4})+)/ig, function(substring) {
27261
27748
  for(var _len = arguments.length, groups = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){
27262
27749
  groups[_key - 1] = arguments[_key];