@vue/compat 3.4.17 → 3.4.19

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/compat v3.4.17
2
+ * @vue/compat v3.4.19
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -1330,6 +1330,7 @@ function markRaw(value) {
1330
1330
  const toReactive = (value) => isObject(value) ? reactive(value) : value;
1331
1331
  const toReadonly = (value) => isObject(value) ? readonly(value) : value;
1332
1332
 
1333
+ const COMPUTED_SIDE_EFFECT_WARN = `Computed is still dirty after getter evaluation, likely because a computed is mutating its own dependency in its getter. State mutations in computed getters should be avoided. Check the docs for more details: https://vuejs.org/guide/essentials/computed.html#getters-should-be-side-effect-free`;
1333
1334
  class ComputedRefImpl {
1334
1335
  constructor(getter, _setter, isReadonly, isSSR) {
1335
1336
  this._setter = _setter;
@@ -1354,6 +1355,7 @@ class ComputedRefImpl {
1354
1355
  }
1355
1356
  trackRefValue(self);
1356
1357
  if (self.effect._dirtyLevel >= 2) {
1358
+ !!(process.env.NODE_ENV !== "production") && warn$2(COMPUTED_SIDE_EFFECT_WARN);
1357
1359
  triggerRefValue(self, 2);
1358
1360
  }
1359
1361
  return self._value;
@@ -1377,7 +1379,7 @@ function computed$1(getterOrOptions, debugOptions, isSSR = false) {
1377
1379
  if (onlyGetter) {
1378
1380
  getter = getterOrOptions;
1379
1381
  setter = !!(process.env.NODE_ENV !== "production") ? () => {
1380
- console.warn("Write operation failed: computed value is readonly");
1382
+ warn$2("Write operation failed: computed value is readonly");
1381
1383
  } : NOOP;
1382
1384
  } else {
1383
1385
  getter = getterOrOptions.get;
@@ -1753,13 +1755,11 @@ const ErrorTypeStrings$1 = {
1753
1755
  [14]: "scheduler flush. This is likely a Vue internals bug. Please open an issue at https://github.com/vuejs/core ."
1754
1756
  };
1755
1757
  function callWithErrorHandling(fn, instance, type, args) {
1756
- let res;
1757
1758
  try {
1758
- res = args ? fn(...args) : fn();
1759
+ return args ? fn(...args) : fn();
1759
1760
  } catch (err) {
1760
1761
  handleError(err, instance, type);
1761
1762
  }
1762
- return res;
1763
1763
  }
1764
1764
  function callWithAsyncErrorHandling(fn, instance, type, args) {
1765
1765
  if (isFunction(fn)) {
@@ -6540,7 +6540,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
6540
6540
  return vm;
6541
6541
  }
6542
6542
  }
6543
- Vue.version = `2.6.14-compat:${"3.4.17"}`;
6543
+ Vue.version = `2.6.14-compat:${"3.4.19"}`;
6544
6544
  Vue.config = singletonApp.config;
6545
6545
  Vue.use = (p, ...options) => {
6546
6546
  if (p && isFunction(p.install)) {
@@ -7480,7 +7480,7 @@ function normalizePropsOptions(comp, appContext, asMixin = false) {
7480
7480
  return res;
7481
7481
  }
7482
7482
  function validatePropName(key) {
7483
- if (key[0] !== "$") {
7483
+ if (key[0] !== "$" && !isReservedProp(key)) {
7484
7484
  return true;
7485
7485
  } else if (!!(process.env.NODE_ENV !== "production")) {
7486
7486
  warn$1(`Invalid prop name: "${key}" is a reserved property.`);
@@ -7488,8 +7488,16 @@ function validatePropName(key) {
7488
7488
  return false;
7489
7489
  }
7490
7490
  function getType(ctor) {
7491
- const match = ctor && ctor.toString().match(/^\s*(function|class) (\w+)/);
7492
- return match ? match[2] : ctor === null ? "null" : "";
7491
+ if (ctor === null) {
7492
+ return "null";
7493
+ }
7494
+ if (typeof ctor === "function") {
7495
+ return ctor.name || "";
7496
+ } else if (typeof ctor === "object") {
7497
+ const name = ctor.constructor && ctor.constructor.name;
7498
+ return name || "";
7499
+ }
7500
+ return "";
7493
7501
  }
7494
7502
  function isSameType(a, b) {
7495
7503
  return getType(a) === getType(b);
@@ -8298,9 +8306,12 @@ function propHasMismatch(el, key, clientValue, vnode, instance) {
8298
8306
  }
8299
8307
  }
8300
8308
  }
8301
- const cssVars = (_a = instance == null ? void 0 : instance.getCssVars) == null ? void 0 : _a.call(instance);
8302
- for (const key2 in cssVars) {
8303
- expectedMap.set(`--${key2}`, String(cssVars[key2]));
8309
+ const root = instance == null ? void 0 : instance.subTree;
8310
+ if (vnode === root || (root == null ? void 0 : root.type) === Fragment && root.children.includes(vnode)) {
8311
+ const cssVars = (_a = instance == null ? void 0 : instance.getCssVars) == null ? void 0 : _a.call(instance);
8312
+ for (const key2 in cssVars) {
8313
+ expectedMap.set(`--${key2}`, String(cssVars[key2]));
8314
+ }
8304
8315
  }
8305
8316
  if (!isMapEqual(actualMap, expectedMap)) {
8306
8317
  mismatchType = mismatchKey = "style";
@@ -11446,7 +11457,7 @@ function isMemoSame(cached, memo) {
11446
11457
  return true;
11447
11458
  }
11448
11459
 
11449
- const version = "3.4.17";
11460
+ const version = "3.4.19";
11450
11461
  const warn = !!(process.env.NODE_ENV !== "production") ? warn$1 : NOOP;
11451
11462
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
11452
11463
  const devtools = !!(process.env.NODE_ENV !== "production") || true ? devtools$1 : void 0;
@@ -11875,7 +11886,7 @@ const vShow = {
11875
11886
  }
11876
11887
  },
11877
11888
  updated(el, { value, oldValue }, { transition }) {
11878
- if (!value === !oldValue)
11889
+ if (!value === !oldValue && (el.style.display === el[vShowOldKey] || !value))
11879
11890
  return;
11880
11891
  if (transition) {
11881
11892
  if (value) {
@@ -11975,10 +11986,12 @@ function setVarsOnNode(el, vars) {
11975
11986
  }
11976
11987
  }
11977
11988
 
11989
+ const displayRE = /(^|;)\s*display\s*:/;
11978
11990
  function patchStyle(el, prev, next) {
11979
11991
  const style = el.style;
11980
- const currentDisplay = style.display;
11981
11992
  const isCssString = isString(next);
11993
+ const currentDisplay = style.display;
11994
+ let hasControlledDisplay = false;
11982
11995
  if (next && !isCssString) {
11983
11996
  if (prev && !isString(prev)) {
11984
11997
  for (const key in prev) {
@@ -11988,6 +12001,9 @@ function patchStyle(el, prev, next) {
11988
12001
  }
11989
12002
  }
11990
12003
  for (const key in next) {
12004
+ if (key === "display") {
12005
+ hasControlledDisplay = true;
12006
+ }
11991
12007
  setStyle(style, key, next[key]);
11992
12008
  }
11993
12009
  } else {
@@ -11998,12 +12014,14 @@ function patchStyle(el, prev, next) {
11998
12014
  next += ";" + cssVarText;
11999
12015
  }
12000
12016
  style.cssText = next;
12017
+ hasControlledDisplay = displayRE.test(next);
12001
12018
  }
12002
12019
  } else if (prev) {
12003
12020
  el.removeAttribute("style");
12004
12021
  }
12005
12022
  }
12006
12023
  if (vShowOldKey in el) {
12024
+ el[vShowOldKey] = hasControlledDisplay ? style.display : "";
12007
12025
  style.display = currentDisplay;
12008
12026
  }
12009
12027
  }
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.4.17
2
+ * @vue/compat v3.4.19
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -1333,6 +1333,7 @@ var Vue = (function () {
1333
1333
  const toReactive = (value) => isObject(value) ? reactive(value) : value;
1334
1334
  const toReadonly = (value) => isObject(value) ? readonly(value) : value;
1335
1335
 
1336
+ const COMPUTED_SIDE_EFFECT_WARN = `Computed is still dirty after getter evaluation, likely because a computed is mutating its own dependency in its getter. State mutations in computed getters should be avoided. Check the docs for more details: https://vuejs.org/guide/essentials/computed.html#getters-should-be-side-effect-free`;
1336
1337
  class ComputedRefImpl {
1337
1338
  constructor(getter, _setter, isReadonly, isSSR) {
1338
1339
  this._setter = _setter;
@@ -1357,6 +1358,7 @@ var Vue = (function () {
1357
1358
  }
1358
1359
  trackRefValue(self);
1359
1360
  if (self.effect._dirtyLevel >= 2) {
1361
+ warn$2(COMPUTED_SIDE_EFFECT_WARN);
1360
1362
  triggerRefValue(self, 2);
1361
1363
  }
1362
1364
  return self._value;
@@ -1380,7 +1382,7 @@ var Vue = (function () {
1380
1382
  if (onlyGetter) {
1381
1383
  getter = getterOrOptions;
1382
1384
  setter = () => {
1383
- console.warn("Write operation failed: computed value is readonly");
1385
+ warn$2("Write operation failed: computed value is readonly");
1384
1386
  } ;
1385
1387
  } else {
1386
1388
  getter = getterOrOptions.get;
@@ -1754,13 +1756,11 @@ var Vue = (function () {
1754
1756
  [14]: "scheduler flush. This is likely a Vue internals bug. Please open an issue at https://github.com/vuejs/core ."
1755
1757
  };
1756
1758
  function callWithErrorHandling(fn, instance, type, args) {
1757
- let res;
1758
1759
  try {
1759
- res = args ? fn(...args) : fn();
1760
+ return args ? fn(...args) : fn();
1760
1761
  } catch (err) {
1761
1762
  handleError(err, instance, type);
1762
1763
  }
1763
- return res;
1764
1764
  }
1765
1765
  function callWithAsyncErrorHandling(fn, instance, type, args) {
1766
1766
  if (isFunction(fn)) {
@@ -6499,7 +6499,7 @@ If this is a native custom element, make sure to exclude it from component resol
6499
6499
  return vm;
6500
6500
  }
6501
6501
  }
6502
- Vue.version = `2.6.14-compat:${"3.4.17"}`;
6502
+ Vue.version = `2.6.14-compat:${"3.4.19"}`;
6503
6503
  Vue.config = singletonApp.config;
6504
6504
  Vue.use = (p, ...options) => {
6505
6505
  if (p && isFunction(p.install)) {
@@ -7436,7 +7436,7 @@ If you want to remount the same app, move your app creation logic into a factory
7436
7436
  return res;
7437
7437
  }
7438
7438
  function validatePropName(key) {
7439
- if (key[0] !== "$") {
7439
+ if (key[0] !== "$" && !isReservedProp(key)) {
7440
7440
  return true;
7441
7441
  } else {
7442
7442
  warn$1(`Invalid prop name: "${key}" is a reserved property.`);
@@ -7444,8 +7444,16 @@ If you want to remount the same app, move your app creation logic into a factory
7444
7444
  return false;
7445
7445
  }
7446
7446
  function getType(ctor) {
7447
- const match = ctor && ctor.toString().match(/^\s*(function|class) (\w+)/);
7448
- return match ? match[2] : ctor === null ? "null" : "";
7447
+ if (ctor === null) {
7448
+ return "null";
7449
+ }
7450
+ if (typeof ctor === "function") {
7451
+ return ctor.name || "";
7452
+ } else if (typeof ctor === "object") {
7453
+ const name = ctor.constructor && ctor.constructor.name;
7454
+ return name || "";
7455
+ }
7456
+ return "";
7449
7457
  }
7450
7458
  function isSameType(a, b) {
7451
7459
  return getType(a) === getType(b);
@@ -8244,9 +8252,12 @@ Server rendered element contains fewer child nodes than client vdom.`
8244
8252
  }
8245
8253
  }
8246
8254
  }
8247
- const cssVars = (_a = instance == null ? void 0 : instance.getCssVars) == null ? void 0 : _a.call(instance);
8248
- for (const key2 in cssVars) {
8249
- expectedMap.set(`--${key2}`, String(cssVars[key2]));
8255
+ const root = instance == null ? void 0 : instance.subTree;
8256
+ if (vnode === root || (root == null ? void 0 : root.type) === Fragment && root.children.includes(vnode)) {
8257
+ const cssVars = (_a = instance == null ? void 0 : instance.getCssVars) == null ? void 0 : _a.call(instance);
8258
+ for (const key2 in cssVars) {
8259
+ expectedMap.set(`--${key2}`, String(cssVars[key2]));
8260
+ }
8250
8261
  }
8251
8262
  if (!isMapEqual(actualMap, expectedMap)) {
8252
8263
  mismatchType = mismatchKey = "style";
@@ -11321,7 +11332,7 @@ Component that was made reactive: `,
11321
11332
  return true;
11322
11333
  }
11323
11334
 
11324
- const version = "3.4.17";
11335
+ const version = "3.4.19";
11325
11336
  const warn = warn$1 ;
11326
11337
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
11327
11338
  const devtools = devtools$1 ;
@@ -11742,7 +11753,7 @@ Component that was made reactive: `,
11742
11753
  }
11743
11754
  },
11744
11755
  updated(el, { value, oldValue }, { transition }) {
11745
- if (!value === !oldValue)
11756
+ if (!value === !oldValue && (el.style.display === el[vShowOldKey] || !value))
11746
11757
  return;
11747
11758
  if (transition) {
11748
11759
  if (value) {
@@ -11835,10 +11846,12 @@ Component that was made reactive: `,
11835
11846
  }
11836
11847
  }
11837
11848
 
11849
+ const displayRE = /(^|;)\s*display\s*:/;
11838
11850
  function patchStyle(el, prev, next) {
11839
11851
  const style = el.style;
11840
- const currentDisplay = style.display;
11841
11852
  const isCssString = isString(next);
11853
+ const currentDisplay = style.display;
11854
+ let hasControlledDisplay = false;
11842
11855
  if (next && !isCssString) {
11843
11856
  if (prev && !isString(prev)) {
11844
11857
  for (const key in prev) {
@@ -11848,6 +11861,9 @@ Component that was made reactive: `,
11848
11861
  }
11849
11862
  }
11850
11863
  for (const key in next) {
11864
+ if (key === "display") {
11865
+ hasControlledDisplay = true;
11866
+ }
11851
11867
  setStyle(style, key, next[key]);
11852
11868
  }
11853
11869
  } else {
@@ -11858,12 +11874,14 @@ Component that was made reactive: `,
11858
11874
  next += ";" + cssVarText;
11859
11875
  }
11860
11876
  style.cssText = next;
11877
+ hasControlledDisplay = displayRE.test(next);
11861
11878
  }
11862
11879
  } else if (prev) {
11863
11880
  el.removeAttribute("style");
11864
11881
  }
11865
11882
  }
11866
11883
  if (vShowOldKey in el) {
11884
+ el[vShowOldKey] = hasControlledDisplay ? style.display : "";
11867
11885
  style.display = currentDisplay;
11868
11886
  }
11869
11887
  }