cypress 10.2.0 → 10.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/lib/exec/open.js +7 -2
  2. package/lib/exec/spawn.js +7 -2
  3. package/mount-utils/CHANGELOG.md +0 -1
  4. package/mount-utils/README.md +7 -0
  5. package/mount-utils/dist/index.js +8 -1
  6. package/mount-utils/package.json +1 -0
  7. package/package.json +20 -10
  8. package/react/CHANGELOG.md +0 -19
  9. package/react/README.md +28 -323
  10. package/react/dist/createMount.d.ts +30 -0
  11. package/react/dist/cypress-react.cjs.js +76 -80
  12. package/react/dist/cypress-react.esm-bundler.js +68 -76
  13. package/react/dist/getDisplayName.d.ts +1 -1
  14. package/react/dist/index.d.ts +2 -0
  15. package/react/dist/mount.d.ts +5 -141
  16. package/react/dist/types.d.ts +50 -0
  17. package/react/package.json +1 -5
  18. package/react18/dist/cypress-react.cjs.js +422 -0
  19. package/react18/dist/cypress-react.esm-bundler.js +394 -0
  20. package/react18/dist/index.d.ts +5 -0
  21. package/react18/package.json +59 -0
  22. package/types/cypress.d.ts +11 -2
  23. package/types/index.d.ts +1 -1
  24. package/types/{net-stubbing.ts → net-stubbing.d.ts} +0 -0
  25. package/vue/CHANGELOG.md +2 -17
  26. package/vue/README.md +17 -607
  27. package/vue/dist/@vue/test-utils/baseWrapper.d.ts +63 -0
  28. package/vue/dist/@vue/test-utils/components/RouterLinkStub.d.ts +21 -0
  29. package/vue/dist/@vue/test-utils/config.d.ts +30 -0
  30. package/vue/dist/@vue/test-utils/constants/dom-events.d.ts +900 -0
  31. package/vue/dist/@vue/test-utils/createDomEvent.d.ts +9 -0
  32. package/vue/dist/@vue/test-utils/domWrapper.d.ts +18 -0
  33. package/vue/dist/@vue/test-utils/emit.d.ts +5 -0
  34. package/vue/dist/@vue/test-utils/errorWrapper.d.ts +1 -0
  35. package/vue/dist/@vue/test-utils/index.d.ts +11 -0
  36. package/vue/dist/@vue/test-utils/interfaces/wrapperLike.d.ts +56 -0
  37. package/vue/dist/@vue/test-utils/mount.d.ts +35 -0
  38. package/vue/dist/@vue/test-utils/stubs.d.ts +22 -0
  39. package/vue/dist/@vue/test-utils/types.d.ts +125 -0
  40. package/vue/dist/@vue/test-utils/utils/autoUnmount.d.ts +5 -0
  41. package/vue/dist/@vue/test-utils/utils/compileSlots.d.ts +2 -0
  42. package/vue/dist/@vue/test-utils/utils/componentName.d.ts +4 -0
  43. package/vue/dist/@vue/test-utils/utils/find.d.ts +10 -0
  44. package/vue/dist/@vue/test-utils/utils/flushPromises.d.ts +1 -0
  45. package/vue/dist/@vue/test-utils/utils/getRootNodes.d.ts +2 -0
  46. package/vue/dist/@vue/test-utils/utils/isElement.d.ts +1 -0
  47. package/vue/dist/@vue/test-utils/utils/isElementVisible.d.ts +6 -0
  48. package/vue/dist/@vue/test-utils/utils/matchName.d.ts +1 -0
  49. package/vue/dist/@vue/test-utils/utils/stringifyNode.d.ts +1 -0
  50. package/vue/dist/@vue/test-utils/utils/vueCompatSupport.d.ts +8 -0
  51. package/vue/dist/@vue/test-utils/utils/vueShared.d.ts +3 -0
  52. package/vue/dist/@vue/test-utils/utils.d.ts +13 -0
  53. package/vue/dist/@vue/test-utils/vueWrapper.d.ts +35 -0
  54. package/vue/dist/@vue/test-utils/wrapperFactory.d.ts +14 -0
  55. package/vue/dist/cypress-vue.cjs.js +5583 -5209
  56. package/vue/dist/cypress-vue.esm-bundler.js +5584 -5211
  57. package/vue/dist/index.d.ts +35 -3
  58. package/vue/package.json +11 -7
  59. package/vue2/README.md +11 -627
  60. package/vue2/dist/cypress-vue2.browser.js +268 -262
  61. package/vue2/dist/cypress-vue2.cjs.js +267 -261
  62. package/vue2/dist/cypress-vue2.esm-bundler.js +265 -259
  63. package/vue2/package.json +1 -1
  64. package/react/dist/cypress-react.browser.js +0 -497
@@ -15,7 +15,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
15
15
 
16
16
  var require$$0__default = /*#__PURE__*/_interopDefaultLegacy(require$$0$1);
17
17
 
18
- /*! *****************************************************************************
18
+ /******************************************************************************
19
19
  Copyright (c) Microsoft Corporation.
20
20
 
21
21
  Permission to use, copy, modify, and/or distribute this software for any
@@ -41,14 +41,14 @@ var __assign = function() {
41
41
  return __assign.apply(this, arguments);
42
42
  };
43
43
 
44
- var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
44
+ var commonjsGlobal$1 = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
45
45
 
46
- function createCommonjsModule(fn) {
46
+ function createCommonjsModule$1(fn) {
47
47
  var module = { exports: {} };
48
48
  return fn(module, module.exports), module.exports;
49
49
  }
50
50
 
51
- var splitRE = /\r?\n/g;
51
+ var splitRE$1 = /\r?\n/g;
52
52
  var emptyRE = /^\s*$/;
53
53
  var needFixRE = /^(\r?\n)*[\t\s]/;
54
54
 
@@ -56,7 +56,7 @@ var deIndent = function deindent (str) {
56
56
  if (!needFixRE.test(str)) {
57
57
  return str
58
58
  }
59
- var lines = str.split(splitRE);
59
+ var lines = str.split(splitRE$1);
60
60
  var min = Infinity;
61
61
  var type, cur, c;
62
62
  for (var i = 0; i < lines.length; i++) {
@@ -96,19 +96,19 @@ function count (line, type) {
96
96
 
97
97
  /*! https://mths.be/he v1.2.0 by @mathias | MIT license */
98
98
 
