@vue/compat 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.
@@ -456,7 +456,7 @@ const targetMap = new WeakMap();
456
456
  let effectTrackDepth = 0;
457
457
  let trackOpBit = 1;
458
458
  /**
459
- * The bitwise track markers support at most 30 levels op recursion.
459
+ * The bitwise track markers support at most 30 levels of recursion.
460
460
  * This value is chosen to enable modern JS engines to use a SMI on all platforms.
461
461
  * When recursion depth is greater, fall back to using a full cleanup.
462
462
  */
@@ -785,7 +785,7 @@ const shallowSet = /*#__PURE__*/ createSetter(true);
785
785
  function createSetter(shallow = false) {
786
786
  return function set(target, key, value, receiver) {
787
787
  let oldValue = target[key];
788
- if (!shallow) {
788
+ if (!shallow && !isReadonly(value)) {
789
789
  value = toRaw(value);
790
790
  oldValue = toRaw(oldValue);
791
791
  if (!isArray(target) && isRef(oldValue) && !isRef(value)) {
@@ -3253,7 +3253,9 @@ const BaseTransitionImpl = {
3253
3253
  const rawProps = toRaw(props);
3254
3254
  const { mode } = rawProps;
3255
3255
  // check mode
3256
- if ((process.env.NODE_ENV !== 'production') && mode && !['in-out', 'out-in', 'default'].includes(mode)) {
3256
+ if ((process.env.NODE_ENV !== 'production') &&
3257
+ mode &&
3258
+ mode !== 'in-out' && mode !== 'out-in' && mode !== 'default') {
3257
3259
  warn$1(`invalid <transition> mode: ${mode}`);
3258
3260
  }
3259
3261
  // at this point children has a guaranteed length of 1.
@@ -3899,7 +3901,7 @@ function registerKeepAliveHook(hook, type, target = currentInstance) {
3899
3901
  }
3900
3902
  current = current.parent;
3901
3903
  }
3902
- hook();
3904
+ return hook();
3903
3905
  });
3904
3906
  injectHook(type, wrappedHook, target);
3905
3907
  // In addition to registering it on the target instance, we walk up the parent
@@ -5267,7 +5269,7 @@ function createCompatVue(createApp, createSingletonApp) {
5267
5269
  return vm;
5268
5270
  }
5269
5271
  }
5270
- Vue.version = "3.2.22";
5272
+ Vue.version = "3.2.23";
5271
5273
  Vue.config = singletonApp.config;
5272
5274
  Vue.use = (p, ...options) => {
5273
5275
  if (p && isFunction(p.install)) {
@@ -9223,23 +9225,23 @@ const PublicInstanceProxyHandlers = {
9223
9225
  const n = accessCache[key];
9224
9226
  if (n !== undefined) {
9225
9227
  switch (n) {
9226
- case 0 /* SETUP */:
9228
+ case 1 /* SETUP */:
9227
9229
  return setupState[key];
9228
- case 1 /* DATA */:
9230
+ case 2 /* DATA */:
9229
9231
  return data[key];
9230
- case 3 /* CONTEXT */:
9232
+ case 4 /* CONTEXT */:
9231
9233
  return ctx[key];
9232
- case 2 /* PROPS */:
9234
+ case 3 /* PROPS */:
9233
9235
  return props[key];
9234
9236
  // default: just fallthrough
9235
9237
  }
9236
9238
  }
9237
9239
  else if (setupState !== EMPTY_OBJ && hasOwn(setupState, key)) {
9238
- accessCache[key] = 0 /* SETUP */;
9240
+ accessCache[key] = 1 /* SETUP */;
9239
9241
  return setupState[key];
9240
9242
  }
9241
9243
  else if (data !== EMPTY_OBJ && hasOwn(data, key)) {
9242
- accessCache[key] = 1 /* DATA */;
9244
+ accessCache[key] = 2 /* DATA */;
9243
9245
  return data[key];
9244
9246
  }
9245
9247
  else if (
@@ -9247,15 +9249,15 @@ const PublicInstanceProxyHandlers = {
9247
9249
  // props
9248
9250
  (normalizedProps = instance.propsOptions[0]) &&
9249
9251
  hasOwn(normalizedProps, key)) {
9250
- accessCache[key] = 2 /* PROPS */;
9252
+ accessCache[key] = 3 /* PROPS */;
9251
9253
  return props[key];
9252
9254
  }
9253
9255
  else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {
9254
- accessCache[key] = 3 /* CONTEXT */;
9256
+ accessCache[key] = 4 /* CONTEXT */;
9255
9257
  return ctx[key];
9256
9258
  }
9257
9259
  else if (!__VUE_OPTIONS_API__ || shouldCacheAccess) {
9258
- accessCache[key] = 4 /* OTHER */;
9260
+ accessCache[key] = 0 /* OTHER */;
9259
9261
  }
9260
9262
  }
9261
9263
  const publicGetter = publicPropertiesMap[key];
@@ -9276,7 +9278,7 @@ const PublicInstanceProxyHandlers = {
9276
9278
  }
9277
9279
  else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {
9278
9280
  // user may set custom properties to `this` that start with `$`
9279
- accessCache[key] = 3 /* CONTEXT */;
9281
+ accessCache[key] = 4 /* CONTEXT */;
9280
9282
  return ctx[key];
9281
9283
  }
9282
9284
  else if (
@@ -9347,7 +9349,7 @@ const PublicInstanceProxyHandlers = {
9347
9349
  },
9348
9350
  has({ _: { data, setupState, accessCache, ctx, appContext, propsOptions } }, key) {
9349
9351
  let normalizedProps;
9350
- return (accessCache[key] !== undefined ||
9352
+ return (!!accessCache[key] ||
9351
9353
  (data !== EMPTY_OBJ && hasOwn(data, key)) ||
9352
9354
  (setupState !== EMPTY_OBJ && hasOwn(setupState, key)) ||
9353
9355
  ((normalizedProps = propsOptions[0]) && hasOwn(normalizedProps, key)) ||
@@ -10972,7 +10974,7 @@ function isMemoSame(cached, memo) {
10972
10974
  }
10973
10975
 
10974
10976
  // Core API ------------------------------------------------------------------
10975
- const version = "3.2.22";
10977
+ const version = "3.2.23";
10976
10978
  const _ssrUtils = {
10977
10979
  createComponentInstance,
10978
10980
  setupComponent,
@@ -11247,12 +11249,19 @@ prevChildren, parentComponent, parentSuspense, unmountChildren) {
11247
11249
  el[key] = value == null ? '' : value;
11248
11250
  return;
11249
11251
  }
11250
- if (key === 'value' && el.tagName !== 'PROGRESS') {
11252
+ if (key === 'value' &&
11253
+ el.tagName !== 'PROGRESS' &&
11254
+ // custom elements may use _value internally
11255
+ !el.tagName.includes('-')) {
11251
11256
  // store value as _value as well since
11252
11257
  // non-string values will be stringified.
11253
11258
  el._value = value;
11254
11259
  const newValue = value == null ? '' : value;
11255
- if (el.value !== newValue) {
11260
+ if (el.value !== newValue ||
11261
+ // #4956: always set for OPTION elements because its value falls back to
11262
+ // textContent if no value attribute is present. And setting .value for
11263
+ // OPTION has no side effect
11264
+ el.tagName === 'OPTION') {
11256
11265
  el.value = newValue;
11257
11266
  }
11258
11267
  if (value == null) {
@@ -458,7 +458,7 @@ var Vue = (function () {
458
458
  let effectTrackDepth = 0;
459
459
  let trackOpBit = 1;
460
460
  /**
461
- * The bitwise track markers support at most 30 levels op recursion.
461
+ * The bitwise track markers support at most 30 levels of recursion.
462
462
  * This value is chosen to enable modern JS engines to use a SMI on all platforms.
463
463
  * When recursion depth is greater, fall back to using a full cleanup.
464
464
  */
@@ -779,7 +779,7 @@ var Vue = (function () {
779
779
  function createSetter(shallow = false) {
780
780
  return function set(target, key, value, receiver) {
781
781
  let oldValue = target[key];
782
- if (!shallow) {
782
+ if (!shallow && !isReadonly(value)) {
783
783
  value = toRaw(value);
784
784
  oldValue = toRaw(oldValue);
785
785
  if (!isArray(target) && isRef(oldValue) && !isRef(value)) {
@@ -3235,7 +3235,8 @@ var Vue = (function () {
3235
3235
  const rawProps = toRaw(props);
3236
3236
  const { mode } = rawProps;
3237
3237
  // check mode
3238
- if (mode && !['in-out', 'out-in', 'default'].includes(mode)) {
3238
+ if (mode &&
3239
+ mode !== 'in-out' && mode !== 'out-in' && mode !== 'default') {
3239
3240
  warn$1(`invalid <transition> mode: ${mode}`);
3240
3241
  }
3241
3242
  // at this point children has a guaranteed length of 1.
@@ -3881,7 +3882,7 @@ var Vue = (function () {
3881
3882
  }
3882
3883
  current = current.parent;
3883
3884
  }
3884
- hook();
3885
+ return hook();
3885
3886
  });
3886
3887
  injectHook(type, wrappedHook, target);
3887
3888
  // In addition to registering it on the target instance, we walk up the parent
@@ -5240,7 +5241,7 @@ var Vue = (function () {
5240
5241
  return vm;
5241
5242
  }
5242
5243
  }
5243
- Vue.version = "3.2.22";
5244
+ Vue.version = "3.2.23";
5244
5245
  Vue.config = singletonApp.config;
5245
5246
  Vue.use = (p, ...options) => {
5246
5247
  if (p && isFunction(p.install)) {
@@ -9139,23 +9140,23 @@ var Vue = (function () {
9139
9140
  const n = accessCache[key];
9140
9141
  if (n !== undefined) {
9141
9142
  switch (n) {
9142
- case 0 /* SETUP */:
9143
+ case 1 /* SETUP */:
9143
9144
  return setupState[key];
9144
- case 1 /* DATA */:
9145
+ case 2 /* DATA */:
9145
9146
  return data[key];
9146
- case 3 /* CONTEXT */:
9147
+ case 4 /* CONTEXT */:
9147
9148
  return ctx[key];
9148
- case 2 /* PROPS */:
9149
+ case 3 /* PROPS */:
9149
9150
  return props[key];
9150
9151
  // default: just fallthrough
9151
9152
  }
9152
9153
  }
9153
9154
  else if (setupState !== EMPTY_OBJ && hasOwn(setupState, key)) {
9154
- accessCache[key] = 0 /* SETUP */;
9155
+ accessCache[key] = 1 /* SETUP */;
9155
9156
  return setupState[key];
9156
9157
  }
9157
9158
  else if (data !== EMPTY_OBJ && hasOwn(data, key)) {
9158
- accessCache[key] = 1 /* DATA */;
9159
+ accessCache[key] = 2 /* DATA */;
9159
9160
  return data[key];
9160
9161
  }
9161
9162
  else if (
@@ -9163,15 +9164,15 @@ var Vue = (function () {
9163
9164
  // props
9164
9165
  (normalizedProps = instance.propsOptions[0]) &&
9165
9166
  hasOwn(normalizedProps, key)) {
9166
- accessCache[key] = 2 /* PROPS */;
9167
+ accessCache[key] = 3 /* PROPS */;
9167
9168
  return props[key];
9168
9169
  }
9169
9170
  else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {
9170
- accessCache[key] = 3 /* CONTEXT */;
9171
+ accessCache[key] = 4 /* CONTEXT */;
9171
9172
  return ctx[key];
9172
9173
  }
9173
9174
  else if (shouldCacheAccess) {
9174
- accessCache[key] = 4 /* OTHER */;
9175
+ accessCache[key] = 0 /* OTHER */;
9175
9176
  }
9176
9177
  }
9177
9178
  const publicGetter = publicPropertiesMap[key];
@@ -9192,7 +9193,7 @@ var Vue = (function () {
9192
9193
  }
9193
9194
  else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {
9194
9195
  // user may set custom properties to `this` that start with `$`
9195
- accessCache[key] = 3 /* CONTEXT */;
9196
+ accessCache[key] = 4 /* CONTEXT */;
9196
9197
  return ctx[key];
9197
9198
  }
9198
9199
  else if (
@@ -9260,7 +9261,7 @@ var Vue = (function () {
9260
9261
  },
9261
9262
  has({ _: { data, setupState, accessCache, ctx, appContext, propsOptions } }, key) {
9262
9263
  let normalizedProps;
9263
- return (accessCache[key] !== undefined ||
9264
+ return (!!accessCache[key] ||
9264
9265
  (data !== EMPTY_OBJ && hasOwn(data, key)) ||
9265
9266
  (setupState !== EMPTY_OBJ && hasOwn(setupState, key)) ||
9266
9267
  ((normalizedProps = propsOptions[0]) && hasOwn(normalizedProps, key)) ||
@@ -10830,7 +10831,7 @@ var Vue = (function () {
10830
10831
  }
10831
10832
 
10832
10833
  // Core API ------------------------------------------------------------------
10833
- const version = "3.2.22";
10834
+ const version = "3.2.23";
10834
10835
  /**
10835
10836
  * SSR utils for \@vue/server-renderer. Only exposed in cjs builds.
10836
10837
  * @internal
@@ -11097,12 +11098,19 @@ var Vue = (function () {
11097
11098
  el[key] = value == null ? '' : value;
11098
11099
  return;
11099
11100
  }
11100
- if (key === 'value' && el.tagName !== 'PROGRESS') {
11101
+ if (key === 'value' &&
11102
+ el.tagName !== 'PROGRESS' &&
11103
+ // custom elements may use _value internally
11104
+ !el.tagName.includes('-')) {
11101
11105
  // store value as _value as well since
11102
11106
  // non-string values will be stringified.
11103
11107
  el._value = value;
11104
11108
  const newValue = value == null ? '' : value;
11105
- if (el.value !== newValue) {
11109
+ if (el.value !== newValue ||
11110
+ // #4956: always set for OPTION elements because its value falls back to
11111
+ // textContent if no value attribute is present. And setting .value for
11112
+ // OPTION has no side effect
11113
+ el.tagName === 'OPTION') {
11106
11114
  el.value = newValue;
11107
11115
  }
11108
11116
  if (value == null) {