vue 3.2.22 → 3.2.23

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.
@@ -530,7 +530,7 @@ const targetMap = new WeakMap();
530
530
  let effectTrackDepth = 0;
531
531
  let trackOpBit = 1;
532
532
  /**
533
- * The bitwise track markers support at most 30 levels op recursion.
533
+ * The bitwise track markers support at most 30 levels of recursion.
534
534
  * This value is chosen to enable modern JS engines to use a SMI on all platforms.
535
535
  * When recursion depth is greater, fall back to using a full cleanup.
536
536
  */
@@ -851,7 +851,7 @@ const shallowSet = /*#__PURE__*/ createSetter(true);
851
851
  function createSetter(shallow = false) {
852
852
  return function set(target, key, value, receiver) {
853
853
  let oldValue = target[key];
854
- if (!shallow) {
854
+ if (!shallow && !isReadonly(value)) {
855
855
  value = toRaw(value);
856
856
  oldValue = toRaw(oldValue);
857
857
  if (!isArray(target) && isRef(oldValue) && !isRef(value)) {
@@ -2767,7 +2767,8 @@ const BaseTransitionImpl = {
2767
2767
  const rawProps = toRaw(props);
2768
2768
  const { mode } = rawProps;
2769
2769
  // check mode
2770
- if (mode && !['in-out', 'out-in', 'default'].includes(mode)) {
2770
+ if (mode &&
2771
+ mode !== 'in-out' && mode !== 'out-in' && mode !== 'default') {
2771
2772
  warn$1(`invalid <transition> mode: ${mode}`);
2772
2773
  }
2773
2774
  // at this point children has a guaranteed length of 1.
@@ -3407,7 +3408,7 @@ function registerKeepAliveHook(hook, type, target = currentInstance) {
3407
3408
  }
3408
3409
  current = current.parent;
3409
3410
  }
3410
- hook();
3411
+ return hook();
3411
3412
  });
3412
3413
  injectHook(type, wrappedHook, target);
3413
3414
  // In addition to registering it on the target instance, we walk up the parent
@@ -7383,23 +7384,23 @@ const PublicInstanceProxyHandlers = {
7383
7384
  const n = accessCache[key];
7384
7385
  if (n !== undefined) {
7385
7386
  switch (n) {
7386
- case 0 /* SETUP */:
7387
+ case 1 /* SETUP */:
7387
7388
  return setupState[key];
7388
- case 1 /* DATA */:
7389
+ case 2 /* DATA */:
7389
7390
  return data[key];
7390
- case 3 /* CONTEXT */:
7391
+ case 4 /* CONTEXT */:
7391
7392
  return ctx[key];
7392
- case 2 /* PROPS */:
7393
+ case 3 /* PROPS */:
7393
7394
  return props[key];
7394
7395
  // default: just fallthrough
7395
7396
  }
7396
7397
  }
7397
7398
  else if (setupState !== EMPTY_OBJ && hasOwn(setupState, key)) {
7398
- accessCache[key] = 0 /* SETUP */;
7399
+ accessCache[key] = 1 /* SETUP */;
7399
7400
  return setupState[key];
7400
7401
  }
7401
7402
  else if (data !== EMPTY_OBJ && hasOwn(data, key)) {
7402
- accessCache[key] = 1 /* DATA */;
7403
+ accessCache[key] = 2 /* DATA */;
7403
7404
  return data[key];
7404
7405
  }
7405
7406
  else if (
@@ -7407,15 +7408,15 @@ const PublicInstanceProxyHandlers = {
7407
7408
  // props
7408
7409
  (normalizedProps = instance.propsOptions[0]) &&
7409
7410
  hasOwn(normalizedProps, key)) {
7410
- accessCache[key] = 2 /* PROPS */;
7411
+ accessCache[key] = 3 /* PROPS */;
7411
7412
  return props[key];
7412
7413
  }
7413
7414
  else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {
7414
- accessCache[key] = 3 /* CONTEXT */;
7415
+ accessCache[key] = 4 /* CONTEXT */;
7415
7416
  return ctx[key];
7416
7417
  }
7417
7418
  else if (shouldCacheAccess) {
7418
- accessCache[key] = 4 /* OTHER */;
7419
+ accessCache[key] = 0 /* OTHER */;
7419
7420
  }
7420
7421
  }
7421
7422
  const publicGetter = publicPropertiesMap[key];
@@ -7436,7 +7437,7 @@ const PublicInstanceProxyHandlers = {
7436
7437
  }
7437
7438
  else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {
7438
7439
  // user may set custom properties to `this` that start with `$`
7439
- accessCache[key] = 3 /* CONTEXT */;
7440
+ accessCache[key] = 4 /* CONTEXT */;
7440
7441
  return ctx[key];
7441
7442
  }
7442
7443
  else if (
@@ -7497,7 +7498,7 @@ const PublicInstanceProxyHandlers = {
7497
7498
  },
7498
7499
  has({ _: { data, setupState, accessCache, ctx, appContext, propsOptions } }, key) {
7499
7500
  let normalizedProps;
7500
- return (accessCache[key] !== undefined ||
7501
+ return (!!accessCache[key] ||
7501
7502
  (data !== EMPTY_OBJ && hasOwn(data, key)) ||
7502
7503
  (setupState !== EMPTY_OBJ && hasOwn(setupState, key)) ||
7503
7504
  ((normalizedProps = propsOptions[0]) && hasOwn(normalizedProps, key)) ||
@@ -9044,7 +9045,7 @@ function isMemoSame(cached, memo) {
9044
9045
  }
9045
9046
 
9046
9047
  // Core API ------------------------------------------------------------------
9047
- const version = "3.2.22";
9048
+ const version = "3.2.23";
9048
9049
  /**
9049
9050
  * SSR utils for \@vue/server-renderer. Only exposed in cjs builds.
9050
9051
  * @internal
@@ -9277,12 +9278,19 @@ prevChildren, parentComponent, parentSuspense, unmountChildren) {
9277
9278
  el[key] = value == null ? '' : value;
9278
9279
  return;
9279
9280
  }
9280
- if (key === 'value' && el.tagName !== 'PROGRESS') {
9281
+ if (key === 'value' &&
9282
+ el.tagName !== 'PROGRESS' &&
9283
+ // custom elements may use _value internally
9284
+ !el.tagName.includes('-')) {
9281
9285
  // store value as _value as well since
9282
9286
  // non-string values will be stringified.
9283
9287
  el._value = value;
9284
9288
  const newValue = value == null ? '' : value;
9285
- if (el.value !== newValue) {
9289
+ if (el.value !== newValue ||
9290
+ // #4956: always set for OPTION elements because its value falls back to
9291
+ // textContent if no value attribute is present. And setting .value for
9292
+ // OPTION has no side effect
9293
+ el.tagName === 'OPTION') {
9286
9294
  el.value = newValue;
9287
9295
  }
9288
9296
  if (value == null) {