@vue/compiler-sfc 3.5.35 → 3.5.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compiler-sfc v3.5.35
2
+ * @vue/compiler-sfc v3.5.37
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -4497,7 +4497,7 @@ function getAugmentedNamespace(n) {
4497
4497
  var isInstance = false;
4498
4498
  try {
4499
4499
  isInstance = this instanceof a;
4500
- } catch {}
4500
+ } catch (e) {}
4501
4501
  if (isInstance) {
4502
4502
  return Reflect.construct(f, arguments, this.constructor);
4503
4503
  }
@@ -20377,7 +20377,7 @@ const tokenizer = new Tokenizer(stack, {
20377
20377
  }
20378
20378
  },
20379
20379
  oncdata(start, end) {
20380
- if (stack[0].ns !== 0) {
20380
+ if ((stack[0] ? stack[0].ns : currentOptions.ns) !== 0) {
20381
20381
  onText(getSlice(start, end), start, end);
20382
20382
  } else {
20383
20383
  emitError(1, start - 9);
@@ -21093,6 +21093,7 @@ function createTransformContext(root, {
21093
21093
  imports: [],
21094
21094
  cached: [],
21095
21095
  constantCache: /* @__PURE__ */ new WeakMap(),
21096
+ vForMemoKeyedNodes: /* @__PURE__ */ new WeakSet(),
21096
21097
  temps: 0,
21097
21098
  identifiers: /* @__PURE__ */ Object.create(null),
21098
21099
  scopes: {
@@ -25561,7 +25562,7 @@ const transformExpression = (node, context) => {
25561
25562
  const exp = dir.exp;
25562
25563
  const arg = dir.arg;
25563
25564
  if (exp && exp.type === 4 && !(dir.name === "on" && arg) && // key has been processed in transformFor(vMemo + vFor)
25564
- !(memo && arg && arg.type === 4 && arg.content === "key")) {
25565
+ !(memo && context.vForMemoKeyedNodes.has(node) && arg && arg.type === 4 && arg.content === "key")) {
25565
25566
  dir.exp = processExpression(
25566
25567
  exp,
25567
25568
  context,
@@ -26015,6 +26016,9 @@ const transformFor = createStructuralDirectiveTransform(
26015
26016
  keyProperty.value,
26016
26017
  context
26017
26018
  );
26019
+ if (memo) {
26020
+ context.vForMemoKeyedNodes.add(node);
26021
+ }
26018
26022
  }
26019
26023
  }
26020
26024
  const isStableFragment = forNode.source.type === 4 && forNode.source.constType > 0;
@@ -38590,8 +38594,6 @@ var root = {exports: {}};
38590
38594
 
38591
38595
  var container = {exports: {}};
38592
38596
 
38593
- var node$1 = {exports: {}};
38594
-
38595
38597
  var util$1 = {};
38596
38598
 
38597
38599
  var unesc = {exports: {}};
@@ -38770,6 +38772,43 @@ function requireStripComments () {
38770
38772
  return stripComments.exports;
38771
38773
  }
38772
38774
 
38775
+ var maxNestingDepth = {};
38776
+
38777
+ var hasRequiredMaxNestingDepth;
38778
+
38779
+ function requireMaxNestingDepth () {
38780
+ if (hasRequiredMaxNestingDepth) return maxNestingDepth;
38781
+ hasRequiredMaxNestingDepth = 1;
38782
+ (function (exports) {
38783
+
38784
+ exports.__esModule = true;
38785
+ exports.MAX_NESTING_DEPTH = void 0;
38786
+ exports["default"] = resolveMaxNestingDepth;
38787
+ /**
38788
+ * The default maximum selector nesting depth allowed when parsing or
38789
+ * serializing a selector. Going beyond this would otherwise recurse deeply
38790
+ * enough to overflow the call stack (CVE-2026-9358 / CWE-674). Real-world
38791
+ * selectors never get anywhere near this, so it acts purely as a safety net
38792
+ * that turns an uncatchable stack overflow into a catchable error.
38793
+ */
38794
+ var MAX_NESTING_DEPTH = exports.MAX_NESTING_DEPTH = 256;
38795
+
38796
+ /**
38797
+ * Coerce a user-supplied nesting-depth limit into a safe value. Anything that
38798
+ * is not a non-negative safe integer (NaN, Infinity, negative numbers, or a
38799
+ * non-number) would disable or break the guard, so it falls back to the
38800
+ * default.
38801
+ *
38802
+ * @param {unknown} value the limit provided through the `maxNestingDepth` option
38803
+ * @returns {number} a safe, non-negative integer limit
38804
+ */
38805
+ function resolveMaxNestingDepth(value) {
38806
+ return Number.isSafeInteger(value) && value >= 0 ? value : MAX_NESTING_DEPTH;
38807
+ }
38808
+ } (maxNestingDepth));
38809
+ return maxNestingDepth;
38810
+ }
38811
+
38773
38812
  var hasRequiredUtil$1;
38774
38813
 
38775
38814
  function requireUtil$1 () {
@@ -38777,7 +38816,7 @@ function requireUtil$1 () {
38777
38816
  hasRequiredUtil$1 = 1;
38778
38817
 
38779
38818
  util$1.__esModule = true;
38780
- util$1.unesc = util$1.stripComments = util$1.getProp = util$1.ensureObject = void 0;
38819
+ util$1.unesc = util$1.stripComments = util$1.resolveMaxNestingDepth = util$1.getProp = util$1.ensureObject = util$1.MAX_NESTING_DEPTH = void 0;
38781
38820
  var _unesc = _interopRequireDefault(/*@__PURE__*/ requireUnesc());
38782
38821
  util$1.unesc = _unesc["default"];
38783
38822
  var _getProp = _interopRequireDefault(/*@__PURE__*/ requireGetProp());
@@ -38786,10 +38825,16 @@ function requireUtil$1 () {
38786
38825
  util$1.ensureObject = _ensureObject["default"];
38787
38826
  var _stripComments = _interopRequireDefault(/*@__PURE__*/ requireStripComments());
38788
38827
  util$1.stripComments = _stripComments["default"];
38789
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
38828
+ var _maxNestingDepth = _interopRequireWildcard(/*@__PURE__*/ requireMaxNestingDepth());
38829
+ util$1.resolveMaxNestingDepth = _maxNestingDepth["default"];
38830
+ util$1.MAX_NESTING_DEPTH = _maxNestingDepth.MAX_NESTING_DEPTH;
38831
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) { "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); } return f; })(e, t); }
38832
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
38790
38833
  return util$1;
38791
38834
  }
38792
38835
 
38836
+ var node$1 = {exports: {}};
38837
+
38793
38838
  var hasRequiredNode$1;
38794
38839
 
38795
38840
  function requireNode$1 () {
@@ -38800,8 +38845,10 @@ function requireNode$1 () {
38800
38845
  exports.__esModule = true;
38801
38846
  exports["default"] = void 0;
38802
38847
  var _util = /*@__PURE__*/ requireUtil$1();
38803
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
38804
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
38848
+ function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
38849
+ function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), Object.defineProperty(e, "prototype", { writable: false }), e; }
38850
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
38851
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return (String )(t); }
38805
38852
  var cloneNode = function cloneNode(obj, parent) {
38806
38853
  if (typeof obj !== 'object' || obj === null) {
38807
38854
  return obj;
@@ -38827,7 +38874,7 @@ function requireNode$1 () {
38827
38874
  }
38828
38875
  return cloned;
38829
38876
  };
38830
- var Node = /*#__PURE__*/function () {
38877
+ exports["default"] = /*#__PURE__*/function () {
38831
38878
  function Node(opts) {
38832
38879
  if (opts === void 0) {
38833
38880
  opts = {};
@@ -38955,6 +39002,14 @@ function requireNode$1 () {
38955
39002
  };
38956
39003
  _proto.toString = function toString() {
38957
39004
  return [this.rawSpaceBefore, this.valueToString(), this.rawSpaceAfter].join('');
39005
+ }
39006
+
39007
+ // Internal recursion entry point used by Container serialization. Leaf
39008
+ // nodes don't recurse, so they ignore the depth/limit and stringify
39009
+ // themselves. Containers override this to thread the nesting depth.
39010
+ ;
39011
+ _proto._stringify = function _stringify() {
39012
+ return this.toString();
38958
39013
  };
38959
39014
  _createClass(Node, [{
38960
39015
  key: "rawSpaceBefore",
@@ -38985,7 +39040,6 @@ function requireNode$1 () {
38985
39040
  }]);
38986
39041
  return Node;
38987
39042
  }();
38988
- exports["default"] = Node;
38989
39043
  module.exports = exports.default;
38990
39044
  } (node$1, node$1.exports));
38991
39045
  return node$1.exports;
@@ -39001,30 +39055,18 @@ function requireTypes () {
39001
39055
 
39002
39056
  types.__esModule = true;
39003
39057
  types.UNIVERSAL = types.TAG = types.STRING = types.SELECTOR = types.ROOT = types.PSEUDO = types.NESTING = types.ID = types.COMMENT = types.COMBINATOR = types.CLASS = types.ATTRIBUTE = void 0;
39004
- var TAG = 'tag';
39005
- types.TAG = TAG;
39006
- var STRING = 'string';
39007
- types.STRING = STRING;
39008
- var SELECTOR = 'selector';
39009
- types.SELECTOR = SELECTOR;
39010
- var ROOT = 'root';
39011
- types.ROOT = ROOT;
39012
- var PSEUDO = 'pseudo';
39013
- types.PSEUDO = PSEUDO;
39014
- var NESTING = 'nesting';
39015
- types.NESTING = NESTING;
39016
- var ID = 'id';
39017
- types.ID = ID;
39018
- var COMMENT = 'comment';
39019
- types.COMMENT = COMMENT;
39020
- var COMBINATOR = 'combinator';
39021
- types.COMBINATOR = COMBINATOR;
39022
- var CLASS = 'class';
39023
- types.CLASS = CLASS;
39024
- var ATTRIBUTE = 'attribute';
39025
- types.ATTRIBUTE = ATTRIBUTE;
39026
- var UNIVERSAL = 'universal';
39027
- types.UNIVERSAL = UNIVERSAL;
39058
+ types.TAG = 'tag';
39059
+ types.STRING = 'string';
39060
+ types.SELECTOR = 'selector';
39061
+ types.ROOT = 'root';
39062
+ types.PSEUDO = 'pseudo';
39063
+ types.NESTING = 'nesting';
39064
+ types.ID = 'id';
39065
+ types.COMMENT = 'comment';
39066
+ types.COMBINATOR = 'combinator';
39067
+ types.CLASS = 'class';
39068
+ types.ATTRIBUTE = 'attribute';
39069
+ types.UNIVERSAL = 'universal';
39028
39070
  return types;
39029
39071
  }
39030
39072
 
@@ -39037,19 +39079,21 @@ function requireContainer () {
39037
39079
 
39038
39080
  exports.__esModule = true;
39039
39081
  exports["default"] = void 0;
39082
+ var _util = /*@__PURE__*/ requireUtil$1();
39040
39083
  var _node = _interopRequireDefault(/*@__PURE__*/ requireNode$1());
39041
39084
  var types = _interopRequireWildcard(/*@__PURE__*/ requireTypes());
39042
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
39043
- function _interopRequireWildcard(obj, nodeInterop) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
39044
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
39045
- function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike) { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
39046
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
39047
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
39048
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
39049
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
39050
- function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
39051
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
39052
- var Container = /*#__PURE__*/function (_Node) {
39085
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) { "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); } return f; })(e, t); }
39086
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
39087
+ function _createForOfIteratorHelperLoose(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e) { t && (r = t); var o = 0; return function () { return o >= r.length ? { done: true } : { done: false, value: r[o++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
39088
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
39089
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) { n[e] = r[e]; } return n; }
39090
+ function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
39091
+ function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), Object.defineProperty(e, "prototype", { writable: false }), e; }
39092
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
39093
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return (String )(t); }
39094
+ function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
39095
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
39096
+ exports["default"] = /*#__PURE__*/function (_Node) {
39053
39097
  _inheritsLoose(Container, _Node);
39054
39098
  function Container(opts) {
39055
39099
  var _this;
@@ -39291,23 +39335,23 @@ function requireContainer () {
39291
39335
  });
39292
39336
  };
39293
39337
  _proto.walkUniversals = function walkUniversals(callback) {
39294
- var _this10 = this;
39338
+ var _this0 = this;
39295
39339
  return this.walk(function (selector) {
39296
39340
  if (selector.type === types.UNIVERSAL) {
39297
- return callback.call(_this10, selector);
39341
+ return callback.call(_this0, selector);
39298
39342
  }
39299
39343
  });
39300
39344
  };
39301
39345
  _proto.split = function split(callback) {
39302
- var _this11 = this;
39346
+ var _this1 = this;
39303
39347
  var current = [];
39304
39348
  return this.reduce(function (memo, node, index) {
39305
- var split = callback.call(_this11, node);
39349
+ var split = callback.call(_this1, node);
39306
39350
  current.push(node);
39307
39351
  if (split) {
39308
39352
  memo.push(current);
39309
39353
  current = [];
39310
- } else if (index === _this11.length - 1) {
39354
+ } else if (index === _this1.length - 1) {
39311
39355
  memo.push(current);
39312
39356
  }
39313
39357
  return memo;
@@ -39331,8 +39375,16 @@ function requireContainer () {
39331
39375
  _proto.sort = function sort(callback) {
39332
39376
  return this.nodes.sort(callback);
39333
39377
  };
39334
- _proto.toString = function toString() {
39335
- return this.map(String).join('');
39378
+ _proto.toString = function toString(options) {
39379
+ if (options === void 0) {
39380
+ options = {};
39381
+ }
39382
+ return this._stringify(options, 0, (0, _util.resolveMaxNestingDepth)(options.maxNestingDepth));
39383
+ };
39384
+ _proto._stringify = function _stringify(options, depth, max) {
39385
+ return this.map(function (child) {
39386
+ return child._stringify(options, depth, max);
39387
+ }).join('');
39336
39388
  };
39337
39389
  _createClass(Container, [{
39338
39390
  key: "first",
@@ -39352,7 +39404,6 @@ function requireContainer () {
39352
39404
  }]);
39353
39405
  return Container;
39354
39406
  }(_node["default"]);
39355
- exports["default"] = Container;
39356
39407
  module.exports = exports.default;
39357
39408
  } (container, container.exports));
39358
39409
  return container.exports;
@@ -39369,12 +39420,14 @@ function requireRoot () {
39369
39420
  exports["default"] = void 0;
39370
39421
  var _container = _interopRequireDefault(/*@__PURE__*/ requireContainer());
39371
39422
  var _types = /*@__PURE__*/ requireTypes();
39372
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
39373
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
39374
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
39375
- function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
39376
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
39377
- var Root = /*#__PURE__*/function (_Container) {
39423
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
39424
+ function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
39425
+ function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), Object.defineProperty(e, "prototype", { writable: false }), e; }
39426
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
39427
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return (String )(t); }
39428
+ function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
39429
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
39430
+ exports["default"] = /*#__PURE__*/function (_Container) {
39378
39431
  _inheritsLoose(Root, _Container);
39379
39432
  function Root(opts) {
39380
39433
  var _this;
@@ -39383,9 +39436,9 @@ function requireRoot () {
39383
39436
  return _this;
39384
39437
  }
39385
39438
  var _proto = Root.prototype;
39386
- _proto.toString = function toString() {
39439
+ _proto._stringify = function _stringify(options, depth, max) {
39387
39440
  var str = this.reduce(function (memo, selector) {
39388
- memo.push(String(selector));
39441
+ memo.push(selector._stringify(options, depth, max));
39389
39442
  return memo;
39390
39443
  }, []).join(',');
39391
39444
  return this.trailingComma ? str + ',' : str;
@@ -39405,7 +39458,6 @@ function requireRoot () {
39405
39458
  }]);
39406
39459
  return Root;
39407
39460
  }(_container["default"]);
39408
- exports["default"] = Root;
39409
39461
  module.exports = exports.default;
39410
39462
  } (root, root.exports));
39411
39463
  return root.exports;
@@ -39424,10 +39476,10 @@ function requireSelector () {
39424
39476
  exports["default"] = void 0;
39425
39477
  var _container = _interopRequireDefault(/*@__PURE__*/ requireContainer());
39426
39478
  var _types = /*@__PURE__*/ requireTypes();
39427
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
39428
- function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
39429
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
39430
- var Selector = /*#__PURE__*/function (_Container) {
39479
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
39480
+ function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
39481
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
39482
+ exports["default"] = /*#__PURE__*/function (_Container) {
39431
39483
  _inheritsLoose(Selector, _Container);
39432
39484
  function Selector(opts) {
39433
39485
  var _this;
@@ -39437,7 +39489,6 @@ function requireSelector () {
39437
39489
  }
39438
39490
  return Selector;
39439
39491
  }(_container["default"]);
39440
- exports["default"] = Selector;
39441
39492
  module.exports = exports.default;
39442
39493
  } (selector, selector.exports));
39443
39494
  return selector.exports;
@@ -39576,12 +39627,14 @@ function requireClassName () {
39576
39627
  var _util = /*@__PURE__*/ requireUtil$1();
39577
39628
  var _node = _interopRequireDefault(/*@__PURE__*/ requireNode$1());
39578
39629
  var _types = /*@__PURE__*/ requireTypes();
39579
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
39580
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
39581
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
39582
- function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
39583
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
39584
- var ClassName = /*#__PURE__*/function (_Node) {
39630
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
39631
+ function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
39632
+ function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), Object.defineProperty(e, "prototype", { writable: false }), e; }
39633
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
39634
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return (String )(t); }
39635
+ function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
39636
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
39637
+ exports["default"] = /*#__PURE__*/function (_Node) {
39585
39638
  _inheritsLoose(ClassName, _Node);
39586
39639
  function ClassName(opts) {
39587
39640
  var _this;
@@ -39616,7 +39669,6 @@ function requireClassName () {
39616
39669
  }]);
39617
39670
  return ClassName;
39618
39671
  }(_node["default"]);
39619
- exports["default"] = ClassName;
39620
39672
  module.exports = exports.default;
39621
39673
  } (className, className.exports));
39622
39674
  return className.exports;
@@ -39635,10 +39687,10 @@ function requireComment () {
39635
39687
  exports["default"] = void 0;
39636
39688
  var _node = _interopRequireDefault(/*@__PURE__*/ requireNode$1());
39637
39689
  var _types = /*@__PURE__*/ requireTypes();
39638
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
39639
- function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
39640
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
39641
- var Comment = /*#__PURE__*/function (_Node) {
39690
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
39691
+ function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
39692
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
39693
+ exports["default"] = /*#__PURE__*/function (_Node) {
39642
39694
  _inheritsLoose(Comment, _Node);
39643
39695
  function Comment(opts) {
39644
39696
  var _this;
@@ -39648,7 +39700,6 @@ function requireComment () {
39648
39700
  }
39649
39701
  return Comment;
39650
39702
  }(_node["default"]);
39651
- exports["default"] = Comment;
39652
39703
  module.exports = exports.default;
39653
39704
  } (comment, comment.exports));
39654
39705
  return comment.exports;
@@ -39667,10 +39718,10 @@ function requireId () {
39667
39718
  exports["default"] = void 0;
39668
39719
  var _node = _interopRequireDefault(/*@__PURE__*/ requireNode$1());
39669
39720
  var _types = /*@__PURE__*/ requireTypes();
39670
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
39671
- function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
39672
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
39673
- var ID = /*#__PURE__*/function (_Node) {
39721
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
39722
+ function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
39723
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
39724
+ exports["default"] = /*#__PURE__*/function (_Node) {
39674
39725
  _inheritsLoose(ID, _Node);
39675
39726
  function ID(opts) {
39676
39727
  var _this;
@@ -39684,7 +39735,6 @@ function requireId () {
39684
39735
  };
39685
39736
  return ID;
39686
39737
  }(_node["default"]);
39687
- exports["default"] = ID;
39688
39738
  module.exports = exports.default;
39689
39739
  } (id, id.exports));
39690
39740
  return id.exports;
@@ -39706,12 +39756,14 @@ function requireNamespace () {
39706
39756
  var _cssesc = _interopRequireDefault(/*@__PURE__*/ requireCssesc());
39707
39757
  var _util = /*@__PURE__*/ requireUtil$1();
39708
39758
  var _node = _interopRequireDefault(/*@__PURE__*/ requireNode$1());
39709
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
39710
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
39711
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
39712
- function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
39713
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
39714
- var Namespace = /*#__PURE__*/function (_Node) {
39759
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
39760
+ function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
39761
+ function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), Object.defineProperty(e, "prototype", { writable: false }), e; }
39762
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
39763
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return (String )(t); }
39764
+ function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
39765
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
39766
+ exports["default"] = /*#__PURE__*/function (_Node) {
39715
39767
  _inheritsLoose(Namespace, _Node);
39716
39768
  function Namespace() {
39717
39769
  return _Node.apply(this, arguments) || this;
@@ -39776,7 +39828,6 @@ function requireNamespace () {
39776
39828
  }]);
39777
39829
  return Namespace;
39778
39830
  }(_node["default"]);
39779
- exports["default"] = Namespace;
39780
39831
  module.exports = exports.default;
39781
39832
  } (namespace, namespace.exports));
39782
39833
  return namespace.exports;
@@ -39793,10 +39844,10 @@ function requireTag () {
39793
39844
  exports["default"] = void 0;
39794
39845
  var _namespace = _interopRequireDefault(/*@__PURE__*/ requireNamespace());
39795
39846
  var _types = /*@__PURE__*/ requireTypes();
39796
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
39797
- function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
39798
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
39799
- var Tag = /*#__PURE__*/function (_Namespace) {
39847
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
39848
+ function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
39849
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
39850
+ exports["default"] = /*#__PURE__*/function (_Namespace) {
39800
39851
  _inheritsLoose(Tag, _Namespace);
39801
39852
  function Tag(opts) {
39802
39853
  var _this;
@@ -39806,7 +39857,6 @@ function requireTag () {
39806
39857
  }
39807
39858
  return Tag;
39808
39859
  }(_namespace["default"]);
39809
- exports["default"] = Tag;
39810
39860
  module.exports = exports.default;
39811
39861
  } (tag, tag.exports));
39812
39862
  return tag.exports;
@@ -39825,10 +39875,10 @@ function requireString () {
39825
39875
  exports["default"] = void 0;
39826
39876
  var _node = _interopRequireDefault(/*@__PURE__*/ requireNode$1());
39827
39877
  var _types = /*@__PURE__*/ requireTypes();
39828
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
39829
- function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
39830
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
39831
- var String = /*#__PURE__*/function (_Node) {
39878
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
39879
+ function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
39880
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
39881
+ exports["default"] = /*#__PURE__*/function (_Node) {
39832
39882
  _inheritsLoose(String, _Node);
39833
39883
  function String(opts) {
39834
39884
  var _this;
@@ -39838,7 +39888,6 @@ function requireString () {
39838
39888
  }
39839
39889
  return String;
39840
39890
  }(_node["default"]);
39841
- exports["default"] = String;
39842
39891
  module.exports = exports.default;
39843
39892
  } (string, string.exports));
39844
39893
  return string.exports;
@@ -39857,10 +39906,10 @@ function requirePseudo () {
39857
39906
  exports["default"] = void 0;
39858
39907
  var _container = _interopRequireDefault(/*@__PURE__*/ requireContainer());
39859
39908
  var _types = /*@__PURE__*/ requireTypes();
39860
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
39861
- function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
39862
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
39863
- var Pseudo = /*#__PURE__*/function (_Container) {
39909
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
39910
+ function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
39911
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
39912
+ exports["default"] = /*#__PURE__*/function (_Container) {
39864
39913
  _inheritsLoose(Pseudo, _Container);
39865
39914
  function Pseudo(opts) {
39866
39915
  var _this;
@@ -39869,13 +39918,17 @@ function requirePseudo () {
39869
39918
  return _this;
39870
39919
  }
39871
39920
  var _proto = Pseudo.prototype;
39872
- _proto.toString = function toString() {
39873
- var params = this.length ? '(' + this.map(String).join(',') + ')' : '';
39921
+ _proto._stringify = function _stringify(options, depth, max) {
39922
+ if (depth >= max) {
39923
+ throw new Error("Cannot serialize selector: nesting depth exceeds the maximum of " + max + ".");
39924
+ }
39925
+ var params = this.length ? '(' + this.map(function (child) {
39926
+ return child._stringify(options, depth + 1, max);
39927
+ }).join(',') + ')' : '';
39874
39928
  return [this.rawSpaceBefore, this.stringifyProperty("value"), params, this.rawSpaceAfter].join('');
39875
39929
  };
39876
39930
  return Pseudo;
39877
39931
  }(_container["default"]);
39878
- exports["default"] = Pseudo;
39879
39932
  module.exports = exports.default;
39880
39933
  } (pseudo, pseudo.exports));
39881
39934
  return pseudo.exports;
@@ -39912,11 +39965,13 @@ function requireAttribute () {
39912
39965
  var _namespace = _interopRequireDefault(/*@__PURE__*/ requireNamespace());
39913
39966
  var _types = /*@__PURE__*/ requireTypes();
39914
39967
  var _CSSESC_QUOTE_OPTIONS;
39915
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
39916
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
39917
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
39918
- function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
39919
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
39968
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
39969
+ function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
39970
+ function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), Object.defineProperty(e, "prototype", { writable: false }), e; }
39971
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
39972
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return (String )(t); }
39973
+ function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
39974
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
39920
39975
  var deprecate = /*@__PURE__*/ requireNode();
39921
39976
  var WRAPPED_IN_QUOTES = /^('|")([^]*)\1$/;
39922
39977
  var warnOfDeprecatedValueAssignment = deprecate(function () {}, "Assigning an attribute a value containing characters that might need to be escaped is deprecated. " + "Call attribute.setValue() instead.");
@@ -39962,7 +40017,7 @@ function requireAttribute () {
39962
40017
  opts.quoteMark = quoteMark;
39963
40018
  return opts;
39964
40019
  }
39965
- var Attribute = /*#__PURE__*/function (_Namespace) {
40020
+ var Attribute = exports["default"] = /*#__PURE__*/function (_Namespace) {
39966
40021
  _inheritsLoose(Attribute, _Namespace);
39967
40022
  function Attribute(opts) {
39968
40023
  var _this;
@@ -40331,7 +40386,6 @@ function requireAttribute () {
40331
40386
  }]);
40332
40387
  return Attribute;
40333
40388
  }(_namespace["default"]);
40334
- exports["default"] = Attribute;
40335
40389
  Attribute.NO_QUOTE = null;
40336
40390
  Attribute.SINGLE_QUOTE = "'";
40337
40391
  Attribute.DOUBLE_QUOTE = '"';
@@ -40367,10 +40421,10 @@ function requireUniversal () {
40367
40421
  exports["default"] = void 0;
40368
40422
  var _namespace = _interopRequireDefault(/*@__PURE__*/ requireNamespace());
40369
40423
  var _types = /*@__PURE__*/ requireTypes();
40370
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
40371
- function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
40372
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
40373
- var Universal = /*#__PURE__*/function (_Namespace) {
40424
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
40425
+ function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
40426
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
40427
+ exports["default"] = /*#__PURE__*/function (_Namespace) {
40374
40428
  _inheritsLoose(Universal, _Namespace);
40375
40429
  function Universal(opts) {
40376
40430
  var _this;
@@ -40381,7 +40435,6 @@ function requireUniversal () {
40381
40435
  }
40382
40436
  return Universal;
40383
40437
  }(_namespace["default"]);
40384
- exports["default"] = Universal;
40385
40438
  module.exports = exports.default;
40386
40439
  } (universal, universal.exports));
40387
40440
  return universal.exports;
@@ -40400,10 +40453,10 @@ function requireCombinator () {
40400
40453
  exports["default"] = void 0;
40401
40454
  var _node = _interopRequireDefault(/*@__PURE__*/ requireNode$1());
40402
40455
  var _types = /*@__PURE__*/ requireTypes();
40403
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
40404
- function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
40405
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
40406
- var Combinator = /*#__PURE__*/function (_Node) {
40456
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
40457
+ function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
40458
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
40459
+ exports["default"] = /*#__PURE__*/function (_Node) {
40407
40460
  _inheritsLoose(Combinator, _Node);
40408
40461
  function Combinator(opts) {
40409
40462
  var _this;
@@ -40413,7 +40466,6 @@ function requireCombinator () {
40413
40466
  }
40414
40467
  return Combinator;
40415
40468
  }(_node["default"]);
40416
- exports["default"] = Combinator;
40417
40469
  module.exports = exports.default;
40418
40470
  } (combinator, combinator.exports));
40419
40471
  return combinator.exports;
@@ -40432,10 +40484,10 @@ function requireNesting () {
40432
40484
  exports["default"] = void 0;
40433
40485
  var _node = _interopRequireDefault(/*@__PURE__*/ requireNode$1());
40434
40486
  var _types = /*@__PURE__*/ requireTypes();
40435
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
40436
- function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
40437
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
40438
- var Nesting = /*#__PURE__*/function (_Node) {
40487
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
40488
+ function _inheritsLoose(t, o) { t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o); }
40489
+ function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
40490
+ exports["default"] = /*#__PURE__*/function (_Node) {
40439
40491
  _inheritsLoose(Nesting, _Node);
40440
40492
  function Nesting(opts) {
40441
40493
  var _this;
@@ -40446,7 +40498,6 @@ function requireNesting () {
40446
40498
  }
40447
40499
  return Nesting;
40448
40500
  }(_node["default"]);
40449
- exports["default"] = Nesting;
40450
40501
  module.exports = exports.default;
40451
40502
  } (nesting, nesting.exports));
40452
40503
  return nesting.exports;
@@ -40485,72 +40536,42 @@ function requireTokenTypes () {
40485
40536
 
40486
40537
  tokenTypes.__esModule = true;
40487
40538
  tokenTypes.word = tokenTypes.tilde = tokenTypes.tab = tokenTypes.str = tokenTypes.space = tokenTypes.slash = tokenTypes.singleQuote = tokenTypes.semicolon = tokenTypes.plus = tokenTypes.pipe = tokenTypes.openSquare = tokenTypes.openParenthesis = tokenTypes.newline = tokenTypes.greaterThan = tokenTypes.feed = tokenTypes.equals = tokenTypes.doubleQuote = tokenTypes.dollar = tokenTypes.cr = tokenTypes.comment = tokenTypes.comma = tokenTypes.combinator = tokenTypes.colon = tokenTypes.closeSquare = tokenTypes.closeParenthesis = tokenTypes.caret = tokenTypes.bang = tokenTypes.backslash = tokenTypes.at = tokenTypes.asterisk = tokenTypes.ampersand = void 0;
40488
- var ampersand = 38; // `&`.charCodeAt(0);
40489
- tokenTypes.ampersand = ampersand;
40490
- var asterisk = 42; // `*`.charCodeAt(0);
40491
- tokenTypes.asterisk = asterisk;
40492
- var at = 64; // `@`.charCodeAt(0);
40493
- tokenTypes.at = at;
40494
- var comma = 44; // `,`.charCodeAt(0);
40495
- tokenTypes.comma = comma;
40496
- var colon = 58; // `:`.charCodeAt(0);
40497
- tokenTypes.colon = colon;
40498
- var semicolon = 59; // `;`.charCodeAt(0);
40499
- tokenTypes.semicolon = semicolon;
40500
- var openParenthesis = 40; // `(`.charCodeAt(0);
40501
- tokenTypes.openParenthesis = openParenthesis;
40502
- var closeParenthesis = 41; // `)`.charCodeAt(0);
40503
- tokenTypes.closeParenthesis = closeParenthesis;
40504
- var openSquare = 91; // `[`.charCodeAt(0);
40505
- tokenTypes.openSquare = openSquare;
40506
- var closeSquare = 93; // `]`.charCodeAt(0);
40507
- tokenTypes.closeSquare = closeSquare;
40508
- var dollar = 36; // `$`.charCodeAt(0);
40509
- tokenTypes.dollar = dollar;
40510
- var tilde = 126; // `~`.charCodeAt(0);
40511
- tokenTypes.tilde = tilde;
40512
- var caret = 94; // `^`.charCodeAt(0);
40513
- tokenTypes.caret = caret;
40514
- var plus = 43; // `+`.charCodeAt(0);
40515
- tokenTypes.plus = plus;
40516
- var equals = 61; // `=`.charCodeAt(0);
40517
- tokenTypes.equals = equals;
40518
- var pipe = 124; // `|`.charCodeAt(0);
40519
- tokenTypes.pipe = pipe;
40520
- var greaterThan = 62; // `>`.charCodeAt(0);
40521
- tokenTypes.greaterThan = greaterThan;
40522
- var space = 32; // ` `.charCodeAt(0);
40523
- tokenTypes.space = space;
40524
- var singleQuote = 39; // `'`.charCodeAt(0);
40525
- tokenTypes.singleQuote = singleQuote;
40526
- var doubleQuote = 34; // `"`.charCodeAt(0);
40527
- tokenTypes.doubleQuote = doubleQuote;
40528
- var slash = 47; // `/`.charCodeAt(0);
40529
- tokenTypes.slash = slash;
40530
- var bang = 33; // `!`.charCodeAt(0);
40531
- tokenTypes.bang = bang;
40532
- var backslash = 92; // '\\'.charCodeAt(0);
40533
- tokenTypes.backslash = backslash;
40534
- var cr = 13; // '\r'.charCodeAt(0);
40535
- tokenTypes.cr = cr;
40536
- var feed = 12; // '\f'.charCodeAt(0);
40537
- tokenTypes.feed = feed;
40538
- var newline = 10; // '\n'.charCodeAt(0);
40539
- tokenTypes.newline = newline;
40540
- var tab = 9; // '\t'.charCodeAt(0);
40539
+ tokenTypes.ampersand = 38; // `&`.charCodeAt(0);
40540
+ tokenTypes.asterisk = 42; // `*`.charCodeAt(0);
40541
+ tokenTypes.at = 64; // `@`.charCodeAt(0);
40542
+ tokenTypes.comma = 44; // `,`.charCodeAt(0);
40543
+ tokenTypes.colon = 58; // `:`.charCodeAt(0);
40544
+ tokenTypes.semicolon = 59; // `;`.charCodeAt(0);
40545
+ tokenTypes.openParenthesis = 40; // `(`.charCodeAt(0);
40546
+ tokenTypes.closeParenthesis = 41; // `)`.charCodeAt(0);
40547
+ tokenTypes.openSquare = 91; // `[`.charCodeAt(0);
40548
+ tokenTypes.closeSquare = 93; // `]`.charCodeAt(0);
40549
+ tokenTypes.dollar = 36; // `$`.charCodeAt(0);
40550
+ tokenTypes.tilde = 126; // `~`.charCodeAt(0);
40551
+ tokenTypes.caret = 94; // `^`.charCodeAt(0);
40552
+ tokenTypes.plus = 43; // `+`.charCodeAt(0);
40553
+ tokenTypes.equals = 61; // `=`.charCodeAt(0);
40554
+ tokenTypes.pipe = 124; // `|`.charCodeAt(0);
40555
+ tokenTypes.greaterThan = 62; // `>`.charCodeAt(0);
40556
+ tokenTypes.space = 32; // ` `.charCodeAt(0);
40557
+ var singleQuote = tokenTypes.singleQuote = 39; // `'`.charCodeAt(0);
40558
+ tokenTypes.doubleQuote = 34; // `"`.charCodeAt(0);
40559
+ tokenTypes.slash = 47; // `/`.charCodeAt(0);
40560
+ tokenTypes.bang = 33; // `!`.charCodeAt(0);
40561
+
40562
+ tokenTypes.backslash = 92; // '\\'.charCodeAt(0);
40563
+ tokenTypes.cr = 13; // '\r'.charCodeAt(0);
40564
+ tokenTypes.feed = 12; // '\f'.charCodeAt(0);
40565
+ tokenTypes.newline = 10; // '\n'.charCodeAt(0);
40566
+ tokenTypes.tab = 9; // '\t'.charCodeAt(0);
40541
40567
 
40542
40568
  // Expose aliases primarily for readability.
40543
- tokenTypes.tab = tab;
40544
- var str = singleQuote;
40569
+ tokenTypes.str = singleQuote;
40545
40570
 
40546
40571
  // No good single character representation!
40547
- tokenTypes.str = str;
40548
- var comment = -1;
40549
- tokenTypes.comment = comment;
40550
- var word = -2;
40551
- tokenTypes.word = word;
40552
- var combinator = -3;
40553
- tokenTypes.combinator = combinator;
40572
+ tokenTypes.comment = -1;
40573
+ tokenTypes.word = -2;
40574
+ tokenTypes.combinator = -3;
40554
40575
  return tokenTypes;
40555
40576
  }
40556
40577
 
@@ -40566,8 +40587,7 @@ function requireTokenize () {
40566
40587
  exports["default"] = tokenize;
40567
40588
  var t = _interopRequireWildcard(/*@__PURE__*/ requireTokenTypes());
40568
40589
  var _unescapable, _wordDelimiters;
40569
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
40570
- function _interopRequireWildcard(obj, nodeInterop) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
40590
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) { "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); } return f; })(e, t); }
40571
40591
  var unescapable = (_unescapable = {}, _unescapable[t.tab] = true, _unescapable[t.newline] = true, _unescapable[t.cr] = true, _unescapable[t.feed] = true, _unescapable);
40572
40592
  var wordDelimiters = (_wordDelimiters = {}, _wordDelimiters[t.space] = true, _wordDelimiters[t.tab] = true, _wordDelimiters[t.newline] = true, _wordDelimiters[t.cr] = true, _wordDelimiters[t.feed] = true, _wordDelimiters[t.ampersand] = true, _wordDelimiters[t.asterisk] = true, _wordDelimiters[t.bang] = true, _wordDelimiters[t.comma] = true, _wordDelimiters[t.colon] = true, _wordDelimiters[t.semicolon] = true, _wordDelimiters[t.openParenthesis] = true, _wordDelimiters[t.closeParenthesis] = true, _wordDelimiters[t.openSquare] = true, _wordDelimiters[t.closeSquare] = true, _wordDelimiters[t.singleQuote] = true, _wordDelimiters[t.doubleQuote] = true, _wordDelimiters[t.plus] = true, _wordDelimiters[t.pipe] = true, _wordDelimiters[t.tilde] = true, _wordDelimiters[t.greaterThan] = true, _wordDelimiters[t.equals] = true, _wordDelimiters[t.dollar] = true, _wordDelimiters[t.caret] = true, _wordDelimiters[t.slash] = true, _wordDelimiters);
40573
40593
  var hex = {};
@@ -40624,7 +40644,7 @@ function requireTokenize () {
40624
40644
  }
40625
40645
  return next;
40626
40646
  }
40627
- var FIELDS = {
40647
+ exports.FIELDS = {
40628
40648
  TYPE: 0,
40629
40649
  START_LINE: 1,
40630
40650
  START_COL: 2,
@@ -40633,7 +40653,6 @@ function requireTokenize () {
40633
40653
  START_POS: 5,
40634
40654
  END_POS: 6
40635
40655
  };
40636
- exports.FIELDS = FIELDS;
40637
40656
  function tokenize(input) {
40638
40657
  var tokens = [];
40639
40658
  var css = input.css.valueOf();
@@ -40827,11 +40846,12 @@ function requireParser () {
40827
40846
  var types = _interopRequireWildcard(/*@__PURE__*/ requireTypes());
40828
40847
  var _util = /*@__PURE__*/ requireUtil$1();
40829
40848
  var _WHITESPACE_TOKENS, _Object$assign;
40830
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
40831
- function _interopRequireWildcard(obj, nodeInterop) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
40832
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
40833
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
40834
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
40849
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) { "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); } return f; })(e, t); }
40850
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
40851
+ function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || false, o.configurable = true, "value" in o && (o.writable = true), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
40852
+ function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), Object.defineProperty(e, "prototype", { writable: false }), e; }
40853
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
40854
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return (String )(t); }
40835
40855
  var WHITESPACE_TOKENS = (_WHITESPACE_TOKENS = {}, _WHITESPACE_TOKENS[tokens.space] = true, _WHITESPACE_TOKENS[tokens.cr] = true, _WHITESPACE_TOKENS[tokens.feed] = true, _WHITESPACE_TOKENS[tokens.newline] = true, _WHITESPACE_TOKENS[tokens.tab] = true, _WHITESPACE_TOKENS);
40836
40856
  var WHITESPACE_EQUIV_TOKENS = Object.assign({}, WHITESPACE_TOKENS, (_Object$assign = {}, _Object$assign[tokens.comment] = true, _Object$assign));
40837
40857
  function tokenStart(token) {
@@ -40895,7 +40915,7 @@ function requireParser () {
40895
40915
  return i === list.indexOf(item);
40896
40916
  });
40897
40917
  }
40898
- var Parser = /*#__PURE__*/function () {
40918
+ exports["default"] = /*#__PURE__*/function () {
40899
40919
  function Parser(rule, options) {
40900
40920
  if (options === void 0) {
40901
40921
  options = {};
@@ -40906,6 +40926,8 @@ function requireParser () {
40906
40926
  safe: false
40907
40927
  }, options);
40908
40928
  this.position = 0;
40929
+ this.nestingDepth = 0;
40930
+ this.maxNestingDepth = (0, _util.resolveMaxNestingDepth)(this.options.maxNestingDepth);
40909
40931
  this.css = typeof this.rule === 'string' ? this.rule : this.rule.selector;
40910
40932
  this.tokens = (0, _tokenize["default"])({
40911
40933
  css: this.css,
@@ -41460,20 +41482,34 @@ function requireParser () {
41460
41482
  var cache = this.current;
41461
41483
  last.append(selector);
41462
41484
  this.current = selector;
41463
- while (this.position < this.tokens.length && unbalanced) {
41464
- if (this.currToken[_tokenize.FIELDS.TYPE] === tokens.openParenthesis) {
41465
- unbalanced++;
41466
- }
41467
- if (this.currToken[_tokenize.FIELDS.TYPE] === tokens.closeParenthesis) {
41468
- unbalanced--;
41485
+ // Track nesting depth so deeply nested pseudo selectors raise a
41486
+ // catchable error instead of overflowing the call stack. The
41487
+ // counter is restored in `finally` so the parser is never left in
41488
+ // an inconsistent state, even on the error path.
41489
+ this.nestingDepth++;
41490
+ try {
41491
+ if (this.nestingDepth > this.maxNestingDepth) {
41492
+ this.error("Cannot parse selector: nesting depth exceeds the maximum of " + this.maxNestingDepth + ".", {
41493
+ index: this.currToken[_tokenize.FIELDS.START_POS]
41494
+ });
41469
41495
  }
41470
- if (unbalanced) {
41471
- this.parse();
41472
- } else {
41473
- this.current.source.end = tokenEnd(this.currToken);
41474
- this.current.parent.source.end = tokenEnd(this.currToken);
41475
- this.position++;
41496
+ while (this.position < this.tokens.length && unbalanced) {
41497
+ if (this.currToken[_tokenize.FIELDS.TYPE] === tokens.openParenthesis) {
41498
+ unbalanced++;
41499
+ }
41500
+ if (this.currToken[_tokenize.FIELDS.TYPE] === tokens.closeParenthesis) {
41501
+ unbalanced--;
41502
+ }
41503
+ if (unbalanced) {
41504
+ this.parse();
41505
+ } else {
41506
+ this.current.source.end = tokenEnd(this.currToken);
41507
+ this.current.parent.source.end = tokenEnd(this.currToken);
41508
+ this.position++;
41509
+ }
41476
41510
  }
41511
+ } finally {
41512
+ this.nestingDepth--;
41477
41513
  }
41478
41514
  this.current = cache;
41479
41515
  } else {
@@ -41816,7 +41852,6 @@ function requireParser () {
41816
41852
  }]);
41817
41853
  return Parser;
41818
41854
  }();
41819
- exports["default"] = Parser;
41820
41855
  module.exports = exports.default;
41821
41856
  } (parser, parser.exports));
41822
41857
  return parser.exports;
@@ -41832,8 +41867,8 @@ function requireProcessor () {
41832
41867
  exports.__esModule = true;
41833
41868
  exports["default"] = void 0;
41834
41869
  var _parser = _interopRequireDefault(/*@__PURE__*/ requireParser());
41835
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
41836
- var Processor = /*#__PURE__*/function () {
41870
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
41871
+ exports["default"] = /*#__PURE__*/function () {
41837
41872
  function Processor(func, options) {
41838
41873
  this.func = func || function noop() {};
41839
41874
  this.funcRes = null;
@@ -41870,8 +41905,16 @@ function requireProcessor () {
41870
41905
  return parser.root;
41871
41906
  };
41872
41907
  _proto._parseOptions = function _parseOptions(options) {
41908
+ var merged = Object.assign({}, this.options, options);
41909
+ return {
41910
+ lossy: this._isLossy(merged),
41911
+ maxNestingDepth: merged.maxNestingDepth
41912
+ };
41913
+ };
41914
+ _proto._stringifyOptions = function _stringifyOptions(options) {
41915
+ var merged = Object.assign({}, this.options, options);
41873
41916
  return {
41874
- lossy: this._isLossy(options)
41917
+ maxNestingDepth: merged.maxNestingDepth
41875
41918
  };
41876
41919
  };
41877
41920
  _proto._run = function _run(rule, options) {
@@ -41885,7 +41928,7 @@ function requireProcessor () {
41885
41928
  Promise.resolve(_this.func(root)).then(function (transform) {
41886
41929
  var string = undefined;
41887
41930
  if (_this._shouldUpdateSelector(rule, options)) {
41888
- string = root.toString();
41931
+ string = root.toString(_this._stringifyOptions(options));
41889
41932
  rule.selector = string;
41890
41933
  }
41891
41934
  return {
@@ -41911,7 +41954,7 @@ function requireProcessor () {
41911
41954
  }
41912
41955
  var string = undefined;
41913
41956
  if (options.updateSelector && typeof rule !== "string") {
41914
- string = root.toString();
41957
+ string = root.toString(this._stringifyOptions(options));
41915
41958
  rule.selector = string;
41916
41959
  }
41917
41960
  return {
@@ -41977,8 +42020,9 @@ function requireProcessor () {
41977
42020
  * @returns {string} the selector after processing.
41978
42021
  */;
41979
42022
  _proto.process = function process(rule, options) {
42023
+ var _this2 = this;
41980
42024
  return this._run(rule, options).then(function (result) {
41981
- return result.string || result.root.toString();
42025
+ return result.string || result.root.toString(_this2._stringifyOptions(options));
41982
42026
  });
41983
42027
  }
41984
42028
 
@@ -41991,11 +42035,10 @@ function requireProcessor () {
41991
42035
  */;
41992
42036
  _proto.processSync = function processSync(rule, options) {
41993
42037
  var result = this._runSync(rule, options);
41994
- return result.string || result.root.toString();
42038
+ return result.string || result.root.toString(this._stringifyOptions(options));
41995
42039
  };
41996
42040
  return Processor;
41997
42041
  }();
41998
- exports["default"] = Processor;
41999
42042
  module.exports = exports.default;
42000
42043
  } (processor, processor.exports));
42001
42044
  return processor.exports;
@@ -42025,55 +42068,43 @@ function requireConstructors () {
42025
42068
  var _string = _interopRequireDefault(/*@__PURE__*/ requireString());
42026
42069
  var _tag = _interopRequireDefault(/*@__PURE__*/ requireTag());
42027
42070
  var _universal = _interopRequireDefault(/*@__PURE__*/ requireUniversal());
42028
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
42029
- var attribute = function attribute(opts) {
42071
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
42072
+ constructors.attribute = function attribute(opts) {
42030
42073
  return new _attribute["default"](opts);
42031
42074
  };
42032
- constructors.attribute = attribute;
42033
- var className = function className(opts) {
42075
+ constructors.className = function className(opts) {
42034
42076
  return new _className["default"](opts);
42035
42077
  };
42036
- constructors.className = className;
42037
- var combinator = function combinator(opts) {
42078
+ constructors.combinator = function combinator(opts) {
42038
42079
  return new _combinator["default"](opts);
42039
42080
  };
42040
- constructors.combinator = combinator;
42041
- var comment = function comment(opts) {
42081
+ constructors.comment = function comment(opts) {
42042
42082
  return new _comment["default"](opts);
42043
42083
  };
42044
- constructors.comment = comment;
42045
- var id = function id(opts) {
42084
+ constructors.id = function id(opts) {
42046
42085
  return new _id["default"](opts);
42047
42086
  };
42048
- constructors.id = id;
42049
- var nesting = function nesting(opts) {
42087
+ constructors.nesting = function nesting(opts) {
42050
42088
  return new _nesting["default"](opts);
42051
42089
  };
42052
- constructors.nesting = nesting;
42053
- var pseudo = function pseudo(opts) {
42090
+ constructors.pseudo = function pseudo(opts) {
42054
42091
  return new _pseudo["default"](opts);
42055
42092
  };
42056
- constructors.pseudo = pseudo;
42057
- var root = function root(opts) {
42093
+ constructors.root = function root(opts) {
42058
42094
  return new _root["default"](opts);
42059
42095
  };
42060
- constructors.root = root;
42061
- var selector = function selector(opts) {
42096
+ constructors.selector = function selector(opts) {
42062
42097
  return new _selector["default"](opts);
42063
42098
  };
42064
- constructors.selector = selector;
42065
- var string = function string(opts) {
42099
+ constructors.string = function string(opts) {
42066
42100
  return new _string["default"](opts);
42067
42101
  };
42068
- constructors.string = string;
42069
- var tag = function tag(opts) {
42102
+ constructors.tag = function tag(opts) {
42070
42103
  return new _tag["default"](opts);
42071
42104
  };
42072
- constructors.tag = tag;
42073
- var universal = function universal(opts) {
42105
+ constructors.universal = function universal(opts) {
42074
42106
  return new _universal["default"](opts);
42075
42107
  };
42076
- constructors.universal = universal;
42077
42108
  return constructors;
42078
42109
  }
42079
42110
 
@@ -42105,30 +42136,18 @@ function requireGuards () {
42105
42136
  function isNodeType(type, node) {
42106
42137
  return isNode(node) && node.type === type;
42107
42138
  }
42108
- var isAttribute = isNodeType.bind(null, _types.ATTRIBUTE);
42109
- guards.isAttribute = isAttribute;
42110
- var isClassName = isNodeType.bind(null, _types.CLASS);
42111
- guards.isClassName = isClassName;
42112
- var isCombinator = isNodeType.bind(null, _types.COMBINATOR);
42113
- guards.isCombinator = isCombinator;
42114
- var isComment = isNodeType.bind(null, _types.COMMENT);
42115
- guards.isComment = isComment;
42116
- var isIdentifier = isNodeType.bind(null, _types.ID);
42117
- guards.isIdentifier = isIdentifier;
42118
- var isNesting = isNodeType.bind(null, _types.NESTING);
42119
- guards.isNesting = isNesting;
42120
- var isPseudo = isNodeType.bind(null, _types.PSEUDO);
42121
- guards.isPseudo = isPseudo;
42122
- var isRoot = isNodeType.bind(null, _types.ROOT);
42123
- guards.isRoot = isRoot;
42124
- var isSelector = isNodeType.bind(null, _types.SELECTOR);
42125
- guards.isSelector = isSelector;
42126
- var isString = isNodeType.bind(null, _types.STRING);
42127
- guards.isString = isString;
42128
- var isTag = isNodeType.bind(null, _types.TAG);
42129
- guards.isTag = isTag;
42130
- var isUniversal = isNodeType.bind(null, _types.UNIVERSAL);
42131
- guards.isUniversal = isUniversal;
42139
+ var isAttribute = guards.isAttribute = isNodeType.bind(null, _types.ATTRIBUTE);
42140
+ guards.isClassName = isNodeType.bind(null, _types.CLASS);
42141
+ guards.isCombinator = isNodeType.bind(null, _types.COMBINATOR);
42142
+ guards.isComment = isNodeType.bind(null, _types.COMMENT);
42143
+ guards.isIdentifier = isNodeType.bind(null, _types.ID);
42144
+ guards.isNesting = isNodeType.bind(null, _types.NESTING);
42145
+ var isPseudo = guards.isPseudo = isNodeType.bind(null, _types.PSEUDO);
42146
+ guards.isRoot = isNodeType.bind(null, _types.ROOT);
42147
+ guards.isSelector = isNodeType.bind(null, _types.SELECTOR);
42148
+ guards.isString = isNodeType.bind(null, _types.STRING);
42149
+ var isTag = guards.isTag = isNodeType.bind(null, _types.TAG);
42150
+ guards.isUniversal = isNodeType.bind(null, _types.UNIVERSAL);
42132
42151
  function isPseudoElement(node) {
42133
42152
  return isPseudo(node) && node.value && (node.value.startsWith("::") || node.value.toLowerCase() === ":before" || node.value.toLowerCase() === ":after" || node.value.toLowerCase() === ":first-letter" || node.value.toLowerCase() === ":first-line");
42134
42153
  }
@@ -42185,16 +42204,14 @@ function requireDist () {
42185
42204
  exports["default"] = void 0;
42186
42205
  var _processor = _interopRequireDefault(/*@__PURE__*/ requireProcessor());
42187
42206
  var selectors = _interopRequireWildcard(/*@__PURE__*/ requireSelectors());
42188
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
42189
- function _interopRequireWildcard(obj, nodeInterop) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
42190
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
42207
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) { "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); } return f; })(e, t); }
42208
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
42191
42209
  var parser = function parser(processor) {
42192
42210
  return new _processor["default"](processor);
42193
42211
  };
42194
42212
  Object.assign(parser, selectors);
42195
42213
  delete parser.__esModule;
42196
- var _default = parser;
42197
- exports["default"] = _default;
42214
+ exports["default"] = parser;
42198
42215
  module.exports = exports.default;
42199
42216
  } (dist, dist.exports));
42200
42217
  return dist.exports;
@@ -47901,7 +47918,16 @@ function resolveTypeElements(ctx, node, scope, typeParameters) {
47901
47918
  }
47902
47919
  function innerResolveTypeElements(ctx, node, scope, typeParameters) {
47903
47920
  var _a, _b;
47904
- if (node.leadingComments && node.leadingComments.some((c) => c.value.includes("@vue-ignore"))) {
47921
+ if (hasVueIgnore(node)) {
47922
+ if ((node.type === "TSIntersectionType" || node.type === "TSUnionType") && node.types.length > 1) {
47923
+ return mergeElements(
47924
+ [
47925
+ { props: {} },
47926
+ ...node.types.slice(1).map((t) => resolveTypeElements(ctx, t, scope, typeParameters))
47927
+ ],
47928
+ node.type
47929
+ );
47930
+ }
47905
47931
  return { props: {} };
47906
47932
  }
47907
47933
  switch (node.type) {
@@ -48063,6 +48089,9 @@ function typeElementsToMap(ctx, elements, scope = ctxToScope(ctx), typeParameter
48063
48089
  }
48064
48090
  return res;
48065
48091
  }
48092
+ function hasVueIgnore(node) {
48093
+ return !!(node.leadingComments && node.leadingComments.some((c) => c.value.includes("@vue-ignore")));
48094
+ }
48066
48095
  function mergeElements(maps, type) {
48067
48096
  if (maps.length === 1) return maps[0];
48068
48097
  const res = { props: {} };
@@ -49818,6 +49847,7 @@ function transformDestructuredProps(ctx, vueImportAliases) {
49818
49847
  }
49819
49848
  const rootScope = /* @__PURE__ */ Object.create(null);
49820
49849
  const scopeStack = [rootScope];
49850
+ const functionScopeStack = [rootScope];
49821
49851
  let currentScope = rootScope;
49822
49852
  const excludedIds = /* @__PURE__ */ new WeakSet();
49823
49853
  const parentStack = [];
@@ -49827,17 +49857,24 @@ function transformDestructuredProps(ctx, vueImportAliases) {
49827
49857
  rootScope[local] = true;
49828
49858
  propsLocalToPublicMap[local] = key;
49829
49859
  }
49830
- function pushScope() {
49831
- scopeStack.push(currentScope = Object.create(currentScope));
49860
+ function pushScope(isFunctionScope = false) {
49861
+ const scope = currentScope = Object.create(currentScope);
49862
+ scopeStack.push(scope);
49863
+ if (isFunctionScope) {
49864
+ functionScopeStack.push(scope);
49865
+ }
49832
49866
  }
49833
- function popScope() {
49867
+ function popScope(isFunctionScope = false) {
49834
49868
  scopeStack.pop();
49869
+ if (isFunctionScope) {
49870
+ functionScopeStack.pop();
49871
+ }
49835
49872
  currentScope = scopeStack[scopeStack.length - 1] || null;
49836
49873
  }
49837
- function registerLocalBinding(id) {
49874
+ function registerLocalBinding(id, scope = currentScope) {
49838
49875
  excludedIds.add(id);
49839
- if (currentScope) {
49840
- currentScope[id.name] = false;
49876
+ if (scope) {
49877
+ scope[id.name] = false;
49841
49878
  } else {
49842
49879
  ctx.error(
49843
49880
  "registerBinding called without active scope, something is wrong.",
@@ -49859,7 +49896,7 @@ function transformDestructuredProps(ctx, vueImportAliases) {
49859
49896
  }
49860
49897
  }
49861
49898
  }
49862
- function walkVariableDeclaration(stmt, isRoot = false) {
49899
+ function walkVariableDeclaration(stmt, isRoot = false, scope = stmt.kind === "var" ? functionScopeStack[functionScopeStack.length - 1] : currentScope) {
49863
49900
  if (stmt.declare) {
49864
49901
  return;
49865
49902
  }
@@ -49869,11 +49906,27 @@ function transformDestructuredProps(ctx, vueImportAliases) {
49869
49906
  if (isDefineProps) {
49870
49907
  excludedIds.add(id);
49871
49908
  } else {
49872
- registerLocalBinding(id);
49909
+ registerLocalBinding(id, scope);
49873
49910
  }
49874
49911
  }
49875
49912
  }
49876
49913
  }
49914
+ function walkFunctionScopeVarDeclarations(scopeNode, isRoot = false) {
49915
+ const scope = functionScopeStack[functionScopeStack.length - 1];
49916
+ walk$2(scopeNode, {
49917
+ enter(node, parent) {
49918
+ if (parent && parent.type.startsWith("TS") && !TS_NODE_TYPES.includes(parent.type)) {
49919
+ return this.skip();
49920
+ }
49921
+ if (isFunctionType(node) || node.type === "ClassDeclaration" || node.type === "ClassExpression") {
49922
+ return this.skip();
49923
+ }
49924
+ if (node.type === "VariableDeclaration" && node.kind === "var") {
49925
+ walkVariableDeclaration(node, isRoot && parent === scopeNode, scope);
49926
+ }
49927
+ }
49928
+ });
49929
+ }
49877
49930
  function rewriteId(id, parent, parentStack2) {
49878
49931
  if (parent.type === "AssignmentExpression" && id === parent.left || parent.type === "UpdateExpression") {
49879
49932
  ctx.error(`Cannot assign to destructured props as they are readonly.`, id);
@@ -49905,6 +49958,7 @@ function transformDestructuredProps(ctx, vueImportAliases) {
49905
49958
  }
49906
49959
  }
49907
49960
  const ast = ctx.scriptSetupAst;
49961
+ walkFunctionScopeVarDeclarations(ast, true);
49908
49962
  walkScope(ast, true);
49909
49963
  walk$2(ast, {
49910
49964
  enter(node, parent) {
@@ -49915,9 +49969,10 @@ function transformDestructuredProps(ctx, vueImportAliases) {
49915
49969
  checkUsage(node, "watch", vueImportAliases.watch);
49916
49970
  checkUsage(node, "toRef", vueImportAliases.toRef);
49917
49971
  if (isFunctionType(node)) {
49918
- pushScope();
49972
+ pushScope(true);
49919
49973
  walkFunctionParams(node, registerLocalBinding);
49920
49974
  if (node.body.type === "BlockStatement") {
49975
+ walkFunctionScopeVarDeclarations(node.body);
49921
49976
  walkScope(node.body);
49922
49977
  }
49923
49978
  return;
@@ -49956,7 +50011,11 @@ function transformDestructuredProps(ctx, vueImportAliases) {
49956
50011
  },
49957
50012
  leave(node, parent) {
49958
50013
  parent && parentStack.pop();
49959
- if (node.type === "BlockStatement" && !isFunctionType(parent) || isFunctionType(node) || node.type === "CatchClause" || node.type === "ForOfStatement" || node.type === "ForInStatement" || node.type === "ForStatement") {
50014
+ if (isFunctionType(node)) {
50015
+ popScope(true);
50016
+ } else if (node.type === "BlockStatement" && !isFunctionType(parent)) {
50017
+ popScope();
50018
+ } else if (node.type === "CatchClause" || node.type === "ForOfStatement" || node.type === "ForInStatement" || node.type === "ForStatement") {
49960
50019
  popScope();
49961
50020
  }
49962
50021
  }
@@ -51078,7 +51137,7 @@ var __spreadValues = (a, b) => {
51078
51137
  }
51079
51138
  return a;
51080
51139
  };
51081
- const version = "3.5.35";
51140
+ const version = "3.5.37";
51082
51141
  const parseCache = parseCache$1;
51083
51142
  const errorMessages = __spreadValues(__spreadValues({}, errorMessages$1), DOMErrorMessages);
51084
51143
  const walk = walk$2;