@vue/runtime-dom 3.5.31 → 3.5.33

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/runtime-dom v3.5.31
2
+ * @vue/runtime-dom v3.5.33
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -532,7 +532,19 @@ function patchStyle(el, prev, next) {
532
532
  if (key === "display") {
533
533
  hasControlledDisplay = true;
534
534
  }
535
- setStyle(style, key, next[key]);
535
+ const value = next[key];
536
+ if (value != null) {
537
+ if (!shouldPreserveTextareaResizeStyle(
538
+ el,
539
+ key,
540
+ !isString(prev) && prev ? prev[key] : void 0,
541
+ value
542
+ )) {
543
+ setStyle(style, key, value);
544
+ }
545
+ } else {
546
+ setStyle(style, key, "");
547
+ }
536
548
  }
537
549
  } else {
538
550
  if (isCssString) {
@@ -605,6 +617,9 @@ function autoPrefix(style, rawName) {
605
617
  }
606
618
  return rawName;
607
619
  }
620
+ function shouldPreserveTextareaResizeStyle(el, key, prev, next) {
621
+ return el.tagName === "TEXTAREA" && (key === "width" || key === "height") && isString(next) && prev === next;
622
+ }
608
623
 
609
624
  const xlinkNS = "http://www.w3.org/1999/xlink";
610
625
  function patchAttr(el, key, value, isSVG, instance, isBoolean = isSpecialBooleanAttr(key)) {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/runtime-dom v3.5.31
2
+ * @vue/runtime-dom v3.5.33
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -430,7 +430,18 @@ var VueRuntimeDOM = (function (exports) {
430
430
  */
431
431
  off() {
432
432
  if (this._on > 0 && --this._on === 0) {
433
- activeEffectScope = this.prevScope;
433
+ if (activeEffectScope === this) {
434
+ activeEffectScope = this.prevScope;
435
+ } else {
436
+ let current = activeEffectScope;
437
+ while (current) {
438
+ if (current.prevScope === this) {
439
+ current.prevScope = this.prevScope;
440
+ break;
441
+ }
442
+ current = current.prevScope;
443
+ }
444
+ }
434
445
  this.prevScope = void 0;
435
446
  }
436
447
  }
@@ -3163,6 +3174,7 @@ var VueRuntimeDOM = (function (exports) {
3163
3174
  };
3164
3175
  }
3165
3176
 
3177
+ const pendingMounts = /* @__PURE__ */ new WeakMap();
3166
3178
  const TeleportEndKey = /* @__PURE__ */ Symbol("_vte");
3167
3179
  const isTeleport = (type) => type.__isTeleport;
3168
3180
  const isTeleportDisabled = (props) => props && (props.disabled || props.disabled === "");
@@ -3201,94 +3213,90 @@ var VueRuntimeDOM = (function (exports) {
3201
3213
  mc: mountChildren,
3202
3214
  pc: patchChildren,
3203
3215
  pbc: patchBlockChildren,
3204
- o: { insert, querySelector, createText, createComment }
3216
+ o: { insert, querySelector, createText, createComment, parentNode }
3205
3217
  } = internals;
3206
3218
  const disabled = isTeleportDisabled(n2.props);
3207
- let { shapeFlag, children, dynamicChildren } = n2;
3219
+ let { dynamicChildren } = n2;
3208
3220
  if (isHmrUpdating) {
3209
3221
  optimized = false;
3210
3222
  dynamicChildren = null;
3211
3223
  }
3224
+ const mount = (vnode, container2, anchor2) => {
3225
+ if (vnode.shapeFlag & 16) {
3226
+ mountChildren(
3227
+ vnode.children,
3228
+ container2,
3229
+ anchor2,
3230
+ parentComponent,
3231
+ parentSuspense,
3232
+ namespace,
3233
+ slotScopeIds,
3234
+ optimized
3235
+ );
3236
+ }
3237
+ };
3238
+ const mountToTarget = (vnode = n2) => {
3239
+ const disabled2 = isTeleportDisabled(vnode.props);
3240
+ const target = vnode.target = resolveTarget(vnode.props, querySelector);
3241
+ const targetAnchor = prepareAnchor(target, vnode, createText, insert);
3242
+ if (target) {
3243
+ if (namespace !== "svg" && isTargetSVG(target)) {
3244
+ namespace = "svg";
3245
+ } else if (namespace !== "mathml" && isTargetMathML(target)) {
3246
+ namespace = "mathml";
3247
+ }
3248
+ if (parentComponent && parentComponent.isCE) {
3249
+ (parentComponent.ce._teleportTargets || (parentComponent.ce._teleportTargets = /* @__PURE__ */ new Set())).add(target);
3250
+ }
3251
+ if (!disabled2) {
3252
+ mount(vnode, target, targetAnchor);
3253
+ updateCssVars(vnode, false);
3254
+ }
3255
+ } else if (!disabled2) {
3256
+ warn$1("Invalid Teleport target on mount:", target, `(${typeof target})`);
3257
+ }
3258
+ };
3259
+ const queuePendingMount = (vnode) => {
3260
+ const mountJob = () => {
3261
+ if (pendingMounts.get(vnode) !== mountJob) return;
3262
+ pendingMounts.delete(vnode);
3263
+ if (isTeleportDisabled(vnode.props)) {
3264
+ const mountContainer = parentNode(vnode.el) || container;
3265
+ mount(vnode, mountContainer, vnode.anchor);
3266
+ updateCssVars(vnode, true);
3267
+ }
3268
+ mountToTarget(vnode);
3269
+ };
3270
+ pendingMounts.set(vnode, mountJob);
3271
+ queuePostRenderEffect(mountJob, parentSuspense);
3272
+ };
3212
3273
  if (n1 == null) {
3213
3274
  const placeholder = n2.el = createComment("teleport start") ;
3214
3275
  const mainAnchor = n2.anchor = createComment("teleport end") ;
3215
3276
  insert(placeholder, container, anchor);
3216
3277
  insert(mainAnchor, container, anchor);
3217
- const mount = (container2, anchor2) => {
3218
- if (shapeFlag & 16) {
3219
- mountChildren(
3220
- children,
3221
- container2,
3222
- anchor2,
3223
- parentComponent,
3224
- parentSuspense,
3225
- namespace,
3226
- slotScopeIds,
3227
- optimized
3228
- );
3229
- }
3230
- };
3231
- const mountToTarget = () => {
3232
- const target = n2.target = resolveTarget(n2.props, querySelector);
3233
- const targetAnchor = prepareAnchor(target, n2, createText, insert);
3234
- if (target) {
3235
- if (namespace !== "svg" && isTargetSVG(target)) {
3236
- namespace = "svg";
3237
- } else if (namespace !== "mathml" && isTargetMathML(target)) {
3238
- namespace = "mathml";
3239
- }
3240
- if (parentComponent && parentComponent.isCE) {
3241
- (parentComponent.ce._teleportTargets || (parentComponent.ce._teleportTargets = /* @__PURE__ */ new Set())).add(target);
3242
- }
3243
- if (!disabled) {
3244
- mount(target, targetAnchor);
3245
- updateCssVars(n2, false);
3246
- }
3247
- } else if (!disabled) {
3248
- warn$1(
3249
- "Invalid Teleport target on mount:",
3250
- target,
3251
- `(${typeof target})`
3252
- );
3253
- }
3254
- };
3278
+ if (isTeleportDeferred(n2.props) || parentSuspense && parentSuspense.pendingBranch) {
3279
+ queuePendingMount(n2);
3280
+ return;
3281
+ }
3255
3282
  if (disabled) {
3256
- mount(container, mainAnchor);
3283
+ mount(n2, container, mainAnchor);
3257
3284
  updateCssVars(n2, true);
3258
3285
  }
3259
- if (isTeleportDeferred(n2.props) || parentSuspense && parentSuspense.pendingBranch) {
3260
- n2.el.__isMounted = false;
3261
- queuePostRenderEffect(() => {
3262
- if (n2.el.__isMounted !== false) return;
3263
- mountToTarget();
3264
- delete n2.el.__isMounted;
3265
- }, parentSuspense);
3266
- } else {
3267
- mountToTarget();
3268
- }
3286
+ mountToTarget();
3269
3287
  } else {
3270
3288
  n2.el = n1.el;
3271
- n2.targetStart = n1.targetStart;
3272
3289
  const mainAnchor = n2.anchor = n1.anchor;
3273
- const target = n2.target = n1.target;
3274
- const targetAnchor = n2.targetAnchor = n1.targetAnchor;
3275
- if (n1.el.__isMounted === false) {
3276
- queuePostRenderEffect(() => {
3277
- TeleportImpl.process(
3278
- n1,
3279
- n2,
3280
- container,
3281
- anchor,
3282
- parentComponent,
3283
- parentSuspense,
3284
- namespace,
3285
- slotScopeIds,
3286
- optimized,
3287
- internals
3288
- );
3289
- }, parentSuspense);
3290
+ const pendingMount = pendingMounts.get(n1);
3291
+ if (pendingMount) {
3292
+ pendingMount.flags |= 8;
3293
+ pendingMounts.delete(n1);
3294
+ queuePendingMount(n2);
3290
3295
  return;
3291
3296
  }
3297
+ n2.targetStart = n1.targetStart;
3298
+ const target = n2.target = n1.target;
3299
+ const targetAnchor = n2.targetAnchor = n1.targetAnchor;
3292
3300
  const wasDisabled = isTeleportDisabled(n1.props);
3293
3301
  const currentContainer = wasDisabled ? container : target;
3294
3302
  const currentAnchor = wasDisabled ? mainAnchor : targetAnchor;
@@ -3379,13 +3387,19 @@ var VueRuntimeDOM = (function (exports) {
3379
3387
  target,
3380
3388
  props
3381
3389
  } = vnode;
3390
+ let shouldRemove = doRemove || !isTeleportDisabled(props);
3391
+ const pendingMount = pendingMounts.get(vnode);
3392
+ if (pendingMount) {
3393
+ pendingMount.flags |= 8;
3394
+ pendingMounts.delete(vnode);
3395
+ shouldRemove = false;
3396
+ }
3382
3397
  if (target) {
3383
3398
  hostRemove(targetStart);
3384
3399
  hostRemove(targetAnchor);
3385
3400
  }
3386
3401
  doRemove && hostRemove(anchor);
3387
3402
  if (shapeFlag & 16) {
3388
- const shouldRemove = doRemove || !isTeleportDisabled(props);
3389
3403
  for (let i = 0; i < children.length; i++) {
3390
3404
  const child = children[i];
3391
3405
  unmount(
@@ -3410,7 +3424,7 @@ var VueRuntimeDOM = (function (exports) {
3410
3424
  if (isReorder) {
3411
3425
  insert(el, container, parentAnchor);
3412
3426
  }
3413
- if (!isReorder || isTeleportDisabled(props)) {
3427
+ if (!pendingMounts.has(vnode) && (!isReorder || isTeleportDisabled(props))) {
3414
3428
  if (shapeFlag & 16) {
3415
3429
  for (let i = 0; i < children.length; i++) {
3416
3430
  move(
@@ -3584,10 +3598,14 @@ var VueRuntimeDOM = (function (exports) {
3584
3598
  const state = useTransitionState();
3585
3599
  return () => {
3586
3600
  const children = slots.default && getTransitionRawChildren(slots.default(), true);
3587
- if (!children || !children.length) {
3601
+ const child = children && children.length ? findNonCommentChild(children) : (
3602
+ // Keep explicit default-slot conditionals on the same transition path
3603
+ // as regular v-if branches, which render a comment placeholder.
3604
+ instance.subTree ? createCommentVNode() : void 0
3605
+ );
3606
+ if (!child) {
3588
3607
  return;
3589
3608
  }
3590
- const child = findNonCommentChild(children);
3591
3609
  const rawProps = toRaw(props);
3592
3610
  const { mode } = rawProps;
3593
3611
  if (mode && mode !== "in-out" && mode !== "out-in" && mode !== "default") {
@@ -9553,6 +9571,7 @@ If you want to remount the same app, move your app creation logic into a factory
9553
9571
  if (instance.isUnmounted || suspense.isUnmounted || suspense.pendingId !== instance.suspenseId) {
9554
9572
  return;
9555
9573
  }
9574
+ unsetCurrentInstance();
9556
9575
  instance.asyncResolved = true;
9557
9576
  const { vnode: vnode2 } = instance;
9558
9577
  {
@@ -10743,7 +10762,7 @@ Component that was made reactive: `,
10743
10762
  return true;
10744
10763
  }
10745
10764
 
10746
- const version = "3.5.31";
10765
+ const version = "3.5.33";
10747
10766
  const warn = warn$1 ;
10748
10767
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
10749
10768
  const devtools = devtools$1 ;
@@ -11271,7 +11290,19 @@ Component that was made reactive: `,
11271
11290
  if (key === "display") {
11272
11291
  hasControlledDisplay = true;
11273
11292
  }
11274
- setStyle(style, key, next[key]);
11293
+ const value = next[key];
11294
+ if (value != null) {
11295
+ if (!shouldPreserveTextareaResizeStyle(
11296
+ el,
11297
+ key,
11298
+ !isString(prev) && prev ? prev[key] : void 0,
11299
+ value
11300
+ )) {
11301
+ setStyle(style, key, value);
11302
+ }
11303
+ } else {
11304
+ setStyle(style, key, "");
11305
+ }
11275
11306
  }
11276
11307
  } else {
11277
11308
  if (isCssString) {
@@ -11344,6 +11375,9 @@ Component that was made reactive: `,
11344
11375
  }
11345
11376
  return rawName;
11346
11377
  }
11378
+ function shouldPreserveTextareaResizeStyle(el, key, prev, next) {
11379
+ return el.tagName === "TEXTAREA" && (key === "width" || key === "height") && isString(next) && prev === next;
11380
+ }
11347
11381
 
11348
11382
  const xlinkNS = "http://www.w3.org/1999/xlink";
11349
11383
  function patchAttr(el, key, value, isSVG, instance, isBoolean = isSpecialBooleanAttr(key)) {