99
- var he = createCommonjsModule(function (module, exports) {
99
+ var he$1 = createCommonjsModule$1(function (module, exports) {
100
100
  (function(root) {
101
101
 
102
102
  // Detect free variables `exports`.
103
- var freeExports = exports;
103
+ var freeExports = exports;
104
104
 
105
105
  // Detect free variable `module`.
106
- var freeModule = module &&
106
+ var freeModule = module &&
107
107
  module.exports == freeExports && module;
108
108
 
109
109
  // Detect free variable `global`, from Node.js or Browserified code,
110
110
  // and use it as `root`.
111
- var freeGlobal = typeof commonjsGlobal == 'object' && commonjsGlobal;
111
+ var freeGlobal = typeof commonjsGlobal$1 == 'object' && commonjsGlobal$1;
112
112
  if (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal) {
113
113
  root = freeGlobal;
114
114
  }
@@ -432,13 +432,13 @@ var he = createCommonjsModule(function (module, exports) {
432
432
  root.he = he;
433
433
  }
434
434
 
435
- }(commonjsGlobal));
435
+ }(commonjsGlobal$1));
436
436
  });
437
437
 
438
438
  function _interopDefault$1 (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
439
439
 
440
440
  var deindent = _interopDefault$1(deIndent);
441
- var he$1 = _interopDefault$1(he);
441
+ var he = _interopDefault$1(he$1);
442
442
 
443
443
  /* */
444
444
 
@@ -468,7 +468,7 @@ function isPrimitive (value) {
468
468
  * Objects from primitive values when we know the value
469
469
  * is a JSON-compliant type.
470
470
  */
471
- function isObject (obj) {
471
+ function isObject$1 (obj) {
472
472
  return obj !== null && typeof obj === 'object'
473
473
  }
474
474
 
@@ -485,7 +485,7 @@ function toRawType (value) {
485
485
  * Strict object type check. Only returns true
486
486
  * for plain JavaScript objects.
487
487
  */
488
- function isPlainObject (obj) {
488
+ function isPlainObject$1 (obj) {
489
489
  return _toString.call(obj) === '[object Object]'
490
490
  }
491
491
 
@@ -501,7 +501,7 @@ function isValidArrayIndex (val) {
501
501
  * Make a map and return a function for checking if a key
502
502
  * is in that map.
503
503
  */
504
- function makeMap (
504
+ function makeMap$1 (
505
505
  str,
506
506
  expectsLowerCase
507
507
  ) {
@@ -518,12 +518,12 @@ function makeMap (
518
518
  /**
519
519
  * Check if a tag is a built-in tag.
520
520
  */
521
- var isBuiltInTag = makeMap('slot,component', true);
521
+ var isBuiltInTag = makeMap$1('slot,component', true);
522
522
 
523
523
  /**
524
524
  * Check if an attribute is a reserved attribute.
525
525
  */
526
- makeMap('key,ref,slot,slot-scope,is');
526
+ makeMap$1('key,ref,slot,slot-scope,is');
527
527
 
528
528
  /**
529
529
  * Remove an item from an array.
@@ -540,15 +540,15 @@ function remove (arr, item) {
540
540
  /**
541
541
  * Check whether an object has the property.
542
542
  */
543
- var hasOwnProperty = Object.prototype.hasOwnProperty;
544
- function hasOwn (obj, key) {
545
- return hasOwnProperty.call(obj, key)
543
+ var hasOwnProperty$b = Object.prototype.hasOwnProperty;
544
+ function hasOwn$1 (obj, key) {
545
+ return hasOwnProperty$b.call(obj, key)
546
546
  }
547
547
 
548
548
  /**
549
549
  * Create a cached version of a pure function.
550
550
  */
551
- function cached (fn) {
551
+ function cached$1 (fn) {
552
552
  var cache = Object.create(null);
553
553
  return (function cachedFn (str) {
554
554
  var hit = cache[str];
@@ -559,23 +559,23 @@ function cached (fn) {
559
559
  /**
560
560
  * Camelize a hyphen-delimited string.
561
561
  */
562
- var camelizeRE = /-(\w)/g;
563
- var camelize = cached(function (str) {
564
- return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })
562
+ var camelizeRE$1 = /-(\w)/g;
563
+ var camelize$1 = cached$1(function (str) {
564
+ return str.replace(camelizeRE$1, function (_, c) { return c ? c.toUpperCase() : ''; })
565
565
  });
566
566
 
567
567
  /**
568
568
  * Hyphenate a camelCase string.
569
569
  */
570
- var hyphenateRE = /\B([A-Z])/g;
571
- var hyphenate = cached(function (str) {
572
- return str.replace(hyphenateRE, '-$1').toLowerCase()
570
+ var hyphenateRE$1 = /\B([A-Z])/g;
571
+ var hyphenate$1 = cached$1(function (str) {
572
+ return str.replace(hyphenateRE$1, '-$1').toLowerCase()
573
573
  });
574
574
 
575
575
  /**
576
576
  * Mix properties into target object.
577
577
  */
578
- function extend (to, _from) {
578
+ function extend$1 (to, _from) {
579
579
  for (var key in _from) {
580
580
  to[key] = _from[key];
581
581
  }
@@ -614,20 +614,20 @@ function genStaticKeys (modules) {
614
614
 
615
615
  /* */
616
616
 
617
- var isUnaryTag = makeMap(
617
+ var isUnaryTag = makeMap$1(
618
618
  'area,base,br,col,embed,frame,hr,img,input,isindex,keygen,' +
619
619
  'link,meta,param,source,track,wbr'
620
620
  );
621
621
 
622
622
  // Elements that you can, intentionally, leave open
623
623
  // (and which close themselves)
624
- var canBeLeftOpenTag = makeMap(
624
+ var canBeLeftOpenTag = makeMap$1(
625
625
  'colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source'
626
626
  );
627
627
 
628
628
  // HTML5 tags https://html.spec.whatwg.org/multipage/indices.html#elements-3
629
629
  // Phrasing Content https://html.spec.whatwg.org/multipage/dom.html#phrasing-content
630
- var isNonPhrasingTag = makeMap(
630
+ var isNonPhrasingTag = makeMap$1(
631
631
  'address,article,aside,base,blockquote,body,caption,col,colgroup,dd,' +
632
632
  'details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,' +
633
633
  'h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,' +
@@ -674,7 +674,7 @@ var comment = /^<!\--/;
674
674
  var conditionalComment = /^<!\[/;
675
675
 
676
676
  // Special Elements (can contain anything)
677
- var isPlainTextElement = makeMap('script,style,textarea', true);
677
+ var isPlainTextElement = makeMap$1('script,style,textarea', true);
678
678
  var reCache = {};
679
679
 
680
680
  var decodingMap = {
@@ -690,7 +690,7 @@ var encodedAttr = /&(?:lt|gt|quot|amp|#39);/g;
690
690
  var encodedAttrWithNewLines = /&(?:lt|gt|quot|amp|#39|#10|#9);/g;
691
691
 
692
692
  // #5992
693
- var isIgnoreNewlineTag = makeMap('pre,textarea', true);
693
+ var isIgnoreNewlineTag = makeMap$1('pre,textarea', true);
694
694
  var shouldIgnoreFirstNewline = function (tag, html) { return tag && isIgnoreNewlineTag(tag) && html[0] === '\n'; };
695
695
 
696
696
  function decodeAttr (value, shouldDecodeNewlines) {
@@ -954,9 +954,9 @@ function parseHTML (html, options) {
954
954
 
955
955
  /* */
956
956
 
957
- var splitRE$1 = /\r?\n/g;
957
+ var splitRE = /\r?\n/g;
958
958
  var replaceRE = /./g;
959
- var isSpecialTag = makeMap('script,style,template', true);
959
+ var isSpecialTag = makeMap$1('script,style,template', true);
960
960
 
961
961
  /**
962
962
  * Parse a single-file component (*.vue) file into an SFC Descriptor Object.
@@ -1070,7 +1070,7 @@ function parseComponent (
1070
1070
  if (pad === 'space') {
1071
1071
  return content.slice(0, block.start).replace(replaceRE, ' ')
1072
1072
  } else {
1073
- var offset = content.slice(0, block.start).split(splitRE$1).length;
1073
+ var offset = content.slice(0, block.start).split(splitRE).length;
1074
1074
  var padChar = block.type === 'script' && !block.lang
1075
1075
  ? '//\n'
1076
1076
  : '\n';
@@ -1097,15 +1097,15 @@ var hasProto = '__proto__' in {};
1097
1097
  var inBrowser = typeof window !== 'undefined';
1098
1098
  var inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;
1099
1099
  var weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();
1100
- var UA = inBrowser && window.navigator.userAgent.toLowerCase();
1101
- var isIE = UA && /msie|trident/.test(UA);
1102
- UA && UA.indexOf('msie 9.0') > 0;
1103
- var isEdge = UA && UA.indexOf('edge/') > 0;
1104
- (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');
1105
- (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');
1106
- UA && /chrome\/\d+/.test(UA) && !isEdge;
1107
- UA && /phantomjs/.test(UA);
1108
- UA && UA.match(/firefox\/(\d+)/);
1100
+ var UA$1 = inBrowser && window.navigator.userAgent.toLowerCase();
1101
+ var isIE = UA$1 && /msie|trident/.test(UA$1);
1102
+ UA$1 && UA$1.indexOf('msie 9.0') > 0;
1103
+ var isEdge$1 = UA$1 && UA$1.indexOf('edge/') > 0;
1104
+ (UA$1 && UA$1.indexOf('android') > 0) || (weexPlatform === 'android');
1105
+ (UA$1 && /iphone|ipad|ipod|ios/.test(UA$1)) || (weexPlatform === 'ios');
1106
+ UA$1 && /chrome\/\d+/.test(UA$1) && !isEdge$1;
1107
+ UA$1 && /phantomjs/.test(UA$1);
1108
+ UA$1 && UA$1.match(/firefox\/(\d+)/);
1109
1109
 
1110
1110
  // Firefox has a "watch" function on Object.prototype...
1111
1111
  var nativeWatch = ({}).watch;
@@ -1126,10 +1126,10 @@ var _isServer;
1126
1126
  var isServerRendering = function () {
1127
1127
  if (_isServer === undefined) {
1128
1128
  /* istanbul ignore if */
1129
- if (!inBrowser && !inWeex && typeof commonjsGlobal !== 'undefined') {
1129
+ if (!inBrowser && !inWeex && typeof commonjsGlobal$1 !== 'undefined') {
1130
1130
  // detect presence of vue-server-renderer and avoid
1131
1131
  // Webpack shimming the process
1132
- _isServer = commonjsGlobal['process'] && commonjsGlobal['process'].env.VUE_ENV === 'server';
1132
+ _isServer = commonjsGlobal$1['process'] && commonjsGlobal$1['process'].env.VUE_ENV === 'server';
1133
1133
  } else {
1134
1134
  _isServer = false;
1135
1135
  }
@@ -1173,7 +1173,7 @@ var LIFECYCLE_HOOKS = [
1173
1173
 
1174
1174
 
1175
1175
 
1176
- var config = ({
1176
+ var config$1 = ({
1177
1177
  /**
1178
1178
  * Option merge strategies (used in core/util/options)
1179
1179
  */
@@ -1269,7 +1269,7 @@ var config = ({
1269
1269
 
1270
1270
  /* */
1271
1271
 
1272
- var warn = noop;
1272
+ var warn$1 = noop;
1273
1273
  var tip = noop;
1274
1274
  var generateComponentTrace = (noop); // work around flow check
1275
1275
  var formatComponentName = (noop);
@@ -1281,16 +1281,16 @@ if (process.env.NODE_ENV !== 'production') {
1281
1281
  .replace(classifyRE, function (c) { return c.toUpperCase(); })
1282
1282
  .replace(/[-_]/g, ''); };
1283
1283
 
1284
- warn = function (msg, vm) {
1284
+ warn$1 = function (msg, vm) {
1285
1285
  var trace = vm ? generateComponentTrace(vm) : '';
1286
1286
 
1287
- if (hasConsole && (!config.silent)) {
1287
+ if (hasConsole && (!config$1.silent)) {
1288
1288
  console.error(("[Vue warn]: " + msg + trace));
1289
1289
  }
1290
1290
  };
1291
1291
 
1292
1292
  tip = function (msg, vm) {
1293
- if (hasConsole && (!config.silent)) {
1293
+ if (hasConsole && (!config$1.silent)) {
1294
1294
  console.warn("[Vue tip]: " + msg + (
1295
1295
  vm ? generateComponentTrace(vm) : ''
1296
1296
  ));
@@ -1389,7 +1389,7 @@ Dep.prototype.depend = function depend () {
1389
1389
  Dep.prototype.notify = function notify () {
1390
1390
  // stabilize the subscriber list first
1391
1391
  var subs = this.subs.slice();
1392
- if (process.env.NODE_ENV !== 'production' && !config.async) {
1392
+ if (process.env.NODE_ENV !== 'production' && !config$1.async) {
1393
1393
  // subs aren't sorted in scheduler if not running async
1394
1394
  // we need to sort them now to make sure they fire in correct
1395
1395
  // order
@@ -1457,8 +1457,8 @@ Object.defineProperties( VNode.prototype, prototypeAccessors );
1457
1457
  * dynamically accessing methods on Array prototype
1458
1458
  */
1459
1459
 
1460
- var arrayProto = Array.prototype;
1461
- var arrayMethods = Object.create(arrayProto);
1460
+ var arrayProto$1 = Array.prototype;
1461
+ var arrayMethods = Object.create(arrayProto$1);
1462
1462
 
1463
1463
  var methodsToPatch = [
1464
1464
  'push',
@@ -1475,7 +1475,7 @@ var methodsToPatch = [
1475
1475
  */
1476
1476
  methodsToPatch.forEach(function (method) {
1477
1477
  // cache original method
1478
- var original = arrayProto[method];
1478
+ var original = arrayProto$1[method];
1479
1479
  def(arrayMethods, method, function mutator () {
1480
1480
  var args = [], len = arguments.length;
1481
1481
  while ( len-- ) args[ len ] = arguments[ len ];
@@ -1577,16 +1577,15 @@ function copyAugment (target, src, keys) {
1577
1577
  * or the existing observer if the value already has one.
1578
1578
  */
1579
1579
  function observe (value, asRootData) {
1580
- if (!isObject(value) || value instanceof VNode) {
1580
+ if (!isObject$1(value) || value instanceof VNode) {
1581
1581
  return
1582
1582
  }
1583
1583
  var ob;
1584
- if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {
1584
+ if (hasOwn$1(value, '__ob__') && value.__ob__ instanceof Observer) {
1585
1585
  ob = value.__ob__;
1586
1586
  } else if (
1587
-
1588
1587
  !isServerRendering() &&
1589
- (Array.isArray(value) || isPlainObject(value)) &&
1588
+ (Array.isArray(value) || isPlainObject$1(value)) &&
1590
1589
  Object.isExtensible(value) &&
1591
1590
  !value._isVue
1592
1591
  ) {
@@ -1671,7 +1670,7 @@ function set (target, key, val) {
1671
1670
  if (process.env.NODE_ENV !== 'production' &&
1672
1671
  (isUndef(target) || isPrimitive(target))
1673
1672
  ) {
1674
- warn(("Cannot set reactive property on undefined, null, or primitive value: " + ((target))));
1673
+ warn$1(("Cannot set reactive property on undefined, null, or primitive value: " + ((target))));
1675
1674
  }
1676
1675
  if (Array.isArray(target) && isValidArrayIndex(key)) {
1677
1676
  target.length = Math.max(target.length, key);
@@ -1684,7 +1683,7 @@ function set (target, key, val) {
1684
1683
  }
1685
1684
  var ob = (target).__ob__;
1686
1685
  if (target._isVue || (ob && ob.vmCount)) {
1687
- process.env.NODE_ENV !== 'production' && warn(
1686
+ process.env.NODE_ENV !== 'production' && warn$1(
1688
1687
  'Avoid adding reactive properties to a Vue instance or its root $data ' +
1689
1688
  'at runtime - declare it upfront in the data option.'
1690
1689
  );
@@ -1720,7 +1719,7 @@ function dependArray (value) {
1720
1719
  * how to merge a parent option value and a child option
1721
1720
  * value into the final value.
1722
1721
  */
1723
- var strats = config.optionMergeStrategies;
1722
+ var strats = config$1.optionMergeStrategies;
1724
1723
 
1725
1724
  /**
1726
1725
  * Options with restrictions
@@ -1728,7 +1727,7 @@ var strats = config.optionMergeStrategies;
1728
1727
  if (process.env.NODE_ENV !== 'production') {
1729
1728
  strats.el = strats.propsData = function (parent, child, vm, key) {
1730
1729
  if (!vm) {
1731
- warn(
1730
+ warn$1(
1732
1731
  "option \"" + key + "\" can only be used during instance " +
1733
1732
  'creation with the `new` keyword.'
1734
1733
  );
@@ -1754,12 +1753,12 @@ function mergeData (to, from) {
1754
1753
  if (key === '__ob__') { continue }
1755
1754
  toVal = to[key];
1756
1755
  fromVal = from[key];
1757
- if (!hasOwn(to, key)) {
1756
+ if (!hasOwn$1(to, key)) {
1758
1757
  set(to, key, fromVal);
1759
1758
  } else if (
1760
1759
  toVal !== fromVal &&
1761
- isPlainObject(toVal) &&
1762
- isPlainObject(fromVal)
1760
+ isPlainObject$1(toVal) &&
1761
+ isPlainObject$1(fromVal)
1763
1762
  ) {
1764
1763
  mergeData(toVal, fromVal);
1765
1764
  }
@@ -1819,7 +1818,7 @@ strats.data = function (
1819
1818
  ) {
1820
1819
  if (!vm) {
1821
1820
  if (childVal && typeof childVal !== 'function') {
1822
- process.env.NODE_ENV !== 'production' && warn(
1821
+ process.env.NODE_ENV !== 'production' && warn$1(
1823
1822
  'The "data" option should be a function ' +
1824
1823
  'that returns a per-instance value in component ' +
1825
1824
  'definitions.',
@@ -1883,7 +1882,7 @@ function mergeAssets (
1883
1882
  var res = Object.create(parentVal || null);
1884
1883
  if (childVal) {
1885
1884
  process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm);
1886
- return extend(res, childVal)
1885
+ return extend$1(res, childVal)
1887
1886
  } else {
1888
1887
  return res
1889
1888
  }
@@ -1915,7 +1914,7 @@ strats.watch = function (
1915
1914
  }
1916
1915
  if (!parentVal) { return childVal }
1917
1916
  var ret = {};
1918
- extend(ret, parentVal);
1917
+ extend$1(ret, parentVal);
1919
1918
  for (var key$1 in childVal) {
1920
1919
  var parent = ret[key$1];
1921
1920
  var child = childVal[key$1];
@@ -1946,8 +1945,8 @@ strats.computed = function (
1946
1945
  }
1947
1946
  if (!parentVal) { return childVal }
1948
1947
  var ret = Object.create(null);
1949
- extend(ret, parentVal);
1950
- if (childVal) { extend(ret, childVal); }
1948
+ extend$1(ret, parentVal);
1949
+ if (childVal) { extend$1(ret, childVal); }
1951
1950
  return ret
1952
1951
  };
1953
1952
  strats.provide = mergeDataOrFn;
@@ -1962,8 +1961,8 @@ var defaultStrat = function (parentVal, childVal) {
1962
1961
  };
1963
1962
 
1964
1963
  function assertObjectType (name, value, vm) {
1965
- if (!isPlainObject(value)) {
1966
- warn(
1964
+ if (!isPlainObject$1(value)) {
1965
+ warn$1(
1967
1966
  "Invalid value for option \"" + name + "\": expected an Object, " +
1968
1967
  "but got " + (toRawType(value)) + ".",
1969
1968
  vm
@@ -2016,10 +2015,10 @@ if (typeof Promise !== 'undefined' && isNative(Promise)) ; else if (!isIE && typ
2016
2015
 
2017
2016
  // these are reserved for web because they are directly compiled away
2018
2017
  // during template compilation
2019
- makeMap('style,class');
2018
+ makeMap$1('style,class');
2020
2019
 
2021
2020
  // attributes that should be using props for binding
2022
- var acceptValue = makeMap('input,textarea,option,select,progress');
2021
+ var acceptValue = makeMap$1('input,textarea,option,select,progress');
2023
2022
  var mustUseProp = function (tag, type, attr) {
2024
2023
  return (
2025
2024
  (attr === 'value' && acceptValue(tag)) && type !== 'button' ||
@@ -2029,11 +2028,11 @@ var mustUseProp = function (tag, type, attr) {
2029
2028
  )
2030
2029
  };
2031
2030
 
2032
- var isEnumeratedAttr = makeMap('contenteditable,draggable,spellcheck');
2031
+ var isEnumeratedAttr = makeMap$1('contenteditable,draggable,spellcheck');
2033
2032
 
2034
- makeMap('events,caret,typing,plaintext-only');
2033
+ makeMap$1('events,caret,typing,plaintext-only');
2035
2034
 
2036
- var isBooleanAttr = makeMap(
2035
+ var isBooleanAttr = makeMap$1(
2037
2036
  'allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,' +
2038
2037
  'default,defaultchecked,defaultmuted,defaultselected,defer,disabled,' +
2039
2038
  'enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,' +
@@ -2046,7 +2045,7 @@ var isBooleanAttr = makeMap(
2046
2045
 
2047
2046
  /* */
2048
2047
 
2049
- var isHTMLTag = makeMap(
2048
+ var isHTMLTag$1 = makeMap$1(
2050
2049
  'html,body,base,head,link,meta,style,title,' +
2051
2050
  'address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,' +
2052
2051
  'div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,' +
@@ -2062,7 +2061,7 @@ var isHTMLTag = makeMap(
2062
2061
 
2063
2062
  // this map is intentionally selective, only covering SVG elements that may
2064
2063
  // contain child elements.
2065
- var isSVG = makeMap(
2064
+ var isSVG$1 = makeMap$1(
2066
2065
  'svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,' +
2067
2066
  'foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,' +
2068
2067
  'polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view',
@@ -2071,12 +2070,12 @@ var isSVG = makeMap(
2071
2070
 
2072
2071
  var isPreTag = function (tag) { return tag === 'pre'; };
2073
2072
 
2074
- var isReservedTag = function (tag) {
2075
- return isHTMLTag(tag) || isSVG(tag)
2073
+ var isReservedTag$1 = function (tag) {
2074
+ return isHTMLTag$1(tag) || isSVG$1(tag)
2076
2075
  };
2077
2076
 
2078
2077
  function getTagNamespace (tag) {
2079
- if (isSVG(tag)) {
2078
+ if (isSVG$1(tag)) {
2080
2079
  return 'svg'
2081
2080
  }
2082
2081
  // basic support for MathML
@@ -2086,7 +2085,7 @@ function getTagNamespace (tag) {
2086
2085
  }
2087
2086
  }
2088
2087
 
2089
- makeMap('text,number,password,search,email,tel,url');
2088
+ makeMap$1('text,number,password,search,email,tel,url');
2090
2089
 
2091
2090
  /* */
2092
2091
 
@@ -2193,7 +2192,7 @@ function wrapFilter (exp, filter) {
2193
2192
  var defaultTagRE = /\{\{((?:.|\r?\n)+?)\}\}/g;
2194
2193
  var regexEscapeRE = /[-.*+?^${}()|[\]\/\\]/g;
2195
2194
 
2196
- var buildRegex = cached(function (delimiters) {
2195
+ var buildRegex = cached$1(function (delimiters) {
2197
2196
  var open = delimiters[0].replace(regexEscapeRE, '\\$&');
2198
2197
  var close = delimiters[1].replace(regexEscapeRE, '\\$&');
2199
2198
  return new RegExp(open + '((?:.|\\n)+?)' + close, 'g')
@@ -2510,7 +2509,7 @@ var klass = {
2510
2509
 
2511
2510
  /* */
2512
2511
 
2513
- var parseStyleText = cached(function (cssText) {
2512
+ var parseStyleText = cached$1(function (cssText) {
2514
2513
  var res = {};
2515
2514
  var listDelimiter = /;(?![^(]*\))/g;
2516
2515
  var propertyDelimiter = /:(.+)/;
@@ -2736,12 +2735,12 @@ var whitespaceRE = /\s+/g;
2736
2735
 
2737
2736
  var invalidAttributeRE = /[\s"'<>\/=]/;
2738
2737
 
2739
- var decodeHTMLCached = cached(he$1.decode);
2738
+ var decodeHTMLCached = cached$1(he.decode);
2740
2739
 
2741
2740
  var emptySlotScopeToken = "_empty_";
2742
2741
 
2743
2742
  // configurable state
2744
- var warn$1;
2743
+ var warn$1$1;
2745
2744
  var delimiters;
2746
2745
  var transforms;
2747
2746
  var preTransforms;
@@ -2774,7 +2773,7 @@ function parse (
2774
2773
  template,
2775
2774
  options
2776
2775
  ) {
2777
- warn$1 = options.warn || baseWarn;
2776
+ warn$1$1 = options.warn || baseWarn;
2778
2777
 
2779
2778
  platformIsPreTag = options.isPreTag || no;
2780
2779
  platformMustUseProp = options.mustUseProp || no;
@@ -2800,7 +2799,7 @@ function parse (
2800
2799
  function warnOnce (msg, range) {
2801
2800
  if (!warned) {
2802
2801
  warned = true;
2803
- warn$1(msg, range);
2802
+ warn$1$1(msg, range);
2804
2803
  }
2805
2804
  }
2806
2805
 
@@ -2896,7 +2895,7 @@ function parse (
2896
2895
  }
2897
2896
 
2898
2897
  parseHTML(template, {
2899
- warn: warn$1,
2898
+ warn: warn$1$1,
2900
2899
  expectHTML: options.expectHTML,
2901
2900
  isUnaryTag: options.isUnaryTag,
2902
2901
  canBeLeftOpenTag: options.canBeLeftOpenTag,
@@ -2931,7 +2930,7 @@ function parse (
2931
2930
  }
2932
2931
  attrs.forEach(function (attr) {
2933
2932
  if (invalidAttributeRE.test(attr.name)) {
2934
- warn$1(
2933
+ warn$1$1(
2935
2934
  "Invalid dynamic argument expression: attribute names cannot contain " +
2936
2935
  "spaces, quotes, <, >, / or =.",
2937
2936
  {
@@ -2945,7 +2944,7 @@ function parse (
2945
2944
 
2946
2945
  if (isForbiddenTag(element) && !isServerRendering()) {
2947
2946
  element.forbidden = true;
2948
- process.env.NODE_ENV !== 'production' && warn$1(
2947
+ process.env.NODE_ENV !== 'production' && warn$1$1(
2949
2948
  'Templates should only be responsible for mapping the state to the ' +
2950
2949
  'UI. Avoid placing tags with side-effects in your templates, such as ' +
2951
2950
  "<" + tag + ">" + ', as they will not be parsed.',
@@ -3150,7 +3149,7 @@ function processKey (el) {
3150
3149
  if (exp) {
3151
3150
  if (process.env.NODE_ENV !== 'production') {
3152
3151
  if (el.tag === 'template') {
3153
- warn$1(
3152
+ warn$1$1(
3154
3153
  "<template> cannot be keyed. Place the key on real elements instead.",
3155
3154
  getRawBindingAttr(el, 'key')
3156
3155
  );
@@ -3159,7 +3158,7 @@ function processKey (el) {
3159
3158
  var iterator = el.iterator2 || el.iterator1;
3160
3159
  var parent = el.parent;
3161
3160
  if (iterator && iterator === exp && parent && parent.tag === 'transition-group') {
3162
- warn$1(
3161
+ warn$1$1(
3163
3162
  "Do not use v-for index as key on <transition-group> children, " +
3164
3163
  "this is the same as not using keys.",
3165
3164
  getRawBindingAttr(el, 'key'),
@@ -3185,9 +3184,9 @@ function processFor (el) {
3185
3184
  if ((exp = getAndRemoveAttr(el, 'v-for'))) {
3186
3185
  var res = parseFor(exp);
3187
3186
  if (res) {
3188
- extend(el, res);
3187
+ extend$1(el, res);
3189
3188
  } else if (process.env.NODE_ENV !== 'production') {
3190
- warn$1(
3189
+ warn$1$1(
3191
3190
  ("Invalid v-for expression: " + exp),
3192
3191
  el.rawAttrsMap['v-for']
3193
3192
  );
@@ -3243,7 +3242,7 @@ function processIfConditions (el, parent) {
3243
3242
  block: el
3244
3243
  });
3245
3244
  } else if (process.env.NODE_ENV !== 'production') {
3246
- warn$1(
3245
+ warn$1$1(
3247
3246
  "v-" + (el.elseif ? ('else-if="' + el.elseif + '"') : 'else') + " " +
3248
3247
  "used on element <" + (el.tag) + "> without corresponding v-if.",
3249
3248
  el.rawAttrsMap[el.elseif ? 'v-else-if' : 'v-else']
@@ -3258,7 +3257,7 @@ function findPrevElement (children) {
3258
3257
  return children[i]
3259
3258
  } else {
3260
3259
  if (process.env.NODE_ENV !== 'production' && children[i].text !== ' ') {
3261
- warn$1(
3260
+ warn$1$1(
3262
3261
  "text \"" + (children[i].text.trim()) + "\" between v-if and v-else(-if) " +
3263
3262
  "will be ignored.",
3264
3263
  children[i]
@@ -3291,7 +3290,7 @@ function processSlotContent (el) {
3291
3290
  slotScope = getAndRemoveAttr(el, 'scope');
3292
3291
  /* istanbul ignore if */
3293
3292
  if (process.env.NODE_ENV !== 'production' && slotScope) {
3294
- warn$1(
3293
+ warn$1$1(
3295
3294
  "the \"scope\" attribute for scoped slots have been deprecated and " +
3296
3295
  "replaced by \"slot-scope\" since 2.5. The new \"slot-scope\" attribute " +
3297
3296
  "can also be used on plain elements in addition to <template> to " +
@@ -3304,7 +3303,7 @@ function processSlotContent (el) {
3304
3303
  } else if ((slotScope = getAndRemoveAttr(el, 'slot-scope'))) {
3305
3304
  /* istanbul ignore if */
3306
3305
  if (process.env.NODE_ENV !== 'production' && el.attrsMap['v-for']) {
3307
- warn$1(
3306
+ warn$1$1(
3308
3307
  "Ambiguous combined usage of slot-scope and v-for on <" + (el.tag) + "> " +
3309
3308
  "(v-for takes higher priority). Use a wrapper <template> for the " +
3310
3309
  "scoped slot to make it clearer.",
@@ -3335,13 +3334,13 @@ function processSlotContent (el) {
3335
3334
  if (slotBinding) {
3336
3335
  if (process.env.NODE_ENV !== 'production') {
3337
3336
  if (el.slotTarget || el.slotScope) {
3338
- warn$1(
3337
+ warn$1$1(
3339
3338
  "Unexpected mixed usage of different slot syntaxes.",
3340
3339
  el
3341
3340
  );
3342
3341
  }
3343
3342
  if (el.parent && !maybeComponent(el.parent)) {
3344
- warn$1(
3343
+ warn$1$1(
3345
3344
  "<template v-slot> can only appear at the root level inside " +
3346
3345
  "the receiving component",
3347
3346
  el
@@ -3361,19 +3360,19 @@ function processSlotContent (el) {
3361
3360
  if (slotBinding$1) {
3362
3361
  if (process.env.NODE_ENV !== 'production') {
3363
3362
  if (!maybeComponent(el)) {
3364
- warn$1(
3363
+ warn$1$1(
3365
3364
  "v-slot can only be used on components or <template>.",
3366
3365
  slotBinding$1
3367
3366
  );
3368
3367
  }
3369
3368
  if (el.slotScope || el.slotTarget) {
3370
- warn$1(
3369
+ warn$1$1(
3371
3370
  "Unexpected mixed usage of different slot syntaxes.",
3372
3371
  el
3373
3372
  );
3374
3373
  }
3375
3374
  if (el.scopedSlots) {
3376
- warn$1(
3375
+ warn$1$1(
3377
3376
  "To avoid scope ambiguity, the default slot should also use " +
3378
3377
  "<template> syntax when there are other named slots.",
3379
3378
  slotBinding$1
@@ -3410,7 +3409,7 @@ function getSlotName (binding) {
3410
3409
  if (binding.name[0] !== '#') {
3411
3410
  name = 'default';
3412
3411
  } else if (process.env.NODE_ENV !== 'production') {
3413
- warn$1(
3412
+ warn$1$1(
3414
3413
  "v-slot shorthand syntax requires a slot name.",
3415
3414
  binding
3416
3415
  );
@@ -3428,7 +3427,7 @@ function processSlotOutlet (el) {
3428
3427
  if (el.tag === 'slot') {
3429
3428
  el.slotName = getBindingAttr(el, 'name');
3430
3429
  if (process.env.NODE_ENV !== 'production' && el.key) {
3431
- warn$1(
3430
+ warn$1$1(
3432
3431
  "`key` does not work on <slot> because slots are abstract outlets " +
3433
3432
  "and can possibly expand into multiple elements. " +
3434
3433
  "Use the key on a wrapping element instead.",
@@ -3474,38 +3473,38 @@ function processAttrs (el) {
3474
3473
  process.env.NODE_ENV !== 'production' &&
3475
3474
  value.trim().length === 0
3476
3475
  ) {
3477
- warn$1(
3476
+ warn$1$1(
3478
3477
  ("The value for a v-bind expression cannot be empty. Found in \"v-bind:" + name + "\"")
3479
3478
  );
3480
3479
  }
3481
3480
  if (modifiers) {
3482
3481
  if (modifiers.prop && !isDynamic) {
3483
- name = camelize(name);
3482
+ name = camelize$1(name);
3484
3483
  if (name === 'innerHtml') { name = 'innerHTML'; }
3485
3484
  }
3486
3485
  if (modifiers.camel && !isDynamic) {
3487
- name = camelize(name);
3486
+ name = camelize$1(name);
3488
3487
  }
3489
3488
  if (modifiers.sync) {
3490
3489
  syncGen = genAssignmentCode(value, "$event");
3491
3490
  if (!isDynamic) {
3492
3491
  addHandler(
3493
3492
  el,
3494
- ("update:" + (camelize(name))),
3493
+ ("update:" + (camelize$1(name))),
3495
3494
  syncGen,
3496
3495
  null,
3497
3496
  false,
3498
- warn$1,
3497
+ warn$1$1,
3499
3498
  list[i]
3500
3499
  );
3501
- if (hyphenate(name) !== camelize(name)) {
3500
+ if (hyphenate$1(name) !== camelize$1(name)) {
3502
3501
  addHandler(
3503
3502
  el,
3504
- ("update:" + (hyphenate(name))),
3503
+ ("update:" + (hyphenate$1(name))),
3505
3504
  syncGen,
3506
3505
  null,
3507
3506
  false,
3508
- warn$1,
3507
+ warn$1$1,
3509
3508
  list[i]
3510
3509
  );
3511
3510
  }
@@ -3517,7 +3516,7 @@ function processAttrs (el) {
3517
3516
  syncGen,
3518
3517
  null,
3519
3518
  false,
3520
- warn$1,
3519
+ warn$1$1,
3521
3520
  list[i],
3522
3521
  true // dynamic
3523
3522
  );
@@ -3537,7 +3536,7 @@ function processAttrs (el) {
3537
3536
  if (isDynamic) {
3538
3537
  name = name.slice(1, -1);
3539
3538
  }
3540
- addHandler(el, name, value, modifiers, false, warn$1, list[i], isDynamic);
3539
+ addHandler(el, name, value, modifiers, false, warn$1$1, list[i], isDynamic);
3541
3540
  } else { // normal directives
3542
3541
  name = name.replace(dirRE, '');
3543
3542
  // parse arg
@@ -3561,7 +3560,7 @@ function processAttrs (el) {
3561
3560
  if (process.env.NODE_ENV !== 'production') {
3562
3561
  var res = parseText(value, delimiters);
3563
3562
  if (res) {
3564
- warn$1(
3563
+ warn$1$1(
3565
3564
  name + "=\"" + value + "\": " +
3566
3565
  'Interpolation inside attributes has been removed. ' +
3567
3566
  'Use v-bind or the colon shorthand instead. For example, ' +
@@ -3607,9 +3606,9 @@ function makeAttrsMap (attrs) {
3607
3606
  for (var i = 0, l = attrs.length; i < l; i++) {
3608
3607
  if (
3609
3608
  process.env.NODE_ENV !== 'production' &&
3610
- map[attrs[i].name] && !isIE && !isEdge
3609
+ map[attrs[i].name] && !isIE && !isEdge$1
3611
3610
  ) {
3612
- warn$1('duplicate attribute: ' + attrs[i].name, attrs[i]);
3611
+ warn$1$1('duplicate attribute: ' + attrs[i].name, attrs[i]);
3613
3612
  }
3614
3613
  map[attrs[i].name] = attrs[i].value;
3615
3614
  }
@@ -3651,7 +3650,7 @@ function checkForAliasModel (el, value) {
3651
3650
  var _el = el;
3652
3651
  while (_el) {
3653
3652
  if (_el.for && _el.alias === value) {
3654
- warn$1(
3653
+ warn$1$1(
3655
3654
  "<" + (el.tag) + " v-model=\"" + value + "\">: " +
3656
3655
  "You are binding v-model directly to a v-for iteration alias. " +
3657
3656
  "This will not be able to modify the v-for source array because " +
@@ -3785,18 +3784,10 @@ function model$1 (
3785
3784
  genRadioModel(el, value, modifiers);
3786
3785
  } else if (tag === 'input' || tag === 'textarea') {
3787
3786
  genDefaultModel(el, value, modifiers);
3788
- } else if (!config.isReservedTag(tag)) {
3787
+ } else {
3789
3788
  genComponentModel(el, value, modifiers);
3790
3789
  // component v-model doesn't need extra runtime
3791
3790
  return false
3792
- } else if (process.env.NODE_ENV !== 'production') {
3793
- warn$2(
3794
- "<" + (el.tag) + " v-model=\"" + value + "\">: " +
3795
- "v-model is not supported on this element type. " +
3796
- 'If you are working with contenteditable, it\'s recommended to ' +
3797
- 'wrap a library dedicated for that purpose inside a custom component.',
3798
- el.rawAttrsMap['v-model']
3799
- );
3800
3791
  }
3801
3792
 
3802
3793
  // ensure runtime directive metadata
@@ -3926,16 +3917,16 @@ function text (el, dir) {
3926
3917
 
3927
3918
  /* */
3928
3919
 
3929
- function html (el, dir) {
3920
+ function html$2 (el, dir) {
3930
3921
  if (dir.value) {
3931
3922
  addProp(el, 'innerHTML', ("_s(" + (dir.value) + ")"), dir);
3932
3923
  }
3933
3924
  }
3934
3925
 
3935
- var directives = {
3926
+ var directives$1 = {
3936
3927
  model: model$1,
3937
3928
  text: text,
3938
- html: html
3929
+ html: html$2
3939
3930
  };
3940
3931
 
3941
3932
  /* */
@@ -3943,12 +3934,12 @@ var directives = {
3943
3934
  var baseOptions = {
3944
3935
  expectHTML: true,
3945
3936
  modules: modules,
3946
- directives: directives,
3937
+ directives: directives$1,
3947
3938
  isPreTag: isPreTag,
3948
3939
  isUnaryTag: isUnaryTag,
3949
3940
  mustUseProp: mustUseProp,
3950
3941
  canBeLeftOpenTag: canBeLeftOpenTag,
3951
- isReservedTag: isReservedTag,
3942
+ isReservedTag: isReservedTag$1,
3952
3943
  getTagNamespace: getTagNamespace,
3953
3944
  staticKeys: genStaticKeys(modules)
3954
3945
  };
@@ -3958,7 +3949,7 @@ var baseOptions = {
3958
3949
  var isStaticKey;
3959
3950
  var isPlatformReservedTag;
3960
3951
 
3961
- var genStaticKeysCached = cached(genStaticKeys$1);
3952
+ var genStaticKeysCached = cached$1(genStaticKeys$1);
3962
3953
 
3963
3954
  /**
3964
3955
  * Goal of the optimizer: walk the generated template AST tree
@@ -3982,7 +3973,7 @@ function optimize (root, options) {
3982
3973
  }
3983
3974
 
3984
3975
  function genStaticKeys$1 (keys) {
3985
- return makeMap(
3976
+ return makeMap$1(
3986
3977
  'type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap' +
3987
3978
  (keys ? ',' + keys : '')
3988
3979
  )
@@ -4247,7 +4238,7 @@ function genFilterCode (key) {
4247
4238
 
4248
4239
  function on (el, dir) {
4249
4240
  if (process.env.NODE_ENV !== 'production' && dir.modifiers) {
4250
- warn("v-on without argument does not support modifiers.");
4241
+ warn$1("v-on without argument does not support modifiers.");
4251
4242
  }
4252
4243
  el.wrapListeners = function (code) { return ("_g(" + code + "," + (dir.value) + ")"); };
4253
4244
  }
@@ -4279,7 +4270,7 @@ var CodegenState = function CodegenState (options) {
4279
4270
  this.warn = options.warn || baseWarn;
4280
4271
  this.transforms = pluckModuleFunction(options.modules, 'transformCode');
4281
4272
  this.dataGenFns = pluckModuleFunction(options.modules, 'genData');
4282
- this.directives = extend(extend({}, baseDirectives), options.directives);
4273
+ this.directives = extend$1(extend$1({}, baseDirectives), options.directives);
4283
4274
  var isReservedTag = options.isReservedTag || no;
4284
4275
  this.maybeComponent = function (el) { return !!el.component || !isReservedTag(el.tag); };
4285
4276
  this.onceId = 0;
@@ -4763,7 +4754,7 @@ function genSlot (el, state) {
4763
4754
  var attrs = el.attrs || el.dynamicAttrs
4764
4755
  ? genProps((el.attrs || []).concat(el.dynamicAttrs || []).map(function (attr) { return ({
4765
4756
  // slot props are camelized
4766
- name: camelize(attr.name),
4757
+ name: camelize$1(attr.name),
4767
4758
  value: attr.value,
4768
4759
  dynamic: attr.dynamic
4769
4760
  }); }))
@@ -5020,8 +5011,8 @@ function createCompileToFunctionFn (compile) {
5020
5011
  options,
5021
5012
  vm
5022
5013
  ) {
5023
- options = extend({}, options);
5024
- var warn$$1 = options.warn || warn;
5014
+ options = extend$1({}, options);
5015
+ var warn$$1 = options.warn || warn$1;
5025
5016
  delete options.warn;
5026
5017
 
5027
5018
  /* istanbul ignore if */
@@ -5153,7 +5144,7 @@ function createCompilerCreator (baseCompile) {
5153
5144
  }
5154
5145
  // merge custom directives
5155
5146
  if (options.directives) {
5156
- finalOptions.directives = extend(
5147
+ finalOptions.directives = extend$1(
5157
5148
  Object.create(baseOptions.directives || null),
5158
5149
  options.directives
5159
5150
  );
@@ -5213,7 +5204,7 @@ var compileToFunctions = ref.compileToFunctions;
5213
5204
 
5214
5205
  /* */
5215
5206
 
5216
- var isAttr = makeMap(
5207
+ var isAttr = makeMap$1(
5217
5208
  'accept,accept-charset,accesskey,action,align,alt,async,autocomplete,' +
5218
5209
  'autofocus,autoplay,autosave,bgcolor,border,buffered,challenge,charset,' +
5219
5210
  'checked,cite,class,code,codebase,color,cols,colspan,content,' +
@@ -5480,7 +5471,7 @@ function isUnOptimizableTree (node) {
5480
5471
  )
5481
5472
  }
5482
5473
 
5483
- var isBuiltInDir = makeMap('text,html,show,on,bind,model,pre,cloak,once');
5474
+ var isBuiltInDir = makeMap$1('text,html,show,on,bind,model,pre,cloak,once');
5484
5475
 
5485
5476
  function hasCustomDirective (node) {
5486
5477
  return (
@@ -5772,14 +5763,14 @@ var build = /*#__PURE__*/Object.defineProperty({
5772
5763
  }, '__esModule', {value: true});
5773
5764
 
5774
5765
  try {
5775
- var vueVersion = require$$0__default['default'].version;
5766
+ var vueVersion = require$$0__default["default"].version;
5776
5767
  } catch (e) {}
5777
5768
 
5778
5769
  var vueTemplateCompiler = build;
5779
5770
 
5780
5771
  function _interopDefaultLegacy$1 (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
5781
5772
 
5782
- var Vue__default = /*#__PURE__*/_interopDefaultLegacy$1(require$$0__default['default']);
5773
+ var Vue__default = /*#__PURE__*/_interopDefaultLegacy$1(require$$0__default["default"]);
5783
5774
 
5784
5775
  //
5785
5776
 
@@ -5826,9 +5817,9 @@ function createSlotVNodes(
5826
5817
  }, [])
5827
5818
  }
5828
5819
 
5829
- var commonjsGlobal$1 = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof commonjsGlobal !== 'undefined' ? commonjsGlobal : typeof self !== 'undefined' ? self : {};
5820
+ var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof commonjsGlobal$1 !== 'undefined' ? commonjsGlobal$1 : typeof self !== 'undefined' ? self : {};
5830
5821
 
5831
- function createCommonjsModule$1(fn, basedir, module) {
5822
+ function createCommonjsModule(fn, basedir, module) {
5832
5823
  return module = {
5833
5824
  path: basedir,
5834
5825
  exports: {},
@@ -5846,7 +5837,7 @@ function commonjsRequire () {
5846
5837
  throw new Error('Dynamic requires are not currently supported by @rollup/plugin-commonjs');
5847
5838
  }
5848
5839
 
5849
- var semver = createCommonjsModule$1(function (module, exports) {
5840
+ var semver = createCommonjsModule(function (module, exports) {
5850
5841
  exports = module.exports = SemVer;
5851
5842
 
5852
5843
  var debug;
@@ -7472,14 +7463,14 @@ function throwError(msg) {
7472
7463
  throw new Error(("[vue-test-utils]: " + msg))
7473
7464
  }
7474
7465
 
7475
- function warn$3(msg) {
7466
+ function warn(msg) {
7476
7467
  console.error(("[vue-test-utils]: " + msg));
7477
7468
  }
7478
7469
 
7479
- var camelizeRE$1 = /-(\w)/g;
7470
+ var camelizeRE = /-(\w)/g;
7480
7471
 
7481
- var camelize$1 = function (str) {
7482
- var camelizedStr = str.replace(camelizeRE$1, function (_, c) { return c ? c.toUpperCase() : ''; }
7472
+ var camelize = function (str) {
7473
+ var camelizedStr = str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; }
7483
7474
  );
7484
7475
  return camelizedStr.charAt(0).toLowerCase() + camelizedStr.slice(1)
7485
7476
  };
@@ -7492,10 +7483,10 @@ var capitalize = function (str) { return str.charAt(0).toUpperCase() + str.slice
7492
7483
  /**
7493
7484
  * Hyphenate a camelCase string.
7494
7485
  */
7495
- var hyphenateRE$1 = /\B([A-Z])/g;
7496
- var hyphenate$1 = function (str) { return str.replace(hyphenateRE$1, '-$1').toLowerCase(); };
7486
+ var hyphenateRE = /\B([A-Z])/g;
7487
+ var hyphenate = function (str) { return str.replace(hyphenateRE, '-$1').toLowerCase(); };
7497
7488
 
7498
- function hasOwnProperty$1(obj, prop) {
7489
+ function hasOwnProperty(obj, prop) {
7499
7490
  return Object.prototype.hasOwnProperty.call(obj, prop)
7500
7491
  }
7501
7492
 
@@ -7509,30 +7500,30 @@ function resolveComponent(id, components) {
7509
7500
  return
7510
7501
  }
7511
7502
  // check local registration variations first
7512
- if (hasOwnProperty$1(components, id)) {
7503
+ if (hasOwnProperty(components, id)) {
7513
7504
  return components[id]
7514
7505
  }
7515
- var camelizedId = camelize$1(id);
7516
- if (hasOwnProperty$1(components, camelizedId)) {
7506
+ var camelizedId = camelize(id);
7507
+ if (hasOwnProperty(components, camelizedId)) {
7517
7508
  return components[camelizedId]
7518
7509
  }
7519
7510
  var PascalCaseId = capitalize(camelizedId);
7520
- if (hasOwnProperty$1(components, PascalCaseId)) {
7511
+ if (hasOwnProperty(components, PascalCaseId)) {
7521
7512
  return components[PascalCaseId]
7522
7513
  }
7523
7514
  // fallback to prototype chain
7524
7515
  return components[id] || components[camelizedId] || components[PascalCaseId]
7525
7516
  }
7526
7517
 
7527
- var UA$1 =
7518
+ var UA =
7528
7519
  typeof window !== 'undefined' &&
7529
7520
  'navigator' in window &&
7530
7521
  navigator.userAgent.toLowerCase();
7531
7522
 
7532
- var isPhantomJS = UA$1 && UA$1.includes && UA$1.match(/phantomjs/i);
7523
+ var isPhantomJS = UA && UA.includes && UA.match(/phantomjs/i);
7533
7524
 
7534
- var isEdge$1 = UA$1 && UA$1.indexOf('edge/') > 0;
7535
- var isChrome = UA$1 && /chrome\/\d+/.test(UA$1) && !isEdge$1;
7525
+ var isEdge = UA && UA.indexOf('edge/') > 0;
7526
+ var isChrome = UA && /chrome\/\d+/.test(UA) && !isEdge;
7536
7527
 
7537
7528
  // get the event used to trigger v-model handler that updates bound data
7538
7529
  function getCheckedEvent() {
@@ -7565,13 +7556,13 @@ function nextTick() {
7565
7556
  function warnDeprecated(method, fallback) {
7566
7557
  if ( fallback === void 0 ) fallback = '';
7567
7558
 
7568
- if (!config$1.showDeprecationWarnings) { return }
7559
+ if (!config.showDeprecationWarnings) { return }
7569
7560
  var msg = method + " is deprecated and will be removed in the next major version.";
7570
7561
  if (fallback) { msg += " " + fallback + "."; }
7571
- if (config$1.deprecationWarningHandler) {
7572
- config$1.deprecationWarningHandler(method, msg);
7562
+ if (config.deprecationWarningHandler) {
7563
+ config.deprecationWarningHandler(method, msg);
7573
7564
  } else {
7574
- warn$3(msg);
7565
+ warn(msg);
7575
7566
  }
7576
7567
  }
7577
7568
 
@@ -7595,7 +7586,7 @@ function addMocks(
7595
7586
  // $FlowIgnore
7596
7587
  _Vue.prototype[key] = mockedProperties[key];
7597
7588
  } catch (e) {
7598
- warn$3(
7589
+ warn(
7599
7590
  "could not overwrite property " + key + ", this is " +
7600
7591
  "usually caused by a plugin that has added " +
7601
7592
  "the property as a read-only value"
@@ -7750,13 +7741,13 @@ function templateContainsComponent(
7750
7741
  template,
7751
7742
  name
7752
7743
  ) {
7753
- return [capitalize, camelize$1, hyphenate$1].some(function (format) {
7744
+ return [capitalize, camelize, hyphenate].some(function (format) {
7754
7745
  var re = new RegExp(("<" + (format(name)) + "\\s*(\\s|>|(/>))"), 'g');
7755
7746
  return re.test(template)
7756
7747
  })
7757
7748
  }
7758
7749
 
7759
- function isPlainObject$1(c) {
7750
+ function isPlainObject(c) {
7760
7751
  return Object.prototype.toString.call(c) === '[object Object]'
7761
7752
  }
7762
7753
 
@@ -7768,7 +7759,7 @@ function isHTMLElement(c) {
7768
7759
  return c instanceof HTMLElement
7769
7760
  }
7770
7761
 
7771
- function makeMap$1(str, expectsLowerCase) {
7762
+ function makeMap(str, expectsLowerCase) {
7772
7763
  var map = Object.create(null);
7773
7764
  var list = str.split(',');
7774
7765
  for (var i = 0; i < list.length; i++) {
@@ -7783,7 +7774,7 @@ function makeMap$1(str, expectsLowerCase) {
7783
7774
  }
7784
7775
  }
7785
7776
 
7786
- var isHTMLTag$1 = makeMap$1(
7777
+ var isHTMLTag = makeMap(
7787
7778
  'html,body,base,head,link,meta,style,title,' +
7788
7779
  'address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,' +
7789
7780
  'div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,' +
@@ -7799,14 +7790,14 @@ var isHTMLTag$1 = makeMap$1(
7799
7790
 
7800
7791
  // this map is intentionally selective, only covering SVG elements that may
7801
7792
  // contain child elements.
7802
- var isSVG$1 = makeMap$1(
7793
+ var isSVG = makeMap(
7803
7794
  'svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,' +
7804
7795
  'foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,' +
7805
7796
  'polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view',
7806
7797
  true
7807
7798
  );
7808
7799
 
7809
- var isReservedTag$1 = function (tag) { return isHTMLTag$1(tag) || isSVG$1(tag); };
7800
+ var isReservedTag = function (tag) { return isHTMLTag(tag) || isSVG(tag); };
7810
7801
 
7811
7802
  //
7812
7803
 
@@ -8035,9 +8026,9 @@ function isValidStub(stub) {
8035
8026
  function resolveComponent$1(obj, component) {
8036
8027
  return (
8037
8028
  obj[component] ||
8038
- obj[hyphenate$1(component)] ||
8039
- obj[camelize$1(component)] ||
8040
- obj[capitalize(camelize$1(component))] ||
8029
+ obj[hyphenate(component)] ||
8030
+ obj[camelize(component)] ||
8031
+ obj[capitalize(camelize(component))] ||
8041
8032
  obj[capitalize(component)] ||
8042
8033
  {}
8043
8034
  )
@@ -8111,7 +8102,7 @@ function createStubFromComponent(
8111
8102
  {$_vueTestUtils_original: originalComponent,
8112
8103
  $_doNotStubChildren: true,
8113
8104
  render: function render(h, context) {
8114
- var this$1 = this;
8105
+ var this$1$1 = this;
8115
8106
 
8116
8107
  return h(
8117
8108
  tagName,
@@ -8125,7 +8116,7 @@ function createStubFromComponent(
8125
8116
  context
8126
8117
  ? context.children
8127
8118
  : this.$options._renderChildren ||
8128
- getScopedSlotRenderFunctions(this).map(function (x) { return this$1.$options.parent._vnode.data.scopedSlots[x]({}); }
8119
+ getScopedSlotRenderFunctions(this).map(function (x) { return this$1$1.$options.parent._vnode.data.scopedSlots[x]({}); }
8129
8120
  )
8130
8121
  )
8131
8122
  }})
@@ -8232,7 +8223,7 @@ function shouldExtend(component, _Vue) {
8232
8223
  return isConstructor(component) || (component && component.extends)
8233
8224
  }
8234
8225
 
8235
- function extend$1(component, _Vue) {
8226
+ function extend(component, _Vue) {
8236
8227
  var componentOptions = component.options ? component.options : component;
8237
8228
  var stub = _Vue.extend(componentOptions);
8238
8229
  stub.options.$_vueTestUtils_original = component;
@@ -8246,13 +8237,13 @@ function createStubIfNeeded(shouldStub, component, _Vue, el) {
8246
8237
  }
8247
8238
 
8248
8239
  if (shouldExtend(component)) {
8249
- return extend$1(component, _Vue)
8240
+ return extend(component, _Vue)
8250
8241
  }
8251
8242
  }
8252
8243
 
8253
8244
  function shouldNotBeStubbed(el, allowlist, modifiedComponents) {
8254
8245
  return (
8255
- (typeof el === 'string' && isReservedTag$1(el)) ||
8246
+ (typeof el === 'string' && isReservedTag(el)) ||
8256
8247
  isAllowlisted(el, allowlist) ||
8257
8248
  isAlreadyStubbed(el, modifiedComponents)
8258
8249
  )
@@ -8292,7 +8283,7 @@ function patchCreateElement(_Vue, stubs, stubAllComponents) {
8292
8283
  var stub = createStubFromComponent(el, el.name || 'anonymous', _Vue);
8293
8284
  return originalCreateElement.apply(void 0, [ stub ].concat( args ))
8294
8285
  }
8295
- var Constructor = shouldExtend(el) ? extend$1(el, _Vue) : el;
8286
+ var Constructor = shouldExtend(el) ? extend(el, _Vue) : el;
8296
8287
 
8297
8288
  return originalCreateElement.apply(void 0, [ Constructor ].concat( args ))
8298
8289
  }
@@ -8504,9 +8495,9 @@ function vmMatchesName(vm, name) {
8504
8495
  // testComponent -> TestComponent
8505
8496
  componentName === capitalize(name) ||
8506
8497
  // test-component -> TestComponent
8507
- componentName === capitalize(camelize$1(name)) ||
8498
+ componentName === capitalize(camelize(name)) ||
8508
8499
  // same match as above, but the component name vs query
8509
- capitalize(camelize$1(componentName)) === name)
8500
+ capitalize(camelize(componentName)) === name)
8510
8501
  )
8511
8502
  }
8512
8503
 
@@ -8741,7 +8732,7 @@ function addGlobalErrorHandler(_Vue) {
8741
8732
  }
8742
8733
 
8743
8734
  if (_Vue.config.errorHandler && !hasWarned) {
8744
- warn$3(
8735
+ warn(
8745
8736
  "Global error handler detected (Vue.config.errorHandler). \n" +
8746
8737
  "Vue Test Utils sets a custom error handler to throw errors " +
8747
8738
  "thrown by instances. If you want this behavior in " +
@@ -8759,7 +8750,7 @@ function normalizeStubs(stubs) {
8759
8750
  if (stubs === false) {
8760
8751
  return false
8761
8752
  }
8762
- if (isPlainObject$1(stubs)) {
8753
+ if (isPlainObject(stubs)) {
8763
8754
  return stubs
8764
8755
  }
8765
8756
  if (Array.isArray(stubs)) {
@@ -8831,7 +8822,7 @@ function mergeOptions(
8831
8822
  methods: methods})
8832
8823
  }
8833
8824
 
8834
- var config$1 = {
8825
+ var config = {
8835
8826
  stubs: {
8836
8827
  transition: true,
8837
8828
  'transition-group': true
@@ -9295,7 +9286,7 @@ var token = {
9295
9286
  Token: Token_1
9296
9287
  };
9297
9288
 
9298
- var acorn = createCommonjsModule$1(function (module, exports) {
9289
+ var acorn = createCommonjsModule(function (module, exports) {
9299
9290
 
9300
9291
  // acorn used char codes to squeeze the last bit of performance out
9301
9292
  // Beautifier is okay without that, so we're using regex
@@ -10103,7 +10094,7 @@ Directives.prototype.readIgnored = function(input) {
10103
10094
 
10104
10095
  var Directives_1 = Directives;
10105
10096
 
10106
- var directives$1 = {
10097
+ var directives = {
10107
10098
  Directives: Directives_1
10108
10099
  };
10109
10100
 
@@ -10273,7 +10264,7 @@ var templatablepattern = {
10273
10264
  var InputScanner$2 = inputscanner.InputScanner;
10274
10265
  var BaseTokenizer = tokenizer.Tokenizer;
10275
10266
  var BASETOKEN = tokenizer.TOKEN;
10276
- var Directives$1 = directives$1.Directives;
10267
+ var Directives$1 = directives.Directives;
10277
10268
 
10278
10269
  var Pattern$3 = pattern.Pattern;
10279
10270
  var TemplatablePattern$1 = templatablepattern.TemplatablePattern;
@@ -12239,10 +12230,10 @@ function js_beautify(js_source_text, options) {
12239
12230
  }
12240
12231
 
12241
12232
  var javascript = js_beautify;
12242
- var defaultOptions = function() {
12233
+ var defaultOptions$1 = function() {
12243
12234
  return new Options$3();
12244
12235
  };
12245
- javascript.defaultOptions = defaultOptions;
12236
+ javascript.defaultOptions = defaultOptions$1;
12246
12237
 
12247
12238
  var BaseOptions$1 = options.Options;
12248
12239
 
@@ -12268,7 +12259,7 @@ var options$2 = {
12268
12259
  var Options$5 = options$2.Options;
12269
12260
  var Output$2 = output.Output;
12270
12261
  var InputScanner$3 = inputscanner.InputScanner;
12271
- var Directives$2 = directives$1.Directives;
12262
+ var Directives$2 = directives.Directives;
12272
12263
 
12273
12264
  var directives_core$1 = new Directives$2(/\/\*/, /\*\//);
12274
12265
 
@@ -12719,10 +12710,10 @@ function css_beautify(source_text, options) {
12719
12710
  }
12720
12711
 
12721
12712
  var css = css_beautify;
12722
- var defaultOptions$1 = function() {
12713
+ var defaultOptions$1$1 = function() {
12723
12714
  return new Options$6();
12724
12715
  };
12725
- css.defaultOptions = defaultOptions$1;
12716
+ css.defaultOptions = defaultOptions$1$1;
12726
12717
 
12727
12718
  var BaseOptions$2 = options.Options;
12728
12719
 
@@ -12792,7 +12783,7 @@ var options$3 = {
12792
12783
 
12793
12784
  var BaseTokenizer$1 = tokenizer.Tokenizer;
12794
12785
  var BASETOKEN$1 = tokenizer.TOKEN;
12795
- var Directives$3 = directives$1.Directives;
12786
+ var Directives$3 = directives.Directives;
12796
12787
  var TemplatablePattern$2 = templatablepattern.TemplatablePattern;
12797
12788
  var Pattern$4 = pattern.Pattern;
12798
12789
 
@@ -13897,30 +13888,30 @@ function style_html(html_source, options, js_beautify, css_beautify) {
13897
13888
  return beautifier.beautify();
13898
13889
  }
13899
13890
 
13900
- var html$1 = style_html;
13891
+ var html = style_html;
13901
13892
  var defaultOptions$2 = function() {
13902
13893
  return new Options$9();
13903
13894
  };
13904
- html$1.defaultOptions = defaultOptions$2;
13895
+ html.defaultOptions = defaultOptions$2;
13905
13896
 
13906
13897
  function style_html$1(html_source, options, js, css$1) {
13907
13898
  js = js || javascript;
13908
13899
  css$1 = css$1 || css;
13909
- return html$1(html_source, options, js, css$1);
13900
+ return html(html_source, options, js, css$1);
13910
13901
  }
13911
- style_html$1.defaultOptions = html$1.defaultOptions;
13902
+ style_html$1.defaultOptions = html.defaultOptions;
13912
13903
 
13913
13904
  var js = javascript;
13914
13905
  var css$1 = css;
13915
- var html$1$1 = style_html$1;
13906
+ var html$1 = style_html$1;
13916
13907
 
13917
13908
  var src = {
13918
13909
  js: js,
13919
13910
  css: css$1,
13920
- html: html$1$1
13911
+ html: html$1
13921
13912
  };
13922
13913
 
13923
- var js$1 = createCommonjsModule$1(function (module) {
13914
+ var js$1 = createCommonjsModule(function (module) {
13924
13915
 
13925
13916
  /**
13926
13917
  The following batches are equivalent:
@@ -14018,7 +14009,7 @@ var extendShallow = function extend(o/*, objects*/) {
14018
14009
 
14019
14010
  function assign(a, b) {
14020
14011
  for (var key in b) {
14021
- if (hasOwn$1(b, key)) {
14012
+ if (hasOwn(b, key)) {
14022
14013
  a[key] = b[key];
14023
14014
  }
14024
14015
  }
@@ -14028,7 +14019,7 @@ function assign(a, b) {
14028
14019
  * Returns true if the given `key` is an own property of `obj`.
14029
14020
  */
14030
14021
 
14031
- function hasOwn$1(obj, key) {
14022
+ function hasOwn(obj, key) {
14032
14023
  return Object.prototype.hasOwnProperty.call(obj, key);
14033
14024
  }
14034
14025
 
@@ -14828,8 +14819,8 @@ function recursivelySetData(vm, target, data) {
14828
14819
  var targetVal = target[key];
14829
14820
 
14830
14821
  if (
14831
- isPlainObject$1(val) &&
14832
- isPlainObject$1(targetVal) &&
14822
+ isPlainObject(val) &&
14823
+ isPlainObject(targetVal) &&
14833
14824
  Object.keys(val).length > 0
14834
14825
  ) {
14835
14826
  recursivelySetData(vm, targetVal, val);
@@ -14907,7 +14898,7 @@ var boundary = {
14907
14898
  bubbles: false,
14908
14899
  cancelable: false
14909
14900
  };
14910
- var cached$1 = {
14901
+ var cached = {
14911
14902
  eventInterface: "Event",
14912
14903
  bubbles: false,
14913
14904
  cancelable: false
@@ -15705,7 +15696,7 @@ var domEventTypes = {
15705
15696
  beginEvent: beginEvent,
15706
15697
  blur: blur,
15707
15698
  boundary: boundary,
15708
- cached: cached$1,
15699
+ cached: cached,
15709
15700
  canplay: canplay,
15710
15701
  canplaythrough: canplaythrough,
15711
15702
  change: change,
@@ -15881,7 +15872,7 @@ var domEventTypes$1 = /*#__PURE__*/Object.freeze({
15881
15872
  beginEvent: beginEvent,
15882
15873
  blur: blur,
15883
15874
  boundary: boundary,
15884
- cached: cached$1,
15875
+ cached: cached,
15885
15876
  canplay: canplay,
15886
15877
  canplaythrough: canplaythrough,
15887
15878
  change: change,
@@ -16234,7 +16225,7 @@ var Wrapper = function Wrapper(
16234
16225
  */
16235
16226
  Wrapper.prototype.__warnIfDestroyed = function __warnIfDestroyed () {
16236
16227
  if (!this.exists()) {
16237
- warn$3('Operations on destroyed component are discouraged');
16228
+ warn('Operations on destroyed component are discouraged');
16238
16229
  }
16239
16230
  };
16240
16231
 
@@ -16264,7 +16255,7 @@ Wrapper.prototype.attributes = function attributes (key) {
16264
16255
  * Returns an Array containing all the classes on the element
16265
16256
  */
16266
16257
  Wrapper.prototype.classes = function classes (className) {
16267
- var this$1 = this;
16258
+ var this$1$1 = this;
16268
16259
 
16269
16260
  this.__warnIfDestroyed();
16270
16261
 
@@ -16275,7 +16266,7 @@ Wrapper.prototype.classes = function classes (className) {
16275
16266
  var cssModuleIdentifiers = Object.keys(this.vm.$style).reduce(
16276
16267
  function (acc, key) {
16277
16268
  // $FlowIgnore
16278
- var moduleIdent = this$1.vm.$style[key];
16269
+ var moduleIdent = this$1$1.vm.$style[key];
16279
16270
  if (moduleIdent) {
16280
16271
  acc[moduleIdent.split(' ')[0]] = key;
16281
16272
  }
@@ -16475,7 +16466,7 @@ Wrapper.prototype.__findAll = function __findAll (
16475
16466
  selector,
16476
16467
  filterFn
16477
16468
  ) {
16478
- var this$1 = this;
16469
+ var this$1$1 = this;
16479
16470
  if ( filterFn === void 0 ) filterFn = function () { return true; };
16480
16471
 
16481
16472
  var nodes = find(this.rootNode, this.vm, selector);
@@ -16483,7 +16474,7 @@ Wrapper.prototype.__findAll = function __findAll (
16483
16474
  .map(function (node) {
16484
16475
  // Using CSS Selector, returns a VueWrapper instance if the root element
16485
16476
  // binds a Vue instance.
16486
- var wrapper = createWrapper(node, this$1.options);
16477
+ var wrapper = createWrapper(node, this$1$1.options);
16487
16478
  wrapper.selector = rawSelector;
16488
16479
  return wrapper
16489
16480
  })
@@ -16606,7 +16597,7 @@ Wrapper.prototype.name = function name () {
16606
16597
  * @deprecated
16607
16598
  */
16608
16599
  Wrapper.prototype.overview = function overview () {
16609
- var this$1 = this;
16600
+ var this$1$1 = this;
16610
16601
 
16611
16602
  warnDeprecated("overview");
16612
16603
  this.__warnIfDestroyed();
@@ -16639,7 +16630,7 @@ Wrapper.prototype.overview = function overview () {
16639
16630
  void 0, Object.keys(this.vm._computedWatchers).map(function (computedKey) {
16640
16631
  var obj;
16641
16632
 
16642
- return (( obj = {}, obj[computedKey] = this$1.vm[computedKey], obj ));
16633
+ return (( obj = {}, obj[computedKey] = this$1$1.vm[computedKey], obj ));
16643
16634
  })
16644
16635
  )
16645
16636
  : // $FlowIgnore
@@ -16686,7 +16677,7 @@ Wrapper.prototype.overview = function overview () {
16686
16677
  * Returns an Object containing the prop name/value pairs on the element
16687
16678
  */
16688
16679
  Wrapper.prototype.props = function props (key) {
16689
- var this$1 = this;
16680
+ var this$1$1 = this;
16690
16681
 
16691
16682
  if (this.isFunctionalComponent) {
16692
16683
  throwError(
@@ -16703,8 +16694,8 @@ Wrapper.prototype.props = function props (key) {
16703
16694
 
16704
16695
  if (keys) {
16705
16696
  (keys || {}).forEach(function (key) {
16706
- if (this$1.vm) {
16707
- props[key] = this$1.vm[key];
16697
+ if (this$1$1.vm) {
16698
+ props[key] = this$1$1.vm[key];
16708
16699
  }
16709
16700
  });
16710
16701
  }
@@ -16832,7 +16823,7 @@ Wrapper.prototype.setData = function setData (data) {
16832
16823
  * @deprecated
16833
16824
  */
16834
16825
  Wrapper.prototype.setMethods = function setMethods (methods) {
16835
- var this$1 = this;
16826
+ var this$1$1 = this;
16836
16827
 
16837
16828
  warnDeprecated(
16838
16829
  "setMethods",
@@ -16846,9 +16837,9 @@ Wrapper.prototype.setMethods = function setMethods (methods) {
16846
16837
 
16847
16838
  Object.keys(methods).forEach(function (key) {
16848
16839
  // $FlowIgnore : Problem with possibly null this.vm
16849
- this$1.vm[key] = methods[key];
16840
+ this$1$1.vm[key] = methods[key];
16850
16841
  // $FlowIgnore : Problem with possibly null this.vm
16851
- this$1.vm.$options.methods[key] = methods[key];
16842
+ this$1$1.vm.$options.methods[key] = methods[key];
16852
16843
  });
16853
16844
 
16854
16845
  if (this.vnode) {
@@ -16861,7 +16852,7 @@ Wrapper.prototype.setMethods = function setMethods (methods) {
16861
16852
  * Sets vm props
16862
16853
  */
16863
16854
  Wrapper.prototype.setProps = function setProps (data) {
16864
- var this$1 = this;
16855
+ var this$1$1 = this;
16865
16856
 
16866
16857
  // Validate the setProps method call
16867
16858
  if (this.isFunctionalComponent) {
@@ -16889,7 +16880,7 @@ Wrapper.prototype.setProps = function setProps (data) {
16889
16880
  typeof data[key] === 'object' &&
16890
16881
  data[key] !== null &&
16891
16882
  // $FlowIgnore : Problem with possibly null this.vm
16892
- data[key] === this$1.vm[key]
16883
+ data[key] === this$1$1.vm[key]
16893
16884
  ) {
16894
16885
  throwError(
16895
16886
  "wrapper.setProps() called with the same object of the existing " +
@@ -16900,9 +16891,9 @@ Wrapper.prototype.setProps = function setProps (data) {
16900
16891
 
16901
16892
  if (
16902
16893
  VUE_VERSION <= 2.3 &&
16903
- (!this$1.vm ||
16904
- !this$1.vm.$options._propKeys ||
16905
- !this$1.vm.$options._propKeys.some(function (prop) { return prop === key; }))
16894
+ (!this$1$1.vm ||
16895
+ !this$1$1.vm.$options._propKeys ||
16896
+ !this$1$1.vm.$options._propKeys.some(function (prop) { return prop === key; }))
16906
16897
  ) {
16907
16898
  throwError(
16908
16899
  "wrapper.setProps() called with " + key + " property which " +
@@ -16911,7 +16902,7 @@ Wrapper.prototype.setProps = function setProps (data) {
16911
16902
  }
16912
16903
 
16913
16904
  // $FlowIgnore : Problem with possibly null this.vm
16914
- var parent = this$1.vm.$parent;
16905
+ var parent = this$1$1.vm.$parent;
16915
16906
  parent.$set(parent.vueTestUtils_childProps, key, data[key]);
16916
16907
  });
16917
16908
 
@@ -16987,16 +16978,16 @@ Wrapper.prototype.text = function text () {
16987
16978
  * Simulates event triggering
16988
16979
  */
16989
16980
  Wrapper.prototype.__simulateTrigger = function __simulateTrigger (type, options) {
16990
- var this$1 = this;
16981
+ var this$1$1 = this;
16991
16982
 
16992
16983
  var regularEventTrigger = function (type, options) {
16993
16984
  var event = createDOMEvent(type, options);
16994
- return this$1.element.dispatchEvent(event)
16985
+ return this$1$1.element.dispatchEvent(event)
16995
16986
  };
16996
16987
 
16997
16988
  var focusEventTrigger = function (type, options) {
16998
- if (this$1.element instanceof HTMLElement) {
16999
- return this$1.element.focus()
16989
+ if (this$1$1.element instanceof HTMLElement) {
16990
+ return this$1$1.element.focus()
17000
16991
  }
17001
16992
 
17002
16993
  regularEventTrigger(type, options);
@@ -17062,12 +17053,12 @@ Wrapper.prototype.trigger = function trigger (type, options) {
17062
17053
 
17063
17054
  var VueWrapper = /*@__PURE__*/(function (Wrapper) {
17064
17055
  function VueWrapper(vm, options) {
17065
- var this$1 = this;
17056
+ var this$1$1 = this;
17066
17057
 
17067
17058
  Wrapper.call(this, vm._vnode, options, true);
17068
17059
  // $FlowIgnore : issue with defineProperty
17069
17060
  Object.defineProperty(this, 'rootNode', {
17070
- get: function () { return vm.$vnode || { child: this$1.vm }; },
17061
+ get: function () { return vm.$vnode || { child: this$1$1.vm }; },
17071
17062
  set: function () { return throwError('wrapper.vnode is read-only'); }
17072
17063
  });
17073
17064
  // $FlowIgnore : issue with defineProperty
@@ -17222,10 +17213,10 @@ function assocIndexOf(array, key) {
17222
17213
  var _assocIndexOf = assocIndexOf;
17223
17214
 
17224
17215
  /** Used for built-in method references. */
17225
- var arrayProto$1 = Array.prototype;
17216
+ var arrayProto = Array.prototype;
17226
17217
 
17227
17218
  /** Built-in value references. */
17228
- var splice = arrayProto$1.splice;
17219
+ var splice = arrayProto.splice;
17229
17220
 
17230
17221
  /**
17231
17222
  * Removes `key` and its value from the list cache.
@@ -17404,7 +17395,7 @@ function stackHas(key) {
17404
17395
  var _stackHas = stackHas;
17405
17396
 
17406
17397
  /** Detect free variable `global` from Node.js. */
17407
- var freeGlobal = typeof commonjsGlobal$1 == 'object' && commonjsGlobal$1 && commonjsGlobal$1.Object === Object && commonjsGlobal$1;
17398
+ var freeGlobal = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;
17408
17399
 
17409
17400
  var _freeGlobal = freeGlobal;
17410
17401
 
@@ -17425,7 +17416,7 @@ var _Symbol = Symbol$1;
17425
17416
  var objectProto = Object.prototype;
17426
17417
 
17427
17418
  /** Used to check objects for own properties. */
17428
- var hasOwnProperty$1$1 = objectProto.hasOwnProperty;
17419
+ var hasOwnProperty$1 = objectProto.hasOwnProperty;
17429
17420
 
17430
17421
  /**
17431
17422
  * Used to resolve the
@@ -17445,7 +17436,7 @@ var symToStringTag = _Symbol ? _Symbol.toStringTag : undefined;
17445
17436
  * @returns {string} Returns the raw `toStringTag`.
17446
17437
  */
17447
17438
  function getRawTag(value) {
17448
- var isOwn = hasOwnProperty$1$1.call(value, symToStringTag),
17439
+ var isOwn = hasOwnProperty$1.call(value, symToStringTag),
17449
17440
  tag = value[symToStringTag];
17450
17441
 
17451
17442
  try {
@@ -17539,12 +17530,12 @@ var _baseGetTag = baseGetTag;
17539
17530
  * _.isObject(null);
17540
17531
  * // => false
17541
17532
  */
17542
- function isObject$1(value) {
17533
+ function isObject(value) {
17543
17534
  var type = typeof value;
17544
17535
  return value != null && (type == 'object' || type == 'function');
17545
17536
  }
17546
17537
 
17547
- var isObject_1 = isObject$1;
17538
+ var isObject_1 = isObject;
17548
17539
 
17549
17540
  /** `Object#toString` result references. */
17550
17541
  var asyncTag = '[object AsyncFunction]',
@@ -18312,7 +18303,7 @@ function stubFalse() {
18312
18303
 
18313
18304
  var stubFalse_1 = stubFalse;
18314
18305
 
18315
- var isBuffer_1$1 = createCommonjsModule$1(function (module, exports) {
18306
+ var isBuffer_1$1 = createCommonjsModule(function (module, exports) {
18316
18307
  /** Detect free variable `exports`. */
18317
18308
  var freeExports = exports && !exports.nodeType && exports;
18318
18309
 
@@ -18484,7 +18475,7 @@ function baseUnary(func) {
18484
18475
 
18485
18476
  var _baseUnary = baseUnary;
18486
18477
 
18487
- var _nodeUtil = createCommonjsModule$1(function (module, exports) {
18478
+ var _nodeUtil = createCommonjsModule(function (module, exports) {
18488
18479
  /** Detect free variable `exports`. */
18489
18480
  var freeExports = exports && !exports.nodeType && exports;
18490
18481
 
@@ -18825,7 +18816,7 @@ function baseAssignIn(object, source) {
18825
18816
 
18826
18817
  var _baseAssignIn = baseAssignIn;
18827
18818
 
18828
- var _cloneBuffer = createCommonjsModule$1(function (module, exports) {
18819
+ var _cloneBuffer = createCommonjsModule(function (module, exports) {
18829
18820
  /** Detect free variable `exports`. */
18830
18821
  var freeExports = exports && !exports.nodeType && exports;
18831
18822
 
@@ -19760,7 +19751,7 @@ function validateOptions(options, component) {
19760
19751
  "options.attachToDocument is deprecated in favor of options.attachTo and will be removed in a future release"
19761
19752
  );
19762
19753
  }
19763
- if (options.parentComponent && !isPlainObject$1(options.parentComponent)) {
19754
+ if (options.parentComponent && !isPlainObject(options.parentComponent)) {
19764
19755
  throwError(
19765
19756
  "options.parentComponent should be a valid Vue component options object"
19766
19757
  );
@@ -19772,7 +19763,7 @@ function validateOptions(options, component) {
19772
19763
  );
19773
19764
  }
19774
19765
 
19775
- if (options.context && !isPlainObject$1(options.context)) {
19766
+ if (options.context && !isPlainObject(options.context)) {
19776
19767
  throwError('mount.context must be an object');
19777
19768
  }
19778
19769
 
@@ -19797,7 +19788,7 @@ function validateOptions(options, component) {
19797
19788
  Vue__default['default'].config.productionTip = false;
19798
19789
  Vue__default['default'].config.devtools = false;
19799
19790
 
19800
- function mount(component, options) {
19791
+ function mount$1(component, options) {
19801
19792
  if ( options === void 0 ) options = {};
19802
19793
 
19803
19794
  warnIfNoWindow();
@@ -19811,7 +19802,7 @@ function mount(component, options) {
19811
19802
  options.localVue ? options.localVue.config : undefined
19812
19803
  );
19813
19804
 
19814
- var mergedOptions = mergeOptions(options, config$1);
19805
+ var mergedOptions = mergeOptions(options, config);
19815
19806
 
19816
19807
  validateOptions(mergedOptions, component);
19817
19808
 
@@ -19852,7 +19843,7 @@ function createLocalVue(config) {
19852
19843
  }
19853
19844
  var createLocalVue_1 = createLocalVue;
19854
19845
  var enableAutoDestroy_1 = enableAutoDestroy;
19855
- var mount_1 = mount;
19846
+ var mount_1 = mount$1;
19856
19847
 
19857
19848
  const ROOT_SELECTOR = '[data-cy-root]';
19858
19849
  const getContainerEl = () => {
@@ -19860,7 +19851,7 @@ const getContainerEl = () => {
19860
19851
  if (el) {
19861
19852
  return el;
19862
19853
  }
19863
- throw Error(`No element found that matches selector ${ROOT_SELECTOR}. Please use the mount utils to mount it properly`);
19854
+ throw Error(`No element found that matches selector ${ROOT_SELECTOR}. Please add a root element with data-cy-root attribute to your "component-index.html" file so that Cypress can attach your component to the DOM.`);
19864
19855
  };
19865
19856
  /**
19866
19857
  * Remove any style or extra link elements from the iframe placeholder
@@ -19976,6 +19967,13 @@ const injectStylesBeforeElement = (options, document, el) => {
19976
19967
  return insertLocalCssFiles(cssFiles, document, el, options.log);
19977
19968
  };
19978
19969
  function setupHooks(optionalCallback) {
19970
+ // Consumed by the framework "mount" libs. A user might register their own mount in the scaffolded 'commands.js'
19971
+ // file that is imported by e2e and component support files by default. We don't want CT side effects to run when e2e
19972
+ // testing so we early return.
19973
+ // System test to verify CT side effects do not pollute e2e: system-tests/test/e2e_with_mount_import_spec.ts
19974
+ if (Cypress.testingType !== 'component') {
19975
+ return;
19976
+ }
19979
19977
  // When running component specs, we cannot allow "cy.visit"
19980
19978
  // because it will wipe out our preparation work, and does not make much sense
19981
19979
  // thus we overwrite "cy.visit" to throw an error
@@ -19989,7 +19987,7 @@ function setupHooks(optionalCallback) {
19989
19987
  });
19990
19988
  }
19991
19989
 
19992
- var defaultOptions$3 = [
19990
+ var defaultOptions = [
19993
19991
  'vue',
19994
19992
  'extensions',
19995
19993
  ];
@@ -20114,10 +20112,10 @@ function getComponentDisplayName(componentOptions) {
20114
20112
  * cy.get('#greeting').should('be.visible')
20115
20113
  * })
20116
20114
  */
20117
- var mount$1 = function (component, optionsOrProps) {
20115
+ var mount = function (component, optionsOrProps) {
20118
20116
  if (optionsOrProps === void 0) { optionsOrProps = {}; }
20119
- var options = Cypress._.pick(optionsOrProps, defaultOptions$3);
20120
- var props = Cypress._.omit(optionsOrProps, defaultOptions$3);
20117
+ var options = Cypress._.pick(optionsOrProps, defaultOptions);
20118
+ var props = Cypress._.omit(optionsOrProps, defaultOptions);
20121
20119
  var componentName = getComponentDisplayName(component);
20122
20120
  var message = "<" + componentName + " ... />";
20123
20121
  return cy
@@ -20180,9 +20178,17 @@ var mount$1 = function (component, optionsOrProps) {
20180
20178
  * beforeEach(mountVue(component, options))
20181
20179
  */
20182
20180
  var mountCallback = function (component, options) {
20183
- return function () { return mount$1(component, options); };
20181
+ return function () { return mount(component, options); };
20184
20182
  };
20183
+ // Side effects from "import { mount } from '@cypress/<my-framework>'" are annoying, we should avoid doing this
20184
+ // by creating an explicit function/import that the user can register in their 'component.js' support file,
20185
+ // such as:
20186
+ // import 'cypress/<my-framework>/support'
20187
+ // or
20188
+ // import { registerCT } from 'cypress/<my-framework>'
20189
+ // registerCT()
20190
+ // Note: This would be a breaking change
20185
20191
  setupHooks();
20186
20192
 
20187
- exports.mount = mount$1;
20193
+ exports.mount = mount;
20188
20194
  exports.mountCallback = mountCallback;