@vue/compat 3.5.16 → 3.5.18

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/compat v3.5.16
2
+ * @vue/compat v3.5.18
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -311,6 +311,24 @@ const stringifySymbol = (v, i = "") => {
311
311
  );
312
312
  };
313
313
 
314
+ function normalizeCssVarValue(value) {
315
+ if (value == null) {
316
+ return "initial";
317
+ }
318
+ if (typeof value === "string") {
319
+ return value === "" ? " " : value;
320
+ }
321
+ if (typeof value !== "number" || !Number.isFinite(value)) {
322
+ if (!!(process.env.NODE_ENV !== "production")) {
323
+ console.warn(
324
+ "[Vue warn] Invalid value used for CSS binding. Expected a string or a finite number but received:",
325
+ value
326
+ );
327
+ }
328
+ }
329
+ return String(value);
330
+ }
331
+
314
332
  function warn$2(msg, ...args) {
315
333
  console.warn(`[Vue warn] ${msg}`, ...args);
316
334
  }
@@ -784,6 +802,7 @@ class Link {
784
802
  }
785
803
  }
786
804
  class Dep {
805
+ // TODO isolatedDeclarations "__v_skip"
787
806
  constructor(computed) {
788
807
  this.computed = computed;
789
808
  this.version = 0;
@@ -804,6 +823,10 @@ class Dep {
804
823
  * Subscriber counter
805
824
  */
806
825
  this.sc = 0;
826
+ /**
827
+ * @internal
828
+ */
829
+ this.__v_skip = true;
807
830
  if (!!(process.env.NODE_ENV !== "production")) {
808
831
  this.subsHead = void 0;
809
832
  }
@@ -4934,10 +4957,8 @@ function resolveCssVars(instance, vnode, expectedMap) {
4934
4957
  if (instance.getCssVars && (vnode === root || root && root.type === Fragment && root.children.includes(vnode))) {
4935
4958
  const cssVars = instance.getCssVars();
4936
4959
  for (const key in cssVars) {
4937
- expectedMap.set(
4938
- `--${getEscapedCssVarName(key)}`,
4939
- String(cssVars[key])
4940
- );
4960
+ const value = normalizeCssVarValue(cssVars[key]);
4961
+ expectedMap.set(`--${getEscapedCssVarName(key)}`, value);
4941
4962
  }
4942
4963
  }
4943
4964
  if (vnode === root && instance.parent) {
@@ -4968,7 +4989,7 @@ function isMismatchAllowed(el, allowedType) {
4968
4989
  if (allowedType === 0 /* TEXT */ && list.includes("children")) {
4969
4990
  return true;
4970
4991
  }
4971
- return allowedAttr.split(",").includes(MismatchTypeString[allowedType]);
4992
+ return list.includes(MismatchTypeString[allowedType]);
4972
4993
  }
4973
4994
  }
4974
4995
 
@@ -5126,16 +5147,19 @@ function defineAsyncComponent(source) {
5126
5147
  __asyncLoader: load,
5127
5148
  __asyncHydrate(el, instance, hydrate) {
5128
5149
  let patched = false;
5129
- const doHydrate = hydrateStrategy ? () => {
5130
- const performHydrate = () => {
5131
- if (!!(process.env.NODE_ENV !== "production") && patched) {
5150
+ (instance.bu || (instance.bu = [])).push(() => patched = true);
5151
+ const performHydrate = () => {
5152
+ if (patched) {
5153
+ if (!!(process.env.NODE_ENV !== "production")) {
5132
5154
  warn$1(
5133
- `Skipping lazy hydration for component '${getComponentName(resolvedComp)}': it was updated before lazy hydration performed.`
5155
+ `Skipping lazy hydration for component '${getComponentName(resolvedComp) || resolvedComp.__file}': it was updated before lazy hydration performed.`
5134
5156
  );
5135
- return;
5136
5157
  }
5137
- hydrate();
5138
- };
5158
+ return;
5159
+ }
5160
+ hydrate();
5161
+ };
5162
+ const doHydrate = hydrateStrategy ? () => {
5139
5163
  const teardown = hydrateStrategy(
5140
5164
  performHydrate,
5141
5165
  (cb) => forEachElement(el, cb)
@@ -5143,8 +5167,7 @@ function defineAsyncComponent(source) {
5143
5167
  if (teardown) {
5144
5168
  (instance.bum || (instance.bum = [])).push(teardown);
5145
5169
  }
5146
- (instance.u || (instance.u = [])).push(() => patched = true);
5147
- } : hydrate;
5170
+ } : performHydrate;
5148
5171
  if (resolvedComp) {
5149
5172
  doHydrate();
5150
5173
  } else {
@@ -6566,15 +6589,15 @@ function withDefaults(props, defaults) {
6566
6589
  return null;
6567
6590
  }
6568
6591
  function useSlots() {
6569
- return getContext().slots;
6592
+ return getContext("useSlots").slots;
6570
6593
  }
6571
6594
  function useAttrs() {
6572
- return getContext().attrs;
6595
+ return getContext("useAttrs").attrs;
6573
6596
  }
6574
- function getContext() {
6597
+ function getContext(calledFunctionName) {
6575
6598
  const i = getCurrentInstance();
6576
6599
  if (!!(process.env.NODE_ENV !== "production") && !i) {
6577
- warn$1(`useContext() called without active instance.`);
6600
+ warn$1(`${calledFunctionName}() called without active instance.`);
6578
6601
  }
6579
6602
  return i.setupContext || (i.setupContext = createSetupContext(i));
6580
6603
  }
@@ -6835,7 +6858,8 @@ function applyOptions(instance) {
6835
6858
  expose.forEach((key) => {
6836
6859
  Object.defineProperty(exposed, key, {
6837
6860
  get: () => publicThis[key],
6838
- set: (val) => publicThis[key] = val
6861
+ set: (val) => publicThis[key] = val,
6862
+ enumerable: true
6839
6863
  });
6840
6864
  });
6841
6865
  } else if (!instance.exposed) {
@@ -7160,7 +7184,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
7160
7184
  return vm;
7161
7185
  }
7162
7186
  }
7163
- Vue.version = `2.6.14-compat:${"3.5.16"}`;
7187
+ Vue.version = `2.6.14-compat:${"3.5.18"}`;
7164
7188
  Vue.config = singletonApp.config;
7165
7189
  Vue.use = (plugin, ...options) => {
7166
7190
  if (plugin && isFunction(plugin.install)) {
@@ -7754,7 +7778,7 @@ function provide(key, value) {
7754
7778
  }
7755
7779
  }
7756
7780
  function inject(key, defaultValue, treatDefaultAsFactory = false) {
7757
- const instance = currentInstance || currentRenderingInstance;
7781
+ const instance = getCurrentInstance();
7758
7782
  if (instance || currentApp) {
7759
7783
  let provides = currentApp ? currentApp._context.provides : instance ? instance.parent == null || instance.ce ? instance.vnode.appContext && instance.vnode.appContext.provides : instance.parent.provides : void 0;
7760
7784
  if (provides && key in provides) {
@@ -7769,7 +7793,7 @@ function inject(key, defaultValue, treatDefaultAsFactory = false) {
7769
7793
  }
7770
7794
  }
7771
7795
  function hasInjectionContext() {
7772
- return !!(currentInstance || currentRenderingInstance || currentApp);
7796
+ return !!(getCurrentInstance() || currentApp);
7773
7797
  }
7774
7798
 
7775
7799
  function createPropsDefaultThis(instance, rawProps, propKey) {
@@ -8255,7 +8279,7 @@ function isBoolean(...args) {
8255
8279
  return args.some((elem) => elem.toLowerCase() === "boolean");
8256
8280
  }
8257
8281
 
8258
- const isInternalKey = (key) => key[0] === "_" || key === "$stable";
8282
+ const isInternalKey = (key) => key === "_" || key === "__" || key === "_ctx" || key === "$stable";
8259
8283
  const normalizeSlotValue = (value) => isArray(value) ? value.map(normalizeVNode) : [normalizeVNode(value)];
8260
8284
  const normalizeSlot = (key, rawSlot, ctx) => {
8261
8285
  if (rawSlot._n) {
@@ -8309,6 +8333,8 @@ const assignSlots = (slots, children, optimized) => {
8309
8333
  const initSlots = (instance, children, optimized) => {
8310
8334
  const slots = instance.slots = createInternalObject();
8311
8335
  if (instance.vnode.shapeFlag & 32) {
8336
+ const cacheIndexes = children.__;
8337
+ if (cacheIndexes) def(slots, "__", cacheIndexes, true);
8312
8338
  const type = children._;
8313
8339
  if (type) {
8314
8340
  assignSlots(slots, children, optimized);
@@ -8547,6 +8573,8 @@ function baseCreateRenderer(options, createHydrationFns) {
8547
8573
  }
8548
8574
  if (ref != null && parentComponent) {
8549
8575
  setRef(ref, n1 && n1.ref, parentSuspense, n2 || n1, !n2);
8576
+ } else if (ref == null && n1 && n1.ref != null) {
8577
+ setRef(n1.ref, null, parentSuspense, n1, true);
8550
8578
  }
8551
8579
  };
8552
8580
  const processText = (n1, n2, container, anchor) => {
@@ -9032,6 +9060,7 @@ function baseCreateRenderer(options, createHydrationFns) {
9032
9060
  if (!initialVNode.el) {
9033
9061
  const placeholder = instance.subTree = createVNode(Comment);
9034
9062
  processCommentNode(null, placeholder, container, anchor);
9063
+ initialVNode.placeholder = placeholder.el;
9035
9064
  }
9036
9065
  } else {
9037
9066
  setupRenderEffect(
@@ -9121,7 +9150,8 @@ function baseCreateRenderer(options, createHydrationFns) {
9121
9150
  hydrateSubTree();
9122
9151
  }
9123
9152
  } else {
9124
- if (root.ce) {
9153
+ if (root.ce && // @ts-expect-error _def is private
9154
+ root.ce._def.shadowRoot !== false) {
9125
9155
  root.ce._injectChildStyle(type);
9126
9156
  }
9127
9157
  if (!!(process.env.NODE_ENV !== "production")) {
@@ -9556,7 +9586,11 @@ function baseCreateRenderer(options, createHydrationFns) {
9556
9586
  for (i = toBePatched - 1; i >= 0; i--) {
9557
9587
  const nextIndex = s2 + i;
9558
9588
  const nextChild = c2[nextIndex];
9559
- const anchor = nextIndex + 1 < l2 ? c2[nextIndex + 1].el : parentAnchor;
9589
+ const anchorVNode = c2[nextIndex + 1];
9590
+ const anchor = nextIndex + 1 < l2 ? (
9591
+ // #13559, fallback to el placeholder for unresolved async component
9592
+ anchorVNode.el || anchorVNode.placeholder
9593
+ ) : parentAnchor;
9560
9594
  if (newIndexToOldIndexMap[i] === 0) {
9561
9595
  patch(
9562
9596
  null,
@@ -10217,8 +10251,9 @@ function emit(instance, event, ...rawArgs) {
10217
10251
  }
10218
10252
  }
10219
10253
  let args = rawArgs;
10220
- const isModelListener = event.startsWith("update:");
10221
- const modifiers = isModelListener && getModelModifiers(props, event.slice(7));
10254
+ const isCompatModelListener = compatModelEventPrefix + event in props;
10255
+ const isModelListener = isCompatModelListener || event.startsWith("update:");
10256
+ const modifiers = isCompatModelListener ? props.modelModifiers : isModelListener && getModelModifiers(props, event.slice(7));
10222
10257
  if (modifiers) {
10223
10258
  if (modifiers.trim) {
10224
10259
  args = rawArgs.map((a) => isString(a) ? a.trim() : a);
@@ -11550,6 +11585,7 @@ function cloneVNode(vnode, extraProps, mergeRef = false, cloneTransition = false
11550
11585
  suspense: vnode.suspense,
11551
11586
  ssContent: vnode.ssContent && cloneVNode(vnode.ssContent),
11552
11587
  ssFallback: vnode.ssFallback && cloneVNode(vnode.ssFallback),
11588
+ placeholder: vnode.placeholder,
11553
11589
  el: vnode.el,
11554
11590
  anchor: vnode.anchor,
11555
11591
  ctx: vnode.ctx,
@@ -12370,7 +12406,7 @@ function isMemoSame(cached, memo) {
12370
12406
  return true;
12371
12407
  }
12372
12408
 
12373
- const version = "3.5.16";
12409
+ const version = "3.5.18";
12374
12410
  const warn = !!(process.env.NODE_ENV !== "production") ? warn$1 : NOOP;
12375
12411
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
12376
12412
  const devtools = !!(process.env.NODE_ENV !== "production") || true ? devtools$1 : void 0;
@@ -12927,8 +12963,9 @@ function setVarsOnNode(el, vars) {
12927
12963
  const style = el.style;
12928
12964
  let cssText = "";
12929
12965
  for (const key in vars) {
12930
- style.setProperty(`--${key}`, vars[key]);
12931
- cssText += `--${key}: ${vars[key]};`;
12966
+ const value = normalizeCssVarValue(vars[key]);
12967
+ style.setProperty(`--${key}`, value);
12968
+ cssText += `--${key}: ${value};`;
12932
12969
  }
12933
12970
  style[CSS_VAR_TEXT] = cssText;
12934
12971
  }
@@ -13461,9 +13498,10 @@ class VueElement extends BaseClass {
13461
13498
  };
13462
13499
  const asyncDef = this._def.__asyncLoader;
13463
13500
  if (asyncDef) {
13464
- this._pendingResolve = asyncDef().then(
13465
- (def) => resolve(this._def = def, true)
13466
- );
13501
+ this._pendingResolve = asyncDef().then((def) => {
13502
+ def.configureApp = this._def.configureApp;
13503
+ resolve(this._def = def, true);
13504
+ });
13467
13505
  } else {
13468
13506
  resolve(this._def);
13469
13507
  }
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.5.16
2
+ * @vue/compat v3.5.18
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -314,6 +314,24 @@ var Vue = (function () {
314
314
  );
315
315
  };
316
316
 
317
+ function normalizeCssVarValue(value) {
318
+ if (value == null) {
319
+ return "initial";
320
+ }
321
+ if (typeof value === "string") {
322
+ return value === "" ? " " : value;
323
+ }
324
+ if (typeof value !== "number" || !Number.isFinite(value)) {
325
+ {
326
+ console.warn(
327
+ "[Vue warn] Invalid value used for CSS binding. Expected a string or a finite number but received:",
328
+ value
329
+ );
330
+ }
331
+ }
332
+ return String(value);
333
+ }
334
+
317
335
  function warn$2(msg, ...args) {
318
336
  console.warn(`[Vue warn] ${msg}`, ...args);
319
337
  }
@@ -787,6 +805,7 @@ var Vue = (function () {
787
805
  }
788
806
  }
789
807
  class Dep {
808
+ // TODO isolatedDeclarations "__v_skip"
790
809
  constructor(computed) {
791
810
  this.computed = computed;
792
811
  this.version = 0;
@@ -807,6 +826,10 @@ var Vue = (function () {
807
826
  * Subscriber counter
808
827
  */
809
828
  this.sc = 0;
829
+ /**
830
+ * @internal
831
+ */
832
+ this.__v_skip = true;
810
833
  {
811
834
  this.subsHead = void 0;
812
835
  }
@@ -4907,10 +4930,8 @@ Server rendered element contains fewer child nodes than client vdom.`
4907
4930
  if (instance.getCssVars && (vnode === root || root && root.type === Fragment && root.children.includes(vnode))) {
4908
4931
  const cssVars = instance.getCssVars();
4909
4932
  for (const key in cssVars) {
4910
- expectedMap.set(
4911
- `--${getEscapedCssVarName(key)}`,
4912
- String(cssVars[key])
4913
- );
4933
+ const value = normalizeCssVarValue(cssVars[key]);
4934
+ expectedMap.set(`--${getEscapedCssVarName(key)}`, value);
4914
4935
  }
4915
4936
  }
4916
4937
  if (vnode === root && instance.parent) {
@@ -4941,7 +4962,7 @@ Server rendered element contains fewer child nodes than client vdom.`
4941
4962
  if (allowedType === 0 /* TEXT */ && list.includes("children")) {
4942
4963
  return true;
4943
4964
  }
4944
- return allowedAttr.split(",").includes(MismatchTypeString[allowedType]);
4965
+ return list.includes(MismatchTypeString[allowedType]);
4945
4966
  }
4946
4967
  }
4947
4968
 
@@ -5099,16 +5120,19 @@ Server rendered element contains fewer child nodes than client vdom.`
5099
5120
  __asyncLoader: load,
5100
5121
  __asyncHydrate(el, instance, hydrate) {
5101
5122
  let patched = false;
5102
- const doHydrate = hydrateStrategy ? () => {
5103
- const performHydrate = () => {
5104
- if (patched) {
5123
+ (instance.bu || (instance.bu = [])).push(() => patched = true);
5124
+ const performHydrate = () => {
5125
+ if (patched) {
5126
+ {
5105
5127
  warn$1(
5106
- `Skipping lazy hydration for component '${getComponentName(resolvedComp)}': it was updated before lazy hydration performed.`
5128
+ `Skipping lazy hydration for component '${getComponentName(resolvedComp) || resolvedComp.__file}': it was updated before lazy hydration performed.`
5107
5129
  );
5108
- return;
5109
5130
  }
5110
- hydrate();
5111
- };
5131
+ return;
5132
+ }
5133
+ hydrate();
5134
+ };
5135
+ const doHydrate = hydrateStrategy ? () => {
5112
5136
  const teardown = hydrateStrategy(
5113
5137
  performHydrate,
5114
5138
  (cb) => forEachElement(el, cb)
@@ -5116,8 +5140,7 @@ Server rendered element contains fewer child nodes than client vdom.`
5116
5140
  if (teardown) {
5117
5141
  (instance.bum || (instance.bum = [])).push(teardown);
5118
5142
  }
5119
- (instance.u || (instance.u = [])).push(() => patched = true);
5120
- } : hydrate;
5143
+ } : performHydrate;
5121
5144
  if (resolvedComp) {
5122
5145
  doHydrate();
5123
5146
  } else {
@@ -6533,15 +6556,15 @@ If this is a native custom element, make sure to exclude it from component resol
6533
6556
  return null;
6534
6557
  }
6535
6558
  function useSlots() {
6536
- return getContext().slots;
6559
+ return getContext("useSlots").slots;
6537
6560
  }
6538
6561
  function useAttrs() {
6539
- return getContext().attrs;
6562
+ return getContext("useAttrs").attrs;
6540
6563
  }
6541
- function getContext() {
6564
+ function getContext(calledFunctionName) {
6542
6565
  const i = getCurrentInstance();
6543
6566
  if (!i) {
6544
- warn$1(`useContext() called without active instance.`);
6567
+ warn$1(`${calledFunctionName}() called without active instance.`);
6545
6568
  }
6546
6569
  return i.setupContext || (i.setupContext = createSetupContext(i));
6547
6570
  }
@@ -6800,7 +6823,8 @@ If this is a native custom element, make sure to exclude it from component resol
6800
6823
  expose.forEach((key) => {
6801
6824
  Object.defineProperty(exposed, key, {
6802
6825
  get: () => publicThis[key],
6803
- set: (val) => publicThis[key] = val
6826
+ set: (val) => publicThis[key] = val,
6827
+ enumerable: true
6804
6828
  });
6805
6829
  });
6806
6830
  } else if (!instance.exposed) {
@@ -7122,7 +7146,7 @@ If this is a native custom element, make sure to exclude it from component resol
7122
7146
  return vm;
7123
7147
  }
7124
7148
  }
7125
- Vue.version = `2.6.14-compat:${"3.5.16"}`;
7149
+ Vue.version = `2.6.14-compat:${"3.5.18"}`;
7126
7150
  Vue.config = singletonApp.config;
7127
7151
  Vue.use = (plugin, ...options) => {
7128
7152
  if (plugin && isFunction(plugin.install)) {
@@ -7714,7 +7738,7 @@ If you want to remount the same app, move your app creation logic into a factory
7714
7738
  }
7715
7739
  }
7716
7740
  function inject(key, defaultValue, treatDefaultAsFactory = false) {
7717
- const instance = currentInstance || currentRenderingInstance;
7741
+ const instance = getCurrentInstance();
7718
7742
  if (instance || currentApp) {
7719
7743
  let provides = currentApp ? currentApp._context.provides : instance ? instance.parent == null || instance.ce ? instance.vnode.appContext && instance.vnode.appContext.provides : instance.parent.provides : void 0;
7720
7744
  if (provides && key in provides) {
@@ -7729,7 +7753,7 @@ If you want to remount the same app, move your app creation logic into a factory
7729
7753
  }
7730
7754
  }
7731
7755
  function hasInjectionContext() {
7732
- return !!(currentInstance || currentRenderingInstance || currentApp);
7756
+ return !!(getCurrentInstance() || currentApp);
7733
7757
  }
7734
7758
 
7735
7759
  function createPropsDefaultThis(instance, rawProps, propKey) {
@@ -8215,7 +8239,7 @@ If you want to remount the same app, move your app creation logic into a factory
8215
8239
  return args.some((elem) => elem.toLowerCase() === "boolean");
8216
8240
  }
8217
8241
 
8218
- const isInternalKey = (key) => key[0] === "_" || key === "$stable";
8242
+ const isInternalKey = (key) => key === "_" || key === "__" || key === "_ctx" || key === "$stable";
8219
8243
  const normalizeSlotValue = (value) => isArray(value) ? value.map(normalizeVNode) : [normalizeVNode(value)];
8220
8244
  const normalizeSlot = (key, rawSlot, ctx) => {
8221
8245
  if (rawSlot._n) {
@@ -8269,6 +8293,8 @@ If you want to remount the same app, move your app creation logic into a factory
8269
8293
  const initSlots = (instance, children, optimized) => {
8270
8294
  const slots = instance.slots = createInternalObject();
8271
8295
  if (instance.vnode.shapeFlag & 32) {
8296
+ const cacheIndexes = children.__;
8297
+ if (cacheIndexes) def(slots, "__", cacheIndexes, true);
8272
8298
  const type = children._;
8273
8299
  if (type) {
8274
8300
  assignSlots(slots, children, optimized);
@@ -8480,6 +8506,8 @@ If you want to remount the same app, move your app creation logic into a factory
8480
8506
  }
8481
8507
  if (ref != null && parentComponent) {
8482
8508
  setRef(ref, n1 && n1.ref, parentSuspense, n2 || n1, !n2);
8509
+ } else if (ref == null && n1 && n1.ref != null) {
8510
+ setRef(n1.ref, null, parentSuspense, n1, true);
8483
8511
  }
8484
8512
  };
8485
8513
  const processText = (n1, n2, container, anchor) => {
@@ -8954,6 +8982,7 @@ If you want to remount the same app, move your app creation logic into a factory
8954
8982
  if (!initialVNode.el) {
8955
8983
  const placeholder = instance.subTree = createVNode(Comment);
8956
8984
  processCommentNode(null, placeholder, container, anchor);
8985
+ initialVNode.placeholder = placeholder.el;
8957
8986
  }
8958
8987
  } else {
8959
8988
  setupRenderEffect(
@@ -9043,7 +9072,8 @@ If you want to remount the same app, move your app creation logic into a factory
9043
9072
  hydrateSubTree();
9044
9073
  }
9045
9074
  } else {
9046
- if (root.ce) {
9075
+ if (root.ce && // @ts-expect-error _def is private
9076
+ root.ce._def.shadowRoot !== false) {
9047
9077
  root.ce._injectChildStyle(type);
9048
9078
  }
9049
9079
  {
@@ -9478,7 +9508,11 @@ If you want to remount the same app, move your app creation logic into a factory
9478
9508
  for (i = toBePatched - 1; i >= 0; i--) {
9479
9509
  const nextIndex = s2 + i;
9480
9510
  const nextChild = c2[nextIndex];
9481
- const anchor = nextIndex + 1 < l2 ? c2[nextIndex + 1].el : parentAnchor;
9511
+ const anchorVNode = c2[nextIndex + 1];
9512
+ const anchor = nextIndex + 1 < l2 ? (
9513
+ // #13559, fallback to el placeholder for unresolved async component
9514
+ anchorVNode.el || anchorVNode.placeholder
9515
+ ) : parentAnchor;
9482
9516
  if (newIndexToOldIndexMap[i] === 0) {
9483
9517
  patch(
9484
9518
  null,
@@ -10111,8 +10145,9 @@ If you want to remount the same app, move your app creation logic into a factory
10111
10145
  }
10112
10146
  }
10113
10147
  let args = rawArgs;
10114
- const isModelListener = event.startsWith("update:");
10115
- const modifiers = isModelListener && getModelModifiers(props, event.slice(7));
10148
+ const isCompatModelListener = compatModelEventPrefix + event in props;
10149
+ const isModelListener = isCompatModelListener || event.startsWith("update:");
10150
+ const modifiers = isCompatModelListener ? props.modelModifiers : isModelListener && getModelModifiers(props, event.slice(7));
10116
10151
  if (modifiers) {
10117
10152
  if (modifiers.trim) {
10118
10153
  args = rawArgs.map((a) => isString(a) ? a.trim() : a);
@@ -11444,6 +11479,7 @@ Component that was made reactive: `,
11444
11479
  suspense: vnode.suspense,
11445
11480
  ssContent: vnode.ssContent && cloneVNode(vnode.ssContent),
11446
11481
  ssFallback: vnode.ssFallback && cloneVNode(vnode.ssFallback),
11482
+ placeholder: vnode.placeholder,
11447
11483
  el: vnode.el,
11448
11484
  anchor: vnode.anchor,
11449
11485
  ctx: vnode.ctx,
@@ -12236,7 +12272,7 @@ Component that was made reactive: `,
12236
12272
  return true;
12237
12273
  }
12238
12274
 
12239
- const version = "3.5.16";
12275
+ const version = "3.5.18";
12240
12276
  const warn = warn$1 ;
12241
12277
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
12242
12278
  const devtools = devtools$1 ;
@@ -12774,8 +12810,9 @@ Component that was made reactive: `,
12774
12810
  const style = el.style;
12775
12811
  let cssText = "";
12776
12812
  for (const key in vars) {
12777
- style.setProperty(`--${key}`, vars[key]);
12778
- cssText += `--${key}: ${vars[key]};`;
12813
+ const value = normalizeCssVarValue(vars[key]);
12814
+ style.setProperty(`--${key}`, value);
12815
+ cssText += `--${key}: ${value};`;
12779
12816
  }
12780
12817
  style[CSS_VAR_TEXT] = cssText;
12781
12818
  }
@@ -13308,9 +13345,10 @@ Expected function or array of functions, received type ${typeof value}.`
13308
13345
  };
13309
13346
  const asyncDef = this._def.__asyncLoader;
13310
13347
  if (asyncDef) {
13311
- this._pendingResolve = asyncDef().then(
13312
- (def) => resolve(this._def = def, true)
13313
- );
13348
+ this._pendingResolve = asyncDef().then((def) => {
13349
+ def.configureApp = this._def.configureApp;
13350
+ resolve(this._def = def, true);
13351
+ });
13314
13352
  } else {
13315
13353
  resolve(this._def);
13316
13354
  }