vue 3.3.4 → 3.3.6

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.
@@ -37,7 +37,7 @@ var Vue = (function (exports) {
37
37
  const isSymbol = (val) => typeof val === "symbol";
38
38
  const isObject = (val) => val !== null && typeof val === "object";
39
39
  const isPromise = (val) => {
40
- return isObject(val) && isFunction(val.then) && isFunction(val.catch);
40
+ return (isObject(val) || isFunction(val)) && isFunction(val.then) && isFunction(val.catch);
41
41
  };
42
42
  const objectToString = Object.prototype.toString;
43
43
  const toTypeString = (value) => objectToString.call(value);
@@ -68,12 +68,13 @@ var Vue = (function (exports) {
68
68
  const hyphenate = cacheStringFunction(
69
69
  (str) => str.replace(hyphenateRE, "-$1").toLowerCase()
70
70
  );
71
- const capitalize = cacheStringFunction(
72
- (str) => str.charAt(0).toUpperCase() + str.slice(1)
73
- );
74
- const toHandlerKey = cacheStringFunction(
75
- (str) => str ? `on${capitalize(str)}` : ``
76
- );
71
+ const capitalize = cacheStringFunction((str) => {
72
+ return str.charAt(0).toUpperCase() + str.slice(1);
73
+ });
74
+ const toHandlerKey = cacheStringFunction((str) => {
75
+ const s = str ? `on${capitalize(str)}` : ``;
76
+ return s;
77
+ });
77
78
  const hasChanged = (value, oldValue) => !Object.is(value, oldValue);
78
79
  const invokeArrayFns = (fns, arg) => {
79
80
  for (let i = 0; i < fns.length; i++) {
@@ -123,8 +124,8 @@ var Vue = (function (exports) {
123
124
  [3]: "FORWARDED"
124
125
  };
125
126
 
126
- const GLOBALS_WHITE_LISTED = "Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console";
127
- const isGloballyWhitelisted = /* @__PURE__ */ makeMap(GLOBALS_WHITE_LISTED);
127
+ const GLOBALS_ALLOWED = "Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console";
128
+ const isGloballyAllowed = /* @__PURE__ */ makeMap(GLOBALS_ALLOWED);
128
129
 
129
130
  const range = 2;
130
131
  function generateCodeFrame(source, start = 0, end = source.length) {
@@ -179,9 +180,7 @@ var Vue = (function (exports) {
179
180
  }
180
181
  }
181
182
  return res;
182
- } else if (isString(value)) {
183
- return value;
184
- } else if (isObject(value)) {
183
+ } else if (isString(value) || isObject(value)) {
185
184
  return value;
186
185
  }
187
186
  }
@@ -530,7 +529,7 @@ var Vue = (function (exports) {
530
529
  }
531
530
  }
532
531
  function effect(fn, options) {
533
- if (fn.effect) {
532
+ if (fn.effect instanceof ReactiveEffect) {
534
533
  fn = fn.effect.fn;
535
534
  }
536
535
  const _effect = new ReactiveEffect(fn);
@@ -696,10 +695,6 @@ var Vue = (function (exports) {
696
695
  const builtInSymbols = new Set(
697
696
  /* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((key) => key !== "arguments" && key !== "caller").map((key) => Symbol[key]).filter(isSymbol)
698
697
  );
699
- const get$1 = /* @__PURE__ */ createGetter();
700
- const shallowGet = /* @__PURE__ */ createGetter(false, true);
701
- const readonlyGet = /* @__PURE__ */ createGetter(true);
702
- const shallowReadonlyGet = /* @__PURE__ */ createGetter(true, true);
703
698
  const arrayInstrumentations = /* @__PURE__ */ createArrayInstrumentations();
704
699
  function createArrayInstrumentations() {
705
700
  const instrumentations = {};
@@ -732,8 +727,13 @@ var Vue = (function (exports) {
732
727
  track(obj, "has", key);
733
728
  return obj.hasOwnProperty(key);
734
729
  }
735
- function createGetter(isReadonly2 = false, shallow = false) {
736
- return function get2(target, key, receiver) {
730
+ class BaseReactiveHandler {
731
+ constructor(_isReadonly = false, _shallow = false) {
732
+ this._isReadonly = _isReadonly;
733
+ this._shallow = _shallow;
734
+ }
735
+ get(target, key, receiver) {
736
+ const isReadonly2 = this._isReadonly, shallow = this._shallow;
737
737
  if (key === "__v_isReactive") {
738
738
  return !isReadonly2;
739
739
  } else if (key === "__v_isReadonly") {
@@ -769,17 +769,18 @@ var Vue = (function (exports) {
769
769
  return isReadonly2 ? readonly(res) : reactive(res);
770
770
  }
771
771
  return res;
772
- };
772
+ }
773
773
  }
774
- const set$1 = /* @__PURE__ */ createSetter();
775
- const shallowSet = /* @__PURE__ */ createSetter(true);
776
- function createSetter(shallow = false) {
777
- return function set2(target, key, value, receiver) {
774
+ class MutableReactiveHandler extends BaseReactiveHandler {
775
+ constructor(shallow = false) {
776
+ super(false, shallow);
777
+ }
778
+ set(target, key, value, receiver) {
778
779
  let oldValue = target[key];
779
780
  if (isReadonly(oldValue) && isRef(oldValue) && !isRef(value)) {
780
781
  return false;
781
782
  }
782
- if (!shallow) {
783
+ if (!this._shallow) {
783
784
  if (!isShallow(value) && !isReadonly(value)) {
784
785
  oldValue = toRaw(oldValue);
785
786
  value = toRaw(value);
@@ -799,37 +800,36 @@ var Vue = (function (exports) {
799
800
  }
800
801
  }
801
802
  return result;
802
- };
803
- }
804
- function deleteProperty(target, key) {
805
- const hadKey = hasOwn(target, key);
806
- const oldValue = target[key];
807
- const result = Reflect.deleteProperty(target, key);
808
- if (result && hadKey) {
809
- trigger(target, "delete", key, void 0, oldValue);
810
803
  }
811
- return result;
812
- }
813
- function has$1(target, key) {
814
- const result = Reflect.has(target, key);
815
- if (!isSymbol(key) || !builtInSymbols.has(key)) {
816
- track(target, "has", key);
804
+ deleteProperty(target, key) {
805
+ const hadKey = hasOwn(target, key);
806
+ const oldValue = target[key];
807
+ const result = Reflect.deleteProperty(target, key);
808
+ if (result && hadKey) {
809
+ trigger(target, "delete", key, void 0, oldValue);
810
+ }
811
+ return result;
812
+ }
813
+ has(target, key) {
814
+ const result = Reflect.has(target, key);
815
+ if (!isSymbol(key) || !builtInSymbols.has(key)) {
816
+ track(target, "has", key);
817
+ }
818
+ return result;
819
+ }
820
+ ownKeys(target) {
821
+ track(
822
+ target,
823
+ "iterate",
824
+ isArray(target) ? "length" : ITERATE_KEY
825
+ );
826
+ return Reflect.ownKeys(target);
817
827
  }
818
- return result;
819
- }
820
- function ownKeys(target) {
821
- track(target, "iterate", isArray(target) ? "length" : ITERATE_KEY);
822
- return Reflect.ownKeys(target);
823
828
  }
824
- const mutableHandlers = {
825
- get: get$1,
826
- set: set$1,
827
- deleteProperty,
828
- has: has$1,
829
- ownKeys
830
- };
831
- const readonlyHandlers = {
832
- get: readonlyGet,
829
+ class ReadonlyReactiveHandler extends BaseReactiveHandler {
830
+ constructor(shallow = false) {
831
+ super(true, shallow);
832
+ }
833
833
  set(target, key) {
834
834
  {
835
835
  warn$1(
@@ -838,7 +838,7 @@ var Vue = (function (exports) {
838
838
  );
839
839
  }
840
840
  return true;
841
- },
841
+ }
842
842
  deleteProperty(target, key) {
843
843
  {
844
844
  warn$1(
@@ -848,22 +848,13 @@ var Vue = (function (exports) {
848
848
  }
849
849
  return true;
850
850
  }
851
- };
852
- const shallowReactiveHandlers = /* @__PURE__ */ extend(
853
- {},
854
- mutableHandlers,
855
- {
856
- get: shallowGet,
857
- set: shallowSet
858
- }
859
- );
860
- const shallowReadonlyHandlers = /* @__PURE__ */ extend(
861
- {},
862
- readonlyHandlers,
863
- {
864
- get: shallowReadonlyGet
865
- }
851
+ }
852
+ const mutableHandlers = /* @__PURE__ */ new MutableReactiveHandler();
853
+ const readonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler();
854
+ const shallowReactiveHandlers = /* @__PURE__ */ new MutableReactiveHandler(
855
+ true
866
856
  );
857
+ const shallowReadonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler(true);
867
858
 
868
859
  const toShallow = (value) => value;
869
860
  const getProto = (v) => Reflect.getPrototypeOf(v);
@@ -872,7 +863,7 @@ var Vue = (function (exports) {
872
863
  const rawTarget = toRaw(target);
873
864
  const rawKey = toRaw(key);
874
865
  if (!isReadonly) {
875
- if (key !== rawKey) {
866
+ if (hasChanged(key, rawKey)) {
876
867
  track(rawTarget, "get", key);
877
868
  }
878
869
  track(rawTarget, "get", rawKey);
@@ -892,7 +883,7 @@ var Vue = (function (exports) {
892
883
  const rawTarget = toRaw(target);
893
884
  const rawKey = toRaw(key);
894
885
  if (!isReadonly) {
895
- if (key !== rawKey) {
886
+ if (hasChanged(key, rawKey)) {
896
887
  track(rawTarget, "has", key);
897
888
  }
898
889
  track(rawTarget, "has", rawKey);
@@ -1422,11 +1413,7 @@ var Vue = (function (exports) {
1422
1413
  }
1423
1414
  function propertyToRef(source, key, defaultValue) {
1424
1415
  const val = source[key];
1425
- return isRef(val) ? val : new ObjectRefImpl(
1426
- source,
1427
- key,
1428
- defaultValue
1429
- );
1416
+ return isRef(val) ? val : new ObjectRefImpl(source, key, defaultValue);
1430
1417
  }
1431
1418
 
1432
1419
  class ComputedRefImpl {
@@ -3199,9 +3186,7 @@ var Vue = (function (exports) {
3199
3186
  }
3200
3187
  if (cb) {
3201
3188
  const newValue = effect.run();
3202
- if (deep || forceTrigger || (isMultiSource ? newValue.some(
3203
- (v, i) => hasChanged(v, oldValue[i])
3204
- ) : hasChanged(newValue, oldValue)) || false) {
3189
+ if (deep || forceTrigger || (isMultiSource ? newValue.some((v, i) => hasChanged(v, oldValue[i])) : hasChanged(newValue, oldValue)) || false) {
3205
3190
  if (cleanup) {
3206
3191
  cleanup();
3207
3192
  }
@@ -3372,6 +3357,8 @@ var Vue = (function (exports) {
3372
3357
  }
3373
3358
  }
3374
3359
 
3360
+ const leaveCbKey = Symbol("_leaveCb");
3361
+ const enterCbKey$1 = Symbol("_enterCb");
3375
3362
  function useTransitionState() {
3376
3363
  const state = {
3377
3364
  isMounted: false,
@@ -3492,9 +3479,9 @@ var Vue = (function (exports) {
3492
3479
  oldInnerChild
3493
3480
  );
3494
3481
  leavingVNodesCache[String(oldInnerChild.key)] = oldInnerChild;
3495
- el._leaveCb = () => {
3482
+ el[leaveCbKey] = () => {
3496
3483
  earlyRemove();
3497
- el._leaveCb = void 0;
3484
+ el[leaveCbKey] = void 0;
3498
3485
  delete enterHooks.delayedLeave;
3499
3486
  };
3500
3487
  enterHooks.delayedLeave = delayedLeave;
@@ -3565,15 +3552,15 @@ var Vue = (function (exports) {
3565
3552
  return;
3566
3553
  }
3567
3554
  }
3568
- if (el._leaveCb) {
3569
- el._leaveCb(
3555
+ if (el[leaveCbKey]) {
3556
+ el[leaveCbKey](
3570
3557
  true
3571
3558
  /* cancelled */
3572
3559
  );
3573
3560
  }
3574
3561
  const leavingVNode = leavingVNodesCache[key];
3575
- if (leavingVNode && isSameVNodeType(vnode, leavingVNode) && leavingVNode.el._leaveCb) {
3576
- leavingVNode.el._leaveCb();
3562
+ if (leavingVNode && isSameVNodeType(vnode, leavingVNode) && leavingVNode.el[leaveCbKey]) {
3563
+ leavingVNode.el[leaveCbKey]();
3577
3564
  }
3578
3565
  callHook(hook, [el]);
3579
3566
  },
@@ -3591,7 +3578,7 @@ var Vue = (function (exports) {
3591
3578
  }
3592
3579
  }
3593
3580
  let called = false;
3594
- const done = el._enterCb = (cancelled) => {
3581
+ const done = el[enterCbKey$1] = (cancelled) => {
3595
3582
  if (called)
3596
3583
  return;
3597
3584
  called = true;
@@ -3603,7 +3590,7 @@ var Vue = (function (exports) {
3603
3590
  if (hooks.delayedLeave) {
3604
3591
  hooks.delayedLeave();
3605
3592
  }
3606
- el._enterCb = void 0;
3593
+ el[enterCbKey$1] = void 0;
3607
3594
  };
3608
3595
  if (hook) {
3609
3596
  callAsyncHook(hook, [el, done]);
@@ -3613,8 +3600,8 @@ var Vue = (function (exports) {
3613
3600
  },
3614
3601
  leave(el, remove) {
3615
3602
  const key2 = String(vnode.key);
3616
- if (el._enterCb) {
3617
- el._enterCb(
3603
+ if (el[enterCbKey$1]) {
3604
+ el[enterCbKey$1](
3618
3605
  true
3619
3606
  /* cancelled */
3620
3607
  );
@@ -3624,7 +3611,7 @@ var Vue = (function (exports) {
3624
3611
  }
3625
3612
  callHook(onBeforeLeave, [el]);
3626
3613
  let called = false;
3627
- const done = el._leaveCb = (cancelled) => {
3614
+ const done = el[leaveCbKey] = (cancelled) => {
3628
3615
  if (called)
3629
3616
  return;
3630
3617
  called = true;
@@ -3634,7 +3621,7 @@ var Vue = (function (exports) {
3634
3621
  } else {
3635
3622
  callHook(onAfterLeave, [el]);
3636
3623
  }
3637
- el._leaveCb = void 0;
3624
+ el[leaveCbKey] = void 0;
3638
3625
  if (leavingVNodesCache[key2] === vnode) {
3639
3626
  delete leavingVNodesCache[key2];
3640
3627
  }
@@ -3696,6 +3683,8 @@ var Vue = (function (exports) {
3696
3683
  return ret;
3697
3684
  }
3698
3685
 
3686
+ /*! #__NO_SIDE_EFFECTS__ */
3687
+ // @__NO_SIDE_EFFECTS__
3699
3688
  function defineComponent(options, extraOptions) {
3700
3689
  return isFunction(options) ? (
3701
3690
  // #8326: extend call and options.name access are considered side-effects
@@ -3705,6 +3694,8 @@ var Vue = (function (exports) {
3705
3694
  }
3706
3695
 
3707
3696
  const isAsyncWrapper = (i) => !!i.type.__asyncLoader;
3697
+ /*! #__NO_SIDE_EFFECTS__ */
3698
+ // @__NO_SIDE_EFFECTS__
3708
3699
  function defineAsyncComponent(source) {
3709
3700
  if (isFunction(source)) {
3710
3701
  source = { loader: source };
@@ -4483,7 +4474,7 @@ If this is a native custom element, make sure to exclude it from component resol
4483
4474
  return PublicInstanceProxyHandlers.get(target, key, target);
4484
4475
  },
4485
4476
  has(_, key) {
4486
- const has = key[0] !== "_" && !isGloballyWhitelisted(key);
4477
+ const has = key[0] !== "_" && !isGloballyAllowed(key);
4487
4478
  if (!has && PublicInstanceProxyHandlers.has(_, key)) {
4488
4479
  warn(
4489
4480
  `Property ${JSON.stringify(
@@ -5159,12 +5150,12 @@ If this is a native custom element, make sure to exclude it from component resol
5159
5150
  },
5160
5151
  set() {
5161
5152
  warn(
5162
- `app.config.unwrapInjectedRef has been deprecated. 3.3 now alawys unwraps injected refs in Options API.`
5153
+ `app.config.unwrapInjectedRef has been deprecated. 3.3 now always unwraps injected refs in Options API.`
5163
5154
  );
5164
5155
  }
5165
5156
  });
5166
5157
  }
5167
- const installedPlugins = /* @__PURE__ */ new Set();
5158
+ const installedPlugins = /* @__PURE__ */ new WeakSet();
5168
5159
  let isMounted = false;
5169
5160
  const app = context.app = {
5170
5161
  _uid: uid$1++,
@@ -5246,10 +5237,7 @@ If this is a native custom element, make sure to exclude it from component resol
5246
5237
  If you want to mount another app on the same host container, you need to unmount the previous app by calling \`app.unmount()\` first.`
5247
5238
  );
5248
5239
  }
5249
- const vnode = createVNode(
5250
- rootComponent,
5251
- rootProps
5252
- );
5240
+ const vnode = createVNode(rootComponent, rootProps);
5253
5241
  vnode.appContext = context;
5254
5242
  {
5255
5243
  context.reload = () => {
@@ -5831,7 +5819,7 @@ If you want to remount the same app, move your app creation logic into a factory
5831
5819
  }
5832
5820
  if (needDeletionCheck) {
5833
5821
  for (const key in slots) {
5834
- if (!isInternalKey(key) && !(key in deletionComparisonTarget)) {
5822
+ if (!isInternalKey(key) && deletionComparisonTarget[key] == null) {
5835
5823
  delete slots[key];
5836
5824
  }
5837
5825
  }
@@ -5995,8 +5983,10 @@ If you want to remount the same app, move your app creation logic into a factory
5995
5983
  hasMismatch = true;
5996
5984
  warn(
5997
5985
  `Hydration text mismatch:
5998
- - Client: ${JSON.stringify(node.data)}
5999
- - Server: ${JSON.stringify(vnode.children)}`
5986
+ - Server rendered: ${JSON.stringify(
5987
+ node.data
5988
+ )}
5989
+ - Client rendered: ${JSON.stringify(vnode.children)}`
6000
5990
  );
6001
5991
  node.data = vnode.children;
6002
5992
  }
@@ -6199,8 +6189,8 @@ If you want to remount the same app, move your app creation logic into a factory
6199
6189
  hasMismatch = true;
6200
6190
  warn(
6201
6191
  `Hydration text content mismatch in <${vnode.type}>:
6202
- - Client: ${el.textContent}
6203
- - Server: ${vnode.children}`
6192
+ - Server rendered: ${el.textContent}
6193
+ - Client rendered: ${vnode.children}`
6204
6194
  );
6205
6195
  el.textContent = vnode.children;
6206
6196
  }
@@ -7948,6 +7938,10 @@ If you want to remount the same app, move your app creation logic into a factory
7948
7938
  internals,
7949
7939
  1
7950
7940
  );
7941
+ } else {
7942
+ if (n2.props && n1.props && n2.props.to !== n1.props.to) {
7943
+ n2.props.to = n1.props.to;
7944
+ }
7951
7945
  }
7952
7946
  } else {
7953
7947
  if ((n2.props && n2.props.to) !== (n1.props && n1.props.to)) {
@@ -7988,19 +7982,18 @@ If you want to remount the same app, move your app creation logic into a factory
7988
7982
  if (target) {
7989
7983
  hostRemove(targetAnchor);
7990
7984
  }
7991
- if (doRemove || !isTeleportDisabled(props)) {
7992
- hostRemove(anchor);
7993
- if (shapeFlag & 16) {
7994
- for (let i = 0; i < children.length; i++) {
7995
- const child = children[i];
7996
- unmount(
7997
- child,
7998
- parentComponent,
7999
- parentSuspense,
8000
- true,
8001
- !!child.dynamicChildren
8002
- );
8003
- }
7985
+ doRemove && hostRemove(anchor);
7986
+ if (shapeFlag & 16) {
7987
+ const shouldRemove = doRemove || !isTeleportDisabled(props);
7988
+ for (let i = 0; i < children.length; i++) {
7989
+ const child = children[i];
7990
+ unmount(
7991
+ child,
7992
+ parentComponent,
7993
+ parentSuspense,
7994
+ shouldRemove,
7995
+ !!child.dynamicChildren
7996
+ );
8004
7997
  }
8005
7998
  }
8006
7999
  },
@@ -8084,7 +8077,7 @@ If you want to remount the same app, move your app creation logic into a factory
8084
8077
  const ctx = vnode.ctx;
8085
8078
  if (ctx && ctx.ut) {
8086
8079
  let node = vnode.children[0].el;
8087
- while (node !== vnode.targetAnchor) {
8080
+ while (node && node !== vnode.targetAnchor) {
8088
8081
  if (node.nodeType === 1)
8089
8082
  node.setAttribute("data-v-owner", ctx.uid);
8090
8083
  node = node.nextSibling;
@@ -8728,9 +8721,12 @@ Component that was made reactive: `,
8728
8721
  {
8729
8722
  setCurrentInstance(instance);
8730
8723
  pauseTracking();
8731
- applyOptions(instance);
8732
- resetTracking();
8733
- unsetCurrentInstance();
8724
+ try {
8725
+ applyOptions(instance);
8726
+ } finally {
8727
+ resetTracking();
8728
+ unsetCurrentInstance();
8729
+ }
8734
8730
  }
8735
8731
  if (!Component.render && instance.render === NOOP && !isSSR) {
8736
8732
  if (!compile$1 && Component.template) {
@@ -9090,7 +9086,7 @@ Component that was made reactive: `,
9090
9086
  return true;
9091
9087
  }
9092
9088
 
9093
- const version = "3.3.4";
9089
+ const version = "3.3.6";
9094
9090
  const ssrUtils = null;
9095
9091
  const resolveFilter = null;
9096
9092
  const compatUtils = null;
@@ -9162,54 +9158,363 @@ Component that was made reactive: `,
9162
9158
  }
9163
9159
  };
9164
9160
 
9165
- function patchClass(el, value, isSVG) {
9166
- const transitionClasses = el._vtc;
9167
- if (transitionClasses) {
9168
- value = (value ? [value, ...transitionClasses] : [...transitionClasses]).join(" ");
9161
+ const TRANSITION$1 = "transition";
9162
+ const ANIMATION = "animation";
9163
+ const vtcKey = Symbol("_vtc");
9164
+ const Transition = (props, { slots }) => h(BaseTransition, resolveTransitionProps(props), slots);
9165
+ Transition.displayName = "Transition";
9166
+ const DOMTransitionPropsValidators = {
9167
+ name: String,
9168
+ type: String,
9169
+ css: {
9170
+ type: Boolean,
9171
+ default: true
9172
+ },
9173
+ duration: [String, Number, Object],
9174
+ enterFromClass: String,
9175
+ enterActiveClass: String,
9176
+ enterToClass: String,
9177
+ appearFromClass: String,
9178
+ appearActiveClass: String,
9179
+ appearToClass: String,
9180
+ leaveFromClass: String,
9181
+ leaveActiveClass: String,
9182
+ leaveToClass: String
9183
+ };
9184
+ const TransitionPropsValidators = Transition.props = /* @__PURE__ */ extend(
9185
+ {},
9186
+ BaseTransitionPropsValidators,
9187
+ DOMTransitionPropsValidators
9188
+ );
9189
+ const callHook = (hook, args = []) => {
9190
+ if (isArray(hook)) {
9191
+ hook.forEach((h2) => h2(...args));
9192
+ } else if (hook) {
9193
+ hook(...args);
9169
9194
  }
9170
- if (value == null) {
9171
- el.removeAttribute("class");
9172
- } else if (isSVG) {
9173
- el.setAttribute("class", value);
9174
- } else {
9175
- el.className = value;
9195
+ };
9196
+ const hasExplicitCallback = (hook) => {
9197
+ return hook ? isArray(hook) ? hook.some((h2) => h2.length > 1) : hook.length > 1 : false;
9198
+ };
9199
+ function resolveTransitionProps(rawProps) {
9200
+ const baseProps = {};
9201
+ for (const key in rawProps) {
9202
+ if (!(key in DOMTransitionPropsValidators)) {
9203
+ baseProps[key] = rawProps[key];
9204
+ }
9176
9205
  }
9177
- }
9178
-
9179
- function patchStyle(el, prev, next) {
9180
- const style = el.style;
9181
- const isCssString = isString(next);
9182
- if (next && !isCssString) {
9183
- if (prev && !isString(prev)) {
9184
- for (const key in prev) {
9185
- if (next[key] == null) {
9186
- setStyle(style, key, "");
9206
+ if (rawProps.css === false) {
9207
+ return baseProps;
9208
+ }
9209
+ const {
9210
+ name = "v",
9211
+ type,
9212
+ duration,
9213
+ enterFromClass = `${name}-enter-from`,
9214
+ enterActiveClass = `${name}-enter-active`,
9215
+ enterToClass = `${name}-enter-to`,
9216
+ appearFromClass = enterFromClass,
9217
+ appearActiveClass = enterActiveClass,
9218
+ appearToClass = enterToClass,
9219
+ leaveFromClass = `${name}-leave-from`,
9220
+ leaveActiveClass = `${name}-leave-active`,
9221
+ leaveToClass = `${name}-leave-to`
9222
+ } = rawProps;
9223
+ const durations = normalizeDuration(duration);
9224
+ const enterDuration = durations && durations[0];
9225
+ const leaveDuration = durations && durations[1];
9226
+ const {
9227
+ onBeforeEnter,
9228
+ onEnter,
9229
+ onEnterCancelled,
9230
+ onLeave,
9231
+ onLeaveCancelled,
9232
+ onBeforeAppear = onBeforeEnter,
9233
+ onAppear = onEnter,
9234
+ onAppearCancelled = onEnterCancelled
9235
+ } = baseProps;
9236
+ const finishEnter = (el, isAppear, done) => {
9237
+ removeTransitionClass(el, isAppear ? appearToClass : enterToClass);
9238
+ removeTransitionClass(el, isAppear ? appearActiveClass : enterActiveClass);
9239
+ done && done();
9240
+ };
9241
+ const finishLeave = (el, done) => {
9242
+ el._isLeaving = false;
9243
+ removeTransitionClass(el, leaveFromClass);
9244
+ removeTransitionClass(el, leaveToClass);
9245
+ removeTransitionClass(el, leaveActiveClass);
9246
+ done && done();
9247
+ };
9248
+ const makeEnterHook = (isAppear) => {
9249
+ return (el, done) => {
9250
+ const hook = isAppear ? onAppear : onEnter;
9251
+ const resolve = () => finishEnter(el, isAppear, done);
9252
+ callHook(hook, [el, resolve]);
9253
+ nextFrame(() => {
9254
+ removeTransitionClass(el, isAppear ? appearFromClass : enterFromClass);
9255
+ addTransitionClass(el, isAppear ? appearToClass : enterToClass);
9256
+ if (!hasExplicitCallback(hook)) {
9257
+ whenTransitionEnds(el, type, enterDuration, resolve);
9187
9258
  }
9188
- }
9189
- }
9190
- for (const key in next) {
9191
- setStyle(style, key, next[key]);
9259
+ });
9260
+ };
9261
+ };
9262
+ return extend(baseProps, {
9263
+ onBeforeEnter(el) {
9264
+ callHook(onBeforeEnter, [el]);
9265
+ addTransitionClass(el, enterFromClass);
9266
+ addTransitionClass(el, enterActiveClass);
9267
+ },
9268
+ onBeforeAppear(el) {
9269
+ callHook(onBeforeAppear, [el]);
9270
+ addTransitionClass(el, appearFromClass);
9271
+ addTransitionClass(el, appearActiveClass);
9272
+ },
9273
+ onEnter: makeEnterHook(false),
9274
+ onAppear: makeEnterHook(true),
9275
+ onLeave(el, done) {
9276
+ el._isLeaving = true;
9277
+ const resolve = () => finishLeave(el, done);
9278
+ addTransitionClass(el, leaveFromClass);
9279
+ forceReflow();
9280
+ addTransitionClass(el, leaveActiveClass);
9281
+ nextFrame(() => {
9282
+ if (!el._isLeaving) {
9283
+ return;
9284
+ }
9285
+ removeTransitionClass(el, leaveFromClass);
9286
+ addTransitionClass(el, leaveToClass);
9287
+ if (!hasExplicitCallback(onLeave)) {
9288
+ whenTransitionEnds(el, type, leaveDuration, resolve);
9289
+ }
9290
+ });
9291
+ callHook(onLeave, [el, resolve]);
9292
+ },
9293
+ onEnterCancelled(el) {
9294
+ finishEnter(el, false);
9295
+ callHook(onEnterCancelled, [el]);
9296
+ },
9297
+ onAppearCancelled(el) {
9298
+ finishEnter(el, true);
9299
+ callHook(onAppearCancelled, [el]);
9300
+ },
9301
+ onLeaveCancelled(el) {
9302
+ finishLeave(el);
9303
+ callHook(onLeaveCancelled, [el]);
9192
9304
  }
9305
+ });
9306
+ }
9307
+ function normalizeDuration(duration) {
9308
+ if (duration == null) {
9309
+ return null;
9310
+ } else if (isObject(duration)) {
9311
+ return [NumberOf(duration.enter), NumberOf(duration.leave)];
9193
9312
  } else {
9194
- const currentDisplay = style.display;
9195
- if (isCssString) {
9196
- if (prev !== next) {
9197
- style.cssText = next;
9198
- }
9199
- } else if (prev) {
9200
- el.removeAttribute("style");
9201
- }
9202
- if ("_vod" in el) {
9203
- style.display = currentDisplay;
9204
- }
9313
+ const n = NumberOf(duration);
9314
+ return [n, n];
9205
9315
  }
9206
9316
  }
9207
- const semicolonRE = /[^\\];\s*$/;
9208
- const importantRE = /\s*!important$/;
9209
- function setStyle(style, name, val) {
9210
- if (isArray(val)) {
9211
- val.forEach((v) => setStyle(style, name, v));
9212
- } else {
9317
+ function NumberOf(val) {
9318
+ const res = toNumber(val);
9319
+ {
9320
+ assertNumber(res, "<transition> explicit duration");
9321
+ }
9322
+ return res;
9323
+ }
9324
+ function addTransitionClass(el, cls) {
9325
+ cls.split(/\s+/).forEach((c) => c && el.classList.add(c));
9326
+ (el[vtcKey] || (el[vtcKey] = /* @__PURE__ */ new Set())).add(cls);
9327
+ }
9328
+ function removeTransitionClass(el, cls) {
9329
+ cls.split(/\s+/).forEach((c) => c && el.classList.remove(c));
9330
+ const _vtc = el[vtcKey];
9331
+ if (_vtc) {
9332
+ _vtc.delete(cls);
9333
+ if (!_vtc.size) {
9334
+ el[vtcKey] = void 0;
9335
+ }
9336
+ }
9337
+ }
9338
+ function nextFrame(cb) {
9339
+ requestAnimationFrame(() => {
9340
+ requestAnimationFrame(cb);
9341
+ });
9342
+ }
9343
+ let endId = 0;
9344
+ function whenTransitionEnds(el, expectedType, explicitTimeout, resolve) {
9345
+ const id = el._endId = ++endId;
9346
+ const resolveIfNotStale = () => {
9347
+ if (id === el._endId) {
9348
+ resolve();
9349
+ }
9350
+ };
9351
+ if (explicitTimeout) {
9352
+ return setTimeout(resolveIfNotStale, explicitTimeout);
9353
+ }
9354
+ const { type, timeout, propCount } = getTransitionInfo(el, expectedType);
9355
+ if (!type) {
9356
+ return resolve();
9357
+ }
9358
+ const endEvent = type + "end";
9359
+ let ended = 0;
9360
+ const end = () => {
9361
+ el.removeEventListener(endEvent, onEnd);
9362
+ resolveIfNotStale();
9363
+ };
9364
+ const onEnd = (e) => {
9365
+ if (e.target === el && ++ended >= propCount) {
9366
+ end();
9367
+ }
9368
+ };
9369
+ setTimeout(() => {
9370
+ if (ended < propCount) {
9371
+ end();
9372
+ }
9373
+ }, timeout + 1);
9374
+ el.addEventListener(endEvent, onEnd);
9375
+ }
9376
+ function getTransitionInfo(el, expectedType) {
9377
+ const styles = window.getComputedStyle(el);
9378
+ const getStyleProperties = (key) => (styles[key] || "").split(", ");
9379
+ const transitionDelays = getStyleProperties(`${TRANSITION$1}Delay`);
9380
+ const transitionDurations = getStyleProperties(`${TRANSITION$1}Duration`);
9381
+ const transitionTimeout = getTimeout(transitionDelays, transitionDurations);
9382
+ const animationDelays = getStyleProperties(`${ANIMATION}Delay`);
9383
+ const animationDurations = getStyleProperties(`${ANIMATION}Duration`);
9384
+ const animationTimeout = getTimeout(animationDelays, animationDurations);
9385
+ let type = null;
9386
+ let timeout = 0;
9387
+ let propCount = 0;
9388
+ if (expectedType === TRANSITION$1) {
9389
+ if (transitionTimeout > 0) {
9390
+ type = TRANSITION$1;
9391
+ timeout = transitionTimeout;
9392
+ propCount = transitionDurations.length;
9393
+ }
9394
+ } else if (expectedType === ANIMATION) {
9395
+ if (animationTimeout > 0) {
9396
+ type = ANIMATION;
9397
+ timeout = animationTimeout;
9398
+ propCount = animationDurations.length;
9399
+ }
9400
+ } else {
9401
+ timeout = Math.max(transitionTimeout, animationTimeout);
9402
+ type = timeout > 0 ? transitionTimeout > animationTimeout ? TRANSITION$1 : ANIMATION : null;
9403
+ propCount = type ? type === TRANSITION$1 ? transitionDurations.length : animationDurations.length : 0;
9404
+ }
9405
+ const hasTransform = type === TRANSITION$1 && /\b(transform|all)(,|$)/.test(
9406
+ getStyleProperties(`${TRANSITION$1}Property`).toString()
9407
+ );
9408
+ return {
9409
+ type,
9410
+ timeout,
9411
+ propCount,
9412
+ hasTransform
9413
+ };
9414
+ }
9415
+ function getTimeout(delays, durations) {
9416
+ while (delays.length < durations.length) {
9417
+ delays = delays.concat(delays);
9418
+ }
9419
+ return Math.max(...durations.map((d, i) => toMs(d) + toMs(delays[i])));
9420
+ }
9421
+ function toMs(s) {
9422
+ if (s === "auto")
9423
+ return 0;
9424
+ return Number(s.slice(0, -1).replace(",", ".")) * 1e3;
9425
+ }
9426
+ function forceReflow() {
9427
+ return document.body.offsetHeight;
9428
+ }
9429
+
9430
+ function patchClass(el, value, isSVG) {
9431
+ const transitionClasses = el[vtcKey];
9432
+ if (transitionClasses) {
9433
+ value = (value ? [value, ...transitionClasses] : [...transitionClasses]).join(" ");
9434
+ }
9435
+ if (value == null) {
9436
+ el.removeAttribute("class");
9437
+ } else if (isSVG) {
9438
+ el.setAttribute("class", value);
9439
+ } else {
9440
+ el.className = value;
9441
+ }
9442
+ }
9443
+
9444
+ const vShowOldKey = Symbol("_vod");
9445
+ const vShow = {
9446
+ beforeMount(el, { value }, { transition }) {
9447
+ el[vShowOldKey] = el.style.display === "none" ? "" : el.style.display;
9448
+ if (transition && value) {
9449
+ transition.beforeEnter(el);
9450
+ } else {
9451
+ setDisplay(el, value);
9452
+ }
9453
+ },
9454
+ mounted(el, { value }, { transition }) {
9455
+ if (transition && value) {
9456
+ transition.enter(el);
9457
+ }
9458
+ },
9459
+ updated(el, { value, oldValue }, { transition }) {
9460
+ if (!value === !oldValue)
9461
+ return;
9462
+ if (transition) {
9463
+ if (value) {
9464
+ transition.beforeEnter(el);
9465
+ setDisplay(el, true);
9466
+ transition.enter(el);
9467
+ } else {
9468
+ transition.leave(el, () => {
9469
+ setDisplay(el, false);
9470
+ });
9471
+ }
9472
+ } else {
9473
+ setDisplay(el, value);
9474
+ }
9475
+ },
9476
+ beforeUnmount(el, { value }) {
9477
+ setDisplay(el, value);
9478
+ }
9479
+ };
9480
+ function setDisplay(el, value) {
9481
+ el.style.display = value ? el[vShowOldKey] : "none";
9482
+ }
9483
+
9484
+ function patchStyle(el, prev, next) {
9485
+ const style = el.style;
9486
+ const isCssString = isString(next);
9487
+ if (next && !isCssString) {
9488
+ if (prev && !isString(prev)) {
9489
+ for (const key in prev) {
9490
+ if (next[key] == null) {
9491
+ setStyle(style, key, "");
9492
+ }
9493
+ }
9494
+ }
9495
+ for (const key in next) {
9496
+ setStyle(style, key, next[key]);
9497
+ }
9498
+ } else {
9499
+ const currentDisplay = style.display;
9500
+ if (isCssString) {
9501
+ if (prev !== next) {
9502
+ style.cssText = next;
9503
+ }
9504
+ } else if (prev) {
9505
+ el.removeAttribute("style");
9506
+ }
9507
+ if (vShowOldKey in el) {
9508
+ style.display = currentDisplay;
9509
+ }
9510
+ }
9511
+ }
9512
+ const semicolonRE = /[^\\];\s*$/;
9513
+ const importantRE = /\s*!important$/;
9514
+ function setStyle(style, name, val) {
9515
+ if (isArray(val)) {
9516
+ val.forEach((v) => setStyle(style, name, v));
9517
+ } else {
9213
9518
  if (val == null)
9214
9519
  val = "";
9215
9520
  {
@@ -9328,8 +9633,9 @@ Component that was made reactive: `,
9328
9633
  function removeEventListener(el, event, handler, options) {
9329
9634
  el.removeEventListener(event, handler, options);
9330
9635
  }
9636
+ const veiKey = Symbol("_vei");
9331
9637
  function patchEvent(el, rawName, prevValue, nextValue, instance = null) {
9332
- const invokers = el._vei || (el._vei = {});
9638
+ const invokers = el[veiKey] || (el[veiKey] = {});
9333
9639
  const existingInvoker = invokers[rawName];
9334
9640
  if (nextValue && existingInvoker) {
9335
9641
  existingInvoker.value = nextValue;
@@ -9449,6 +9755,8 @@ Component that was made reactive: `,
9449
9755
  return key in el;
9450
9756
  }
9451
9757
 
9758
+ /*! #__NO_SIDE_EFFECTS__ */
9759
+ // @__NO_SIDE_EFFECTS__
9452
9760
  function defineCustomElement(options, hydrate2) {
9453
9761
  const Comp = defineComponent(options);
9454
9762
  class VueCustomElement extends VueElement {
@@ -9459,8 +9767,9 @@ Component that was made reactive: `,
9459
9767
  VueCustomElement.def = Comp;
9460
9768
  return VueCustomElement;
9461
9769
  }
9462
- const defineSSRCustomElement = (options) => {
9463
- return defineCustomElement(options, hydrate);
9770
+ /*! #__NO_SIDE_EFFECTS__ */
9771
+ const defineSSRCustomElement = /* @__NO_SIDE_EFFECTS__ */ (options) => {
9772
+ return /* @__PURE__ */ defineCustomElement(options, hydrate);
9464
9773
  };
9465
9774
  const BaseClass = typeof HTMLElement !== "undefined" ? HTMLElement : class {
9466
9775
  };
@@ -9476,6 +9785,7 @@ Component that was made reactive: `,
9476
9785
  this._connected = false;
9477
9786
  this._resolved = false;
9478
9787
  this._numberProps = null;
9788
+ this._ob = null;
9479
9789
  if (this.shadowRoot && hydrate2) {
9480
9790
  hydrate2(this._createVNode(), this.shadowRoot);
9481
9791
  } else {
@@ -9502,6 +9812,10 @@ Component that was made reactive: `,
9502
9812
  }
9503
9813
  disconnectedCallback() {
9504
9814
  this._connected = false;
9815
+ if (this._ob) {
9816
+ this._ob.disconnect();
9817
+ this._ob = null;
9818
+ }
9505
9819
  nextTick(() => {
9506
9820
  if (!this._connected) {
9507
9821
  render(null, this.shadowRoot);
@@ -9517,11 +9831,12 @@ Component that was made reactive: `,
9517
9831
  for (let i = 0; i < this.attributes.length; i++) {
9518
9832
  this._setAttr(this.attributes[i].name);
9519
9833
  }
9520
- new MutationObserver((mutations) => {
9834
+ this._ob = new MutationObserver((mutations) => {
9521
9835
  for (const m of mutations) {
9522
9836
  this._setAttr(m.attributeName);
9523
9837
  }
9524
- }).observe(this, { attributes: true });
9838
+ });
9839
+ this._ob.observe(this, { attributes: true });
9525
9840
  const resolve = (def, isAsync = false) => {
9526
9841
  const { props, styles } = def;
9527
9842
  let numberProps;
@@ -9730,274 +10045,10 @@ Component that was made reactive: `,
9730
10045
  }
9731
10046
  }
9732
10047
 
9733
- const TRANSITION$1 = "transition";
9734
- const ANIMATION = "animation";
9735
- const Transition = (props, { slots }) => h(BaseTransition, resolveTransitionProps(props), slots);
9736
- Transition.displayName = "Transition";
9737
- const DOMTransitionPropsValidators = {
9738
- name: String,
9739
- type: String,
9740
- css: {
9741
- type: Boolean,
9742
- default: true
9743
- },
9744
- duration: [String, Number, Object],
9745
- enterFromClass: String,
9746
- enterActiveClass: String,
9747
- enterToClass: String,
9748
- appearFromClass: String,
9749
- appearActiveClass: String,
9750
- appearToClass: String,
9751
- leaveFromClass: String,
9752
- leaveActiveClass: String,
9753
- leaveToClass: String
9754
- };
9755
- const TransitionPropsValidators = Transition.props = /* @__PURE__ */ extend(
9756
- {},
9757
- BaseTransitionPropsValidators,
9758
- DOMTransitionPropsValidators
9759
- );
9760
- const callHook = (hook, args = []) => {
9761
- if (isArray(hook)) {
9762
- hook.forEach((h2) => h2(...args));
9763
- } else if (hook) {
9764
- hook(...args);
9765
- }
9766
- };
9767
- const hasExplicitCallback = (hook) => {
9768
- return hook ? isArray(hook) ? hook.some((h2) => h2.length > 1) : hook.length > 1 : false;
9769
- };
9770
- function resolveTransitionProps(rawProps) {
9771
- const baseProps = {};
9772
- for (const key in rawProps) {
9773
- if (!(key in DOMTransitionPropsValidators)) {
9774
- baseProps[key] = rawProps[key];
9775
- }
9776
- }
9777
- if (rawProps.css === false) {
9778
- return baseProps;
9779
- }
9780
- const {
9781
- name = "v",
9782
- type,
9783
- duration,
9784
- enterFromClass = `${name}-enter-from`,
9785
- enterActiveClass = `${name}-enter-active`,
9786
- enterToClass = `${name}-enter-to`,
9787
- appearFromClass = enterFromClass,
9788
- appearActiveClass = enterActiveClass,
9789
- appearToClass = enterToClass,
9790
- leaveFromClass = `${name}-leave-from`,
9791
- leaveActiveClass = `${name}-leave-active`,
9792
- leaveToClass = `${name}-leave-to`
9793
- } = rawProps;
9794
- const durations = normalizeDuration(duration);
9795
- const enterDuration = durations && durations[0];
9796
- const leaveDuration = durations && durations[1];
9797
- const {
9798
- onBeforeEnter,
9799
- onEnter,
9800
- onEnterCancelled,
9801
- onLeave,
9802
- onLeaveCancelled,
9803
- onBeforeAppear = onBeforeEnter,
9804
- onAppear = onEnter,
9805
- onAppearCancelled = onEnterCancelled
9806
- } = baseProps;
9807
- const finishEnter = (el, isAppear, done) => {
9808
- removeTransitionClass(el, isAppear ? appearToClass : enterToClass);
9809
- removeTransitionClass(el, isAppear ? appearActiveClass : enterActiveClass);
9810
- done && done();
9811
- };
9812
- const finishLeave = (el, done) => {
9813
- el._isLeaving = false;
9814
- removeTransitionClass(el, leaveFromClass);
9815
- removeTransitionClass(el, leaveToClass);
9816
- removeTransitionClass(el, leaveActiveClass);
9817
- done && done();
9818
- };
9819
- const makeEnterHook = (isAppear) => {
9820
- return (el, done) => {
9821
- const hook = isAppear ? onAppear : onEnter;
9822
- const resolve = () => finishEnter(el, isAppear, done);
9823
- callHook(hook, [el, resolve]);
9824
- nextFrame(() => {
9825
- removeTransitionClass(el, isAppear ? appearFromClass : enterFromClass);
9826
- addTransitionClass(el, isAppear ? appearToClass : enterToClass);
9827
- if (!hasExplicitCallback(hook)) {
9828
- whenTransitionEnds(el, type, enterDuration, resolve);
9829
- }
9830
- });
9831
- };
9832
- };
9833
- return extend(baseProps, {
9834
- onBeforeEnter(el) {
9835
- callHook(onBeforeEnter, [el]);
9836
- addTransitionClass(el, enterFromClass);
9837
- addTransitionClass(el, enterActiveClass);
9838
- },
9839
- onBeforeAppear(el) {
9840
- callHook(onBeforeAppear, [el]);
9841
- addTransitionClass(el, appearFromClass);
9842
- addTransitionClass(el, appearActiveClass);
9843
- },
9844
- onEnter: makeEnterHook(false),
9845
- onAppear: makeEnterHook(true),
9846
- onLeave(el, done) {
9847
- el._isLeaving = true;
9848
- const resolve = () => finishLeave(el, done);
9849
- addTransitionClass(el, leaveFromClass);
9850
- forceReflow();
9851
- addTransitionClass(el, leaveActiveClass);
9852
- nextFrame(() => {
9853
- if (!el._isLeaving) {
9854
- return;
9855
- }
9856
- removeTransitionClass(el, leaveFromClass);
9857
- addTransitionClass(el, leaveToClass);
9858
- if (!hasExplicitCallback(onLeave)) {
9859
- whenTransitionEnds(el, type, leaveDuration, resolve);
9860
- }
9861
- });
9862
- callHook(onLeave, [el, resolve]);
9863
- },
9864
- onEnterCancelled(el) {
9865
- finishEnter(el, false);
9866
- callHook(onEnterCancelled, [el]);
9867
- },
9868
- onAppearCancelled(el) {
9869
- finishEnter(el, true);
9870
- callHook(onAppearCancelled, [el]);
9871
- },
9872
- onLeaveCancelled(el) {
9873
- finishLeave(el);
9874
- callHook(onLeaveCancelled, [el]);
9875
- }
9876
- });
9877
- }
9878
- function normalizeDuration(duration) {
9879
- if (duration == null) {
9880
- return null;
9881
- } else if (isObject(duration)) {
9882
- return [NumberOf(duration.enter), NumberOf(duration.leave)];
9883
- } else {
9884
- const n = NumberOf(duration);
9885
- return [n, n];
9886
- }
9887
- }
9888
- function NumberOf(val) {
9889
- const res = toNumber(val);
9890
- {
9891
- assertNumber(res, "<transition> explicit duration");
9892
- }
9893
- return res;
9894
- }
9895
- function addTransitionClass(el, cls) {
9896
- cls.split(/\s+/).forEach((c) => c && el.classList.add(c));
9897
- (el._vtc || (el._vtc = /* @__PURE__ */ new Set())).add(cls);
9898
- }
9899
- function removeTransitionClass(el, cls) {
9900
- cls.split(/\s+/).forEach((c) => c && el.classList.remove(c));
9901
- const { _vtc } = el;
9902
- if (_vtc) {
9903
- _vtc.delete(cls);
9904
- if (!_vtc.size) {
9905
- el._vtc = void 0;
9906
- }
9907
- }
9908
- }
9909
- function nextFrame(cb) {
9910
- requestAnimationFrame(() => {
9911
- requestAnimationFrame(cb);
9912
- });
9913
- }
9914
- let endId = 0;
9915
- function whenTransitionEnds(el, expectedType, explicitTimeout, resolve) {
9916
- const id = el._endId = ++endId;
9917
- const resolveIfNotStale = () => {
9918
- if (id === el._endId) {
9919
- resolve();
9920
- }
9921
- };
9922
- if (explicitTimeout) {
9923
- return setTimeout(resolveIfNotStale, explicitTimeout);
9924
- }
9925
- const { type, timeout, propCount } = getTransitionInfo(el, expectedType);
9926
- if (!type) {
9927
- return resolve();
9928
- }
9929
- const endEvent = type + "end";
9930
- let ended = 0;
9931
- const end = () => {
9932
- el.removeEventListener(endEvent, onEnd);
9933
- resolveIfNotStale();
9934
- };
9935
- const onEnd = (e) => {
9936
- if (e.target === el && ++ended >= propCount) {
9937
- end();
9938
- }
9939
- };
9940
- setTimeout(() => {
9941
- if (ended < propCount) {
9942
- end();
9943
- }
9944
- }, timeout + 1);
9945
- el.addEventListener(endEvent, onEnd);
9946
- }
9947
- function getTransitionInfo(el, expectedType) {
9948
- const styles = window.getComputedStyle(el);
9949
- const getStyleProperties = (key) => (styles[key] || "").split(", ");
9950
- const transitionDelays = getStyleProperties(`${TRANSITION$1}Delay`);
9951
- const transitionDurations = getStyleProperties(`${TRANSITION$1}Duration`);
9952
- const transitionTimeout = getTimeout(transitionDelays, transitionDurations);
9953
- const animationDelays = getStyleProperties(`${ANIMATION}Delay`);
9954
- const animationDurations = getStyleProperties(`${ANIMATION}Duration`);
9955
- const animationTimeout = getTimeout(animationDelays, animationDurations);
9956
- let type = null;
9957
- let timeout = 0;
9958
- let propCount = 0;
9959
- if (expectedType === TRANSITION$1) {
9960
- if (transitionTimeout > 0) {
9961
- type = TRANSITION$1;
9962
- timeout = transitionTimeout;
9963
- propCount = transitionDurations.length;
9964
- }
9965
- } else if (expectedType === ANIMATION) {
9966
- if (animationTimeout > 0) {
9967
- type = ANIMATION;
9968
- timeout = animationTimeout;
9969
- propCount = animationDurations.length;
9970
- }
9971
- } else {
9972
- timeout = Math.max(transitionTimeout, animationTimeout);
9973
- type = timeout > 0 ? transitionTimeout > animationTimeout ? TRANSITION$1 : ANIMATION : null;
9974
- propCount = type ? type === TRANSITION$1 ? transitionDurations.length : animationDurations.length : 0;
9975
- }
9976
- const hasTransform = type === TRANSITION$1 && /\b(transform|all)(,|$)/.test(
9977
- getStyleProperties(`${TRANSITION$1}Property`).toString()
9978
- );
9979
- return {
9980
- type,
9981
- timeout,
9982
- propCount,
9983
- hasTransform
9984
- };
9985
- }
9986
- function getTimeout(delays, durations) {
9987
- while (delays.length < durations.length) {
9988
- delays = delays.concat(delays);
9989
- }
9990
- return Math.max(...durations.map((d, i) => toMs(d) + toMs(delays[i])));
9991
- }
9992
- function toMs(s) {
9993
- return Number(s.slice(0, -1).replace(",", ".")) * 1e3;
9994
- }
9995
- function forceReflow() {
9996
- return document.body.offsetHeight;
9997
- }
9998
-
9999
10048
  const positionMap = /* @__PURE__ */ new WeakMap();
10000
10049
  const newPositionMap = /* @__PURE__ */ new WeakMap();
10050
+ const moveCbKey = Symbol("_moveCb");
10051
+ const enterCbKey = Symbol("_enterCb");
10001
10052
  const TransitionGroupImpl = {
10002
10053
  name: "TransitionGroup",
10003
10054
  props: /* @__PURE__ */ extend({}, TransitionPropsValidators, {
@@ -10030,13 +10081,13 @@ Component that was made reactive: `,
10030
10081
  const style = el.style;
10031
10082
  addTransitionClass(el, moveClass);
10032
10083
  style.transform = style.webkitTransform = style.transitionDuration = "";
10033
- const cb = el._moveCb = (e) => {
10084
+ const cb = el[moveCbKey] = (e) => {
10034
10085
  if (e && e.target !== el) {
10035
10086
  return;
10036
10087
  }
10037
10088
  if (!e || /transform$/.test(e.propertyName)) {
10038
10089
  el.removeEventListener("transitionend", cb);
10039
- el._moveCb = null;
10090
+ el[moveCbKey] = null;
10040
10091
  removeTransitionClass(el, moveClass);
10041
10092
  }
10042
10093
  };
@@ -10079,11 +10130,11 @@ Component that was made reactive: `,
10079
10130
  const TransitionGroup = TransitionGroupImpl;
10080
10131
  function callPendingCbs(c) {
10081
10132
  const el = c.el;
10082
- if (el._moveCb) {
10083
- el._moveCb();
10133
+ if (el[moveCbKey]) {
10134
+ el[moveCbKey]();
10084
10135
  }
10085
- if (el._enterCb) {
10086
- el._enterCb();
10136
+ if (el[enterCbKey]) {
10137
+ el[enterCbKey]();
10087
10138
  }
10088
10139
  }
10089
10140
  function recordPosition(c) {
@@ -10103,8 +10154,9 @@ Component that was made reactive: `,
10103
10154
  }
10104
10155
  function hasCSSTransform(el, root, moveClass) {
10105
10156
  const clone = el.cloneNode();
10106
- if (el._vtc) {
10107
- el._vtc.forEach((cls) => {
10157
+ const _vtc = el[vtcKey];
10158
+ if (_vtc) {
10159
+ _vtc.forEach((cls) => {
10108
10160
  cls.split(/\s+/).forEach((c) => c && clone.classList.remove(c));
10109
10161
  });
10110
10162
  }
@@ -10131,9 +10183,10 @@ Component that was made reactive: `,
10131
10183
  target.dispatchEvent(new Event("input"));
10132
10184
  }
10133
10185
  }
10186
+ const assignKey = Symbol("_assign");
10134
10187
  const vModelText = {
10135
10188
  created(el, { modifiers: { lazy, trim, number } }, vnode) {
10136
- el._assign = getModelAssigner(vnode);
10189
+ el[assignKey] = getModelAssigner(vnode);
10137
10190
  const castToNumber = number || vnode.props && vnode.props.type === "number";
10138
10191
  addEventListener(el, lazy ? "change" : "input", (e) => {
10139
10192
  if (e.target.composing)
@@ -10145,7 +10198,7 @@ Component that was made reactive: `,
10145
10198
  if (castToNumber) {
10146
10199
  domValue = looseToNumber(domValue);
10147
10200
  }
10148
- el._assign(domValue);
10201
+ el[assignKey](domValue);
10149
10202
  });
10150
10203
  if (trim) {
10151
10204
  addEventListener(el, "change", () => {
@@ -10163,7 +10216,7 @@ Component that was made reactive: `,
10163
10216
  el.value = value == null ? "" : value;
10164
10217
  },
10165
10218
  beforeUpdate(el, { value, modifiers: { lazy, trim, number } }, vnode) {
10166
- el._assign = getModelAssigner(vnode);
10219
+ el[assignKey] = getModelAssigner(vnode);
10167
10220
  if (el.composing)
10168
10221
  return;
10169
10222
  if (document.activeElement === el && el.type !== "range") {
@@ -10187,12 +10240,12 @@ Component that was made reactive: `,
10187
10240
  // #4096 array checkboxes need to be deep traversed
10188
10241
  deep: true,
10189
10242
  created(el, _, vnode) {
10190
- el._assign = getModelAssigner(vnode);
10243
+ el[assignKey] = getModelAssigner(vnode);
10191
10244
  addEventListener(el, "change", () => {
10192
10245
  const modelValue = el._modelValue;
10193
10246
  const elementValue = getValue(el);
10194
10247
  const checked = el.checked;
10195
- const assign = el._assign;
10248
+ const assign = el[assignKey];
10196
10249
  if (isArray(modelValue)) {
10197
10250
  const index = looseIndexOf(modelValue, elementValue);
10198
10251
  const found = index !== -1;
@@ -10219,7 +10272,7 @@ Component that was made reactive: `,
10219
10272
  // set initial checked on mount to wait for true-value/false-value
10220
10273
  mounted: setChecked,
10221
10274
  beforeUpdate(el, binding, vnode) {
10222
- el._assign = getModelAssigner(vnode);
10275
+ el[assignKey] = getModelAssigner(vnode);
10223
10276
  setChecked(el, binding, vnode);
10224
10277
  }
10225
10278
  };
@@ -10236,13 +10289,13 @@ Component that was made reactive: `,
10236
10289
  const vModelRadio = {
10237
10290
  created(el, { value }, vnode) {
10238
10291
  el.checked = looseEqual(value, vnode.props.value);
10239
- el._assign = getModelAssigner(vnode);
10292
+ el[assignKey] = getModelAssigner(vnode);
10240
10293
  addEventListener(el, "change", () => {
10241
- el._assign(getValue(el));
10294
+ el[assignKey](getValue(el));
10242
10295
  });
10243
10296
  },
10244
10297
  beforeUpdate(el, { value, oldValue }, vnode) {
10245
- el._assign = getModelAssigner(vnode);
10298
+ el[assignKey] = getModelAssigner(vnode);
10246
10299
  if (value !== oldValue) {
10247
10300
  el.checked = looseEqual(value, vnode.props.value);
10248
10301
  }
@@ -10257,11 +10310,11 @@ Component that was made reactive: `,
10257
10310
  const selectedVal = Array.prototype.filter.call(el.options, (o) => o.selected).map(
10258
10311
  (o) => number ? looseToNumber(getValue(o)) : getValue(o)
10259
10312
  );
10260
- el._assign(
10313
+ el[assignKey](
10261
10314
  el.multiple ? isSetModel ? new Set(selectedVal) : selectedVal : selectedVal[0]
10262
10315
  );
10263
10316
  });
10264
- el._assign = getModelAssigner(vnode);
10317
+ el[assignKey] = getModelAssigner(vnode);
10265
10318
  },
10266
10319
  // set value in mounted & updated because <select> relies on its children
10267
10320
  // <option>s.
@@ -10269,7 +10322,7 @@ Component that was made reactive: `,
10269
10322
  setSelected(el, value);
10270
10323
  },
10271
10324
  beforeUpdate(el, _binding, vnode) {
10272
- el._assign = getModelAssigner(vnode);
10325
+ el[assignKey] = getModelAssigner(vnode);
10273
10326
  },
10274
10327
  updated(el, { value }) {
10275
10328
  setSelected(el, value);
@@ -10396,45 +10449,6 @@ Component that was made reactive: `,
10396
10449
  };
10397
10450
  };
10398
10451
 
10399
- const vShow = {
10400
- beforeMount(el, { value }, { transition }) {
10401
- el._vod = el.style.display === "none" ? "" : el.style.display;
10402
- if (transition && value) {
10403
- transition.beforeEnter(el);
10404
- } else {
10405
- setDisplay(el, value);
10406
- }
10407
- },
10408
- mounted(el, { value }, { transition }) {
10409
- if (transition && value) {
10410
- transition.enter(el);
10411
- }
10412
- },
10413
- updated(el, { value, oldValue }, { transition }) {
10414
- if (!value === !oldValue)
10415
- return;
10416
- if (transition) {
10417
- if (value) {
10418
- transition.beforeEnter(el);
10419
- setDisplay(el, true);
10420
- transition.enter(el);
10421
- } else {
10422
- transition.leave(el, () => {
10423
- setDisplay(el, false);
10424
- });
10425
- }
10426
- } else {
10427
- setDisplay(el, value);
10428
- }
10429
- },
10430
- beforeUnmount(el, { value }) {
10431
- setDisplay(el, value);
10432
- }
10433
- };
10434
- function setDisplay(el, value) {
10435
- el.style.display = value ? el._vod : "none";
10436
- }
10437
-
10438
10452
  const rendererOptions = /* @__PURE__ */ extend({ patchProp }, nodeOps);
10439
10453
  let renderer;
10440
10454
  let enabledHydration = false;
@@ -11212,7 +11226,7 @@ Use a v-bind binding combined with a v-on listener that emits update:x event ins
11212
11226
  continue;
11213
11227
  } else if (/[a-z]/i.test(s[2])) {
11214
11228
  emitError(context, 23);
11215
- parseTag(context, TagType.End, parent);
11229
+ parseTag(context, 1 /* End */, parent);
11216
11230
  continue;
11217
11231
  } else {
11218
11232
  emitError(
@@ -11360,7 +11374,7 @@ Use a v-bind binding combined with a v-on listener that emits update:x event ins
11360
11374
  const wasInPre = context.inPre;
11361
11375
  const wasInVPre = context.inVPre;
11362
11376
  const parent = last(ancestors);
11363
- const element = parseTag(context, TagType.Start, parent);
11377
+ const element = parseTag(context, 0 /* Start */, parent);
11364
11378
  const isPreBoundary = context.inPre && !wasInPre;
11365
11379
  const isVPreBoundary = context.inVPre && !wasInVPre;
11366
11380
  if (element.isSelfClosing || context.options.isVoidTag(element.tag)) {
@@ -11378,7 +11392,7 @@ Use a v-bind binding combined with a v-on listener that emits update:x event ins
11378
11392
  ancestors.pop();
11379
11393
  element.children = children;
11380
11394
  if (startsWithEndTagOpen(context.source, element.tag)) {
11381
- parseTag(context, TagType.End, parent);
11395
+ parseTag(context, 1 /* End */, parent);
11382
11396
  } else {
11383
11397
  emitError(context, 24, 0, element.loc.start);
11384
11398
  if (context.source.length === 0 && element.tag.toLowerCase() === "script") {
@@ -11397,11 +11411,6 @@ Use a v-bind binding combined with a v-on listener that emits update:x event ins
11397
11411
  }
11398
11412
  return element;
11399
11413
  }
11400
- var TagType = /* @__PURE__ */ ((TagType2) => {
11401
- TagType2[TagType2["Start"] = 0] = "Start";
11402
- TagType2[TagType2["End"] = 1] = "End";
11403
- return TagType2;
11404
- })(TagType || {});
11405
11414
  const isSpecialTemplateDirective = /* @__PURE__ */ makeMap(
11406
11415
  `if,else,else-if,for,slot`
11407
11416
  );
@@ -12116,7 +12125,7 @@ Use a v-bind binding combined with a v-on listener that emits update:x event ins
12116
12125
  directives: /* @__PURE__ */ new Set(),
12117
12126
  hoists: [],
12118
12127
  imports: [],
12119
- constantCache: /* @__PURE__ */ new Map(),
12128
+ constantCache: /* @__PURE__ */ new WeakMap(),
12120
12129
  temps: 0,
12121
12130
  cached: 0,
12122
12131
  identifiers: /* @__PURE__ */ Object.create(null),