@vue/compat 3.6.0-rc.6 → 3.6.0-rc.8

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.6.0-rc.6
2
+ * @vue/compat v3.6.0-rc.8
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -544,6 +544,8 @@ function setupFlagsHandler(target) {
544
544
  function warn$2(msg, ...args) {
545
545
  console.warn(`[Vue warn] ${msg}`, ...args);
546
546
  }
547
+ //#endregion
548
+ //#region packages/reactivity/src/system.ts
547
549
  const notifyBuffer = [];
548
550
  let batchDepth = 0;
549
551
  let activeSub = void 0;
@@ -4016,7 +4018,7 @@ function baseResolveTransitionHooks(context, props, state, instance) {
4016
4018
  else done();
4017
4019
  },
4018
4020
  clone(node) {
4019
- return cloneHooks(node);
4021
+ return cloneHooks ? cloneHooks(node) : hooks;
4020
4022
  }
4021
4023
  };
4022
4024
  return hooks;
@@ -4894,7 +4896,7 @@ function defineAsyncComponent(source) {
4894
4896
  name: "AsyncComponentWrapper",
4895
4897
  __asyncLoader: load,
4896
4898
  __asyncHydrate(el, instance, hydrate) {
4897
- performAsyncHydrate(el, instance, hydrate, getResolvedComp, load, hydrateStrategy);
4899
+ performAsyncHydrate(el, instance, hydrate, getResolvedComp, load, hydrateStrategy, true);
4898
4900
  },
4899
4901
  get __asyncResolved() {
4900
4902
  return getResolvedComp();
@@ -5013,10 +5015,10 @@ const useAsyncComponentState = (delay, timeout, onError, instance = currentInsta
5013
5015
  * shared between core and vapor
5014
5016
  * @internal
5015
5017
  */
5016
- function performAsyncHydrate(el, instance, hydrate, getResolvedComp, load, hydrateStrategy) {
5018
+ function performAsyncHydrate(el, instance, hydrate, getResolvedComp, load, hydrateStrategy, skipIfUpdated) {
5017
5019
  const wasConnected = el.isConnected;
5018
5020
  let patched = false;
5019
- (instance.bu || (instance.bu = [])).push(() => patched = true);
5021
+ if (skipIfUpdated) (instance.bu || (instance.bu = [])).push(() => patched = true);
5020
5022
  const performHydrate = () => {
5021
5023
  if (patched) {
5022
5024
  if (!!(process.env.NODE_ENV !== "production")) {
@@ -6269,37 +6271,32 @@ function createPropsRestProxy(props, excludedKeys) {
6269
6271
  function withAsyncContext(getAwaitable) {
6270
6272
  const ctx = getCurrentGenericInstance();
6271
6273
  const inSSRSetup = isInSSRComponentSetup;
6272
- const restoreAsyncContext = ctx && ctx.restoreAsyncContext ? ctx.restoreAsyncContext.bind(ctx) : void 0;
6273
6274
  if (!!(process.env.NODE_ENV !== "production") && !ctx) warn$1("withAsyncContext called without active current instance. This is likely a bug.");
6274
6275
  let awaitable = getAwaitable();
6275
6276
  setCurrentInstance(null, void 0);
6276
6277
  if (inSSRSetup) setInSSRSetupState(false);
6277
6278
  const restore = () => {
6278
- const resetStoppedScope = ctx && !ctx.scope.active ? ctx.scope : void 0;
6279
+ const stoppedScope = ctx && !ctx.scope.active ? ctx.scope : void 0;
6279
6280
  setCurrentInstance(ctx);
6280
6281
  if (inSSRSetup) setInSSRSetupState(true);
6281
- const reset = restoreAsyncContext && restoreAsyncContext();
6282
- return () => {
6283
- if (reset) reset();
6284
- if (resetStoppedScope) resetStoppedScope.reset();
6285
- };
6282
+ return stoppedScope;
6286
6283
  };
6287
6284
  const cleanup = () => {
6288
6285
  setCurrentInstance(null, void 0);
6289
6286
  if (inSSRSetup) setInSSRSetupState(false);
6290
6287
  };
6291
6288
  if (isPromise(awaitable)) awaitable = awaitable.catch((e) => {
6292
- const reset = restore();
6289
+ const stoppedScope = restore();
6293
6290
  Promise.resolve().then(() => Promise.resolve().then(() => {
6294
- if (reset) reset();
6291
+ if (stoppedScope) stoppedScope.reset();
6295
6292
  cleanup();
6296
6293
  }));
6297
6294
  throw e;
6298
6295
  });
6299
6296
  return [awaitable, () => {
6300
- const reset = restore();
6297
+ const stoppedScope = restore();
6301
6298
  Promise.resolve().then(() => {
6302
- if (reset) reset();
6299
+ if (stoppedScope) stoppedScope.reset();
6303
6300
  cleanup();
6304
6301
  });
6305
6302
  }];
@@ -6626,7 +6623,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
6626
6623
  if (options.el) return vm.$mount(options.el);
6627
6624
  else return vm;
6628
6625
  }
6629
- Vue.version = `2.6.14-compat:3.6.0-rc.6`;
6626
+ Vue.version = `2.6.14-compat:3.6.0-rc.8`;
6630
6627
  Vue.config = singletonApp.config;
6631
6628
  Vue.use = (plugin, ...options) => {
6632
6629
  if (plugin && isFunction(plugin.install)) plugin.install(Vue, ...options);
@@ -8641,24 +8638,10 @@ function baseCreateRenderer(options, createHydrationFns) {
8641
8638
  }
8642
8639
  if (moveType !== 2 && shapeFlag & 1 && transition) {
8643
8640
  if (moveType === 0) performTransitionEnter(el, transition, () => hostInsert(el, container, anchor), parentSuspense, true);
8644
- else {
8645
- const { leave, delayLeave, afterLeave } = transition;
8646
- const remove = () => {
8647
- if (vnode.ctx.isUnmounted) hostRemove(el);
8648
- else hostInsert(el, container, anchor);
8649
- };
8650
- const performLeave = () => {
8651
- const wasLeaving = el._isLeaving || !!el[leaveCbKey];
8652
- if (el._isLeaving) el[leaveCbKey](true);
8653
- if (transition.persisted && !wasLeaving) remove();
8654
- else leave(el, () => {
8655
- remove();
8656
- afterLeave && afterLeave();
8657
- });
8658
- };
8659
- if (delayLeave) delayLeave(el, remove, performLeave);
8660
- else performLeave();
8661
- }
8641
+ else performTransitionLeave(el, transition, () => {
8642
+ if (vnode.ctx.isUnmounted) hostRemove(el);
8643
+ else hostInsert(el, container, anchor);
8644
+ }, true, true);
8662
8645
  } else hostInsert(el, container, anchor);
8663
8646
  };
8664
8647
  const unmount = (vnode, parentComponent, parentSuspense, doRemove = false, optimized = false) => {
@@ -8892,13 +8875,15 @@ function performTransitionEnter(el, transition, insert, parentSuspense, force =
8892
8875
  function performTransitionLeave(el, transition, remove, isElement = true, force = false) {
8893
8876
  const performRemove = () => {
8894
8877
  remove();
8895
- if (transition && !transition.persisted && transition.afterLeave) transition.afterLeave();
8878
+ if (transition && (force || !transition.persisted) && transition.afterLeave) transition.afterLeave();
8896
8879
  };
8897
8880
  if (force || isElement && transition && !transition.persisted) {
8898
8881
  const { leave, delayLeave } = transition;
8899
8882
  const performLeave = () => {
8883
+ const wasLeaving = el._isLeaving || !!el[leaveCbKey];
8900
8884
  if (el._isLeaving && force) el[leaveCbKey](true);
8901
- leave(el, performRemove);
8885
+ if (force && transition.persisted && !wasLeaving) remove();
8886
+ else leave(el, performRemove);
8902
8887
  };
8903
8888
  if (delayLeave) delayLeave(el, performRemove, performLeave);
8904
8889
  else performLeave();
@@ -10261,7 +10246,7 @@ function isMemoSame(cached, memo) {
10261
10246
  }
10262
10247
  //#endregion
10263
10248
  //#region packages/runtime-core/src/index.ts
10264
- const version = "3.6.0-rc.6";
10249
+ const version = "3.6.0-rc.8";
10265
10250
  const warn = !!(process.env.NODE_ENV !== "production") ? warn$1 : NOOP;
10266
10251
  /**
10267
10252
  * Runtime error messages. Only exposed in dev or esm builds.
@@ -11279,13 +11264,11 @@ var VueElementBase = class VueElementBase extends BaseClass {
11279
11264
  _renderSlots() {
11280
11265
  const outlets = this._getSlots();
11281
11266
  const scopeId = this._instance.type.__scopeId;
11282
- const slotReplacements = /* @__PURE__ */ new Map();
11283
11267
  for (let i = 0; i < outlets.length; i++) {
11284
11268
  const o = outlets[i];
11285
11269
  const slotName = o.getAttribute("name") || "default";
11286
11270
  const content = this._slots[slotName];
11287
11271
  const parent = o.parentNode;
11288
- const replacementNodes = [];
11289
11272
  if (content) for (const n of content) {
11290
11273
  if (scopeId && n.nodeType === 1) {
11291
11274
  const id = scopeId + "-s";
@@ -11295,20 +11278,10 @@ var VueElementBase = class VueElementBase extends BaseClass {
11295
11278
  while (child = walker.nextNode()) child.setAttribute(id, "");
11296
11279
  }
11297
11280
  parent.insertBefore(n, o);
11298
- replacementNodes.push(n);
11299
- }
11300
- else while (o.firstChild) {
11301
- const child = o.firstChild;
11302
- parent.insertBefore(child, o);
11303
- replacementNodes.push(child);
11304
11281
  }
11282
+ else while (o.firstChild) parent.insertBefore(o.firstChild, o);
11305
11283
  parent.removeChild(o);
11306
- slotReplacements.set(o, {
11307
- nodes: replacementNodes,
11308
- usedFallback: !content
11309
- });
11310
11284
  }
11311
- this._updateSlotNodes(slotReplacements);
11312
11285
  }
11313
11286
  /**
11314
11287
  * @internal
@@ -11347,7 +11320,7 @@ var VueElementBase = class VueElementBase extends BaseClass {
11347
11320
  * @internal
11348
11321
  */
11349
11322
  _hasShadowRoot() {
11350
- return this._def.shadowRoot !== false;
11323
+ return this._root !== this;
11351
11324
  }
11352
11325
  /**
11353
11326
  * @internal
@@ -11394,10 +11367,6 @@ var VueElement = class extends VueElementBase {
11394
11367
  if (this._instance && this._instance.ce) this._instance.ce = void 0;
11395
11368
  this._app = this._instance = null;
11396
11369
  }
11397
- /**
11398
- * Only called when shadowRoot is false
11399
- */
11400
- _updateSlotNodes(replacements) {}
11401
11370
  _createVNode() {
11402
11371
  const baseProps = {};
11403
11372
  if (!this.shadowRoot) baseProps.onVnodeMounted = baseProps.onVnodeUpdated = this._renderSlots.bind(this);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.6.0-rc.6
2
+ * @vue/compat v3.6.0-rc.8
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -540,6 +540,8 @@ var Vue = (function() {
540
540
  function warn$2(msg, ...args) {
541
541
  console.warn(`[Vue warn] ${msg}`, ...args);
542
542
  }
543
+ //#endregion
544
+ //#region packages/reactivity/src/system.ts
543
545
  const notifyBuffer = [];
544
546
  let batchDepth = 0;
545
547
  let activeSub = void 0;
@@ -3972,7 +3974,7 @@ var Vue = (function() {
3972
3974
  else done();
3973
3975
  },
3974
3976
  clone(node) {
3975
- return cloneHooks(node);
3977
+ return cloneHooks ? cloneHooks(node) : hooks;
3976
3978
  }
3977
3979
  };
3978
3980
  return hooks;
@@ -4810,7 +4812,7 @@ var Vue = (function() {
4810
4812
  name: "AsyncComponentWrapper",
4811
4813
  __asyncLoader: load,
4812
4814
  __asyncHydrate(el, instance, hydrate) {
4813
- performAsyncHydrate(el, instance, hydrate, getResolvedComp, load, hydrateStrategy);
4815
+ performAsyncHydrate(el, instance, hydrate, getResolvedComp, load, hydrateStrategy, true);
4814
4816
  },
4815
4817
  get __asyncResolved() {
4816
4818
  return getResolvedComp();
@@ -4929,10 +4931,10 @@ var Vue = (function() {
4929
4931
  * shared between core and vapor
4930
4932
  * @internal
4931
4933
  */
4932
- function performAsyncHydrate(el, instance, hydrate, getResolvedComp, load, hydrateStrategy) {
4934
+ function performAsyncHydrate(el, instance, hydrate, getResolvedComp, load, hydrateStrategy, skipIfUpdated) {
4933
4935
  const wasConnected = el.isConnected;
4934
4936
  let patched = false;
4935
- (instance.bu || (instance.bu = [])).push(() => patched = true);
4937
+ if (skipIfUpdated) (instance.bu || (instance.bu = [])).push(() => patched = true);
4936
4938
  const performHydrate = () => {
4937
4939
  if (patched) {
4938
4940
  {
@@ -6181,37 +6183,32 @@ var Vue = (function() {
6181
6183
  function withAsyncContext(getAwaitable) {
6182
6184
  const ctx = getCurrentGenericInstance();
6183
6185
  const inSSRSetup = isInSSRComponentSetup;
6184
- const restoreAsyncContext = ctx && ctx.restoreAsyncContext ? ctx.restoreAsyncContext.bind(ctx) : void 0;
6185
6186
  if (!ctx) warn$1("withAsyncContext called without active current instance. This is likely a bug.");
6186
6187
  let awaitable = getAwaitable();
6187
6188
  setCurrentInstance(null, void 0);
6188
6189
  if (inSSRSetup) setInSSRSetupState(false);
6189
6190
  const restore = () => {
6190
- const resetStoppedScope = ctx && !ctx.scope.active ? ctx.scope : void 0;
6191
+ const stoppedScope = ctx && !ctx.scope.active ? ctx.scope : void 0;
6191
6192
  setCurrentInstance(ctx);
6192
6193
  if (inSSRSetup) setInSSRSetupState(true);
6193
- const reset = restoreAsyncContext && restoreAsyncContext();
6194
- return () => {
6195
- if (reset) reset();
6196
- if (resetStoppedScope) resetStoppedScope.reset();
6197
- };
6194
+ return stoppedScope;
6198
6195
  };
6199
6196
  const cleanup = () => {
6200
6197
  setCurrentInstance(null, void 0);
6201
6198
  if (inSSRSetup) setInSSRSetupState(false);
6202
6199
  };
6203
6200
  if (isPromise(awaitable)) awaitable = awaitable.catch((e) => {
6204
- const reset = restore();
6201
+ const stoppedScope = restore();
6205
6202
  Promise.resolve().then(() => Promise.resolve().then(() => {
6206
- if (reset) reset();
6203
+ if (stoppedScope) stoppedScope.reset();
6207
6204
  cleanup();
6208
6205
  }));
6209
6206
  throw e;
6210
6207
  });
6211
6208
  return [awaitable, () => {
6212
- const reset = restore();
6209
+ const stoppedScope = restore();
6213
6210
  Promise.resolve().then(() => {
6214
- if (reset) reset();
6211
+ if (stoppedScope) stoppedScope.reset();
6215
6212
  cleanup();
6216
6213
  });
6217
6214
  }];
@@ -6536,7 +6533,7 @@ var Vue = (function() {
6536
6533
  if (options.el) return vm.$mount(options.el);
6537
6534
  else return vm;
6538
6535
  }
6539
- Vue.version = `2.6.14-compat:3.6.0-rc.6`;
6536
+ Vue.version = `2.6.14-compat:3.6.0-rc.8`;
6540
6537
  Vue.config = singletonApp.config;
6541
6538
  Vue.use = (plugin, ...options) => {
6542
6539
  if (plugin && isFunction(plugin.install)) plugin.install(Vue, ...options);
@@ -8502,24 +8499,10 @@ var Vue = (function() {
8502
8499
  }
8503
8500
  if (moveType !== 2 && shapeFlag & 1 && transition) {
8504
8501
  if (moveType === 0) performTransitionEnter(el, transition, () => hostInsert(el, container, anchor), parentSuspense, true);
8505
- else {
8506
- const { leave, delayLeave, afterLeave } = transition;
8507
- const remove = () => {
8508
- if (vnode.ctx.isUnmounted) hostRemove(el);
8509
- else hostInsert(el, container, anchor);
8510
- };
8511
- const performLeave = () => {
8512
- const wasLeaving = el._isLeaving || !!el[leaveCbKey];
8513
- if (el._isLeaving) el[leaveCbKey](true);
8514
- if (transition.persisted && !wasLeaving) remove();
8515
- else leave(el, () => {
8516
- remove();
8517
- afterLeave && afterLeave();
8518
- });
8519
- };
8520
- if (delayLeave) delayLeave(el, remove, performLeave);
8521
- else performLeave();
8522
- }
8502
+ else performTransitionLeave(el, transition, () => {
8503
+ if (vnode.ctx.isUnmounted) hostRemove(el);
8504
+ else hostInsert(el, container, anchor);
8505
+ }, true, true);
8523
8506
  } else hostInsert(el, container, anchor);
8524
8507
  };
8525
8508
  const unmount = (vnode, parentComponent, parentSuspense, doRemove = false, optimized = false) => {
@@ -8753,13 +8736,15 @@ var Vue = (function() {
8753
8736
  function performTransitionLeave(el, transition, remove, isElement = true, force = false) {
8754
8737
  const performRemove = () => {
8755
8738
  remove();
8756
- if (transition && !transition.persisted && transition.afterLeave) transition.afterLeave();
8739
+ if (transition && (force || !transition.persisted) && transition.afterLeave) transition.afterLeave();
8757
8740
  };
8758
8741
  if (force || isElement && transition && !transition.persisted) {
8759
8742
  const { leave, delayLeave } = transition;
8760
8743
  const performLeave = () => {
8744
+ const wasLeaving = el._isLeaving || !!el[leaveCbKey];
8761
8745
  if (el._isLeaving && force) el[leaveCbKey](true);
8762
- leave(el, performRemove);
8746
+ if (force && transition.persisted && !wasLeaving) remove();
8747
+ else leave(el, performRemove);
8763
8748
  };
8764
8749
  if (delayLeave) delayLeave(el, performRemove, performLeave);
8765
8750
  else performLeave();
@@ -10090,7 +10075,7 @@ var Vue = (function() {
10090
10075
  }
10091
10076
  //#endregion
10092
10077
  //#region packages/runtime-core/src/index.ts
10093
- const version = "3.6.0-rc.6";
10078
+ const version = "3.6.0-rc.8";
10094
10079
  const warn = warn$1;
10095
10080
  /**
10096
10081
  * Runtime error messages. Only exposed in dev or esm builds.
@@ -11082,13 +11067,11 @@ var Vue = (function() {
11082
11067
  _renderSlots() {
11083
11068
  const outlets = this._getSlots();
11084
11069
  const scopeId = this._instance.type.__scopeId;
11085
- const slotReplacements = /* @__PURE__ */ new Map();
11086
11070
  for (let i = 0; i < outlets.length; i++) {
11087
11071
  const o = outlets[i];
11088
11072
  const slotName = o.getAttribute("name") || "default";
11089
11073
  const content = this._slots[slotName];
11090
11074
  const parent = o.parentNode;
11091
- const replacementNodes = [];
11092
11075
  if (content) for (const n of content) {
11093
11076
  if (scopeId && n.nodeType === 1) {
11094
11077
  const id = scopeId + "-s";
@@ -11098,20 +11081,10 @@ var Vue = (function() {
11098
11081
  while (child = walker.nextNode()) child.setAttribute(id, "");
11099
11082
  }
11100
11083
  parent.insertBefore(n, o);
11101
- replacementNodes.push(n);
11102
- }
11103
- else while (o.firstChild) {
11104
- const child = o.firstChild;
11105
- parent.insertBefore(child, o);
11106
- replacementNodes.push(child);
11107
11084
  }
11085
+ else while (o.firstChild) parent.insertBefore(o.firstChild, o);
11108
11086
  parent.removeChild(o);
11109
- slotReplacements.set(o, {
11110
- nodes: replacementNodes,
11111
- usedFallback: !content
11112
- });
11113
11087
  }
11114
- this._updateSlotNodes(slotReplacements);
11115
11088
  }
11116
11089
  /**
11117
11090
  * @internal
@@ -11150,7 +11123,7 @@ var Vue = (function() {
11150
11123
  * @internal
11151
11124
  */
11152
11125
  _hasShadowRoot() {
11153
- return this._def.shadowRoot !== false;
11126
+ return this._root !== this;
11154
11127
  }
11155
11128
  /**
11156
11129
  * @internal
@@ -11195,10 +11168,6 @@ var Vue = (function() {
11195
11168
  if (this._instance && this._instance.ce) this._instance.ce = void 0;
11196
11169
  this._app = this._instance = null;
11197
11170
  }
11198
- /**
11199
- * Only called when shadowRoot is false
11200
- */
11201
- _updateSlotNodes(replacements) {}
11202
11171
  _createVNode() {
11203
11172
  const baseProps = {};
11204
11173
  if (!this.shadowRoot) baseProps.onVnodeMounted = baseProps.onVnodeUpdated = this._renderSlots.bind(this);