@vue/compat 3.4.28 → 3.4.30

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.
package/dist/vue.cjs.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.4.28
2
+ * @vue/compat v3.4.30
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -529,7 +529,7 @@ class ReactiveEffect {
529
529
  /**
530
530
  * @internal
531
531
  */
532
- this._dirtyLevel = 4;
532
+ this._dirtyLevel = 5;
533
533
  /**
534
534
  * @internal
535
535
  */
@@ -549,14 +549,20 @@ class ReactiveEffect {
549
549
  recordEffectScope(this, scope);
550
550
  }
551
551
  get dirty() {
552
- if (this._dirtyLevel === 2 || this._dirtyLevel === 3) {
552
+ if (this._dirtyLevel === 2)
553
+ return false;
554
+ if (this._dirtyLevel === 3 || this._dirtyLevel === 4) {
553
555
  this._dirtyLevel = 1;
554
556
  pauseTracking();
555
557
  for (let i = 0; i < this._depsLength; i++) {
556
558
  const dep = this.deps[i];
557
559
  if (dep.computed) {
560
+ if (dep.computed.effect._dirtyLevel === 2) {
561
+ resetTracking();
562
+ return true;
563
+ }
558
564
  triggerComputed(dep.computed);
559
- if (this._dirtyLevel >= 4) {
565
+ if (this._dirtyLevel >= 5) {
560
566
  break;
561
567
  }
562
568
  }
@@ -566,10 +572,10 @@ class ReactiveEffect {
566
572
  }
567
573
  resetTracking();
568
574
  }
569
- return this._dirtyLevel >= 4;
575
+ return this._dirtyLevel >= 5;
570
576
  }
571
577
  set dirty(v) {
572
- this._dirtyLevel = v ? 4 : 0;
578
+ this._dirtyLevel = v ? 5 : 0;
573
579
  }
574
580
  run() {
575
581
  this._dirtyLevel = 0;
@@ -691,8 +697,17 @@ function triggerEffects(dep, dirtyLevel, debuggerEventExtraInfo) {
691
697
  pauseScheduling();
692
698
  for (const effect2 of dep.keys()) {
693
699
  let tracking;
700
+ if (!dep.computed && effect2.computed) {
701
+ if (effect2._runnings > 0 && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {
702
+ effect2._dirtyLevel = 2;
703
+ continue;
704
+ }
705
+ }
694
706
  if (effect2._dirtyLevel < dirtyLevel && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {
695
707
  effect2._shouldSchedule || (effect2._shouldSchedule = effect2._dirtyLevel === 0);
708
+ if (effect2.computed && effect2._dirtyLevel === 2) {
709
+ effect2._shouldSchedule = true;
710
+ }
696
711
  effect2._dirtyLevel = dirtyLevel;
697
712
  }
698
713
  if (effect2._shouldSchedule && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {
@@ -700,7 +715,7 @@ function triggerEffects(dep, dirtyLevel, debuggerEventExtraInfo) {
700
715
  (_a = effect2.onTrigger) == null ? void 0 : _a.call(effect2, extend({ effect: effect2 }, debuggerEventExtraInfo));
701
716
  }
702
717
  effect2.trigger();
703
- if ((!effect2._runnings || effect2.allowRecurse) && effect2._dirtyLevel !== 2) {
718
+ if ((!effect2._runnings || effect2.allowRecurse) && effect2._dirtyLevel !== 3) {
704
719
  effect2._shouldSchedule = false;
705
720
  if (effect2.scheduler) {
706
721
  queueEffectSchedulers.push(effect2.scheduler);
@@ -792,7 +807,7 @@ function trigger(target, type, key, newValue, oldValue, oldTarget) {
792
807
  if (dep) {
793
808
  triggerEffects(
794
809
  dep,
795
- 4,
810
+ 5,
796
811
  {
797
812
  target,
798
813
  type,
@@ -1395,7 +1410,7 @@ class ComputedRefImpl {
1395
1410
  () => getter(this._value),
1396
1411
  () => triggerRefValue(
1397
1412
  this,
1398
- this.effect._dirtyLevel === 2 ? 2 : 3
1413
+ this.effect._dirtyLevel === 3 ? 3 : 4
1399
1414
  )
1400
1415
  );
1401
1416
  this.effect.computed = this;
@@ -1404,8 +1419,11 @@ class ComputedRefImpl {
1404
1419
  }
1405
1420
  get value() {
1406
1421
  const self = toRaw(this);
1422
+ const lastDirtyLevel = self.effect._dirtyLevel;
1407
1423
  if ((!self._cacheable || self.effect.dirty) && hasChanged(self._value, self._value = self.effect.run())) {
1408
- triggerRefValue(self, 4);
1424
+ if (lastDirtyLevel !== 3) {
1425
+ triggerRefValue(self, 5);
1426
+ }
1409
1427
  }
1410
1428
  trackRefValue(self);
1411
1429
  if (self.effect._dirtyLevel >= 2) {
@@ -1414,7 +1432,7 @@ class ComputedRefImpl {
1414
1432
 
1415
1433
  getter: `, this.getter);
1416
1434
  }
1417
- triggerRefValue(self, 2);
1435
+ triggerRefValue(self, 3);
1418
1436
  }
1419
1437
  return self._value;
1420
1438
  }
@@ -1469,7 +1487,7 @@ function trackRefValue(ref2) {
1469
1487
  );
1470
1488
  }
1471
1489
  }
1472
- function triggerRefValue(ref2, dirtyLevel = 4, newVal, oldVal) {
1490
+ function triggerRefValue(ref2, dirtyLevel = 5, newVal, oldVal) {
1473
1491
  ref2 = toRaw(ref2);
1474
1492
  const dep = ref2.dep;
1475
1493
  if (dep) {
@@ -1520,12 +1538,12 @@ class RefImpl {
1520
1538
  const oldVal = this._rawValue;
1521
1539
  this._rawValue = newVal;
1522
1540
  this._value = useDirectValue ? newVal : toReactive(newVal);
1523
- triggerRefValue(this, 4, newVal, oldVal);
1541
+ triggerRefValue(this, 5, newVal, oldVal);
1524
1542
  }
1525
1543
  }
1526
1544
  }
1527
1545
  function triggerRef(ref2) {
1528
- triggerRefValue(ref2, 4, ref2.value );
1546
+ triggerRefValue(ref2, 5, ref2.value );
1529
1547
  }
1530
1548
  function unref(ref2) {
1531
1549
  return isRef(ref2) ? ref2.value : ref2;
@@ -3372,7 +3390,6 @@ const SuspenseImpl = {
3372
3390
  }
3373
3391
  },
3374
3392
  hydrate: hydrateSuspense,
3375
- create: createSuspenseBoundary,
3376
3393
  normalize: normalizeSuspenseChildren
3377
3394
  };
3378
3395
  const Suspense = SuspenseImpl ;
@@ -5728,7 +5745,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
5728
5745
  return vm;
5729
5746
  }
5730
5747
  }
5731
- Vue.version = `2.6.14-compat:${"3.4.28"}`;
5748
+ Vue.version = `2.6.14-compat:${"3.4.30"}`;
5732
5749
  Vue.config = singletonApp.config;
5733
5750
  Vue.use = (plugin, ...options) => {
5734
5751
  if (plugin && isFunction(plugin.install)) {
@@ -7037,18 +7054,8 @@ function createHydrationFunctions(rendererInternals) {
7037
7054
  let domType = node.nodeType;
7038
7055
  vnode.el = node;
7039
7056
  {
7040
- if (!("__vnode" in node)) {
7041
- Object.defineProperty(node, "__vnode", {
7042
- value: vnode,
7043
- enumerable: false
7044
- });
7045
- }
7046
- if (!("__vueParentComponent" in node)) {
7047
- Object.defineProperty(node, "__vueParentComponent", {
7048
- value: parentComponent,
7049
- enumerable: false
7050
- });
7051
- }
7057
+ def(node, "__vnode", vnode, true);
7058
+ def(node, "__vueParentComponent", parentComponent, true);
7052
7059
  }
7053
7060
  if (patchFlag === -2) {
7054
7061
  optimized = false;
@@ -7271,7 +7278,9 @@ Server rendered element contains more child nodes than client vdom.`
7271
7278
  if (props) {
7272
7279
  {
7273
7280
  for (const key in props) {
7274
- if (propHasMismatch(el, key, props[key], vnode, parentComponent)) {
7281
+ if (// #11189 skip if this node has directives that have created hooks
7282
+ // as it could have mutated the DOM in any possible way
7283
+ !(dirs && dirs.some((d) => d.dir.created)) && propHasMismatch(el, key, props[key], vnode, parentComponent)) {
7275
7284
  logMismatchError();
7276
7285
  }
7277
7286
  if (forcePatch && (key.endsWith("value") || key === "indeterminate") || isOn(key) && !isReservedProp(key) || // force hydrate v-bind with .prop modifiers
@@ -7446,7 +7455,6 @@ Server rendered element contains fewer child nodes than client vdom.`
7446
7455
  return [hydrate, hydrateNode];
7447
7456
  }
7448
7457
  function propHasMismatch(el, key, clientValue, vnode, instance) {
7449
- var _a;
7450
7458
  let mismatchType;
7451
7459
  let mismatchKey;
7452
7460
  let actual;
@@ -7469,13 +7477,8 @@ function propHasMismatch(el, key, clientValue, vnode, instance) {
7469
7477
  }
7470
7478
  }
7471
7479
  }
7472
- const root = instance == null ? void 0 : instance.subTree;
7473
- if (vnode === root || // eslint-disable-next-line no-restricted-syntax
7474
- (root == null ? void 0 : root.type) === Fragment && root.children.includes(vnode)) {
7475
- const cssVars = (_a = instance == null ? void 0 : instance.getCssVars) == null ? void 0 : _a.call(instance);
7476
- for (const key2 in cssVars) {
7477
- expectedMap.set(`--${key2}`, String(cssVars[key2]));
7478
- }
7480
+ if (instance) {
7481
+ resolveCssVars(instance, vnode, expectedMap);
7479
7482
  }
7480
7483
  if (!isMapEqual(actualMap, expectedMap)) {
7481
7484
  mismatchType = mismatchKey = "style";
@@ -7535,8 +7538,8 @@ function toStyleMap(str) {
7535
7538
  const styleMap = /* @__PURE__ */ new Map();
7536
7539
  for (const item of str.split(";")) {
7537
7540
  let [key, value] = item.split(":");
7538
- key = key == null ? void 0 : key.trim();
7539
- value = value == null ? void 0 : value.trim();
7541
+ key = key.trim();
7542
+ value = value && value.trim();
7540
7543
  if (key && value) {
7541
7544
  styleMap.set(key, value);
7542
7545
  }
@@ -7554,6 +7557,18 @@ function isMapEqual(a, b) {
7554
7557
  }
7555
7558
  return true;
7556
7559
  }
7560
+ function resolveCssVars(instance, vnode, expectedMap) {
7561
+ const root = instance.subTree;
7562
+ if (instance.getCssVars && (vnode === root || root && root.type === Fragment && root.children.includes(vnode))) {
7563
+ const cssVars = instance.getCssVars();
7564
+ for (const key in cssVars) {
7565
+ expectedMap.set(`--${key}`, String(cssVars[key]));
7566
+ }
7567
+ }
7568
+ if (vnode === root && instance.parent) {
7569
+ resolveCssVars(instance.parent, instance.vnode, expectedMap);
7570
+ }
7571
+ }
7557
7572
 
7558
7573
  let supported;
7559
7574
  let perf;
@@ -7871,14 +7886,8 @@ function baseCreateRenderer(options, createHydrationFns) {
7871
7886
  }
7872
7887
  }
7873
7888
  {
7874
- Object.defineProperty(el, "__vnode", {
7875
- value: vnode,
7876
- enumerable: false
7877
- });
7878
- Object.defineProperty(el, "__vueParentComponent", {
7879
- value: parentComponent,
7880
- enumerable: false
7881
- });
7889
+ def(el, "__vnode", vnode, true);
7890
+ def(el, "__vueParentComponent", parentComponent, true);
7882
7891
  }
7883
7892
  if (dirs) {
7884
7893
  invokeDirectiveHook(vnode, null, parentComponent, "beforeMount");
@@ -7940,6 +7949,9 @@ function baseCreateRenderer(options, createHydrationFns) {
7940
7949
  };
7941
7950
  const patchElement = (n1, n2, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => {
7942
7951
  const el = n2.el = n1.el;
7952
+ {
7953
+ el.__vnode = n2;
7954
+ }
7943
7955
  let { patchFlag, dynamicChildren, dirs } = n2;
7944
7956
  patchFlag |= n1.patchFlag & 16;
7945
7957
  const oldProps = n1.props || EMPTY_OBJ;
@@ -8859,6 +8871,9 @@ function baseCreateRenderer(options, createHydrationFns) {
8859
8871
  dirs,
8860
8872
  memoIndex
8861
8873
  } = vnode;
8874
+ if (patchFlag === -2) {
8875
+ optimized = false;
8876
+ }
8862
8877
  if (ref != null) {
8863
8878
  setRef(ref, null, parentSuspense, vnode, true);
8864
8879
  }
@@ -8890,7 +8905,6 @@ function baseCreateRenderer(options, createHydrationFns) {
8890
8905
  vnode,
8891
8906
  parentComponent,
8892
8907
  parentSuspense,
8893
- optimized,
8894
8908
  internals,
8895
8909
  doRemove
8896
8910
  );
@@ -10217,7 +10231,7 @@ const TeleportImpl = {
10217
10231
  }
10218
10232
  updateCssVars(n2);
10219
10233
  },
10220
- remove(vnode, parentComponent, parentSuspense, optimized, { um: unmount, o: { remove: hostRemove } }, doRemove) {
10234
+ remove(vnode, parentComponent, parentSuspense, { um: unmount, o: { remove: hostRemove } }, doRemove) {
10221
10235
  const { shapeFlag, children, anchor, targetAnchor, target, props } = vnode;
10222
10236
  if (target) {
10223
10237
  hostRemove(targetAnchor);
@@ -11482,7 +11496,7 @@ function isMemoSame(cached, memo) {
11482
11496
  return true;
11483
11497
  }
11484
11498
 
11485
- const version = "3.4.28";
11499
+ const version = "3.4.30";
11486
11500
  const warn = warn$1 ;
11487
11501
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
11488
11502
  const devtools = devtools$1 ;
@@ -12065,7 +12079,10 @@ function patchAttr(el, key, value, isSVG, instance, isBoolean = isSpecialBoolean
12065
12079
  if (value == null || isBoolean && !includeBooleanAttr(value)) {
12066
12080
  el.removeAttribute(key);
12067
12081
  } else {
12068
- el.setAttribute(key, isBoolean ? "" : String(value));
12082
+ el.setAttribute(
12083
+ key,
12084
+ isBoolean ? "" : isSymbol(value) ? String(value) : value
12085
+ );
12069
12086
  }
12070
12087
  }
12071
12088
  }
@@ -12267,7 +12284,7 @@ const patchProp = (el, key, prevValue, nextValue, namespace, prevChildren, paren
12267
12284
  parentSuspense,
12268
12285
  unmountChildren
12269
12286
  );
12270
- if (key === "value" || key === "checked" || key === "selected") {
12287
+ if (!el.tagName.includes("-") && (key === "value" || key === "checked" || key === "selected")) {
12271
12288
  patchAttr(el, key, nextValue, isSVG, parentComponent, key !== "value");
12272
12289
  }
12273
12290
  } else {
@@ -12315,8 +12332,8 @@ function shouldSetAsProp(el, key, value, isSVG) {
12315
12332
 
12316
12333
  /*! #__NO_SIDE_EFFECTS__ */
12317
12334
  // @__NO_SIDE_EFFECTS__
12318
- function defineCustomElement(options, hydrate2) {
12319
- const Comp = defineComponent(options);
12335
+ function defineCustomElement(options, extraOptions, hydrate2) {
12336
+ const Comp = defineComponent(options, extraOptions);
12320
12337
  class VueCustomElement extends VueElement {
12321
12338
  constructor(initialProps) {
12322
12339
  super(Comp, initialProps, hydrate2);
@@ -12326,8 +12343,8 @@ function defineCustomElement(options, hydrate2) {
12326
12343
  return VueCustomElement;
12327
12344
  }
12328
12345
  /*! #__NO_SIDE_EFFECTS__ */
12329
- const defineSSRCustomElement = /* @__NO_SIDE_EFFECTS__ */ (options) => {
12330
- return /* @__PURE__ */ defineCustomElement(options, hydrate);
12346
+ const defineSSRCustomElement = /* @__NO_SIDE_EFFECTS__ */ (options, extraOptions) => {
12347
+ return /* @__PURE__ */ defineCustomElement(options, extraOptions, hydrate);
12331
12348
  };
12332
12349
  const BaseClass = typeof HTMLElement !== "undefined" ? HTMLElement : class {
12333
12350
  };
@@ -18131,9 +18148,7 @@ function buildSlots(node, context, buildSlotFn = buildClientSlotFn) {
18131
18148
  break;
18132
18149
  }
18133
18150
  }
18134
- if (prev && isTemplateNode(prev) && findDir(prev, "if")) {
18135
- children.splice(i, 1);
18136
- i--;
18151
+ if (prev && isTemplateNode(prev) && findDir(prev, /^(else-)?if$/)) {
18137
18152
  let conditional = dynamicSlots[dynamicSlots.length - 1];
18138
18153
  while (conditional.alternate.type === 19) {
18139
18154
  conditional = conditional.alternate;
@@ -19289,8 +19304,7 @@ const transformFilter = (node, context) => {
19289
19304
  }
19290
19305
  if (node.type === 5) {
19291
19306
  rewriteFilter(node.content, context);
19292
- }
19293
- if (node.type === 1) {
19307
+ } else if (node.type === 1) {
19294
19308
  node.props.forEach((prop) => {
19295
19309
  if (prop.type === 7 && prop.name !== "for" && prop.exp) {
19296
19310
  rewriteFilter(prop.exp, context);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.4.28
2
+ * @vue/compat v3.4.30
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -447,7 +447,7 @@ class ReactiveEffect {
447
447
  /**
448
448
  * @internal
449
449
  */
450
- this._dirtyLevel = 4;
450
+ this._dirtyLevel = 5;
451
451
  /**
452
452
  * @internal
453
453
  */
@@ -467,14 +467,20 @@ class ReactiveEffect {
467
467
  recordEffectScope(this, scope);
468
468
  }
469
469
  get dirty() {
470
- if (this._dirtyLevel === 2 || this._dirtyLevel === 3) {
470
+ if (this._dirtyLevel === 2)
471
+ return false;
472
+ if (this._dirtyLevel === 3 || this._dirtyLevel === 4) {
471
473
  this._dirtyLevel = 1;
472
474
  pauseTracking();
473
475
  for (let i = 0; i < this._depsLength; i++) {
474
476
  const dep = this.deps[i];
475
477
  if (dep.computed) {
478
+ if (dep.computed.effect._dirtyLevel === 2) {
479
+ resetTracking();
480
+ return true;
481
+ }
476
482
  triggerComputed(dep.computed);
477
- if (this._dirtyLevel >= 4) {
483
+ if (this._dirtyLevel >= 5) {
478
484
  break;
479
485
  }
480
486
  }
@@ -484,10 +490,10 @@ class ReactiveEffect {
484
490
  }
485
491
  resetTracking();
486
492
  }
487
- return this._dirtyLevel >= 4;
493
+ return this._dirtyLevel >= 5;
488
494
  }
489
495
  set dirty(v) {
490
- this._dirtyLevel = v ? 4 : 0;
496
+ this._dirtyLevel = v ? 5 : 0;
491
497
  }
492
498
  run() {
493
499
  this._dirtyLevel = 0;
@@ -604,13 +610,22 @@ function triggerEffects(dep, dirtyLevel, debuggerEventExtraInfo) {
604
610
  pauseScheduling();
605
611
  for (const effect2 of dep.keys()) {
606
612
  let tracking;
613
+ if (!dep.computed && effect2.computed) {
614
+ if (effect2._runnings > 0 && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {
615
+ effect2._dirtyLevel = 2;
616
+ continue;
617
+ }
618
+ }
607
619
  if (effect2._dirtyLevel < dirtyLevel && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {
608
620
  effect2._shouldSchedule || (effect2._shouldSchedule = effect2._dirtyLevel === 0);
621
+ if (effect2.computed && effect2._dirtyLevel === 2) {
622
+ effect2._shouldSchedule = true;
623
+ }
609
624
  effect2._dirtyLevel = dirtyLevel;
610
625
  }
611
626
  if (effect2._shouldSchedule && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {
612
627
  effect2.trigger();
613
- if ((!effect2._runnings || effect2.allowRecurse) && effect2._dirtyLevel !== 2) {
628
+ if ((!effect2._runnings || effect2.allowRecurse) && effect2._dirtyLevel !== 3) {
614
629
  effect2._shouldSchedule = false;
615
630
  if (effect2.scheduler) {
616
631
  queueEffectSchedulers.push(effect2.scheduler);
@@ -696,7 +711,7 @@ function trigger(target, type, key, newValue, oldValue, oldTarget) {
696
711
  if (dep) {
697
712
  triggerEffects(
698
713
  dep,
699
- 4);
714
+ 5);
700
715
  }
701
716
  }
702
717
  resetScheduling();
@@ -1249,7 +1264,7 @@ class ComputedRefImpl {
1249
1264
  () => getter(this._value),
1250
1265
  () => triggerRefValue(
1251
1266
  this,
1252
- this.effect._dirtyLevel === 2 ? 2 : 3
1267
+ this.effect._dirtyLevel === 3 ? 3 : 4
1253
1268
  )
1254
1269
  );
1255
1270
  this.effect.computed = this;
@@ -1258,12 +1273,15 @@ class ComputedRefImpl {
1258
1273
  }
1259
1274
  get value() {
1260
1275
  const self = toRaw(this);
1276
+ const lastDirtyLevel = self.effect._dirtyLevel;
1261
1277
  if ((!self._cacheable || self.effect.dirty) && hasChanged(self._value, self._value = self.effect.run())) {
1262
- triggerRefValue(self, 4);
1278
+ if (lastDirtyLevel !== 3) {
1279
+ triggerRefValue(self, 5);
1280
+ }
1263
1281
  }
1264
1282
  trackRefValue(self);
1265
1283
  if (self.effect._dirtyLevel >= 2) {
1266
- triggerRefValue(self, 2);
1284
+ triggerRefValue(self, 3);
1267
1285
  }
1268
1286
  return self._value;
1269
1287
  }
@@ -1306,7 +1324,7 @@ function trackRefValue(ref2) {
1306
1324
  ));
1307
1325
  }
1308
1326
  }
1309
- function triggerRefValue(ref2, dirtyLevel = 4, newVal, oldVal) {
1327
+ function triggerRefValue(ref2, dirtyLevel = 5, newVal, oldVal) {
1310
1328
  ref2 = toRaw(ref2);
1311
1329
  const dep = ref2.dep;
1312
1330
  if (dep) {
@@ -1349,12 +1367,12 @@ class RefImpl {
1349
1367
  this._rawValue;
1350
1368
  this._rawValue = newVal;
1351
1369
  this._value = useDirectValue ? newVal : toReactive(newVal);
1352
- triggerRefValue(this, 4);
1370
+ triggerRefValue(this, 5);
1353
1371
  }
1354
1372
  }
1355
1373
  }
1356
1374
  function triggerRef(ref2) {
1357
- triggerRefValue(ref2, 4);
1375
+ triggerRefValue(ref2, 5);
1358
1376
  }
1359
1377
  function unref(ref2) {
1360
1378
  return isRef(ref2) ? ref2.value : ref2;
@@ -2402,7 +2420,6 @@ const SuspenseImpl = {
2402
2420
  }
2403
2421
  },
2404
2422
  hydrate: hydrateSuspense,
2405
- create: createSuspenseBoundary,
2406
2423
  normalize: normalizeSuspenseChildren
2407
2424
  };
2408
2425
  const Suspense = SuspenseImpl ;
@@ -4446,7 +4463,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
4446
4463
  return vm;
4447
4464
  }
4448
4465
  }
4449
- Vue.version = `2.6.14-compat:${"3.4.28"}`;
4466
+ Vue.version = `2.6.14-compat:${"3.4.30"}`;
4450
4467
  Vue.config = singletonApp.config;
4451
4468
  Vue.use = (plugin, ...options) => {
4452
4469
  if (plugin && isFunction(plugin.install)) {
@@ -6989,6 +7006,9 @@ function baseCreateRenderer(options, createHydrationFns) {
6989
7006
  dirs,
6990
7007
  memoIndex
6991
7008
  } = vnode;
7009
+ if (patchFlag === -2) {
7010
+ optimized = false;
7011
+ }
6992
7012
  if (ref != null) {
6993
7013
  setRef(ref, null, parentSuspense, vnode, true);
6994
7014
  }
@@ -7020,7 +7040,6 @@ function baseCreateRenderer(options, createHydrationFns) {
7020
7040
  vnode,
7021
7041
  parentComponent,
7022
7042
  parentSuspense,
7023
- optimized,
7024
7043
  internals,
7025
7044
  doRemove
7026
7045
  );
@@ -8236,7 +8255,7 @@ const TeleportImpl = {
8236
8255
  }
8237
8256
  updateCssVars(n2);
8238
8257
  },
8239
- remove(vnode, parentComponent, parentSuspense, optimized, { um: unmount, o: { remove: hostRemove } }, doRemove) {
8258
+ remove(vnode, parentComponent, parentSuspense, { um: unmount, o: { remove: hostRemove } }, doRemove) {
8240
8259
  const { shapeFlag, children, anchor, targetAnchor, target, props } = vnode;
8241
8260
  if (target) {
8242
8261
  hostRemove(targetAnchor);
@@ -9142,7 +9161,7 @@ function isMemoSame(cached, memo) {
9142
9161
  return true;
9143
9162
  }
9144
9163
 
9145
- const version = "3.4.28";
9164
+ const version = "3.4.30";
9146
9165
  const warn$1 = NOOP;
9147
9166
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
9148
9167
  const devtools = void 0;
@@ -9711,7 +9730,10 @@ function patchAttr(el, key, value, isSVG, instance, isBoolean = isSpecialBoolean
9711
9730
  if (value == null || isBoolean && !includeBooleanAttr(value)) {
9712
9731
  el.removeAttribute(key);
9713
9732
  } else {
9714
- el.setAttribute(key, isBoolean ? "" : String(value));
9733
+ el.setAttribute(
9734
+ key,
9735
+ isBoolean ? "" : isSymbol(value) ? String(value) : value
9736
+ );
9715
9737
  }
9716
9738
  }
9717
9739
  }
@@ -9892,7 +9914,7 @@ const patchProp = (el, key, prevValue, nextValue, namespace, prevChildren, paren
9892
9914
  parentSuspense,
9893
9915
  unmountChildren
9894
9916
  );
9895
- if (key === "value" || key === "checked" || key === "selected") {
9917
+ if (!el.tagName.includes("-") && (key === "value" || key === "checked" || key === "selected")) {
9896
9918
  patchAttr(el, key, nextValue, isSVG, parentComponent, key !== "value");
9897
9919
  }
9898
9920
  } else {
@@ -9940,8 +9962,8 @@ function shouldSetAsProp(el, key, value, isSVG) {
9940
9962
 
9941
9963
  /*! #__NO_SIDE_EFFECTS__ */
9942
9964
  // @__NO_SIDE_EFFECTS__
9943
- function defineCustomElement(options, hydrate2) {
9944
- const Comp = defineComponent(options);
9965
+ function defineCustomElement(options, extraOptions, hydrate2) {
9966
+ const Comp = defineComponent(options, extraOptions);
9945
9967
  class VueCustomElement extends VueElement {
9946
9968
  constructor(initialProps) {
9947
9969
  super(Comp, initialProps, hydrate2);
@@ -9951,8 +9973,8 @@ function defineCustomElement(options, hydrate2) {
9951
9973
  return VueCustomElement;
9952
9974
  }
9953
9975
  /*! #__NO_SIDE_EFFECTS__ */
9954
- const defineSSRCustomElement = /* @__NO_SIDE_EFFECTS__ */ (options) => {
9955
- return /* @__PURE__ */ defineCustomElement(options, hydrate);
9976
+ const defineSSRCustomElement = /* @__NO_SIDE_EFFECTS__ */ (options, extraOptions) => {
9977
+ return /* @__PURE__ */ defineCustomElement(options, extraOptions, hydrate);
9956
9978
  };
9957
9979
  const BaseClass = typeof HTMLElement !== "undefined" ? HTMLElement : class {
9958
9980
  };
@@ -15524,9 +15546,7 @@ function buildSlots(node, context, buildSlotFn = buildClientSlotFn) {
15524
15546
  break;
15525
15547
  }
15526
15548
  }
15527
- if (prev && isTemplateNode(prev) && findDir(prev, "if")) {
15528
- children.splice(i, 1);
15529
- i--;
15549
+ if (prev && isTemplateNode(prev) && findDir(prev, /^(else-)?if$/)) {
15530
15550
  let conditional = dynamicSlots[dynamicSlots.length - 1];
15531
15551
  while (conditional.alternate.type === 19) {
15532
15552
  conditional = conditional.alternate;
@@ -16644,8 +16664,7 @@ const transformFilter = (node, context) => {
16644
16664
  }
16645
16665
  if (node.type === 5) {
16646
16666
  rewriteFilter(node.content, context);
16647
- }
16648
- if (node.type === 1) {
16667
+ } else if (node.type === 1) {
16649
16668
  node.props.forEach((prop) => {
16650
16669
  if (prop.type === 7 && prop.name !== "for" && prop.exp) {
16651
16670
  rewriteFilter(prop.exp, context);