@vue/runtime-dom 3.5.32 → 3.5.34

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.32
2
+ * @vue/runtime-dom v3.5.34
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.32
2
+ * @vue/runtime-dom v3.5.34
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -357,12 +357,18 @@ var VueRuntimeDOM = (function (exports) {
357
357
  */
358
358
  this.cleanups = [];
359
359
  this._isPaused = false;
360
+ this._warnOnRun = true;
360
361
  this.__v_skip = true;
361
- this.parent = activeEffectScope;
362
362
  if (!detached && activeEffectScope) {
363
- this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(
364
- this
365
- ) - 1;
363
+ if (activeEffectScope.active) {
364
+ this.parent = activeEffectScope;
365
+ this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(
366
+ this
367
+ ) - 1;
368
+ } else {
369
+ this._active = false;
370
+ this._warnOnRun = false;
371
+ }
366
372
  }
367
373
  }
368
374
  get active() {
@@ -410,7 +416,7 @@ var VueRuntimeDOM = (function (exports) {
410
416
  } finally {
411
417
  activeEffectScope = currentEffectScope;
412
418
  }
413
- } else {
419
+ } else if (this._warnOnRun) {
414
420
  warn$2(`cannot run an inactive effect scope.`);
415
421
  }
416
422
  }
@@ -430,7 +436,18 @@ var VueRuntimeDOM = (function (exports) {
430
436
  */
431
437
  off() {
432
438
  if (this._on > 0 && --this._on === 0) {
433
- activeEffectScope = this.prevScope;
439
+ if (activeEffectScope === this) {
440
+ activeEffectScope = this.prevScope;
441
+ } else {
442
+ let current = activeEffectScope;
443
+ while (current) {
444
+ if (current.prevScope === this) {
445
+ current.prevScope = this.prevScope;
446
+ break;
447
+ }
448
+ current = current.prevScope;
449
+ }
450
+ }
434
451
  this.prevScope = void 0;
435
452
  }
436
453
  }
@@ -505,8 +522,12 @@ var VueRuntimeDOM = (function (exports) {
505
522
  */
506
523
  this.cleanup = void 0;
507
524
  this.scheduler = void 0;
508
- if (activeEffectScope && activeEffectScope.active) {
509
- activeEffectScope.effects.push(this);
525
+ if (activeEffectScope) {
526
+ if (activeEffectScope.active) {
527
+ activeEffectScope.effects.push(this);
528
+ } else {
529
+ this.flags &= -2;
530
+ }
510
531
  }
511
532
  }
512
533
  pause() {
@@ -3202,7 +3223,7 @@ var VueRuntimeDOM = (function (exports) {
3202
3223
  mc: mountChildren,
3203
3224
  pc: patchChildren,
3204
3225
  pbc: patchBlockChildren,
3205
- o: { insert, querySelector, createText, createComment }
3226
+ o: { insert, querySelector, createText, createComment, parentNode }
3206
3227
  } = internals;
3207
3228
  const disabled = isTeleportDisabled(n2.props);
3208
3229
  let { dynamicChildren } = n2;
@@ -3250,7 +3271,8 @@ var VueRuntimeDOM = (function (exports) {
3250
3271
  if (pendingMounts.get(vnode) !== mountJob) return;
3251
3272
  pendingMounts.delete(vnode);
3252
3273
  if (isTeleportDisabled(vnode.props)) {
3253
- mount(vnode, container, vnode.anchor);
3274
+ const mountContainer = parentNode(vnode.el) || container;
3275
+ mount(vnode, mountContainer, vnode.anchor);
3254
3276
  updateCssVars(vnode, true);
3255
3277
  }
3256
3278
  mountToTarget(vnode);
@@ -3412,7 +3434,7 @@ var VueRuntimeDOM = (function (exports) {
3412
3434
  if (isReorder) {
3413
3435
  insert(el, container, parentAnchor);
3414
3436
  }
3415
- if (!isReorder || isTeleportDisabled(props)) {
3437
+ if (!pendingMounts.has(vnode) && (!isReorder || isTeleportDisabled(props))) {
3416
3438
  if (shapeFlag & 16) {
3417
3439
  for (let i = 0; i < children.length; i++) {
3418
3440
  move(
@@ -3586,10 +3608,14 @@ var VueRuntimeDOM = (function (exports) {
3586
3608
  const state = useTransitionState();
3587
3609
  return () => {
3588
3610
  const children = slots.default && getTransitionRawChildren(slots.default(), true);
3589
- if (!children || !children.length) {
3611
+ const child = children && children.length ? findNonCommentChild(children) : (
3612
+ // Keep explicit default-slot conditionals on the same transition path
3613
+ // as regular v-if branches, which render a comment placeholder.
3614
+ instance.subTree ? createCommentVNode() : void 0
3615
+ );
3616
+ if (!child) {
3590
3617
  return;
3591
3618
  }
3592
- const child = findNonCommentChild(children);
3593
3619
  const rawProps = toRaw(props);
3594
3620
  const { mode } = rawProps;
3595
3621
  if (mode && mode !== "in-out" && mode !== "out-in" && mode !== "default") {
@@ -7392,7 +7418,7 @@ If you want to remount the same app, move your app creation logic into a factory
7392
7418
  const receivedType = toRawType(value);
7393
7419
  const expectedValue = styleValue(value, expectedType);
7394
7420
  const receivedValue = styleValue(value, receivedType);
7395
- if (expectedTypes.length === 1 && isExplicable(expectedType) && !isBoolean(expectedType, receivedType)) {
7421
+ if (expectedTypes.length === 1 && isExplicable(expectedType) && isCoercible(expectedType, receivedType)) {
7396
7422
  message += ` with value ${expectedValue}`;
7397
7423
  }
7398
7424
  message += `, got ${receivedType} `;
@@ -7402,7 +7428,9 @@ If you want to remount the same app, move your app creation logic into a factory
7402
7428
  return message;
7403
7429
  }
7404
7430
  function styleValue(value, type) {
7405
- if (type === "String") {
7431
+ if (isSymbol(value)) {
7432
+ return value.toString();
7433
+ } else if (type === "String") {
7406
7434
  return `"${value}"`;
7407
7435
  } else if (type === "Number") {
7408
7436
  return `${Number(value)}`;
@@ -7414,8 +7442,11 @@ If you want to remount the same app, move your app creation logic into a factory
7414
7442
  const explicitTypes = ["string", "number", "boolean"];
7415
7443
  return explicitTypes.some((elem) => type.toLowerCase() === elem);
7416
7444
  }
7417
- function isBoolean(...args) {
7418
- return args.some((elem) => elem.toLowerCase() === "boolean");
7445
+ function isCoercible(...args) {
7446
+ return args.every((elem) => {
7447
+ const value = elem.toLowerCase();
7448
+ return value !== "boolean" && value !== "symbol";
7449
+ });
7419
7450
  }
7420
7451
 
7421
7452
  const isInternalKey = (key) => key === "_" || key === "_ctx" || key === "$stable";
@@ -9435,13 +9466,14 @@ If you want to remount the same app, move your app creation logic into a factory
9435
9466
  suspense.isHydrating = false;
9436
9467
  } else if (!resume) {
9437
9468
  delayEnter = activeBranch && pendingBranch.transition && pendingBranch.transition.mode === "out-in";
9469
+ let hasUpdatedAnchor = false;
9438
9470
  if (delayEnter) {
9439
9471
  activeBranch.transition.afterLeave = () => {
9440
9472
  if (pendingId === suspense.pendingId) {
9441
9473
  move(
9442
9474
  pendingBranch,
9443
9475
  container2,
9444
- anchor === initialAnchor ? next(activeBranch) : anchor,
9476
+ anchor === initialAnchor && !hasUpdatedAnchor ? next(activeBranch) : anchor,
9445
9477
  0
9446
9478
  );
9447
9479
  queuePostFlushCb(effects);
@@ -9454,6 +9486,7 @@ If you want to remount the same app, move your app creation logic into a factory
9454
9486
  if (activeBranch && !suspense.isFallbackMountPending) {
9455
9487
  if (parentNode(activeBranch.el) === container2) {
9456
9488
  anchor = next(activeBranch);
9489
+ hasUpdatedAnchor = true;
9457
9490
  }
9458
9491
  unmount(activeBranch, parentComponent2, suspense, true);
9459
9492
  if (!delayEnter && isInFallback && vnode2.ssFallback) {
@@ -10746,7 +10779,7 @@ Component that was made reactive: `,
10746
10779
  return true;
10747
10780
  }
10748
10781
 
10749
- const version = "3.5.32";
10782
+ const version = "3.5.34";
10750
10783
  const warn = warn$1 ;
10751
10784
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
10752
10785
  const devtools = devtools$1 ;
@@ -11274,7 +11307,19 @@ Component that was made reactive: `,
11274
11307
  if (key === "display") {
11275
11308
  hasControlledDisplay = true;
11276
11309
  }
11277
- setStyle(style, key, next[key]);
11310
+ const value = next[key];
11311
+ if (value != null) {
11312
+ if (!shouldPreserveTextareaResizeStyle(
11313
+ el,
11314
+ key,
11315
+ !isString(prev) && prev ? prev[key] : void 0,
11316
+ value
11317
+ )) {
11318
+ setStyle(style, key, value);
11319
+ }
11320
+ } else {
11321
+ setStyle(style, key, "");
11322
+ }
11278
11323
  }
11279
11324
  } else {
11280
11325
  if (isCssString) {
@@ -11347,6 +11392,9 @@ Component that was made reactive: `,
11347
11392
  }
11348
11393
  return rawName;
11349
11394
  }
11395
+ function shouldPreserveTextareaResizeStyle(el, key, prev, next) {
11396
+ return el.tagName === "TEXTAREA" && (key === "width" || key === "height") && isString(next) && prev === next;
11397
+ }
11350
11398
 
11351
11399
  const xlinkNS = "http://www.w3.org/1999/xlink";
11352
11400
  function patchAttr(el, key, value, isSVG, instance, isBoolean = isSpecialBooleanAttr(key)) {