@vue/runtime-dom 3.3.9 → 3.3.11

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.
@@ -15,8 +15,8 @@ var VueRuntimeDOM = (function (exports) {
15
15
  const NOOP = () => {
16
16
  };
17
17
  const NO = () => false;
18
- const onRE = /^on[^a-z]/;
19
- const isOn = (key) => onRE.test(key);
18
+ const isOn = (key) => key.charCodeAt(0) === 111 && key.charCodeAt(1) === 110 && // uppercase letter
19
+ (key.charCodeAt(2) > 122 || key.charCodeAt(2) < 97);
20
20
  const isModelListener = (key) => key.startsWith("onUpdate:");
21
21
  const extend = Object.assign;
22
22
  const remove = (arr, el) => {
@@ -238,20 +238,29 @@ var VueRuntimeDOM = (function (exports) {
238
238
  return replacer(_key, val.value);
239
239
  } else if (isMap(val)) {
240
240
  return {
241
- [`Map(${val.size})`]: [...val.entries()].reduce((entries, [key, val2]) => {
242
- entries[`${key} =>`] = val2;
243
- return entries;
244
- }, {})
241
+ [`Map(${val.size})`]: [...val.entries()].reduce(
242
+ (entries, [key, val2], i) => {
243
+ entries[stringifySymbol(key, i) + " =>"] = val2;
244
+ return entries;
245
+ },
246
+ {}
247
+ )
245
248
  };
246
249
  } else if (isSet(val)) {
247
250
  return {
248
- [`Set(${val.size})`]: [...val.values()]
251
+ [`Set(${val.size})`]: [...val.values()].map((v) => stringifySymbol(v))
249
252
  };
253
+ } else if (isSymbol(val)) {
254
+ return stringifySymbol(val);
250
255
  } else if (isObject(val) && !isArray(val) && !isPlainObject(val)) {
251
256
  return String(val);
252
257
  }
253
258
  return val;
254
259
  };
260
+ const stringifySymbol = (v, i = "") => {
261
+ var _a;
262
+ return isSymbol(v) ? `Symbol(${(_a = v.description) != null ? _a : i})` : v;
263
+ };
255
264
 
256
265
  function warn$1(msg, ...args) {
257
266
  console.warn(`[Vue warn] ${msg}`, ...args);
@@ -675,8 +684,13 @@ var VueRuntimeDOM = (function (exports) {
675
684
  return isReadonly2;
676
685
  } else if (key === "__v_isShallow") {
677
686
  return shallow;
678
- } else if (key === "__v_raw" && receiver === (isReadonly2 ? shallow ? shallowReadonlyMap : readonlyMap : shallow ? shallowReactiveMap : reactiveMap).get(target)) {
679
- return target;
687
+ } else if (key === "__v_raw") {
688
+ if (receiver === (isReadonly2 ? shallow ? shallowReadonlyMap : readonlyMap : shallow ? shallowReactiveMap : reactiveMap).get(target) || // receiver is not the reactive proxy, but has the same prototype
689
+ // this means the reciever is a user proxy of the reactive proxy
690
+ Object.getPrototypeOf(target) === Object.getPrototypeOf(receiver)) {
691
+ return target;
692
+ }
693
+ return;
680
694
  }
681
695
  const targetIsArray = isArray(target);
682
696
  if (!isReadonly2) {
@@ -1687,13 +1701,16 @@ var VueRuntimeDOM = (function (exports) {
1687
1701
  }
1688
1702
  queueFlush();
1689
1703
  }
1690
- function flushPreFlushCbs(seen, i = isFlushing ? flushIndex + 1 : 0) {
1704
+ function flushPreFlushCbs(instance, seen, i = isFlushing ? flushIndex + 1 : 0) {
1691
1705
  {
1692
1706
  seen = seen || /* @__PURE__ */ new Map();
1693
1707
  }
1694
1708
  for (; i < queue.length; i++) {
1695
1709
  const cb = queue[i];
1696
1710
  if (cb && cb.pre) {
1711
+ if (instance && cb.id !== instance.uid) {
1712
+ continue;
1713
+ }
1697
1714
  if (checkRecursiveUpdates(seen, cb)) {
1698
1715
  continue;
1699
1716
  }
@@ -2833,7 +2850,12 @@ If this is a native custom element, make sure to exclude it from component resol
2833
2850
  if (delayEnter) {
2834
2851
  activeBranch.transition.afterLeave = () => {
2835
2852
  if (pendingId === suspense.pendingId) {
2836
- move(pendingBranch, container2, anchor2, 0);
2853
+ move(
2854
+ pendingBranch,
2855
+ container2,
2856
+ next(activeBranch),
2857
+ 0
2858
+ );
2837
2859
  queuePostFlushCb(effects);
2838
2860
  }
2839
2861
  };
@@ -7235,7 +7257,7 @@ If you want to remount the same app, move your app creation logic into a factory
7235
7257
  updateProps(instance, nextVNode.props, prevProps, optimized);
7236
7258
  updateSlots(instance, nextVNode.children, optimized);
7237
7259
  pauseTracking();
7238
- flushPreFlushCbs();
7260
+ flushPreFlushCbs(instance);
7239
7261
  resetTracking();
7240
7262
  };
7241
7263
  const patchChildren = (n1, n2, container, anchor, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized = false) => {
@@ -8906,9 +8928,9 @@ Component that was made reactive: `,
8906
8928
  return;
8907
8929
  }
8908
8930
  const vueStyle = { style: "color:#3ba776" };
8909
- const numberStyle = { style: "color:#0b1bc9" };
8910
- const stringStyle = { style: "color:#b62e24" };
8911
- const keywordStyle = { style: "color:#9d288c" };
8931
+ const numberStyle = { style: "color:#1677ff" };
8932
+ const stringStyle = { style: "color:#f5222d" };
8933
+ const keywordStyle = { style: "color:#eb2f96" };
8912
8934
  const formatter = {
8913
8935
  header(obj) {
8914
8936
  if (!isObject(obj)) {
@@ -9102,7 +9124,7 @@ Component that was made reactive: `,
9102
9124
  return true;
9103
9125
  }
9104
9126
 
9105
- const version = "3.3.9";
9127
+ const version = "3.3.11";
9106
9128
  const ssrUtils = null;
9107
9129
  const resolveFilter = null;
9108
9130
  const compatUtils = null;
@@ -9714,7 +9736,8 @@ Component that was made reactive: `,
9714
9736
  }
9715
9737
  }
9716
9738
 
9717
- const nativeOnRE = /^on[a-z]/;
9739
+ const isNativeOn = (key) => key.charCodeAt(0) === 111 && key.charCodeAt(1) === 110 && // lowercase letter
9740
+ key.charCodeAt(2) > 96 && key.charCodeAt(2) < 123;
9718
9741
  const patchProp = (el, key, prevValue, nextValue, isSVG = false, prevChildren, parentComponent, parentSuspense, unmountChildren) => {
9719
9742
  if (key === "class") {
9720
9743
  patchClass(el, nextValue, isSVG);
@@ -9748,7 +9771,7 @@ Component that was made reactive: `,
9748
9771
  if (key === "innerHTML" || key === "textContent") {
9749
9772
  return true;
9750
9773
  }
9751
- if (key in el && nativeOnRE.test(key) && isFunction(value)) {
9774
+ if (key in el && isNativeOn(key) && isFunction(value)) {
9752
9775
  return true;
9753
9776
  }
9754
9777
  return false;
@@ -9765,7 +9788,13 @@ Component that was made reactive: `,
9765
9788
  if (key === "type" && el.tagName === "TEXTAREA") {
9766
9789
  return false;
9767
9790
  }
9768
- if (nativeOnRE.test(key) && isString(value)) {
9791
+ if (key === "width" || key === "height") {
9792
+ const tag = el.tagName;
9793
+ if (tag === "IMG" || tag === "VIDEO" || tag === "CANVAS" || tag === "SOURCE") {
9794
+ return false;
9795
+ }
9796
+ }
9797
+ if (isNativeOn(key) && isString(value)) {
9769
9798
  return false;
9770
9799
  }
9771
9800
  return key in el;
@@ -10434,14 +10463,14 @@ Component that was made reactive: `,
10434
10463
  exact: (e, modifiers) => systemModifiers.some((m) => e[`${m}Key`] && !modifiers.includes(m))
10435
10464
  };
10436
10465
  const withModifiers = (fn, modifiers) => {
10437
- return (event, ...args) => {
10466
+ return fn._withMods || (fn._withMods = (event, ...args) => {
10438
10467
  for (let i = 0; i < modifiers.length; i++) {
10439
10468
  const guard = modifierGuards[modifiers[i]];
10440
10469
  if (guard && guard(event, modifiers))
10441
10470
  return;
10442
10471
  }
10443
10472
  return fn(event, ...args);
10444
- };
10473
+ });
10445
10474
  };
10446
10475
  const keyNames = {
10447
10476
  esc: "escape",
@@ -10453,7 +10482,7 @@ Component that was made reactive: `,
10453
10482
  delete: "backspace"
10454
10483
  };
10455
10484
  const withKeys = (fn, modifiers) => {
10456
- return (event) => {
10485
+ return fn._withKeys || (fn._withKeys = (event) => {
10457
10486
  if (!("key" in event)) {
10458
10487
  return;
10459
10488
  }
@@ -10461,7 +10490,7 @@ Component that was made reactive: `,
10461
10490
  if (modifiers.some((k) => k === eventKey || keyNames[k] === eventKey)) {
10462
10491
  return fn(event);
10463
10492
  }
10464
- };
10493
+ });
10465
10494
  };
10466
10495
 
10467
10496
  const rendererOptions = /* @__PURE__ */ extend({ patchProp }, nodeOps);