@vitejs/devtools 0.0.0-alpha.8 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/DockIcon-Jbdv1CYn.js +1720 -0
- package/dist/DockStandalone-Dd6Dcd5B.js +81 -0
- package/dist/LogItem-CfTxUV6A.js +204 -0
- package/dist/ToastOverlay-BVErqkif.js +1048 -0
- package/dist/ViewBuiltinLogs-DQLxnQ1c.js +427 -0
- package/dist/ViewBuiltinTerminals-B83FB-cT.js +10407 -0
- package/dist/cli-commands-DRp01A04.js +178 -0
- package/dist/cli-commands.d.ts +18 -0
- package/dist/cli-commands.js +3 -0
- package/dist/cli.js +5 -94
- package/dist/client/inject.js +170 -18
- package/dist/client/standalone/assets/DockStandalone-B8W-HO8N.js +1 -0
- package/dist/client/standalone/assets/LogItem-B-ayIBi6.js +1 -0
- package/dist/client/standalone/assets/ViewBuiltinLogs-B8M7lPbt.js +1 -0
- package/dist/client/standalone/assets/ViewBuiltinTerminals-Dkd5qdlN.js +36 -0
- package/dist/client/standalone/assets/dist-ZC9UAo6H.js +1 -0
- package/dist/client/standalone/assets/index-6F2y1lxr.css +1 -0
- package/dist/client/standalone/assets/index-odNIfapG.js +4 -0
- package/dist/client/standalone/index.html +5 -3
- package/dist/client/webcomponents.d.ts +21656 -30
- package/dist/client/webcomponents.js +305 -423
- package/dist/config.d.ts +25 -0
- package/dist/config.js +14 -0
- package/dist/dirs.js +7 -3
- package/dist/{dist-BuuUhVT5.js → dist-3NIYLDlS.js} +2261 -936
- package/dist/index.d.ts +256 -14
- package/dist/index.js +2 -4
- package/dist/plugins-6tW2SoNv.js +2115 -0
- package/dist/popup-EDv_a9nQ.js +358 -0
- package/dist/utils--qjmgani.js +6 -0
- package/package.json +51 -21
- package/dist/client/standalone/assets/index-DULlvzQC.css +0 -1
- package/dist/client/standalone/assets/index-Dpd5aqgb.js +0 -7
- package/dist/dirs-DcSK9l9L.js +0 -9
- package/dist/plugins-Cj9DSRH1.js +0 -1348
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
//#region ../../node_modules/.pnpm/@vue+shared@3.5.
|
|
1
|
+
//#region ../../node_modules/.pnpm/@vue+shared@3.5.30/node_modules/@vue/shared/dist/shared.esm-bundler.js
|
|
2
2
|
/**
|
|
3
|
-
* @vue/shared v3.5.
|
|
3
|
+
* @vue/shared v3.5.30
|
|
4
4
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
5
5
|
* @license MIT
|
|
6
6
|
**/
|
|
7
7
|
/* @__NO_SIDE_EFFECTS__ */
|
|
8
8
|
function makeMap(str) {
|
|
9
|
-
const map
|
|
10
|
-
for (const key of str.split(",")) map
|
|
11
|
-
return (val) => val in map
|
|
9
|
+
const map = /* @__PURE__ */ Object.create(null);
|
|
10
|
+
for (const key of str.split(",")) map[key] = 1;
|
|
11
|
+
return (val) => val in map;
|
|
12
12
|
}
|
|
13
13
|
const EMPTY_OBJ = !!(process.env.NODE_ENV !== "production") ? Object.freeze({}) : {};
|
|
14
14
|
const EMPTY_ARR = !!(process.env.NODE_ENV !== "production") ? Object.freeze([]) : [];
|
|
@@ -22,10 +22,11 @@ const remove = (arr, el) => {
|
|
|
22
22
|
if (i > -1) arr.splice(i, 1);
|
|
23
23
|
};
|
|
24
24
|
const hasOwnProperty$1 = Object.prototype.hasOwnProperty;
|
|
25
|
-
const hasOwn
|
|
25
|
+
const hasOwn = (val, key) => hasOwnProperty$1.call(val, key);
|
|
26
26
|
const isArray = Array.isArray;
|
|
27
27
|
const isMap = (val) => toTypeString(val) === "[object Map]";
|
|
28
28
|
const isSet = (val) => toTypeString(val) === "[object Set]";
|
|
29
|
+
const isDate = (val) => toTypeString(val) === "[object Date]";
|
|
29
30
|
const isFunction = (val) => typeof val === "function";
|
|
30
31
|
const isString = (val) => typeof val === "string";
|
|
31
32
|
const isSymbol = (val) => typeof val === "symbol";
|
|
@@ -128,10 +129,40 @@ const isSVGTag = /* @__PURE__ */ makeMap(SVG_TAGS);
|
|
|
128
129
|
const isMathMLTag = /* @__PURE__ */ makeMap(MATH_TAGS);
|
|
129
130
|
const specialBooleanAttrs = `itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly`;
|
|
130
131
|
const isSpecialBooleanAttr = /* @__PURE__ */ makeMap(specialBooleanAttrs);
|
|
131
|
-
|
|
132
|
+
specialBooleanAttrs + "";
|
|
132
133
|
function includeBooleanAttr(value) {
|
|
133
134
|
return !!value || value === "";
|
|
134
135
|
}
|
|
136
|
+
function looseCompareArrays(a, b) {
|
|
137
|
+
if (a.length !== b.length) return false;
|
|
138
|
+
let equal = true;
|
|
139
|
+
for (let i = 0; equal && i < a.length; i++) equal = looseEqual(a[i], b[i]);
|
|
140
|
+
return equal;
|
|
141
|
+
}
|
|
142
|
+
function looseEqual(a, b) {
|
|
143
|
+
if (a === b) return true;
|
|
144
|
+
let aValidType = isDate(a);
|
|
145
|
+
let bValidType = isDate(b);
|
|
146
|
+
if (aValidType || bValidType) return aValidType && bValidType ? a.getTime() === b.getTime() : false;
|
|
147
|
+
aValidType = isSymbol(a);
|
|
148
|
+
bValidType = isSymbol(b);
|
|
149
|
+
if (aValidType || bValidType) return a === b;
|
|
150
|
+
aValidType = isArray(a);
|
|
151
|
+
bValidType = isArray(b);
|
|
152
|
+
if (aValidType || bValidType) return aValidType && bValidType ? looseCompareArrays(a, b) : false;
|
|
153
|
+
aValidType = isObject$1(a);
|
|
154
|
+
bValidType = isObject$1(b);
|
|
155
|
+
if (aValidType || bValidType) {
|
|
156
|
+
if (!aValidType || !bValidType) return false;
|
|
157
|
+
if (Object.keys(a).length !== Object.keys(b).length) return false;
|
|
158
|
+
for (const key in a) {
|
|
159
|
+
const aHasKey = a.hasOwnProperty(key);
|
|
160
|
+
const bHasKey = b.hasOwnProperty(key);
|
|
161
|
+
if (aHasKey && !bHasKey || !aHasKey && bHasKey || !looseEqual(a[key], b[key])) return false;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
return String(a) === String(b);
|
|
165
|
+
}
|
|
135
166
|
const isRef$1 = (val) => {
|
|
136
167
|
return !!(val && val["__v_isRef"] === true);
|
|
137
168
|
};
|
|
@@ -153,9 +184,13 @@ const stringifySymbol = (v, i = "") => {
|
|
|
153
184
|
var _a;
|
|
154
185
|
return isSymbol(v) ? `Symbol(${(_a = v.description) != null ? _a : i})` : v;
|
|
155
186
|
};
|
|
156
|
-
|
|
157
187
|
//#endregion
|
|
158
|
-
//#region ../../node_modules/.pnpm/@vue+reactivity@3.5.
|
|
188
|
+
//#region ../../node_modules/.pnpm/@vue+reactivity@3.5.30/node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js
|
|
189
|
+
/**
|
|
190
|
+
* @vue/reactivity v3.5.30
|
|
191
|
+
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
192
|
+
* @license MIT
|
|
193
|
+
**/
|
|
159
194
|
function warn$2(msg, ...args) {
|
|
160
195
|
console.warn(`[Vue warn] ${msg}`, ...args);
|
|
161
196
|
}
|
|
@@ -180,6 +215,7 @@ var EffectScope = class {
|
|
|
180
215
|
*/
|
|
181
216
|
this.cleanups = [];
|
|
182
217
|
this._isPaused = false;
|
|
218
|
+
this.__v_skip = true;
|
|
183
219
|
this.parent = activeEffectScope;
|
|
184
220
|
if (!detached && activeEffectScope) this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(this) - 1;
|
|
185
221
|
}
|
|
@@ -434,24 +470,24 @@ function isDirty(sub) {
|
|
|
434
470
|
if (sub._dirty) return true;
|
|
435
471
|
return false;
|
|
436
472
|
}
|
|
437
|
-
function refreshComputed(computed
|
|
438
|
-
if (computed
|
|
439
|
-
computed
|
|
440
|
-
if (computed
|
|
441
|
-
computed
|
|
442
|
-
if (!computed
|
|
443
|
-
computed
|
|
444
|
-
const dep = computed
|
|
473
|
+
function refreshComputed(computed) {
|
|
474
|
+
if (computed.flags & 4 && !(computed.flags & 16)) return;
|
|
475
|
+
computed.flags &= -17;
|
|
476
|
+
if (computed.globalVersion === globalVersion) return;
|
|
477
|
+
computed.globalVersion = globalVersion;
|
|
478
|
+
if (!computed.isSSR && computed.flags & 128 && (!computed.deps && !computed._dirty || !isDirty(computed))) return;
|
|
479
|
+
computed.flags |= 2;
|
|
480
|
+
const dep = computed.dep;
|
|
445
481
|
const prevSub = activeSub;
|
|
446
482
|
const prevShouldTrack = shouldTrack;
|
|
447
|
-
activeSub = computed
|
|
483
|
+
activeSub = computed;
|
|
448
484
|
shouldTrack = true;
|
|
449
485
|
try {
|
|
450
|
-
prepareDeps(computed
|
|
451
|
-
const value = computed
|
|
452
|
-
if (dep.version === 0 || hasChanged(value, computed
|
|
453
|
-
computed
|
|
454
|
-
computed
|
|
486
|
+
prepareDeps(computed);
|
|
487
|
+
const value = computed.fn(computed._value);
|
|
488
|
+
if (dep.version === 0 || hasChanged(value, computed._value)) {
|
|
489
|
+
computed.flags |= 128;
|
|
490
|
+
computed._value = value;
|
|
455
491
|
dep.version++;
|
|
456
492
|
}
|
|
457
493
|
} catch (err) {
|
|
@@ -460,8 +496,8 @@ function refreshComputed(computed$2) {
|
|
|
460
496
|
} finally {
|
|
461
497
|
activeSub = prevSub;
|
|
462
498
|
shouldTrack = prevShouldTrack;
|
|
463
|
-
cleanupDeps(computed
|
|
464
|
-
computed
|
|
499
|
+
cleanupDeps(computed);
|
|
500
|
+
computed.flags &= -3;
|
|
465
501
|
}
|
|
466
502
|
}
|
|
467
503
|
function removeSub(link, soft = false) {
|
|
@@ -528,8 +564,8 @@ var Link = class {
|
|
|
528
564
|
}
|
|
529
565
|
};
|
|
530
566
|
var Dep = class {
|
|
531
|
-
constructor(computed
|
|
532
|
-
this.computed = computed
|
|
567
|
+
constructor(computed) {
|
|
568
|
+
this.computed = computed;
|
|
533
569
|
this.version = 0;
|
|
534
570
|
/**
|
|
535
571
|
* Link between this dep and the current active effect
|
|
@@ -602,10 +638,10 @@ var Dep = class {
|
|
|
602
638
|
function addSub(link) {
|
|
603
639
|
link.dep.sc++;
|
|
604
640
|
if (link.sub.flags & 4) {
|
|
605
|
-
const computed
|
|
606
|
-
if (computed
|
|
607
|
-
computed
|
|
608
|
-
for (let l = computed
|
|
641
|
+
const computed = link.dep.computed;
|
|
642
|
+
if (computed && !link.dep.subs) {
|
|
643
|
+
computed.flags |= 20;
|
|
644
|
+
for (let l = computed.deps; l; l = l.nextDep) addSub(l);
|
|
609
645
|
}
|
|
610
646
|
const currentTail = link.dep.subs;
|
|
611
647
|
if (currentTail !== link) {
|
|
@@ -617,9 +653,9 @@ function addSub(link) {
|
|
|
617
653
|
}
|
|
618
654
|
}
|
|
619
655
|
const targetMap = /* @__PURE__ */ new WeakMap();
|
|
620
|
-
const ITERATE_KEY = Symbol(!!(process.env.NODE_ENV !== "production") ? "Object iterate" : "");
|
|
621
|
-
const MAP_KEY_ITERATE_KEY = Symbol(!!(process.env.NODE_ENV !== "production") ? "Map keys iterate" : "");
|
|
622
|
-
const ARRAY_ITERATE_KEY = Symbol(!!(process.env.NODE_ENV !== "production") ? "Array iterate" : "");
|
|
656
|
+
const ITERATE_KEY = /* @__PURE__ */ Symbol(!!(process.env.NODE_ENV !== "production") ? "Object iterate" : "");
|
|
657
|
+
const MAP_KEY_ITERATE_KEY = /* @__PURE__ */ Symbol(!!(process.env.NODE_ENV !== "production") ? "Map keys iterate" : "");
|
|
658
|
+
const ARRAY_ITERATE_KEY = /* @__PURE__ */ Symbol(!!(process.env.NODE_ENV !== "production") ? "Array iterate" : "");
|
|
623
659
|
function track(target, type, key) {
|
|
624
660
|
if (shouldTrack && activeSub) {
|
|
625
661
|
let depsMap = targetMap.get(target);
|
|
@@ -694,26 +730,30 @@ function getDepFromReactive(object, key) {
|
|
|
694
730
|
return depMap && depMap.get(key);
|
|
695
731
|
}
|
|
696
732
|
function reactiveReadArray(array) {
|
|
697
|
-
const raw = toRaw(array);
|
|
733
|
+
const raw = /* @__PURE__ */ toRaw(array);
|
|
698
734
|
if (raw === array) return raw;
|
|
699
735
|
track(raw, "iterate", ARRAY_ITERATE_KEY);
|
|
700
|
-
return isShallow(array) ? raw : raw.map(toReactive);
|
|
736
|
+
return /* @__PURE__ */ isShallow(array) ? raw : raw.map(toReactive);
|
|
701
737
|
}
|
|
702
738
|
function shallowReadArray(arr) {
|
|
703
|
-
track(arr = toRaw(arr), "iterate", ARRAY_ITERATE_KEY);
|
|
739
|
+
track(arr = /* @__PURE__ */ toRaw(arr), "iterate", ARRAY_ITERATE_KEY);
|
|
704
740
|
return arr;
|
|
705
741
|
}
|
|
742
|
+
function toWrapped(target, item) {
|
|
743
|
+
if (/* @__PURE__ */ isReadonly(target)) return /* @__PURE__ */ isReactive(target) ? toReadonly(toReactive(item)) : toReadonly(item);
|
|
744
|
+
return toReactive(item);
|
|
745
|
+
}
|
|
706
746
|
const arrayInstrumentations = {
|
|
707
747
|
__proto__: null,
|
|
708
748
|
[Symbol.iterator]() {
|
|
709
|
-
return iterator(this, Symbol.iterator,
|
|
749
|
+
return iterator(this, Symbol.iterator, (item) => toWrapped(this, item));
|
|
710
750
|
},
|
|
711
751
|
concat(...args) {
|
|
712
752
|
return reactiveReadArray(this).concat(...args.map((x) => isArray(x) ? reactiveReadArray(x) : x));
|
|
713
753
|
},
|
|
714
754
|
entries() {
|
|
715
755
|
return iterator(this, "entries", (value) => {
|
|
716
|
-
value[1] =
|
|
756
|
+
value[1] = toWrapped(this, value[1]);
|
|
717
757
|
return value;
|
|
718
758
|
});
|
|
719
759
|
},
|
|
@@ -721,16 +761,16 @@ const arrayInstrumentations = {
|
|
|
721
761
|
return apply(this, "every", fn, thisArg, void 0, arguments);
|
|
722
762
|
},
|
|
723
763
|
filter(fn, thisArg) {
|
|
724
|
-
return apply(this, "filter", fn, thisArg, (v) => v.map(
|
|
764
|
+
return apply(this, "filter", fn, thisArg, (v) => v.map((item) => toWrapped(this, item)), arguments);
|
|
725
765
|
},
|
|
726
766
|
find(fn, thisArg) {
|
|
727
|
-
return apply(this, "find", fn, thisArg,
|
|
767
|
+
return apply(this, "find", fn, thisArg, (item) => toWrapped(this, item), arguments);
|
|
728
768
|
},
|
|
729
769
|
findIndex(fn, thisArg) {
|
|
730
770
|
return apply(this, "findIndex", fn, thisArg, void 0, arguments);
|
|
731
771
|
},
|
|
732
772
|
findLast(fn, thisArg) {
|
|
733
|
-
return apply(this, "findLast", fn, thisArg,
|
|
773
|
+
return apply(this, "findLast", fn, thisArg, (item) => toWrapped(this, item), arguments);
|
|
734
774
|
},
|
|
735
775
|
findLastIndex(fn, thisArg) {
|
|
736
776
|
return apply(this, "findLastIndex", fn, thisArg, void 0, arguments);
|
|
@@ -787,13 +827,13 @@ const arrayInstrumentations = {
|
|
|
787
827
|
return noTracking(this, "unshift", args);
|
|
788
828
|
},
|
|
789
829
|
values() {
|
|
790
|
-
return iterator(this, "values",
|
|
830
|
+
return iterator(this, "values", (item) => toWrapped(this, item));
|
|
791
831
|
}
|
|
792
832
|
};
|
|
793
|
-
function iterator(self
|
|
794
|
-
const arr = shallowReadArray(self
|
|
833
|
+
function iterator(self, method, wrapValue) {
|
|
834
|
+
const arr = shallowReadArray(self);
|
|
795
835
|
const iter = arr[method]();
|
|
796
|
-
if (arr !== self
|
|
836
|
+
if (arr !== self && !/* @__PURE__ */ isShallow(self)) {
|
|
797
837
|
iter._next = iter.next;
|
|
798
838
|
iter.next = () => {
|
|
799
839
|
const result = iter._next();
|
|
@@ -804,53 +844,62 @@ function iterator(self$1, method, wrapValue) {
|
|
|
804
844
|
return iter;
|
|
805
845
|
}
|
|
806
846
|
const arrayProto = Array.prototype;
|
|
807
|
-
function apply(self
|
|
808
|
-
const arr = shallowReadArray(self
|
|
809
|
-
const needsWrap = arr !== self
|
|
847
|
+
function apply(self, method, fn, thisArg, wrappedRetFn, args) {
|
|
848
|
+
const arr = shallowReadArray(self);
|
|
849
|
+
const needsWrap = arr !== self && !/* @__PURE__ */ isShallow(self);
|
|
810
850
|
const methodFn = arr[method];
|
|
811
851
|
if (methodFn !== arrayProto[method]) {
|
|
812
|
-
const result2 = methodFn.apply(self
|
|
852
|
+
const result2 = methodFn.apply(self, args);
|
|
813
853
|
return needsWrap ? toReactive(result2) : result2;
|
|
814
854
|
}
|
|
815
855
|
let wrappedFn = fn;
|
|
816
|
-
if (arr !== self
|
|
856
|
+
if (arr !== self) {
|
|
817
857
|
if (needsWrap) wrappedFn = function(item, index) {
|
|
818
|
-
return fn.call(this,
|
|
858
|
+
return fn.call(this, toWrapped(self, item), index, self);
|
|
819
859
|
};
|
|
820
860
|
else if (fn.length > 2) wrappedFn = function(item, index) {
|
|
821
|
-
return fn.call(this, item, index, self
|
|
861
|
+
return fn.call(this, item, index, self);
|
|
822
862
|
};
|
|
823
863
|
}
|
|
824
864
|
const result = methodFn.call(arr, wrappedFn, thisArg);
|
|
825
865
|
return needsWrap && wrappedRetFn ? wrappedRetFn(result) : result;
|
|
826
866
|
}
|
|
827
|
-
function reduce(self
|
|
828
|
-
const arr = shallowReadArray(self
|
|
867
|
+
function reduce(self, method, fn, args) {
|
|
868
|
+
const arr = shallowReadArray(self);
|
|
869
|
+
const needsWrap = arr !== self && !/* @__PURE__ */ isShallow(self);
|
|
829
870
|
let wrappedFn = fn;
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
871
|
+
let wrapInitialAccumulator = false;
|
|
872
|
+
if (arr !== self) {
|
|
873
|
+
if (needsWrap) {
|
|
874
|
+
wrapInitialAccumulator = args.length === 0;
|
|
875
|
+
wrappedFn = function(acc, item, index) {
|
|
876
|
+
if (wrapInitialAccumulator) {
|
|
877
|
+
wrapInitialAccumulator = false;
|
|
878
|
+
acc = toWrapped(self, acc);
|
|
879
|
+
}
|
|
880
|
+
return fn.call(this, acc, toWrapped(self, item), index, self);
|
|
881
|
+
};
|
|
882
|
+
} else if (fn.length > 3) wrappedFn = function(acc, item, index) {
|
|
883
|
+
return fn.call(this, acc, item, index, self);
|
|
836
884
|
};
|
|
837
885
|
}
|
|
838
|
-
|
|
886
|
+
const result = arr[method](wrappedFn, ...args);
|
|
887
|
+
return wrapInitialAccumulator ? toWrapped(self, result) : result;
|
|
839
888
|
}
|
|
840
|
-
function searchProxy(self
|
|
841
|
-
const arr = toRaw(self
|
|
889
|
+
function searchProxy(self, method, args) {
|
|
890
|
+
const arr = /* @__PURE__ */ toRaw(self);
|
|
842
891
|
track(arr, "iterate", ARRAY_ITERATE_KEY);
|
|
843
892
|
const res = arr[method](...args);
|
|
844
|
-
if ((res === -1 || res === false) && isProxy(args[0])) {
|
|
845
|
-
args[0] = toRaw(args[0]);
|
|
893
|
+
if ((res === -1 || res === false) && /* @__PURE__ */ isProxy(args[0])) {
|
|
894
|
+
args[0] = /* @__PURE__ */ toRaw(args[0]);
|
|
846
895
|
return arr[method](...args);
|
|
847
896
|
}
|
|
848
897
|
return res;
|
|
849
898
|
}
|
|
850
|
-
function noTracking(self
|
|
899
|
+
function noTracking(self, method, args = []) {
|
|
851
900
|
pauseTracking();
|
|
852
901
|
startBatch();
|
|
853
|
-
const res = toRaw(self
|
|
902
|
+
const res = (/* @__PURE__ */ toRaw(self))[method].apply(self, args);
|
|
854
903
|
endBatch();
|
|
855
904
|
resetTracking();
|
|
856
905
|
return res;
|
|
@@ -859,7 +908,7 @@ const isNonTrackableKeys = /* @__PURE__ */ makeMap(`__proto__,__v_isRef,__isVue`
|
|
|
859
908
|
const builtInSymbols = new Set(/* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((key) => key !== "arguments" && key !== "caller").map((key) => Symbol[key]).filter(isSymbol));
|
|
860
909
|
function hasOwnProperty(key) {
|
|
861
910
|
if (!isSymbol(key)) key = String(key);
|
|
862
|
-
const obj = toRaw(this);
|
|
911
|
+
const obj = /* @__PURE__ */ toRaw(this);
|
|
863
912
|
track(obj, "has", key);
|
|
864
913
|
return obj.hasOwnProperty(key);
|
|
865
914
|
}
|
|
@@ -884,15 +933,15 @@ var BaseReactiveHandler = class {
|
|
|
884
933
|
if (targetIsArray && (fn = arrayInstrumentations[key])) return fn;
|
|
885
934
|
if (key === "hasOwnProperty") return hasOwnProperty;
|
|
886
935
|
}
|
|
887
|
-
const res = Reflect.get(target, key, isRef(target) ? target : receiver);
|
|
936
|
+
const res = Reflect.get(target, key, /* @__PURE__ */ isRef(target) ? target : receiver);
|
|
888
937
|
if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) return res;
|
|
889
938
|
if (!isReadonly2) track(target, "get", key);
|
|
890
939
|
if (isShallow2) return res;
|
|
891
|
-
if (isRef(res)) {
|
|
940
|
+
if (/* @__PURE__ */ isRef(res)) {
|
|
892
941
|
const value = targetIsArray && isIntegerKey(key) ? res : res.value;
|
|
893
|
-
return isReadonly2 && isObject$1(value) ? readonly(value) : value;
|
|
942
|
+
return isReadonly2 && isObject$1(value) ? /* @__PURE__ */ readonly(value) : value;
|
|
894
943
|
}
|
|
895
|
-
if (isObject$1(res)) return isReadonly2 ? readonly(res) : reactive(res);
|
|
944
|
+
if (isObject$1(res)) return isReadonly2 ? /* @__PURE__ */ readonly(res) : /* @__PURE__ */ reactive(res);
|
|
896
945
|
return res;
|
|
897
946
|
}
|
|
898
947
|
};
|
|
@@ -902,13 +951,14 @@ var MutableReactiveHandler = class extends BaseReactiveHandler {
|
|
|
902
951
|
}
|
|
903
952
|
set(target, key, value, receiver) {
|
|
904
953
|
let oldValue = target[key];
|
|
954
|
+
const isArrayWithIntegerKey = isArray(target) && isIntegerKey(key);
|
|
905
955
|
if (!this._isShallow) {
|
|
906
|
-
const isOldValueReadonly = isReadonly(oldValue);
|
|
907
|
-
if (
|
|
908
|
-
oldValue = toRaw(oldValue);
|
|
909
|
-
value = toRaw(value);
|
|
956
|
+
const isOldValueReadonly = /* @__PURE__ */ isReadonly(oldValue);
|
|
957
|
+
if (!/* @__PURE__ */ isShallow(value) && !/* @__PURE__ */ isReadonly(value)) {
|
|
958
|
+
oldValue = /* @__PURE__ */ toRaw(oldValue);
|
|
959
|
+
value = /* @__PURE__ */ toRaw(value);
|
|
910
960
|
}
|
|
911
|
-
if (!
|
|
961
|
+
if (!isArrayWithIntegerKey && /* @__PURE__ */ isRef(oldValue) && !/* @__PURE__ */ isRef(value)) if (isOldValueReadonly) {
|
|
912
962
|
if (!!(process.env.NODE_ENV !== "production")) warn$2(`Set operation on key "${String(key)}" failed: target is readonly.`, target[key]);
|
|
913
963
|
return true;
|
|
914
964
|
} else {
|
|
@@ -916,16 +966,16 @@ var MutableReactiveHandler = class extends BaseReactiveHandler {
|
|
|
916
966
|
return true;
|
|
917
967
|
}
|
|
918
968
|
}
|
|
919
|
-
const hadKey =
|
|
920
|
-
const result = Reflect.set(target, key, value, isRef(target) ? target : receiver);
|
|
921
|
-
if (target === toRaw(receiver)) {
|
|
969
|
+
const hadKey = isArrayWithIntegerKey ? Number(key) < target.length : hasOwn(target, key);
|
|
970
|
+
const result = Reflect.set(target, key, value, /* @__PURE__ */ isRef(target) ? target : receiver);
|
|
971
|
+
if (target === /* @__PURE__ */ toRaw(receiver)) {
|
|
922
972
|
if (!hadKey) trigger(target, "add", key, value);
|
|
923
973
|
else if (hasChanged(value, oldValue)) trigger(target, "set", key, value, oldValue);
|
|
924
974
|
}
|
|
925
975
|
return result;
|
|
926
976
|
}
|
|
927
977
|
deleteProperty(target, key) {
|
|
928
|
-
const hadKey = hasOwn
|
|
978
|
+
const hadKey = hasOwn(target, key);
|
|
929
979
|
const oldValue = target[key];
|
|
930
980
|
const result = Reflect.deleteProperty(target, key);
|
|
931
981
|
if (result && hadKey) trigger(target, "delete", key, void 0, oldValue);
|
|
@@ -963,65 +1013,60 @@ const getProto = (v) => Reflect.getPrototypeOf(v);
|
|
|
963
1013
|
function createIterableMethod(method, isReadonly2, isShallow2) {
|
|
964
1014
|
return function(...args) {
|
|
965
1015
|
const target = this["__v_raw"];
|
|
966
|
-
const rawTarget = toRaw(target);
|
|
1016
|
+
const rawTarget = /* @__PURE__ */ toRaw(target);
|
|
967
1017
|
const targetIsMap = isMap(rawTarget);
|
|
968
1018
|
const isPair = method === "entries" || method === Symbol.iterator && targetIsMap;
|
|
969
1019
|
const isKeyOnly = method === "keys" && targetIsMap;
|
|
970
1020
|
const innerIterator = target[method](...args);
|
|
971
1021
|
const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive;
|
|
972
1022
|
!isReadonly2 && track(rawTarget, "iterate", isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY);
|
|
973
|
-
return {
|
|
974
|
-
next()
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
},
|
|
984
|
-
[Symbol.iterator]() {
|
|
985
|
-
return this;
|
|
986
|
-
}
|
|
987
|
-
};
|
|
1023
|
+
return extend(Object.create(innerIterator), { next() {
|
|
1024
|
+
const { value, done } = innerIterator.next();
|
|
1025
|
+
return done ? {
|
|
1026
|
+
value,
|
|
1027
|
+
done
|
|
1028
|
+
} : {
|
|
1029
|
+
value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),
|
|
1030
|
+
done
|
|
1031
|
+
};
|
|
1032
|
+
} });
|
|
988
1033
|
};
|
|
989
1034
|
}
|
|
990
1035
|
function createReadonlyMethod(type) {
|
|
991
1036
|
return function(...args) {
|
|
992
1037
|
if (!!(process.env.NODE_ENV !== "production")) {
|
|
993
1038
|
const key = args[0] ? `on key "${args[0]}" ` : ``;
|
|
994
|
-
warn$2(`${capitalize(type)} operation ${key}failed: target is readonly.`, toRaw(this));
|
|
1039
|
+
warn$2(`${capitalize(type)} operation ${key}failed: target is readonly.`, /* @__PURE__ */ toRaw(this));
|
|
995
1040
|
}
|
|
996
1041
|
return type === "delete" ? false : type === "clear" ? void 0 : this;
|
|
997
1042
|
};
|
|
998
1043
|
}
|
|
999
|
-
function createInstrumentations(readonly
|
|
1044
|
+
function createInstrumentations(readonly, shallow) {
|
|
1000
1045
|
const instrumentations = {
|
|
1001
1046
|
get(key) {
|
|
1002
1047
|
const target = this["__v_raw"];
|
|
1003
|
-
const rawTarget = toRaw(target);
|
|
1004
|
-
const rawKey = toRaw(key);
|
|
1005
|
-
if (!readonly
|
|
1048
|
+
const rawTarget = /* @__PURE__ */ toRaw(target);
|
|
1049
|
+
const rawKey = /* @__PURE__ */ toRaw(key);
|
|
1050
|
+
if (!readonly) {
|
|
1006
1051
|
if (hasChanged(key, rawKey)) track(rawTarget, "get", key);
|
|
1007
1052
|
track(rawTarget, "get", rawKey);
|
|
1008
1053
|
}
|
|
1009
1054
|
const { has } = getProto(rawTarget);
|
|
1010
|
-
const wrap = shallow ? toShallow : readonly
|
|
1055
|
+
const wrap = shallow ? toShallow : readonly ? toReadonly : toReactive;
|
|
1011
1056
|
if (has.call(rawTarget, key)) return wrap(target.get(key));
|
|
1012
1057
|
else if (has.call(rawTarget, rawKey)) return wrap(target.get(rawKey));
|
|
1013
1058
|
else if (target !== rawTarget) target.get(key);
|
|
1014
1059
|
},
|
|
1015
1060
|
get size() {
|
|
1016
1061
|
const target = this["__v_raw"];
|
|
1017
|
-
!readonly
|
|
1062
|
+
!readonly && track(/* @__PURE__ */ toRaw(target), "iterate", ITERATE_KEY);
|
|
1018
1063
|
return target.size;
|
|
1019
1064
|
},
|
|
1020
1065
|
has(key) {
|
|
1021
1066
|
const target = this["__v_raw"];
|
|
1022
|
-
const rawTarget = toRaw(target);
|
|
1023
|
-
const rawKey = toRaw(key);
|
|
1024
|
-
if (!readonly
|
|
1067
|
+
const rawTarget = /* @__PURE__ */ toRaw(target);
|
|
1068
|
+
const rawKey = /* @__PURE__ */ toRaw(key);
|
|
1069
|
+
if (!readonly) {
|
|
1025
1070
|
if (hasChanged(key, rawKey)) track(rawTarget, "has", key);
|
|
1026
1071
|
track(rawTarget, "has", rawKey);
|
|
1027
1072
|
}
|
|
@@ -1030,36 +1075,38 @@ function createInstrumentations(readonly$1, shallow) {
|
|
|
1030
1075
|
forEach(callback, thisArg) {
|
|
1031
1076
|
const observed = this;
|
|
1032
1077
|
const target = observed["__v_raw"];
|
|
1033
|
-
const rawTarget = toRaw(target);
|
|
1034
|
-
const wrap = shallow ? toShallow : readonly
|
|
1035
|
-
!readonly
|
|
1078
|
+
const rawTarget = /* @__PURE__ */ toRaw(target);
|
|
1079
|
+
const wrap = shallow ? toShallow : readonly ? toReadonly : toReactive;
|
|
1080
|
+
!readonly && track(rawTarget, "iterate", ITERATE_KEY);
|
|
1036
1081
|
return target.forEach((value, key) => {
|
|
1037
1082
|
return callback.call(thisArg, wrap(value), wrap(key), observed);
|
|
1038
1083
|
});
|
|
1039
1084
|
}
|
|
1040
1085
|
};
|
|
1041
|
-
extend(instrumentations, readonly
|
|
1086
|
+
extend(instrumentations, readonly ? {
|
|
1042
1087
|
add: createReadonlyMethod("add"),
|
|
1043
1088
|
set: createReadonlyMethod("set"),
|
|
1044
1089
|
delete: createReadonlyMethod("delete"),
|
|
1045
1090
|
clear: createReadonlyMethod("clear")
|
|
1046
1091
|
} : {
|
|
1047
1092
|
add(value) {
|
|
1048
|
-
|
|
1049
|
-
const
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1093
|
+
const target = /* @__PURE__ */ toRaw(this);
|
|
1094
|
+
const proto = getProto(target);
|
|
1095
|
+
const rawValue = /* @__PURE__ */ toRaw(value);
|
|
1096
|
+
const valueToAdd = !shallow && !/* @__PURE__ */ isShallow(value) && !/* @__PURE__ */ isReadonly(value) ? rawValue : value;
|
|
1097
|
+
if (!(proto.has.call(target, valueToAdd) || hasChanged(value, valueToAdd) && proto.has.call(target, value) || hasChanged(rawValue, valueToAdd) && proto.has.call(target, rawValue))) {
|
|
1098
|
+
target.add(valueToAdd);
|
|
1099
|
+
trigger(target, "add", valueToAdd, valueToAdd);
|
|
1053
1100
|
}
|
|
1054
1101
|
return this;
|
|
1055
1102
|
},
|
|
1056
1103
|
set(key, value) {
|
|
1057
|
-
if (!shallow &&
|
|
1058
|
-
const target = toRaw(this);
|
|
1104
|
+
if (!shallow && !/* @__PURE__ */ isShallow(value) && !/* @__PURE__ */ isReadonly(value)) value = /* @__PURE__ */ toRaw(value);
|
|
1105
|
+
const target = /* @__PURE__ */ toRaw(this);
|
|
1059
1106
|
const { has, get } = getProto(target);
|
|
1060
1107
|
let hadKey = has.call(target, key);
|
|
1061
1108
|
if (!hadKey) {
|
|
1062
|
-
key = toRaw(key);
|
|
1109
|
+
key = /* @__PURE__ */ toRaw(key);
|
|
1063
1110
|
hadKey = has.call(target, key);
|
|
1064
1111
|
} else if (!!(process.env.NODE_ENV !== "production")) checkIdentityKeys(target, has, key);
|
|
1065
1112
|
const oldValue = get.call(target, key);
|
|
@@ -1069,11 +1116,11 @@ function createInstrumentations(readonly$1, shallow) {
|
|
|
1069
1116
|
return this;
|
|
1070
1117
|
},
|
|
1071
1118
|
delete(key) {
|
|
1072
|
-
const target = toRaw(this);
|
|
1119
|
+
const target = /* @__PURE__ */ toRaw(this);
|
|
1073
1120
|
const { has, get } = getProto(target);
|
|
1074
1121
|
let hadKey = has.call(target, key);
|
|
1075
1122
|
if (!hadKey) {
|
|
1076
|
-
key = toRaw(key);
|
|
1123
|
+
key = /* @__PURE__ */ toRaw(key);
|
|
1077
1124
|
hadKey = has.call(target, key);
|
|
1078
1125
|
} else if (!!(process.env.NODE_ENV !== "production")) checkIdentityKeys(target, has, key);
|
|
1079
1126
|
const oldValue = get ? get.call(target, key) : void 0;
|
|
@@ -1082,7 +1129,7 @@ function createInstrumentations(readonly$1, shallow) {
|
|
|
1082
1129
|
return result;
|
|
1083
1130
|
},
|
|
1084
1131
|
clear() {
|
|
1085
|
-
const target = toRaw(this);
|
|
1132
|
+
const target = /* @__PURE__ */ toRaw(this);
|
|
1086
1133
|
const hadItems = target.size !== 0;
|
|
1087
1134
|
const oldTarget = !!(process.env.NODE_ENV !== "production") ? isMap(target) ? new Map(target) : new Set(target) : void 0;
|
|
1088
1135
|
const result = target.clear();
|
|
@@ -1096,7 +1143,7 @@ function createInstrumentations(readonly$1, shallow) {
|
|
|
1096
1143
|
"entries",
|
|
1097
1144
|
Symbol.iterator
|
|
1098
1145
|
].forEach((method) => {
|
|
1099
|
-
instrumentations[method] = createIterableMethod(method, readonly
|
|
1146
|
+
instrumentations[method] = createIterableMethod(method, readonly, shallow);
|
|
1100
1147
|
});
|
|
1101
1148
|
return instrumentations;
|
|
1102
1149
|
}
|
|
@@ -1106,7 +1153,7 @@ function createInstrumentationGetter(isReadonly2, shallow) {
|
|
|
1106
1153
|
if (key === "__v_isReactive") return !isReadonly2;
|
|
1107
1154
|
else if (key === "__v_isReadonly") return isReadonly2;
|
|
1108
1155
|
else if (key === "__v_raw") return target;
|
|
1109
|
-
return Reflect.get(hasOwn
|
|
1156
|
+
return Reflect.get(hasOwn(instrumentations, key) && key in target ? instrumentations : target, key, receiver);
|
|
1110
1157
|
};
|
|
1111
1158
|
}
|
|
1112
1159
|
const mutableCollectionHandlers = { get: /* @__PURE__ */ createInstrumentationGetter(false, false) };
|
|
@@ -1114,7 +1161,7 @@ const shallowCollectionHandlers = { get: /* @__PURE__ */ createInstrumentationGe
|
|
|
1114
1161
|
const readonlyCollectionHandlers = { get: /* @__PURE__ */ createInstrumentationGetter(true, false) };
|
|
1115
1162
|
const shallowReadonlyCollectionHandlers = { get: /* @__PURE__ */ createInstrumentationGetter(true, true) };
|
|
1116
1163
|
function checkIdentityKeys(target, has, key) {
|
|
1117
|
-
const rawKey = toRaw(key);
|
|
1164
|
+
const rawKey = /* @__PURE__ */ toRaw(key);
|
|
1118
1165
|
if (rawKey !== key && has.call(target, rawKey)) {
|
|
1119
1166
|
const type = toRawType(target);
|
|
1120
1167
|
warn$2(`Reactive ${type} contains both the raw and reactive versions of the same object${type === `Map` ? ` as keys` : ``}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`);
|
|
@@ -1138,16 +1185,20 @@ function targetTypeMap(rawType) {
|
|
|
1138
1185
|
function getTargetType(value) {
|
|
1139
1186
|
return value["__v_skip"] || !Object.isExtensible(value) ? 0 : targetTypeMap(toRawType(value));
|
|
1140
1187
|
}
|
|
1188
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
1141
1189
|
function reactive(target) {
|
|
1142
|
-
if (isReadonly(target)) return target;
|
|
1190
|
+
if (/* @__PURE__ */ isReadonly(target)) return target;
|
|
1143
1191
|
return createReactiveObject(target, false, mutableHandlers, mutableCollectionHandlers, reactiveMap);
|
|
1144
1192
|
}
|
|
1193
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
1145
1194
|
function shallowReactive(target) {
|
|
1146
1195
|
return createReactiveObject(target, false, shallowReactiveHandlers, shallowCollectionHandlers, shallowReactiveMap);
|
|
1147
1196
|
}
|
|
1197
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
1148
1198
|
function readonly(target) {
|
|
1149
1199
|
return createReactiveObject(target, true, readonlyHandlers, readonlyCollectionHandlers, readonlyMap);
|
|
1150
1200
|
}
|
|
1201
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
1151
1202
|
function shallowReadonly(target) {
|
|
1152
1203
|
return createReactiveObject(target, true, shallowReadonlyHandlers, shallowReadonlyCollectionHandlers, shallowReadonlyMap);
|
|
1153
1204
|
}
|
|
@@ -1165,40 +1216,48 @@ function createReactiveObject(target, isReadonly2, baseHandlers, collectionHandl
|
|
|
1165
1216
|
proxyMap.set(target, proxy);
|
|
1166
1217
|
return proxy;
|
|
1167
1218
|
}
|
|
1219
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
1168
1220
|
function isReactive(value) {
|
|
1169
|
-
if (isReadonly(value)) return isReactive(value["__v_raw"]);
|
|
1221
|
+
if (/* @__PURE__ */ isReadonly(value)) return /* @__PURE__ */ isReactive(value["__v_raw"]);
|
|
1170
1222
|
return !!(value && value["__v_isReactive"]);
|
|
1171
1223
|
}
|
|
1224
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
1172
1225
|
function isReadonly(value) {
|
|
1173
1226
|
return !!(value && value["__v_isReadonly"]);
|
|
1174
1227
|
}
|
|
1228
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
1175
1229
|
function isShallow(value) {
|
|
1176
1230
|
return !!(value && value["__v_isShallow"]);
|
|
1177
1231
|
}
|
|
1232
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
1178
1233
|
function isProxy(value) {
|
|
1179
1234
|
return value ? !!value["__v_raw"] : false;
|
|
1180
1235
|
}
|
|
1236
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
1181
1237
|
function toRaw(observed) {
|
|
1182
1238
|
const raw = observed && observed["__v_raw"];
|
|
1183
|
-
return raw ? toRaw(raw) : observed;
|
|
1239
|
+
return raw ? /* @__PURE__ */ toRaw(raw) : observed;
|
|
1184
1240
|
}
|
|
1185
1241
|
function markRaw(value) {
|
|
1186
|
-
if (!hasOwn
|
|
1242
|
+
if (!hasOwn(value, "__v_skip") && Object.isExtensible(value)) def(value, "__v_skip", true);
|
|
1187
1243
|
return value;
|
|
1188
1244
|
}
|
|
1189
|
-
const toReactive = (value) => isObject$1(value) ? reactive(value) : value;
|
|
1190
|
-
const toReadonly = (value) => isObject$1(value) ? readonly(value) : value;
|
|
1245
|
+
const toReactive = (value) => isObject$1(value) ? /* @__PURE__ */ reactive(value) : value;
|
|
1246
|
+
const toReadonly = (value) => isObject$1(value) ? /* @__PURE__ */ readonly(value) : value;
|
|
1247
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
1191
1248
|
function isRef(r) {
|
|
1192
1249
|
return r ? r["__v_isRef"] === true : false;
|
|
1193
1250
|
}
|
|
1251
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
1194
1252
|
function ref(value) {
|
|
1195
|
-
return createRef
|
|
1253
|
+
return createRef(value, false);
|
|
1196
1254
|
}
|
|
1255
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
1197
1256
|
function shallowRef(value) {
|
|
1198
|
-
return createRef
|
|
1257
|
+
return createRef(value, true);
|
|
1199
1258
|
}
|
|
1200
|
-
function createRef
|
|
1201
|
-
if (isRef(rawValue)) return rawValue;
|
|
1259
|
+
function createRef(rawValue, shallow) {
|
|
1260
|
+
if (/* @__PURE__ */ isRef(rawValue)) return rawValue;
|
|
1202
1261
|
return new RefImpl(rawValue, shallow);
|
|
1203
1262
|
}
|
|
1204
1263
|
var RefImpl = class {
|
|
@@ -1206,7 +1265,7 @@ var RefImpl = class {
|
|
|
1206
1265
|
this.dep = new Dep();
|
|
1207
1266
|
this["__v_isRef"] = true;
|
|
1208
1267
|
this["__v_isShallow"] = false;
|
|
1209
|
-
this._rawValue = isShallow2 ? value : toRaw(value);
|
|
1268
|
+
this._rawValue = isShallow2 ? value : /* @__PURE__ */ toRaw(value);
|
|
1210
1269
|
this._value = isShallow2 ? value : toReactive(value);
|
|
1211
1270
|
this["__v_isShallow"] = isShallow2;
|
|
1212
1271
|
}
|
|
@@ -1221,8 +1280,8 @@ var RefImpl = class {
|
|
|
1221
1280
|
}
|
|
1222
1281
|
set value(newValue) {
|
|
1223
1282
|
const oldValue = this._rawValue;
|
|
1224
|
-
const useDirectValue = this["__v_isShallow"] || isShallow(newValue) || isReadonly(newValue);
|
|
1225
|
-
newValue = useDirectValue ? newValue : toRaw(newValue);
|
|
1283
|
+
const useDirectValue = this["__v_isShallow"] || /* @__PURE__ */ isShallow(newValue) || /* @__PURE__ */ isReadonly(newValue);
|
|
1284
|
+
newValue = useDirectValue ? newValue : /* @__PURE__ */ toRaw(newValue);
|
|
1226
1285
|
if (hasChanged(newValue, oldValue)) {
|
|
1227
1286
|
this._rawValue = newValue;
|
|
1228
1287
|
this._value = useDirectValue ? newValue : toReactive(newValue);
|
|
@@ -1238,7 +1297,7 @@ var RefImpl = class {
|
|
|
1238
1297
|
}
|
|
1239
1298
|
};
|
|
1240
1299
|
function unref(ref2) {
|
|
1241
|
-
return isRef(ref2) ? ref2.value : ref2;
|
|
1300
|
+
return /* @__PURE__ */ isRef(ref2) ? ref2.value : ref2;
|
|
1242
1301
|
}
|
|
1243
1302
|
function toValue(source) {
|
|
1244
1303
|
return isFunction(source) ? source() : unref(source);
|
|
@@ -1247,14 +1306,14 @@ const shallowUnwrapHandlers = {
|
|
|
1247
1306
|
get: (target, key, receiver) => key === "__v_raw" ? target : unref(Reflect.get(target, key, receiver)),
|
|
1248
1307
|
set: (target, key, value, receiver) => {
|
|
1249
1308
|
const oldValue = target[key];
|
|
1250
|
-
if (isRef(oldValue) &&
|
|
1309
|
+
if (/* @__PURE__ */ isRef(oldValue) && !/* @__PURE__ */ isRef(value)) {
|
|
1251
1310
|
oldValue.value = value;
|
|
1252
1311
|
return true;
|
|
1253
1312
|
} else return Reflect.set(target, key, value, receiver);
|
|
1254
1313
|
}
|
|
1255
1314
|
};
|
|
1256
1315
|
function proxyRefs(objectWithRefs) {
|
|
1257
|
-
return isReactive(objectWithRefs) ? objectWithRefs : new Proxy(objectWithRefs, shallowUnwrapHandlers);
|
|
1316
|
+
return /* @__PURE__ */ isReactive(objectWithRefs) ? objectWithRefs : new Proxy(objectWithRefs, shallowUnwrapHandlers);
|
|
1258
1317
|
}
|
|
1259
1318
|
var CustomRefImpl = class {
|
|
1260
1319
|
constructor(factory) {
|
|
@@ -1275,8 +1334,9 @@ var CustomRefImpl = class {
|
|
|
1275
1334
|
function customRef(factory) {
|
|
1276
1335
|
return new CustomRefImpl(factory);
|
|
1277
1336
|
}
|
|
1278
|
-
|
|
1279
|
-
|
|
1337
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
1338
|
+
function toRefs(object) {
|
|
1339
|
+
if (!!(process.env.NODE_ENV !== "production") && !/* @__PURE__ */ isProxy(object)) warn$2(`toRefs() expects a reactive object but received a plain one.`);
|
|
1280
1340
|
const ret = isArray(object) ? new Array(object.length) : {};
|
|
1281
1341
|
for (const key in object) ret[key] = propertyToRef(object, key);
|
|
1282
1342
|
return ret;
|
|
@@ -1288,16 +1348,31 @@ var ObjectRefImpl = class {
|
|
|
1288
1348
|
this._defaultValue = _defaultValue;
|
|
1289
1349
|
this["__v_isRef"] = true;
|
|
1290
1350
|
this._value = void 0;
|
|
1351
|
+
this._raw = /* @__PURE__ */ toRaw(_object);
|
|
1352
|
+
let shallow = true;
|
|
1353
|
+
let obj = _object;
|
|
1354
|
+
if (!isArray(_object) || !isIntegerKey(String(_key))) do
|
|
1355
|
+
shallow = !/* @__PURE__ */ isProxy(obj) || /* @__PURE__ */ isShallow(obj);
|
|
1356
|
+
while (shallow && (obj = obj["__v_raw"]));
|
|
1357
|
+
this._shallow = shallow;
|
|
1291
1358
|
}
|
|
1292
1359
|
get value() {
|
|
1293
|
-
|
|
1360
|
+
let val = this._object[this._key];
|
|
1361
|
+
if (this._shallow) val = unref(val);
|
|
1294
1362
|
return this._value = val === void 0 ? this._defaultValue : val;
|
|
1295
1363
|
}
|
|
1296
1364
|
set value(newVal) {
|
|
1365
|
+
if (this._shallow && /* @__PURE__ */ isRef(this._raw[this._key])) {
|
|
1366
|
+
const nestedRef = this._object[this._key];
|
|
1367
|
+
if (/* @__PURE__ */ isRef(nestedRef)) {
|
|
1368
|
+
nestedRef.value = newVal;
|
|
1369
|
+
return;
|
|
1370
|
+
}
|
|
1371
|
+
}
|
|
1297
1372
|
this._object[this._key] = newVal;
|
|
1298
1373
|
}
|
|
1299
1374
|
get dep() {
|
|
1300
|
-
return getDepFromReactive(
|
|
1375
|
+
return getDepFromReactive(this._raw, this._key);
|
|
1301
1376
|
}
|
|
1302
1377
|
};
|
|
1303
1378
|
var GetterRefImpl = class {
|
|
@@ -1311,15 +1386,15 @@ var GetterRefImpl = class {
|
|
|
1311
1386
|
return this._value = this._getter();
|
|
1312
1387
|
}
|
|
1313
1388
|
};
|
|
1389
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
1314
1390
|
function toRef$1(source, key, defaultValue) {
|
|
1315
|
-
if (isRef(source)) return source;
|
|
1391
|
+
if (/* @__PURE__ */ isRef(source)) return source;
|
|
1316
1392
|
else if (isFunction(source)) return new GetterRefImpl(source);
|
|
1317
1393
|
else if (isObject$1(source) && arguments.length > 1) return propertyToRef(source, key, defaultValue);
|
|
1318
|
-
else return ref(source);
|
|
1394
|
+
else return /* @__PURE__ */ ref(source);
|
|
1319
1395
|
}
|
|
1320
1396
|
function propertyToRef(source, key, defaultValue) {
|
|
1321
|
-
|
|
1322
|
-
return isRef(val) ? val : new ObjectRefImpl(source, key, defaultValue);
|
|
1397
|
+
return new ObjectRefImpl(source, key, defaultValue);
|
|
1323
1398
|
}
|
|
1324
1399
|
var ComputedRefImpl = class {
|
|
1325
1400
|
constructor(fn, setter, isSSR) {
|
|
@@ -1386,6 +1461,7 @@ var ComputedRefImpl = class {
|
|
|
1386
1461
|
else if (!!(process.env.NODE_ENV !== "production")) warn$2("Write operation failed: computed value is readonly");
|
|
1387
1462
|
}
|
|
1388
1463
|
};
|
|
1464
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
1389
1465
|
function computed$1(getterOrOptions, debugOptions, isSSR = false) {
|
|
1390
1466
|
let getter;
|
|
1391
1467
|
let setter;
|
|
@@ -1418,27 +1494,27 @@ function watch$1(source, cb, options = EMPTY_OBJ) {
|
|
|
1418
1494
|
};
|
|
1419
1495
|
const reactiveGetter = (source2) => {
|
|
1420
1496
|
if (deep) return source2;
|
|
1421
|
-
if (isShallow(source2) || deep === false || deep === 0) return traverse(source2, 1);
|
|
1497
|
+
if (/* @__PURE__ */ isShallow(source2) || deep === false || deep === 0) return traverse(source2, 1);
|
|
1422
1498
|
return traverse(source2);
|
|
1423
1499
|
};
|
|
1424
|
-
let effect
|
|
1500
|
+
let effect;
|
|
1425
1501
|
let getter;
|
|
1426
1502
|
let cleanup;
|
|
1427
1503
|
let boundCleanup;
|
|
1428
1504
|
let forceTrigger = false;
|
|
1429
1505
|
let isMultiSource = false;
|
|
1430
|
-
if (isRef(source)) {
|
|
1506
|
+
if (/* @__PURE__ */ isRef(source)) {
|
|
1431
1507
|
getter = () => source.value;
|
|
1432
|
-
forceTrigger = isShallow(source);
|
|
1433
|
-
} else if (isReactive(source)) {
|
|
1508
|
+
forceTrigger = /* @__PURE__ */ isShallow(source);
|
|
1509
|
+
} else if (/* @__PURE__ */ isReactive(source)) {
|
|
1434
1510
|
getter = () => reactiveGetter(source);
|
|
1435
1511
|
forceTrigger = true;
|
|
1436
1512
|
} else if (isArray(source)) {
|
|
1437
1513
|
isMultiSource = true;
|
|
1438
|
-
forceTrigger = source.some((s) => isReactive(s) || isShallow(s));
|
|
1514
|
+
forceTrigger = source.some((s) => /* @__PURE__ */ isReactive(s) || /* @__PURE__ */ isShallow(s));
|
|
1439
1515
|
getter = () => source.map((s) => {
|
|
1440
|
-
if (isRef(s)) return s.value;
|
|
1441
|
-
else if (isReactive(s)) return reactiveGetter(s);
|
|
1516
|
+
if (/* @__PURE__ */ isRef(s)) return s.value;
|
|
1517
|
+
else if (/* @__PURE__ */ isReactive(s)) return reactiveGetter(s);
|
|
1442
1518
|
else if (isFunction(s)) return call ? call(s, 2) : s();
|
|
1443
1519
|
else process.env.NODE_ENV !== "production" && warnInvalidSource(s);
|
|
1444
1520
|
});
|
|
@@ -1453,7 +1529,7 @@ function watch$1(source, cb, options = EMPTY_OBJ) {
|
|
|
1453
1529
|
}
|
|
1454
1530
|
}
|
|
1455
1531
|
const currentEffect = activeWatcher;
|
|
1456
|
-
activeWatcher = effect
|
|
1532
|
+
activeWatcher = effect;
|
|
1457
1533
|
try {
|
|
1458
1534
|
return call ? call(source, 3, [boundCleanup]) : source(boundCleanup);
|
|
1459
1535
|
} finally {
|
|
@@ -1471,8 +1547,8 @@ function watch$1(source, cb, options = EMPTY_OBJ) {
|
|
|
1471
1547
|
}
|
|
1472
1548
|
const scope = getCurrentScope();
|
|
1473
1549
|
const watchHandle = () => {
|
|
1474
|
-
effect
|
|
1475
|
-
if (scope && scope.active) remove(scope.effects, effect
|
|
1550
|
+
effect.stop();
|
|
1551
|
+
if (scope && scope.active) remove(scope.effects, effect);
|
|
1476
1552
|
};
|
|
1477
1553
|
if (once && cb) {
|
|
1478
1554
|
const _cb = cb;
|
|
@@ -1483,13 +1559,13 @@ function watch$1(source, cb, options = EMPTY_OBJ) {
|
|
|
1483
1559
|
}
|
|
1484
1560
|
let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE;
|
|
1485
1561
|
const job = (immediateFirstRun) => {
|
|
1486
|
-
if (!(effect
|
|
1562
|
+
if (!(effect.flags & 1) || !effect.dirty && !immediateFirstRun) return;
|
|
1487
1563
|
if (cb) {
|
|
1488
|
-
const newValue = effect
|
|
1564
|
+
const newValue = effect.run();
|
|
1489
1565
|
if (deep || forceTrigger || (isMultiSource ? newValue.some((v, i) => hasChanged(v, oldValue[i])) : hasChanged(newValue, oldValue))) {
|
|
1490
1566
|
if (cleanup) cleanup();
|
|
1491
1567
|
const currentWatcher = activeWatcher;
|
|
1492
|
-
activeWatcher = effect
|
|
1568
|
+
activeWatcher = effect;
|
|
1493
1569
|
try {
|
|
1494
1570
|
const args = [
|
|
1495
1571
|
newValue,
|
|
@@ -1502,30 +1578,30 @@ function watch$1(source, cb, options = EMPTY_OBJ) {
|
|
|
1502
1578
|
activeWatcher = currentWatcher;
|
|
1503
1579
|
}
|
|
1504
1580
|
}
|
|
1505
|
-
} else effect
|
|
1581
|
+
} else effect.run();
|
|
1506
1582
|
};
|
|
1507
1583
|
if (augmentJob) augmentJob(job);
|
|
1508
|
-
effect
|
|
1509
|
-
effect
|
|
1510
|
-
boundCleanup = (fn) => onWatcherCleanup(fn, false, effect
|
|
1511
|
-
cleanup = effect
|
|
1512
|
-
const cleanups = cleanupMap.get(effect
|
|
1584
|
+
effect = new ReactiveEffect(getter);
|
|
1585
|
+
effect.scheduler = scheduler ? () => scheduler(job, false) : job;
|
|
1586
|
+
boundCleanup = (fn) => onWatcherCleanup(fn, false, effect);
|
|
1587
|
+
cleanup = effect.onStop = () => {
|
|
1588
|
+
const cleanups = cleanupMap.get(effect);
|
|
1513
1589
|
if (cleanups) {
|
|
1514
1590
|
if (call) call(cleanups, 4);
|
|
1515
1591
|
else for (const cleanup2 of cleanups) cleanup2();
|
|
1516
|
-
cleanupMap.delete(effect
|
|
1592
|
+
cleanupMap.delete(effect);
|
|
1517
1593
|
}
|
|
1518
1594
|
};
|
|
1519
1595
|
if (!!(process.env.NODE_ENV !== "production")) {
|
|
1520
|
-
effect
|
|
1521
|
-
effect
|
|
1596
|
+
effect.onTrack = options.onTrack;
|
|
1597
|
+
effect.onTrigger = options.onTrigger;
|
|
1522
1598
|
}
|
|
1523
1599
|
if (cb) if (immediate) job(true);
|
|
1524
|
-
else oldValue = effect
|
|
1600
|
+
else oldValue = effect.run();
|
|
1525
1601
|
else if (scheduler) scheduler(job.bind(null, true), true);
|
|
1526
|
-
else effect
|
|
1527
|
-
watchHandle.pause = effect
|
|
1528
|
-
watchHandle.resume = effect
|
|
1602
|
+
else effect.run();
|
|
1603
|
+
watchHandle.pause = effect.pause.bind(effect);
|
|
1604
|
+
watchHandle.resume = effect.resume.bind(effect);
|
|
1529
1605
|
watchHandle.stop = watchHandle;
|
|
1530
1606
|
return watchHandle;
|
|
1531
1607
|
}
|
|
@@ -1535,7 +1611,7 @@ function traverse(value, depth = Infinity, seen) {
|
|
|
1535
1611
|
if ((seen.get(value) || 0) >= depth) return value;
|
|
1536
1612
|
seen.set(value, depth);
|
|
1537
1613
|
depth--;
|
|
1538
|
-
if (isRef(value)) traverse(value.value, depth, seen);
|
|
1614
|
+
if (/* @__PURE__ */ isRef(value)) traverse(value.value, depth, seen);
|
|
1539
1615
|
else if (isArray(value)) for (let i = 0; i < value.length; i++) traverse(value[i], depth, seen);
|
|
1540
1616
|
else if (isSet(value) || isMap(value)) value.forEach((v) => {
|
|
1541
1617
|
traverse(v, depth, seen);
|
|
@@ -1546,9 +1622,13 @@ function traverse(value, depth = Infinity, seen) {
|
|
|
1546
1622
|
}
|
|
1547
1623
|
return value;
|
|
1548
1624
|
}
|
|
1549
|
-
|
|
1550
1625
|
//#endregion
|
|
1551
|
-
//#region ../../node_modules/.pnpm/@vue+runtime-core@3.5.
|
|
1626
|
+
//#region ../../node_modules/.pnpm/@vue+runtime-core@3.5.30/node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js
|
|
1627
|
+
/**
|
|
1628
|
+
* @vue/runtime-core v3.5.30
|
|
1629
|
+
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
1630
|
+
* @license MIT
|
|
1631
|
+
**/
|
|
1552
1632
|
const stack = [];
|
|
1553
1633
|
function pushWarningContext(vnode) {
|
|
1554
1634
|
stack.push(vnode);
|
|
@@ -1631,8 +1711,8 @@ function formatProp(key, value, raw) {
|
|
|
1631
1711
|
value = JSON.stringify(value);
|
|
1632
1712
|
return raw ? value : [`${key}=${value}`];
|
|
1633
1713
|
} else if (typeof value === "number" || typeof value === "boolean" || value == null) return raw ? value : [`${key}=${value}`];
|
|
1634
|
-
else if (isRef(value)) {
|
|
1635
|
-
value = formatProp(key, toRaw(value.value), true);
|
|
1714
|
+
else if (/* @__PURE__ */ isRef(value)) {
|
|
1715
|
+
value = formatProp(key, /* @__PURE__ */ toRaw(value.value), true);
|
|
1636
1716
|
return raw ? value : [
|
|
1637
1717
|
`${key}=Ref<`,
|
|
1638
1718
|
value,
|
|
@@ -1640,10 +1720,16 @@ function formatProp(key, value, raw) {
|
|
|
1640
1720
|
];
|
|
1641
1721
|
} else if (isFunction(value)) return [`${key}=fn${value.name ? `<${value.name}>` : ``}`];
|
|
1642
1722
|
else {
|
|
1643
|
-
value = toRaw(value);
|
|
1723
|
+
value = /* @__PURE__ */ toRaw(value);
|
|
1644
1724
|
return raw ? value : [`${key}=`, value];
|
|
1645
1725
|
}
|
|
1646
1726
|
}
|
|
1727
|
+
function assertNumber(val, type) {
|
|
1728
|
+
if (!!!(process.env.NODE_ENV !== "production")) return;
|
|
1729
|
+
if (val === void 0) return;
|
|
1730
|
+
else if (typeof val !== "number") warn$1(`${type} is not a valid number - got ${JSON.stringify(val)}.`);
|
|
1731
|
+
else if (isNaN(val)) warn$1(`${type} is NaN - the duration expression might be incorrect.`);
|
|
1732
|
+
}
|
|
1647
1733
|
const ErrorTypeStrings$1 = {
|
|
1648
1734
|
["sp"]: "serverPrefetch hook",
|
|
1649
1735
|
["bc"]: "beforeCreate hook",
|
|
@@ -1745,8 +1831,8 @@ const resolvedPromise = /* @__PURE__ */ Promise.resolve();
|
|
|
1745
1831
|
let currentFlushPromise = null;
|
|
1746
1832
|
const RECURSION_LIMIT = 100;
|
|
1747
1833
|
function nextTick(fn) {
|
|
1748
|
-
const p
|
|
1749
|
-
return fn ? p
|
|
1834
|
+
const p = currentFlushPromise || resolvedPromise;
|
|
1835
|
+
return fn ? p.then(this ? fn.bind(this) : fn) : p;
|
|
1750
1836
|
}
|
|
1751
1837
|
function findInsertionIndex(id) {
|
|
1752
1838
|
let start = flushIndex + 1;
|
|
@@ -1988,8 +2074,8 @@ function setDevtoolsHook$1(hook, target) {
|
|
|
1988
2074
|
buffer = [];
|
|
1989
2075
|
}
|
|
1990
2076
|
}
|
|
1991
|
-
function devtoolsInitApp(app, version
|
|
1992
|
-
emit$1("app:init", app, version
|
|
2077
|
+
function devtoolsInitApp(app, version) {
|
|
2078
|
+
emit$1("app:init", app, version, {
|
|
1993
2079
|
Fragment,
|
|
1994
2080
|
Text,
|
|
1995
2081
|
Comment,
|
|
@@ -2099,10 +2185,242 @@ function invokeDirectiveHook(vnode, prevVNode, instance, name) {
|
|
|
2099
2185
|
}
|
|
2100
2186
|
}
|
|
2101
2187
|
}
|
|
2102
|
-
|
|
2188
|
+
function provide(key, value) {
|
|
2189
|
+
if (!!(process.env.NODE_ENV !== "production")) {
|
|
2190
|
+
if (!currentInstance || currentInstance.isMounted) warn$1(`provide() can only be used inside setup().`);
|
|
2191
|
+
}
|
|
2192
|
+
if (currentInstance) {
|
|
2193
|
+
let provides = currentInstance.provides;
|
|
2194
|
+
const parentProvides = currentInstance.parent && currentInstance.parent.provides;
|
|
2195
|
+
if (parentProvides === provides) provides = currentInstance.provides = Object.create(parentProvides);
|
|
2196
|
+
provides[key] = value;
|
|
2197
|
+
}
|
|
2198
|
+
}
|
|
2199
|
+
function inject(key, defaultValue, treatDefaultAsFactory = false) {
|
|
2200
|
+
const instance = getCurrentInstance();
|
|
2201
|
+
if (instance || currentApp) {
|
|
2202
|
+
let provides = currentApp ? currentApp._context.provides : instance ? instance.parent == null || instance.ce ? instance.vnode.appContext && instance.vnode.appContext.provides : instance.parent.provides : void 0;
|
|
2203
|
+
if (provides && key in provides) return provides[key];
|
|
2204
|
+
else if (arguments.length > 1) return treatDefaultAsFactory && isFunction(defaultValue) ? defaultValue.call(instance && instance.proxy) : defaultValue;
|
|
2205
|
+
else if (!!(process.env.NODE_ENV !== "production")) warn$1(`injection "${String(key)}" not found.`);
|
|
2206
|
+
} else if (!!(process.env.NODE_ENV !== "production")) warn$1(`inject() can only be used inside setup() or functional components.`);
|
|
2207
|
+
}
|
|
2208
|
+
function hasInjectionContext() {
|
|
2209
|
+
return !!(getCurrentInstance() || currentApp);
|
|
2210
|
+
}
|
|
2211
|
+
const ssrContextKey = /* @__PURE__ */ Symbol.for("v-scx");
|
|
2212
|
+
const useSSRContext = () => {
|
|
2213
|
+
{
|
|
2214
|
+
const ctx = inject(ssrContextKey);
|
|
2215
|
+
if (!ctx) process.env.NODE_ENV !== "production" && warn$1(`Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build.`);
|
|
2216
|
+
return ctx;
|
|
2217
|
+
}
|
|
2218
|
+
};
|
|
2219
|
+
function watchEffect(effect, options) {
|
|
2220
|
+
return doWatch(effect, null, options);
|
|
2221
|
+
}
|
|
2222
|
+
function watch(source, cb, options) {
|
|
2223
|
+
if (!!(process.env.NODE_ENV !== "production") && !isFunction(cb)) warn$1(`\`watch(fn, options?)\` signature has been moved to a separate API. Use \`watchEffect(fn, options?)\` instead. \`watch\` now only supports \`watch(source, cb, options?) signature.`);
|
|
2224
|
+
return doWatch(source, cb, options);
|
|
2225
|
+
}
|
|
2226
|
+
function doWatch(source, cb, options = EMPTY_OBJ) {
|
|
2227
|
+
const { immediate, deep, flush, once } = options;
|
|
2228
|
+
if (!!(process.env.NODE_ENV !== "production") && !cb) {
|
|
2229
|
+
if (immediate !== void 0) warn$1(`watch() "immediate" option is only respected when using the watch(source, callback, options?) signature.`);
|
|
2230
|
+
if (deep !== void 0) warn$1(`watch() "deep" option is only respected when using the watch(source, callback, options?) signature.`);
|
|
2231
|
+
if (once !== void 0) warn$1(`watch() "once" option is only respected when using the watch(source, callback, options?) signature.`);
|
|
2232
|
+
}
|
|
2233
|
+
const baseWatchOptions = extend({}, options);
|
|
2234
|
+
if (!!(process.env.NODE_ENV !== "production")) baseWatchOptions.onWarn = warn$1;
|
|
2235
|
+
const runsImmediately = cb && immediate || !cb && flush !== "post";
|
|
2236
|
+
let ssrCleanup;
|
|
2237
|
+
if (isInSSRComponentSetup) {
|
|
2238
|
+
if (flush === "sync") {
|
|
2239
|
+
const ctx = useSSRContext();
|
|
2240
|
+
ssrCleanup = ctx.__watcherHandles || (ctx.__watcherHandles = []);
|
|
2241
|
+
} else if (!runsImmediately) {
|
|
2242
|
+
const watchStopHandle = () => {};
|
|
2243
|
+
watchStopHandle.stop = NOOP;
|
|
2244
|
+
watchStopHandle.resume = NOOP;
|
|
2245
|
+
watchStopHandle.pause = NOOP;
|
|
2246
|
+
return watchStopHandle;
|
|
2247
|
+
}
|
|
2248
|
+
}
|
|
2249
|
+
const instance = currentInstance;
|
|
2250
|
+
baseWatchOptions.call = (fn, type, args) => callWithAsyncErrorHandling(fn, instance, type, args);
|
|
2251
|
+
let isPre = false;
|
|
2252
|
+
if (flush === "post") baseWatchOptions.scheduler = (job) => {
|
|
2253
|
+
queuePostRenderEffect(job, instance && instance.suspense);
|
|
2254
|
+
};
|
|
2255
|
+
else if (flush !== "sync") {
|
|
2256
|
+
isPre = true;
|
|
2257
|
+
baseWatchOptions.scheduler = (job, isFirstRun) => {
|
|
2258
|
+
if (isFirstRun) job();
|
|
2259
|
+
else queueJob(job);
|
|
2260
|
+
};
|
|
2261
|
+
}
|
|
2262
|
+
baseWatchOptions.augmentJob = (job) => {
|
|
2263
|
+
if (cb) job.flags |= 4;
|
|
2264
|
+
if (isPre) {
|
|
2265
|
+
job.flags |= 2;
|
|
2266
|
+
if (instance) {
|
|
2267
|
+
job.id = instance.uid;
|
|
2268
|
+
job.i = instance;
|
|
2269
|
+
}
|
|
2270
|
+
}
|
|
2271
|
+
};
|
|
2272
|
+
const watchHandle = watch$1(source, cb, baseWatchOptions);
|
|
2273
|
+
if (isInSSRComponentSetup) {
|
|
2274
|
+
if (ssrCleanup) ssrCleanup.push(watchHandle);
|
|
2275
|
+
else if (runsImmediately) watchHandle();
|
|
2276
|
+
}
|
|
2277
|
+
return watchHandle;
|
|
2278
|
+
}
|
|
2279
|
+
function instanceWatch(source, value, options) {
|
|
2280
|
+
const publicThis = this.proxy;
|
|
2281
|
+
const getter = isString(source) ? source.includes(".") ? createPathGetter(publicThis, source) : () => publicThis[source] : source.bind(publicThis, publicThis);
|
|
2282
|
+
let cb;
|
|
2283
|
+
if (isFunction(value)) cb = value;
|
|
2284
|
+
else {
|
|
2285
|
+
cb = value.handler;
|
|
2286
|
+
options = value;
|
|
2287
|
+
}
|
|
2288
|
+
const reset = setCurrentInstance(this);
|
|
2289
|
+
const res = doWatch(getter, cb.bind(publicThis), options);
|
|
2290
|
+
reset();
|
|
2291
|
+
return res;
|
|
2292
|
+
}
|
|
2293
|
+
function createPathGetter(ctx, path) {
|
|
2294
|
+
const segments = path.split(".");
|
|
2295
|
+
return () => {
|
|
2296
|
+
let cur = ctx;
|
|
2297
|
+
for (let i = 0; i < segments.length && cur; i++) cur = cur[segments[i]];
|
|
2298
|
+
return cur;
|
|
2299
|
+
};
|
|
2300
|
+
}
|
|
2301
|
+
const TeleportEndKey = /* @__PURE__ */ Symbol("_vte");
|
|
2103
2302
|
const isTeleport = (type) => type.__isTeleport;
|
|
2104
|
-
const leaveCbKey = Symbol("_leaveCb");
|
|
2105
|
-
const enterCbKey$1 = Symbol("_enterCb");
|
|
2303
|
+
const leaveCbKey = /* @__PURE__ */ Symbol("_leaveCb");
|
|
2304
|
+
const enterCbKey$1 = /* @__PURE__ */ Symbol("_enterCb");
|
|
2305
|
+
function useTransitionState() {
|
|
2306
|
+
const state = {
|
|
2307
|
+
isMounted: false,
|
|
2308
|
+
isLeaving: false,
|
|
2309
|
+
isUnmounting: false,
|
|
2310
|
+
leavingVNodes: /* @__PURE__ */ new Map()
|
|
2311
|
+
};
|
|
2312
|
+
onMounted(() => {
|
|
2313
|
+
state.isMounted = true;
|
|
2314
|
+
});
|
|
2315
|
+
onBeforeUnmount(() => {
|
|
2316
|
+
state.isUnmounting = true;
|
|
2317
|
+
});
|
|
2318
|
+
return state;
|
|
2319
|
+
}
|
|
2320
|
+
const TransitionHookValidator = [Function, Array];
|
|
2321
|
+
const BaseTransitionPropsValidators = {
|
|
2322
|
+
mode: String,
|
|
2323
|
+
appear: Boolean,
|
|
2324
|
+
persisted: Boolean,
|
|
2325
|
+
onBeforeEnter: TransitionHookValidator,
|
|
2326
|
+
onEnter: TransitionHookValidator,
|
|
2327
|
+
onAfterEnter: TransitionHookValidator,
|
|
2328
|
+
onEnterCancelled: TransitionHookValidator,
|
|
2329
|
+
onBeforeLeave: TransitionHookValidator,
|
|
2330
|
+
onLeave: TransitionHookValidator,
|
|
2331
|
+
onAfterLeave: TransitionHookValidator,
|
|
2332
|
+
onLeaveCancelled: TransitionHookValidator,
|
|
2333
|
+
onBeforeAppear: TransitionHookValidator,
|
|
2334
|
+
onAppear: TransitionHookValidator,
|
|
2335
|
+
onAfterAppear: TransitionHookValidator,
|
|
2336
|
+
onAppearCancelled: TransitionHookValidator
|
|
2337
|
+
};
|
|
2338
|
+
function getLeavingNodesForType(state, vnode) {
|
|
2339
|
+
const { leavingVNodes } = state;
|
|
2340
|
+
let leavingVNodesCache = leavingVNodes.get(vnode.type);
|
|
2341
|
+
if (!leavingVNodesCache) {
|
|
2342
|
+
leavingVNodesCache = /* @__PURE__ */ Object.create(null);
|
|
2343
|
+
leavingVNodes.set(vnode.type, leavingVNodesCache);
|
|
2344
|
+
}
|
|
2345
|
+
return leavingVNodesCache;
|
|
2346
|
+
}
|
|
2347
|
+
function resolveTransitionHooks(vnode, props, state, instance, postClone) {
|
|
2348
|
+
const { appear, mode, persisted = false, onBeforeEnter, onEnter, onAfterEnter, onEnterCancelled, onBeforeLeave, onLeave, onAfterLeave, onLeaveCancelled, onBeforeAppear, onAppear, onAfterAppear, onAppearCancelled } = props;
|
|
2349
|
+
const key = String(vnode.key);
|
|
2350
|
+
const leavingVNodesCache = getLeavingNodesForType(state, vnode);
|
|
2351
|
+
const callHook = (hook, args) => {
|
|
2352
|
+
hook && callWithAsyncErrorHandling(hook, instance, 9, args);
|
|
2353
|
+
};
|
|
2354
|
+
const callAsyncHook = (hook, args) => {
|
|
2355
|
+
const done = args[1];
|
|
2356
|
+
callHook(hook, args);
|
|
2357
|
+
if (isArray(hook)) {
|
|
2358
|
+
if (hook.every((hook2) => hook2.length <= 1)) done();
|
|
2359
|
+
} else if (hook.length <= 1) done();
|
|
2360
|
+
};
|
|
2361
|
+
const hooks = {
|
|
2362
|
+
mode,
|
|
2363
|
+
persisted,
|
|
2364
|
+
beforeEnter(el) {
|
|
2365
|
+
let hook = onBeforeEnter;
|
|
2366
|
+
if (!state.isMounted) if (appear) hook = onBeforeAppear || onBeforeEnter;
|
|
2367
|
+
else return;
|
|
2368
|
+
if (el[leaveCbKey]) el[leaveCbKey](true);
|
|
2369
|
+
const leavingVNode = leavingVNodesCache[key];
|
|
2370
|
+
if (leavingVNode && isSameVNodeType(vnode, leavingVNode) && leavingVNode.el[leaveCbKey]) leavingVNode.el[leaveCbKey]();
|
|
2371
|
+
callHook(hook, [el]);
|
|
2372
|
+
},
|
|
2373
|
+
enter(el) {
|
|
2374
|
+
if (leavingVNodesCache[key] === vnode) return;
|
|
2375
|
+
let hook = onEnter;
|
|
2376
|
+
let afterHook = onAfterEnter;
|
|
2377
|
+
let cancelHook = onEnterCancelled;
|
|
2378
|
+
if (!state.isMounted) if (appear) {
|
|
2379
|
+
hook = onAppear || onEnter;
|
|
2380
|
+
afterHook = onAfterAppear || onAfterEnter;
|
|
2381
|
+
cancelHook = onAppearCancelled || onEnterCancelled;
|
|
2382
|
+
} else return;
|
|
2383
|
+
let called = false;
|
|
2384
|
+
el[enterCbKey$1] = (cancelled) => {
|
|
2385
|
+
if (called) return;
|
|
2386
|
+
called = true;
|
|
2387
|
+
if (cancelled) callHook(cancelHook, [el]);
|
|
2388
|
+
else callHook(afterHook, [el]);
|
|
2389
|
+
if (hooks.delayedLeave) hooks.delayedLeave();
|
|
2390
|
+
el[enterCbKey$1] = void 0;
|
|
2391
|
+
};
|
|
2392
|
+
const done = el[enterCbKey$1].bind(null, false);
|
|
2393
|
+
if (hook) callAsyncHook(hook, [el, done]);
|
|
2394
|
+
else done();
|
|
2395
|
+
},
|
|
2396
|
+
leave(el, remove) {
|
|
2397
|
+
const key2 = String(vnode.key);
|
|
2398
|
+
if (el[enterCbKey$1]) el[enterCbKey$1](true);
|
|
2399
|
+
if (state.isUnmounting) return remove();
|
|
2400
|
+
callHook(onBeforeLeave, [el]);
|
|
2401
|
+
let called = false;
|
|
2402
|
+
el[leaveCbKey] = (cancelled) => {
|
|
2403
|
+
if (called) return;
|
|
2404
|
+
called = true;
|
|
2405
|
+
remove();
|
|
2406
|
+
if (cancelled) callHook(onLeaveCancelled, [el]);
|
|
2407
|
+
else callHook(onAfterLeave, [el]);
|
|
2408
|
+
el[leaveCbKey] = void 0;
|
|
2409
|
+
if (leavingVNodesCache[key2] === vnode) delete leavingVNodesCache[key2];
|
|
2410
|
+
};
|
|
2411
|
+
const done = el[leaveCbKey].bind(null, false);
|
|
2412
|
+
leavingVNodesCache[key2] = vnode;
|
|
2413
|
+
if (onLeave) callAsyncHook(onLeave, [el, done]);
|
|
2414
|
+
else done();
|
|
2415
|
+
},
|
|
2416
|
+
clone(vnode2) {
|
|
2417
|
+
const hooks2 = resolveTransitionHooks(vnode2, props, state, instance, postClone);
|
|
2418
|
+
if (postClone) postClone(hooks2);
|
|
2419
|
+
return hooks2;
|
|
2420
|
+
}
|
|
2421
|
+
};
|
|
2422
|
+
return hooks;
|
|
2423
|
+
}
|
|
2106
2424
|
function setTransitionHooks(vnode, hooks) {
|
|
2107
2425
|
if (vnode.shapeFlag & 6 && vnode.component) {
|
|
2108
2426
|
vnode.transition = hooks;
|
|
@@ -2112,9 +2430,23 @@ function setTransitionHooks(vnode, hooks) {
|
|
|
2112
2430
|
vnode.ssFallback.transition = hooks.clone(vnode.ssFallback);
|
|
2113
2431
|
} else vnode.transition = hooks;
|
|
2114
2432
|
}
|
|
2433
|
+
function getTransitionRawChildren(children, keepComment = false, parentKey) {
|
|
2434
|
+
let ret = [];
|
|
2435
|
+
let keyedFragmentCount = 0;
|
|
2436
|
+
for (let i = 0; i < children.length; i++) {
|
|
2437
|
+
let child = children[i];
|
|
2438
|
+
const key = parentKey == null ? child.key : String(parentKey) + String(child.key != null ? child.key : i);
|
|
2439
|
+
if (child.type === Fragment) {
|
|
2440
|
+
if (child.patchFlag & 128) keyedFragmentCount++;
|
|
2441
|
+
ret = ret.concat(getTransitionRawChildren(child.children, keepComment, key));
|
|
2442
|
+
} else if (keepComment || child.type !== Comment) ret.push(key != null ? cloneVNode(child, { key }) : child);
|
|
2443
|
+
}
|
|
2444
|
+
if (keyedFragmentCount > 1) for (let i = 0; i < ret.length; i++) ret[i].patchFlag = -2;
|
|
2445
|
+
return ret;
|
|
2446
|
+
}
|
|
2115
2447
|
/* @__NO_SIDE_EFFECTS__ */
|
|
2116
2448
|
function defineComponent(options, extraOptions) {
|
|
2117
|
-
return isFunction(options) ?
|
|
2449
|
+
return isFunction(options) ? extend({ name: options.name }, extraOptions, { setup: options }) : options;
|
|
2118
2450
|
}
|
|
2119
2451
|
function markAsyncBoundary(instance) {
|
|
2120
2452
|
instance.ids = [
|
|
@@ -2126,21 +2458,24 @@ function markAsyncBoundary(instance) {
|
|
|
2126
2458
|
const knownTemplateRefs = /* @__PURE__ */ new WeakSet();
|
|
2127
2459
|
function useTemplateRef(key) {
|
|
2128
2460
|
const i = getCurrentInstance();
|
|
2129
|
-
const r = shallowRef(null);
|
|
2461
|
+
const r = /* @__PURE__ */ shallowRef(null);
|
|
2130
2462
|
if (i) {
|
|
2131
2463
|
const refs = i.refs === EMPTY_OBJ ? i.refs = {} : i.refs;
|
|
2132
|
-
|
|
2133
|
-
if (!!(process.env.NODE_ENV !== "production") && (desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable) warn$1(`useTemplateRef('${key}') already exists.`);
|
|
2464
|
+
if (!!(process.env.NODE_ENV !== "production") && isTemplateRefKey(refs, key)) warn$1(`useTemplateRef('${key}') already exists.`);
|
|
2134
2465
|
else Object.defineProperty(refs, key, {
|
|
2135
2466
|
enumerable: true,
|
|
2136
2467
|
get: () => r.value,
|
|
2137
2468
|
set: (val) => r.value = val
|
|
2138
2469
|
});
|
|
2139
2470
|
} else if (!!(process.env.NODE_ENV !== "production")) warn$1(`useTemplateRef() is called when there is no active component instance to be associated with.`);
|
|
2140
|
-
const ret = !!(process.env.NODE_ENV !== "production") ? readonly(r) : r;
|
|
2471
|
+
const ret = !!(process.env.NODE_ENV !== "production") ? /* @__PURE__ */ readonly(r) : r;
|
|
2141
2472
|
if (!!(process.env.NODE_ENV !== "production")) knownTemplateRefs.add(ret);
|
|
2142
2473
|
return ret;
|
|
2143
2474
|
}
|
|
2475
|
+
function isTemplateRefKey(refs, key) {
|
|
2476
|
+
let desc;
|
|
2477
|
+
return !!((desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable);
|
|
2478
|
+
}
|
|
2144
2479
|
const pendingSetRefMap = /* @__PURE__ */ new WeakMap();
|
|
2145
2480
|
function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
|
|
2146
2481
|
if (isArray(rawRef)) {
|
|
@@ -2153,7 +2488,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
|
|
|
2153
2488
|
}
|
|
2154
2489
|
const refValue = vnode.shapeFlag & 4 ? getComponentPublicInstance(vnode.component) : vnode.el;
|
|
2155
2490
|
const value = isUnmount ? null : refValue;
|
|
2156
|
-
const { i: owner, r: ref
|
|
2491
|
+
const { i: owner, r: ref } = rawRef;
|
|
2157
2492
|
if (!!(process.env.NODE_ENV !== "production") && !owner) {
|
|
2158
2493
|
warn$1(`Missing ref owner context. ref cannot be used on hoisted vnodes. A vnode with ref must be created inside the render function.`);
|
|
2159
2494
|
return;
|
|
@@ -2161,53 +2496,56 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
|
|
|
2161
2496
|
const oldRef = oldRawRef && oldRawRef.r;
|
|
2162
2497
|
const refs = owner.refs === EMPTY_OBJ ? owner.refs = {} : owner.refs;
|
|
2163
2498
|
const setupState = owner.setupState;
|
|
2164
|
-
const rawSetupState = toRaw(setupState);
|
|
2499
|
+
const rawSetupState = /* @__PURE__ */ toRaw(setupState);
|
|
2165
2500
|
const canSetSetupRef = setupState === EMPTY_OBJ ? NO : (key) => {
|
|
2166
2501
|
if (!!(process.env.NODE_ENV !== "production")) {
|
|
2167
|
-
if (hasOwn
|
|
2502
|
+
if (hasOwn(rawSetupState, key) && !/* @__PURE__ */ isRef(rawSetupState[key])) warn$1(`Template ref "${key}" used on a non-ref value. It will not work in the production build.`);
|
|
2168
2503
|
if (knownTemplateRefs.has(rawSetupState[key])) return false;
|
|
2169
2504
|
}
|
|
2170
|
-
|
|
2505
|
+
if (isTemplateRefKey(refs, key)) return false;
|
|
2506
|
+
return hasOwn(rawSetupState, key);
|
|
2171
2507
|
};
|
|
2172
|
-
const canSetRef = (ref2) => {
|
|
2173
|
-
|
|
2508
|
+
const canSetRef = (ref2, key) => {
|
|
2509
|
+
if (!!(process.env.NODE_ENV !== "production") && knownTemplateRefs.has(ref2)) return false;
|
|
2510
|
+
if (key && isTemplateRefKey(refs, key)) return false;
|
|
2511
|
+
return true;
|
|
2174
2512
|
};
|
|
2175
|
-
if (oldRef != null && oldRef !== ref
|
|
2513
|
+
if (oldRef != null && oldRef !== ref) {
|
|
2176
2514
|
invalidatePendingSetRef(oldRawRef);
|
|
2177
2515
|
if (isString(oldRef)) {
|
|
2178
2516
|
refs[oldRef] = null;
|
|
2179
2517
|
if (canSetSetupRef(oldRef)) setupState[oldRef] = null;
|
|
2180
|
-
} else if (isRef(oldRef)) {
|
|
2181
|
-
if (canSetRef(oldRef)) oldRef.value = null;
|
|
2518
|
+
} else if (/* @__PURE__ */ isRef(oldRef)) {
|
|
2182
2519
|
const oldRawRefAtom = oldRawRef;
|
|
2520
|
+
if (canSetRef(oldRef, oldRawRefAtom.k)) oldRef.value = null;
|
|
2183
2521
|
if (oldRawRefAtom.k) refs[oldRawRefAtom.k] = null;
|
|
2184
2522
|
}
|
|
2185
2523
|
}
|
|
2186
|
-
if (isFunction(ref
|
|
2524
|
+
if (isFunction(ref)) callWithErrorHandling(ref, owner, 12, [value, refs]);
|
|
2187
2525
|
else {
|
|
2188
|
-
const _isString = isString(ref
|
|
2189
|
-
const _isRef = isRef(ref
|
|
2526
|
+
const _isString = isString(ref);
|
|
2527
|
+
const _isRef = /* @__PURE__ */ isRef(ref);
|
|
2190
2528
|
if (_isString || _isRef) {
|
|
2191
2529
|
const doSet = () => {
|
|
2192
2530
|
if (rawRef.f) {
|
|
2193
|
-
const existing = _isString ? canSetSetupRef(ref
|
|
2531
|
+
const existing = _isString ? canSetSetupRef(ref) ? setupState[ref] : refs[ref] : canSetRef(ref) || !rawRef.k ? ref.value : refs[rawRef.k];
|
|
2194
2532
|
if (isUnmount) isArray(existing) && remove(existing, refValue);
|
|
2195
2533
|
else if (!isArray(existing)) if (_isString) {
|
|
2196
|
-
refs[ref
|
|
2197
|
-
if (canSetSetupRef(ref
|
|
2534
|
+
refs[ref] = [refValue];
|
|
2535
|
+
if (canSetSetupRef(ref)) setupState[ref] = refs[ref];
|
|
2198
2536
|
} else {
|
|
2199
2537
|
const newVal = [refValue];
|
|
2200
|
-
if (canSetRef(ref
|
|
2538
|
+
if (canSetRef(ref, rawRef.k)) ref.value = newVal;
|
|
2201
2539
|
if (rawRef.k) refs[rawRef.k] = newVal;
|
|
2202
2540
|
}
|
|
2203
2541
|
else if (!existing.includes(refValue)) existing.push(refValue);
|
|
2204
2542
|
} else if (_isString) {
|
|
2205
|
-
refs[ref
|
|
2206
|
-
if (canSetSetupRef(ref
|
|
2543
|
+
refs[ref] = value;
|
|
2544
|
+
if (canSetSetupRef(ref)) setupState[ref] = value;
|
|
2207
2545
|
} else if (_isRef) {
|
|
2208
|
-
if (canSetRef(ref
|
|
2546
|
+
if (canSetRef(ref, rawRef.k)) ref.value = value;
|
|
2209
2547
|
if (rawRef.k) refs[rawRef.k] = value;
|
|
2210
|
-
} else if (!!(process.env.NODE_ENV !== "production")) warn$1("Invalid template ref type:", ref
|
|
2548
|
+
} else if (!!(process.env.NODE_ENV !== "production")) warn$1("Invalid template ref type:", ref, `(${typeof ref})`);
|
|
2211
2549
|
};
|
|
2212
2550
|
if (value) {
|
|
2213
2551
|
const job = () => {
|
|
@@ -2221,7 +2559,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
|
|
|
2221
2559
|
invalidatePendingSetRef(rawRef);
|
|
2222
2560
|
doSet();
|
|
2223
2561
|
}
|
|
2224
|
-
} else if (!!(process.env.NODE_ENV !== "production")) warn$1("Invalid template ref type:", ref
|
|
2562
|
+
} else if (!!(process.env.NODE_ENV !== "production")) warn$1("Invalid template ref type:", ref, `(${typeof ref})`);
|
|
2225
2563
|
}
|
|
2226
2564
|
}
|
|
2227
2565
|
function invalidatePendingSetRef(rawRef) {
|
|
@@ -2231,9 +2569,130 @@ function invalidatePendingSetRef(rawRef) {
|
|
|
2231
2569
|
pendingSetRefMap.delete(rawRef);
|
|
2232
2570
|
}
|
|
2233
2571
|
}
|
|
2234
|
-
const
|
|
2235
|
-
|
|
2572
|
+
const isComment = (node) => node.nodeType === 8;
|
|
2573
|
+
getGlobalThis().requestIdleCallback;
|
|
2574
|
+
getGlobalThis().cancelIdleCallback;
|
|
2575
|
+
function forEachElement(node, cb) {
|
|
2576
|
+
if (isComment(node) && node.data === "[") {
|
|
2577
|
+
let depth = 1;
|
|
2578
|
+
let next = node.nextSibling;
|
|
2579
|
+
while (next) {
|
|
2580
|
+
if (next.nodeType === 1) {
|
|
2581
|
+
if (cb(next) === false) break;
|
|
2582
|
+
} else if (isComment(next)) {
|
|
2583
|
+
if (next.data === "]") {
|
|
2584
|
+
if (--depth === 0) break;
|
|
2585
|
+
} else if (next.data === "[") depth++;
|
|
2586
|
+
}
|
|
2587
|
+
next = next.nextSibling;
|
|
2588
|
+
}
|
|
2589
|
+
} else cb(node);
|
|
2590
|
+
}
|
|
2236
2591
|
const isAsyncWrapper = (i) => !!i.type.__asyncLoader;
|
|
2592
|
+
/* @__NO_SIDE_EFFECTS__ */
|
|
2593
|
+
function defineAsyncComponent(source) {
|
|
2594
|
+
if (isFunction(source)) source = { loader: source };
|
|
2595
|
+
const { loader, loadingComponent, errorComponent, delay = 200, hydrate: hydrateStrategy, timeout, suspensible = true, onError: userOnError } = source;
|
|
2596
|
+
let pendingRequest = null;
|
|
2597
|
+
let resolvedComp;
|
|
2598
|
+
let retries = 0;
|
|
2599
|
+
const retry = () => {
|
|
2600
|
+
retries++;
|
|
2601
|
+
pendingRequest = null;
|
|
2602
|
+
return load();
|
|
2603
|
+
};
|
|
2604
|
+
const load = () => {
|
|
2605
|
+
let thisRequest;
|
|
2606
|
+
return pendingRequest || (thisRequest = pendingRequest = loader().catch((err) => {
|
|
2607
|
+
err = err instanceof Error ? err : new Error(String(err));
|
|
2608
|
+
if (userOnError) return new Promise((resolve, reject) => {
|
|
2609
|
+
const userRetry = () => resolve(retry());
|
|
2610
|
+
const userFail = () => reject(err);
|
|
2611
|
+
userOnError(err, userRetry, userFail, retries + 1);
|
|
2612
|
+
});
|
|
2613
|
+
else throw err;
|
|
2614
|
+
}).then((comp) => {
|
|
2615
|
+
if (thisRequest !== pendingRequest && pendingRequest) return pendingRequest;
|
|
2616
|
+
if (!!(process.env.NODE_ENV !== "production") && !comp) warn$1(`Async component loader resolved to undefined. If you are using retry(), make sure to return its return value.`);
|
|
2617
|
+
if (comp && (comp.__esModule || comp[Symbol.toStringTag] === "Module")) comp = comp.default;
|
|
2618
|
+
if (!!(process.env.NODE_ENV !== "production") && comp && !isObject$1(comp) && !isFunction(comp)) throw new Error(`Invalid async component load result: ${comp}`);
|
|
2619
|
+
resolvedComp = comp;
|
|
2620
|
+
return comp;
|
|
2621
|
+
}));
|
|
2622
|
+
};
|
|
2623
|
+
return /* @__PURE__ */ defineComponent({
|
|
2624
|
+
name: "AsyncComponentWrapper",
|
|
2625
|
+
__asyncLoader: load,
|
|
2626
|
+
__asyncHydrate(el, instance, hydrate) {
|
|
2627
|
+
let patched = false;
|
|
2628
|
+
(instance.bu || (instance.bu = [])).push(() => patched = true);
|
|
2629
|
+
const performHydrate = () => {
|
|
2630
|
+
if (patched) {
|
|
2631
|
+
if (!!(process.env.NODE_ENV !== "production")) warn$1(`Skipping lazy hydration for component '${getComponentName(resolvedComp) || resolvedComp.__file}': it was updated before lazy hydration performed.`);
|
|
2632
|
+
return;
|
|
2633
|
+
}
|
|
2634
|
+
hydrate();
|
|
2635
|
+
};
|
|
2636
|
+
const doHydrate = hydrateStrategy ? () => {
|
|
2637
|
+
const teardown = hydrateStrategy(performHydrate, (cb) => forEachElement(el, cb));
|
|
2638
|
+
if (teardown) (instance.bum || (instance.bum = [])).push(teardown);
|
|
2639
|
+
} : performHydrate;
|
|
2640
|
+
if (resolvedComp) doHydrate();
|
|
2641
|
+
else load().then(() => !instance.isUnmounted && doHydrate());
|
|
2642
|
+
},
|
|
2643
|
+
get __asyncResolved() {
|
|
2644
|
+
return resolvedComp;
|
|
2645
|
+
},
|
|
2646
|
+
setup() {
|
|
2647
|
+
const instance = currentInstance;
|
|
2648
|
+
markAsyncBoundary(instance);
|
|
2649
|
+
if (resolvedComp) return () => createInnerComp(resolvedComp, instance);
|
|
2650
|
+
const onError = (err) => {
|
|
2651
|
+
pendingRequest = null;
|
|
2652
|
+
handleError(err, instance, 13, !errorComponent);
|
|
2653
|
+
};
|
|
2654
|
+
if (suspensible && instance.suspense || isInSSRComponentSetup) return load().then((comp) => {
|
|
2655
|
+
return () => createInnerComp(comp, instance);
|
|
2656
|
+
}).catch((err) => {
|
|
2657
|
+
onError(err);
|
|
2658
|
+
return () => errorComponent ? createVNode(errorComponent, { error: err }) : null;
|
|
2659
|
+
});
|
|
2660
|
+
const loaded = /* @__PURE__ */ ref(false);
|
|
2661
|
+
const error = /* @__PURE__ */ ref();
|
|
2662
|
+
const delayed = /* @__PURE__ */ ref(!!delay);
|
|
2663
|
+
if (delay) setTimeout(() => {
|
|
2664
|
+
delayed.value = false;
|
|
2665
|
+
}, delay);
|
|
2666
|
+
if (timeout != null) setTimeout(() => {
|
|
2667
|
+
if (!loaded.value && !error.value) {
|
|
2668
|
+
const err = /* @__PURE__ */ new Error(`Async component timed out after ${timeout}ms.`);
|
|
2669
|
+
onError(err);
|
|
2670
|
+
error.value = err;
|
|
2671
|
+
}
|
|
2672
|
+
}, timeout);
|
|
2673
|
+
load().then(() => {
|
|
2674
|
+
loaded.value = true;
|
|
2675
|
+
if (instance.parent && isKeepAlive(instance.parent.vnode)) instance.parent.update();
|
|
2676
|
+
}).catch((err) => {
|
|
2677
|
+
onError(err);
|
|
2678
|
+
error.value = err;
|
|
2679
|
+
});
|
|
2680
|
+
return () => {
|
|
2681
|
+
if (loaded.value && resolvedComp) return createInnerComp(resolvedComp, instance);
|
|
2682
|
+
else if (error.value && errorComponent) return createVNode(errorComponent, { error: error.value });
|
|
2683
|
+
else if (loadingComponent && !delayed.value) return createInnerComp(loadingComponent, instance);
|
|
2684
|
+
};
|
|
2685
|
+
}
|
|
2686
|
+
});
|
|
2687
|
+
}
|
|
2688
|
+
function createInnerComp(comp, parent) {
|
|
2689
|
+
const { ref: ref2, props, children, ce } = parent.vnode;
|
|
2690
|
+
const vnode = createVNode(comp, props, children);
|
|
2691
|
+
vnode.ref = ref2;
|
|
2692
|
+
vnode.ce = ce;
|
|
2693
|
+
delete parent.vnode.ce;
|
|
2694
|
+
return vnode;
|
|
2695
|
+
}
|
|
2237
2696
|
const isKeepAlive = (vnode) => vnode.type.__isKeepAlive;
|
|
2238
2697
|
function onActivated(hook, target) {
|
|
2239
2698
|
registerKeepAliveHook(hook, "a", target);
|
|
@@ -2296,27 +2755,30 @@ const onRenderTracked = createHook("rtc");
|
|
|
2296
2755
|
function onErrorCaptured(hook, target = currentInstance) {
|
|
2297
2756
|
injectHook("ec", hook, target);
|
|
2298
2757
|
}
|
|
2299
|
-
const NULL_DYNAMIC_COMPONENT = Symbol.for("v-ndc");
|
|
2758
|
+
const NULL_DYNAMIC_COMPONENT = /* @__PURE__ */ Symbol.for("v-ndc");
|
|
2300
2759
|
function renderList(source, renderItem, cache, index) {
|
|
2301
2760
|
let ret;
|
|
2302
2761
|
const cached = cache && cache[index];
|
|
2303
2762
|
const sourceIsArray = isArray(source);
|
|
2304
2763
|
if (sourceIsArray || isString(source)) {
|
|
2305
|
-
const sourceIsReactiveArray = sourceIsArray && isReactive(source);
|
|
2764
|
+
const sourceIsReactiveArray = sourceIsArray && /* @__PURE__ */ isReactive(source);
|
|
2306
2765
|
let needsWrap = false;
|
|
2307
2766
|
let isReadonlySource = false;
|
|
2308
2767
|
if (sourceIsReactiveArray) {
|
|
2309
|
-
needsWrap =
|
|
2310
|
-
isReadonlySource = isReadonly(source);
|
|
2768
|
+
needsWrap = !/* @__PURE__ */ isShallow(source);
|
|
2769
|
+
isReadonlySource = /* @__PURE__ */ isReadonly(source);
|
|
2311
2770
|
source = shallowReadArray(source);
|
|
2312
2771
|
}
|
|
2313
2772
|
ret = new Array(source.length);
|
|
2314
2773
|
for (let i = 0, l = source.length; i < l; i++) ret[i] = renderItem(needsWrap ? isReadonlySource ? toReadonly(toReactive(source[i])) : toReactive(source[i]) : source[i], i, void 0, cached && cached[i]);
|
|
2315
|
-
} else if (typeof source === "number") {
|
|
2316
|
-
|
|
2774
|
+
} else if (typeof source === "number") if (!!(process.env.NODE_ENV !== "production") && (!Number.isInteger(source) || source < 0)) {
|
|
2775
|
+
warn$1(`The v-for range expects a positive integer value but got ${source}.`);
|
|
2776
|
+
ret = [];
|
|
2777
|
+
} else {
|
|
2317
2778
|
ret = new Array(source);
|
|
2318
2779
|
for (let i = 0; i < source; i++) ret[i] = renderItem(i + 1, i, void 0, cached && cached[i]);
|
|
2319
|
-
}
|
|
2780
|
+
}
|
|
2781
|
+
else if (isObject$1(source)) if (source[Symbol.iterator]) ret = Array.from(source, (item, i) => renderItem(item, i, void 0, cached && cached[i]));
|
|
2320
2782
|
else {
|
|
2321
2783
|
const keys = Object.keys(source);
|
|
2322
2784
|
ret = new Array(keys.length);
|
|
@@ -2366,10 +2828,10 @@ const publicPropertiesMap = /* @__PURE__ */ extend(/* @__PURE__ */ Object.create
|
|
|
2366
2828
|
$: (i) => i,
|
|
2367
2829
|
$el: (i) => i.vnode.el,
|
|
2368
2830
|
$data: (i) => i.data,
|
|
2369
|
-
$props: (i) => !!(process.env.NODE_ENV !== "production") ? shallowReadonly(i.props) : i.props,
|
|
2370
|
-
$attrs: (i) => !!(process.env.NODE_ENV !== "production") ? shallowReadonly(i.attrs) : i.attrs,
|
|
2371
|
-
$slots: (i) => !!(process.env.NODE_ENV !== "production") ? shallowReadonly(i.slots) : i.slots,
|
|
2372
|
-
$refs: (i) => !!(process.env.NODE_ENV !== "production") ? shallowReadonly(i.refs) : i.refs,
|
|
2831
|
+
$props: (i) => !!(process.env.NODE_ENV !== "production") ? /* @__PURE__ */ shallowReadonly(i.props) : i.props,
|
|
2832
|
+
$attrs: (i) => !!(process.env.NODE_ENV !== "production") ? /* @__PURE__ */ shallowReadonly(i.attrs) : i.attrs,
|
|
2833
|
+
$slots: (i) => !!(process.env.NODE_ENV !== "production") ? /* @__PURE__ */ shallowReadonly(i.slots) : i.slots,
|
|
2834
|
+
$refs: (i) => !!(process.env.NODE_ENV !== "production") ? /* @__PURE__ */ shallowReadonly(i.refs) : i.refs,
|
|
2373
2835
|
$parent: (i) => getPublicInstance(i.parent),
|
|
2374
2836
|
$root: (i) => getPublicInstance(i.root),
|
|
2375
2837
|
$host: (i) => i.ce,
|
|
@@ -2382,13 +2844,12 @@ const publicPropertiesMap = /* @__PURE__ */ extend(/* @__PURE__ */ Object.create
|
|
|
2382
2844
|
$watch: (i) => __VUE_OPTIONS_API__ ? instanceWatch.bind(i) : NOOP
|
|
2383
2845
|
});
|
|
2384
2846
|
const isReservedPrefix = (key) => key === "_" || key === "$";
|
|
2385
|
-
const hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScriptSetup && hasOwn
|
|
2847
|
+
const hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScriptSetup && hasOwn(state, key);
|
|
2386
2848
|
const PublicInstanceProxyHandlers = {
|
|
2387
2849
|
get({ _: instance }, key) {
|
|
2388
2850
|
if (key === "__v_skip") return true;
|
|
2389
2851
|
const { ctx, setupState, data, props, accessCache, type, appContext } = instance;
|
|
2390
2852
|
if (!!(process.env.NODE_ENV !== "production") && key === "__isVue") return true;
|
|
2391
|
-
let normalizedProps;
|
|
2392
2853
|
if (key[0] !== "$") {
|
|
2393
2854
|
const n = accessCache[key];
|
|
2394
2855
|
if (n !== void 0) switch (n) {
|
|
@@ -2400,13 +2861,13 @@ const PublicInstanceProxyHandlers = {
|
|
|
2400
2861
|
else if (hasSetupBinding(setupState, key)) {
|
|
2401
2862
|
accessCache[key] = 1;
|
|
2402
2863
|
return setupState[key];
|
|
2403
|
-
} else if (data !== EMPTY_OBJ && hasOwn
|
|
2864
|
+
} else if (__VUE_OPTIONS_API__ && data !== EMPTY_OBJ && hasOwn(data, key)) {
|
|
2404
2865
|
accessCache[key] = 2;
|
|
2405
2866
|
return data[key];
|
|
2406
|
-
} else if (
|
|
2867
|
+
} else if (hasOwn(props, key)) {
|
|
2407
2868
|
accessCache[key] = 3;
|
|
2408
2869
|
return props[key];
|
|
2409
|
-
} else if (ctx !== EMPTY_OBJ && hasOwn
|
|
2870
|
+
} else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {
|
|
2410
2871
|
accessCache[key] = 4;
|
|
2411
2872
|
return ctx[key];
|
|
2412
2873
|
} else if (!__VUE_OPTIONS_API__ || shouldCacheAccess) accessCache[key] = 0;
|
|
@@ -2420,12 +2881,12 @@ const PublicInstanceProxyHandlers = {
|
|
|
2420
2881
|
} else if (!!(process.env.NODE_ENV !== "production") && key === "$slots") track(instance, "get", key);
|
|
2421
2882
|
return publicGetter(instance);
|
|
2422
2883
|
} else if ((cssModule = type.__cssModules) && (cssModule = cssModule[key])) return cssModule;
|
|
2423
|
-
else if (ctx !== EMPTY_OBJ && hasOwn
|
|
2884
|
+
else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {
|
|
2424
2885
|
accessCache[key] = 4;
|
|
2425
2886
|
return ctx[key];
|
|
2426
|
-
} else if (globalProperties = appContext.config.globalProperties, hasOwn
|
|
2887
|
+
} else if (globalProperties = appContext.config.globalProperties, hasOwn(globalProperties, key)) return globalProperties[key];
|
|
2427
2888
|
else if (!!(process.env.NODE_ENV !== "production") && currentRenderingInstance && (!isString(key) || key.indexOf("__v") !== 0)) {
|
|
2428
|
-
if (data !== EMPTY_OBJ && isReservedPrefix(key[0]) && hasOwn
|
|
2889
|
+
if (data !== EMPTY_OBJ && isReservedPrefix(key[0]) && hasOwn(data, key)) warn$1(`Property ${JSON.stringify(key)} must be accessed via $data because it starts with a reserved character ("$" or "_") and is not proxied on the render context.`);
|
|
2429
2890
|
else if (instance === currentRenderingInstance) warn$1(`Property ${JSON.stringify(key)} was accessed during render but is not defined on instance.`);
|
|
2430
2891
|
}
|
|
2431
2892
|
},
|
|
@@ -2434,13 +2895,13 @@ const PublicInstanceProxyHandlers = {
|
|
|
2434
2895
|
if (hasSetupBinding(setupState, key)) {
|
|
2435
2896
|
setupState[key] = value;
|
|
2436
2897
|
return true;
|
|
2437
|
-
} else if (!!(process.env.NODE_ENV !== "production") && setupState.__isScriptSetup && hasOwn
|
|
2898
|
+
} else if (!!(process.env.NODE_ENV !== "production") && setupState.__isScriptSetup && hasOwn(setupState, key)) {
|
|
2438
2899
|
warn$1(`Cannot mutate <script setup> binding "${key}" from Options API.`);
|
|
2439
2900
|
return false;
|
|
2440
|
-
} else if (data !== EMPTY_OBJ && hasOwn
|
|
2901
|
+
} else if (__VUE_OPTIONS_API__ && data !== EMPTY_OBJ && hasOwn(data, key)) {
|
|
2441
2902
|
data[key] = value;
|
|
2442
2903
|
return true;
|
|
2443
|
-
} else if (hasOwn
|
|
2904
|
+
} else if (hasOwn(instance.props, key)) {
|
|
2444
2905
|
process.env.NODE_ENV !== "production" && warn$1(`Attempting to mutate prop "${key}". Props are readonly.`);
|
|
2445
2906
|
return false;
|
|
2446
2907
|
}
|
|
@@ -2455,13 +2916,13 @@ const PublicInstanceProxyHandlers = {
|
|
|
2455
2916
|
else ctx[key] = value;
|
|
2456
2917
|
return true;
|
|
2457
2918
|
},
|
|
2458
|
-
has({ _: { data, setupState, accessCache, ctx, appContext,
|
|
2459
|
-
let
|
|
2460
|
-
return !!(accessCache[key] || data !== EMPTY_OBJ && key[0] !== "$" && hasOwn
|
|
2919
|
+
has({ _: { data, setupState, accessCache, ctx, appContext, props, type } }, key) {
|
|
2920
|
+
let cssModules;
|
|
2921
|
+
return !!(accessCache[key] || __VUE_OPTIONS_API__ && data !== EMPTY_OBJ && key[0] !== "$" && hasOwn(data, key) || hasSetupBinding(setupState, key) || hasOwn(props, key) || hasOwn(ctx, key) || hasOwn(publicPropertiesMap, key) || hasOwn(appContext.config.globalProperties, key) || (cssModules = type.__cssModules) && cssModules[key]);
|
|
2461
2922
|
},
|
|
2462
2923
|
defineProperty(target, key, descriptor) {
|
|
2463
2924
|
if (descriptor.get != null) target._.accessCache[key] = 0;
|
|
2464
|
-
else if (hasOwn
|
|
2925
|
+
else if (hasOwn(descriptor, "value")) this.set(target, key, descriptor.value, null);
|
|
2465
2926
|
return Reflect.defineProperty(target, key, descriptor);
|
|
2466
2927
|
}
|
|
2467
2928
|
};
|
|
@@ -2499,7 +2960,7 @@ function exposePropsOnRenderContext(instance) {
|
|
|
2499
2960
|
}
|
|
2500
2961
|
function exposeSetupStateOnRenderContext(instance) {
|
|
2501
2962
|
const { ctx, setupState } = instance;
|
|
2502
|
-
Object.keys(toRaw(setupState)).forEach((key) => {
|
|
2963
|
+
Object.keys(/* @__PURE__ */ toRaw(setupState)).forEach((key) => {
|
|
2503
2964
|
if (!setupState.__isScriptSetup) {
|
|
2504
2965
|
if (isReservedPrefix(key[0])) {
|
|
2505
2966
|
warn$1(`setup() return property ${JSON.stringify(key)} should not start with "$" or "_" which are reserved prefixes for Vue internals.`);
|
|
@@ -2515,12 +2976,7 @@ function exposeSetupStateOnRenderContext(instance) {
|
|
|
2515
2976
|
});
|
|
2516
2977
|
}
|
|
2517
2978
|
function normalizePropsOrEmits(props) {
|
|
2518
|
-
return isArray(props) ? props.reduce((normalized, p
|
|
2519
|
-
}
|
|
2520
|
-
function mergeModels(a, b) {
|
|
2521
|
-
if (!a || !b) return a || b;
|
|
2522
|
-
if (isArray(a) && isArray(b)) return a.concat(b);
|
|
2523
|
-
return extend({}, normalizePropsOrEmits(a), normalizePropsOrEmits(b));
|
|
2979
|
+
return isArray(props) ? props.reduce((normalized, p) => (normalized[p] = null, normalized), {}) : props;
|
|
2524
2980
|
}
|
|
2525
2981
|
function createDuplicateChecker() {
|
|
2526
2982
|
const cache = /* @__PURE__ */ Object.create(null);
|
|
@@ -2535,8 +2991,8 @@ function applyOptions(instance) {
|
|
|
2535
2991
|
const publicThis = instance.proxy;
|
|
2536
2992
|
const ctx = instance.ctx;
|
|
2537
2993
|
shouldCacheAccess = false;
|
|
2538
|
-
if (options.beforeCreate) callHook(options.beforeCreate, instance, "bc");
|
|
2539
|
-
const { data: dataOptions, computed: computedOptions, methods, watch: watchOptions, provide: provideOptions, inject: injectOptions, created, beforeMount, mounted, beforeUpdate, updated, activated, deactivated, beforeDestroy, beforeUnmount, destroyed, unmounted, render
|
|
2994
|
+
if (options.beforeCreate) callHook$1(options.beforeCreate, instance, "bc");
|
|
2995
|
+
const { data: dataOptions, computed: computedOptions, methods, watch: watchOptions, provide: provideOptions, inject: injectOptions, created, beforeMount, mounted, beforeUpdate, updated, activated, deactivated, beforeDestroy, beforeUnmount, destroyed, unmounted, render, renderTracked, renderTriggered, errorCaptured, serverPrefetch, expose, inheritAttrs, components, directives, filters } = options;
|
|
2540
2996
|
const checkDuplicateProperties = !!(process.env.NODE_ENV !== "production") ? createDuplicateChecker() : null;
|
|
2541
2997
|
if (!!(process.env.NODE_ENV !== "production")) {
|
|
2542
2998
|
const [propsOptions] = instance.propsOptions;
|
|
@@ -2562,7 +3018,7 @@ function applyOptions(instance) {
|
|
|
2562
3018
|
if (!!(process.env.NODE_ENV !== "production") && isPromise(data)) warn$1(`data() returned a Promise - note data() cannot be async; If you intend to perform data fetching before component renders, use async setup() + <Suspense>.`);
|
|
2563
3019
|
if (!isObject$1(data)) process.env.NODE_ENV !== "production" && warn$1(`data() should return an object.`);
|
|
2564
3020
|
else {
|
|
2565
|
-
instance.data = reactive(data);
|
|
3021
|
+
instance.data = /* @__PURE__ */ reactive(data);
|
|
2566
3022
|
if (!!(process.env.NODE_ENV !== "production")) for (const key in data) {
|
|
2567
3023
|
checkDuplicateProperties("Data", key);
|
|
2568
3024
|
if (!isReservedPrefix(key[0])) Object.defineProperty(ctx, key, {
|
|
@@ -2600,7 +3056,7 @@ function applyOptions(instance) {
|
|
|
2600
3056
|
provide(key, provides[key]);
|
|
2601
3057
|
});
|
|
2602
3058
|
}
|
|
2603
|
-
if (created) callHook(created, instance, "c");
|
|
3059
|
+
if (created) callHook$1(created, instance, "c");
|
|
2604
3060
|
function registerLifecycleHook(register, hook) {
|
|
2605
3061
|
if (isArray(hook)) hook.forEach((_hook) => register(_hook.bind(publicThis)));
|
|
2606
3062
|
else if (hook) register(hook.bind(publicThis));
|
|
@@ -2629,7 +3085,7 @@ function applyOptions(instance) {
|
|
|
2629
3085
|
});
|
|
2630
3086
|
} else if (!instance.exposed) instance.exposed = {};
|
|
2631
3087
|
}
|
|
2632
|
-
if (render
|
|
3088
|
+
if (render && instance.render === NOOP) instance.render = render;
|
|
2633
3089
|
if (inheritAttrs != null) instance.inheritAttrs = inheritAttrs;
|
|
2634
3090
|
if (components) instance.components = components;
|
|
2635
3091
|
if (directives) instance.directives = directives;
|
|
@@ -2643,7 +3099,7 @@ function resolveInjections(injectOptions, ctx, checkDuplicateProperties = NOOP)
|
|
|
2643
3099
|
if (isObject$1(opt)) if ("default" in opt) injected = inject(opt.from || key, opt.default, true);
|
|
2644
3100
|
else injected = inject(opt.from || key);
|
|
2645
3101
|
else injected = inject(opt);
|
|
2646
|
-
if (isRef(injected)) Object.defineProperty(ctx, key, {
|
|
3102
|
+
if (/* @__PURE__ */ isRef(injected)) Object.defineProperty(ctx, key, {
|
|
2647
3103
|
enumerable: true,
|
|
2648
3104
|
configurable: true,
|
|
2649
3105
|
get: () => injected.value,
|
|
@@ -2653,8 +3109,8 @@ function resolveInjections(injectOptions, ctx, checkDuplicateProperties = NOOP)
|
|
|
2653
3109
|
if (!!(process.env.NODE_ENV !== "production")) checkDuplicateProperties("Inject", key);
|
|
2654
3110
|
}
|
|
2655
3111
|
}
|
|
2656
|
-
function callHook(hook, instance, type) {
|
|
2657
|
-
callWithAsyncErrorHandling(isArray(hook) ? hook.map((h
|
|
3112
|
+
function callHook$1(hook, instance, type) {
|
|
3113
|
+
callWithAsyncErrorHandling(isArray(hook) ? hook.map((h) => h.bind(instance.proxy)) : hook.bind(instance.proxy), instance, type);
|
|
2658
3114
|
}
|
|
2659
3115
|
function createWatcher(raw, ctx, publicThis, key) {
|
|
2660
3116
|
let getter = key.includes(".") ? createPathGetter(publicThis, key) : () => publicThis[key];
|
|
@@ -2783,8 +3239,8 @@ function createAppContext() {
|
|
|
2783
3239
|
};
|
|
2784
3240
|
}
|
|
2785
3241
|
let uid$1 = 0;
|
|
2786
|
-
function createAppAPI(render
|
|
2787
|
-
return function createApp
|
|
3242
|
+
function createAppAPI(render, hydrate) {
|
|
3243
|
+
return function createApp(rootComponent, rootProps = null) {
|
|
2788
3244
|
if (!isFunction(rootComponent)) rootComponent = extend({}, rootComponent);
|
|
2789
3245
|
if (rootProps != null && !isObject$1(rootProps)) {
|
|
2790
3246
|
process.env.NODE_ENV !== "production" && warn$1(`root props passed to app.mount() must be an object.`);
|
|
@@ -2851,10 +3307,10 @@ function createAppAPI(render$1, hydrate) {
|
|
|
2851
3307
|
if (!!(process.env.NODE_ENV !== "production")) context.reload = () => {
|
|
2852
3308
|
const cloned = cloneVNode(vnode);
|
|
2853
3309
|
cloned.el = null;
|
|
2854
|
-
render
|
|
3310
|
+
render(cloned, rootContainer, namespace);
|
|
2855
3311
|
};
|
|
2856
3312
|
if (isHydrate && hydrate) hydrate(vnode, rootContainer);
|
|
2857
|
-
else render
|
|
3313
|
+
else render(vnode, rootContainer, namespace);
|
|
2858
3314
|
isMounted = true;
|
|
2859
3315
|
app._container = rootContainer;
|
|
2860
3316
|
rootContainer.__vue_app__ = app;
|
|
@@ -2873,7 +3329,7 @@ If you want to remount the same app, move your app creation logic into a factory
|
|
|
2873
3329
|
unmount() {
|
|
2874
3330
|
if (isMounted) {
|
|
2875
3331
|
callWithAsyncErrorHandling(pluginCleanupFns, app._instance, 16);
|
|
2876
|
-
render
|
|
3332
|
+
render(null, app._container);
|
|
2877
3333
|
if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) {
|
|
2878
3334
|
app._instance = null;
|
|
2879
3335
|
devtoolsUnmountApp(app);
|
|
@@ -2882,7 +3338,7 @@ If you want to remount the same app, move your app creation logic into a factory
|
|
|
2882
3338
|
} else if (!!(process.env.NODE_ENV !== "production")) warn$1(`Cannot unmount an app that is not mounted.`);
|
|
2883
3339
|
},
|
|
2884
3340
|
provide(key, value) {
|
|
2885
|
-
if (!!(process.env.NODE_ENV !== "production") && key in context.provides) if (hasOwn
|
|
3341
|
+
if (!!(process.env.NODE_ENV !== "production") && key in context.provides) if (hasOwn(context.provides, key)) warn$1(`App already provides property with key "${String(key)}". It will be overwritten with the new value.`);
|
|
2886
3342
|
else warn$1(`App already provides property with key "${String(key)}" inherited from its parent element. It will be overwritten with the new value.`);
|
|
2887
3343
|
context.provides[key] = value;
|
|
2888
3344
|
return app;
|
|
@@ -2901,54 +3357,285 @@ If you want to remount the same app, move your app creation logic into a factory
|
|
|
2901
3357
|
};
|
|
2902
3358
|
}
|
|
2903
3359
|
let currentApp = null;
|
|
2904
|
-
|
|
2905
|
-
|
|
2906
|
-
|
|
2907
|
-
|
|
2908
|
-
|
|
2909
|
-
|
|
2910
|
-
|
|
2911
|
-
|
|
3360
|
+
const getModelModifiers = (props, modelName) => {
|
|
3361
|
+
return modelName === "modelValue" || modelName === "model-value" ? props.modelModifiers : props[`${modelName}Modifiers`] || props[`${camelize$1(modelName)}Modifiers`] || props[`${hyphenate$1(modelName)}Modifiers`];
|
|
3362
|
+
};
|
|
3363
|
+
function emit(instance, event, ...rawArgs) {
|
|
3364
|
+
if (instance.isUnmounted) return;
|
|
3365
|
+
const props = instance.vnode.props || EMPTY_OBJ;
|
|
3366
|
+
if (!!(process.env.NODE_ENV !== "production")) {
|
|
3367
|
+
const { emitsOptions, propsOptions: [propsOptions] } = instance;
|
|
3368
|
+
if (emitsOptions) if (!(event in emitsOptions) && true) {
|
|
3369
|
+
if (!propsOptions || !(toHandlerKey(camelize$1(event)) in propsOptions)) warn$1(`Component emitted event "${event}" but it is neither declared in the emits option nor as an "${toHandlerKey(camelize$1(event))}" prop.`);
|
|
3370
|
+
} else {
|
|
3371
|
+
const validator = emitsOptions[event];
|
|
3372
|
+
if (isFunction(validator)) {
|
|
3373
|
+
if (!validator(...rawArgs)) warn$1(`Invalid event arguments: event validation failed for event "${event}".`);
|
|
3374
|
+
}
|
|
3375
|
+
}
|
|
2912
3376
|
}
|
|
2913
|
-
|
|
2914
|
-
|
|
2915
|
-
const
|
|
2916
|
-
if (
|
|
2917
|
-
|
|
2918
|
-
if (
|
|
2919
|
-
else if (arguments.length > 1) return treatDefaultAsFactory && isFunction(defaultValue) ? defaultValue.call(instance && instance.proxy) : defaultValue;
|
|
2920
|
-
else if (!!(process.env.NODE_ENV !== "production")) warn$1(`injection "${String(key)}" not found.`);
|
|
2921
|
-
} else if (!!(process.env.NODE_ENV !== "production")) warn$1(`inject() can only be used inside setup() or functional components.`);
|
|
2922
|
-
}
|
|
2923
|
-
function hasInjectionContext() {
|
|
2924
|
-
return !!(getCurrentInstance() || currentApp);
|
|
2925
|
-
}
|
|
2926
|
-
const internalObjectProto = {};
|
|
2927
|
-
const createInternalObject = () => Object.create(internalObjectProto);
|
|
2928
|
-
const isInternalObject = (obj) => Object.getPrototypeOf(obj) === internalObjectProto;
|
|
2929
|
-
function initProps(instance, rawProps, isStateful, isSSR = false) {
|
|
2930
|
-
const props = {};
|
|
2931
|
-
const attrs = createInternalObject();
|
|
2932
|
-
instance.propsDefaults = /* @__PURE__ */ Object.create(null);
|
|
2933
|
-
setFullProps(instance, rawProps, props, attrs);
|
|
2934
|
-
for (const key in instance.propsOptions[0]) if (!(key in props)) props[key] = void 0;
|
|
2935
|
-
if (!!(process.env.NODE_ENV !== "production")) validateProps(rawProps || {}, props, instance);
|
|
2936
|
-
if (isStateful) instance.props = isSSR ? props : shallowReactive(props);
|
|
2937
|
-
else if (!instance.type.props) instance.props = attrs;
|
|
2938
|
-
else instance.props = props;
|
|
2939
|
-
instance.attrs = attrs;
|
|
2940
|
-
}
|
|
2941
|
-
function isInHmrContext(instance) {
|
|
2942
|
-
while (instance) {
|
|
2943
|
-
if (instance.type.__hmrId) return true;
|
|
2944
|
-
instance = instance.parent;
|
|
3377
|
+
let args = rawArgs;
|
|
3378
|
+
const isModelListener = event.startsWith("update:");
|
|
3379
|
+
const modifiers = isModelListener && getModelModifiers(props, event.slice(7));
|
|
3380
|
+
if (modifiers) {
|
|
3381
|
+
if (modifiers.trim) args = rawArgs.map((a) => isString(a) ? a.trim() : a);
|
|
3382
|
+
if (modifiers.number) args = rawArgs.map(looseToNumber);
|
|
2945
3383
|
}
|
|
2946
|
-
|
|
2947
|
-
|
|
2948
|
-
|
|
2949
|
-
|
|
2950
|
-
|
|
2951
|
-
let
|
|
3384
|
+
if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) devtoolsComponentEmit(instance, event, args);
|
|
3385
|
+
if (!!(process.env.NODE_ENV !== "production")) {
|
|
3386
|
+
const lowerCaseEvent = event.toLowerCase();
|
|
3387
|
+
if (lowerCaseEvent !== event && props[toHandlerKey(lowerCaseEvent)]) warn$1(`Event "${lowerCaseEvent}" is emitted in component ${formatComponentName(instance, instance.type)} but the handler is registered for "${event}". Note that HTML attributes are case-insensitive and you cannot use v-on to listen to camelCase events when using in-DOM templates. You should probably use "${hyphenate$1(event)}" instead of "${event}".`);
|
|
3388
|
+
}
|
|
3389
|
+
let handlerName;
|
|
3390
|
+
let handler = props[handlerName = toHandlerKey(event)] || props[handlerName = toHandlerKey(camelize$1(event))];
|
|
3391
|
+
if (!handler && isModelListener) handler = props[handlerName = toHandlerKey(hyphenate$1(event))];
|
|
3392
|
+
if (handler) callWithAsyncErrorHandling(handler, instance, 6, args);
|
|
3393
|
+
const onceHandler = props[handlerName + `Once`];
|
|
3394
|
+
if (onceHandler) {
|
|
3395
|
+
if (!instance.emitted) instance.emitted = {};
|
|
3396
|
+
else if (instance.emitted[handlerName]) return;
|
|
3397
|
+
instance.emitted[handlerName] = true;
|
|
3398
|
+
callWithAsyncErrorHandling(onceHandler, instance, 6, args);
|
|
3399
|
+
}
|
|
3400
|
+
}
|
|
3401
|
+
const mixinEmitsCache = /* @__PURE__ */ new WeakMap();
|
|
3402
|
+
function normalizeEmitsOptions(comp, appContext, asMixin = false) {
|
|
3403
|
+
const cache = __VUE_OPTIONS_API__ && asMixin ? mixinEmitsCache : appContext.emitsCache;
|
|
3404
|
+
const cached = cache.get(comp);
|
|
3405
|
+
if (cached !== void 0) return cached;
|
|
3406
|
+
const raw = comp.emits;
|
|
3407
|
+
let normalized = {};
|
|
3408
|
+
let hasExtends = false;
|
|
3409
|
+
if (__VUE_OPTIONS_API__ && !isFunction(comp)) {
|
|
3410
|
+
const extendEmits = (raw2) => {
|
|
3411
|
+
const normalizedFromExtend = normalizeEmitsOptions(raw2, appContext, true);
|
|
3412
|
+
if (normalizedFromExtend) {
|
|
3413
|
+
hasExtends = true;
|
|
3414
|
+
extend(normalized, normalizedFromExtend);
|
|
3415
|
+
}
|
|
3416
|
+
};
|
|
3417
|
+
if (!asMixin && appContext.mixins.length) appContext.mixins.forEach(extendEmits);
|
|
3418
|
+
if (comp.extends) extendEmits(comp.extends);
|
|
3419
|
+
if (comp.mixins) comp.mixins.forEach(extendEmits);
|
|
3420
|
+
}
|
|
3421
|
+
if (!raw && !hasExtends) {
|
|
3422
|
+
if (isObject$1(comp)) cache.set(comp, null);
|
|
3423
|
+
return null;
|
|
3424
|
+
}
|
|
3425
|
+
if (isArray(raw)) raw.forEach((key) => normalized[key] = null);
|
|
3426
|
+
else extend(normalized, raw);
|
|
3427
|
+
if (isObject$1(comp)) cache.set(comp, normalized);
|
|
3428
|
+
return normalized;
|
|
3429
|
+
}
|
|
3430
|
+
function isEmitListener(options, key) {
|
|
3431
|
+
if (!options || !isOn(key)) return false;
|
|
3432
|
+
key = key.slice(2).replace(/Once$/, "");
|
|
3433
|
+
return hasOwn(options, key[0].toLowerCase() + key.slice(1)) || hasOwn(options, hyphenate$1(key)) || hasOwn(options, key);
|
|
3434
|
+
}
|
|
3435
|
+
let accessedAttrs = false;
|
|
3436
|
+
function markAttrsAccessed() {
|
|
3437
|
+
accessedAttrs = true;
|
|
3438
|
+
}
|
|
3439
|
+
function renderComponentRoot(instance) {
|
|
3440
|
+
const { type: Component, vnode, proxy, withProxy, propsOptions: [propsOptions], slots, attrs, emit, render, renderCache, props, data, setupState, ctx, inheritAttrs } = instance;
|
|
3441
|
+
const prev = setCurrentRenderingInstance(instance);
|
|
3442
|
+
let result;
|
|
3443
|
+
let fallthroughAttrs;
|
|
3444
|
+
if (!!(process.env.NODE_ENV !== "production")) accessedAttrs = false;
|
|
3445
|
+
try {
|
|
3446
|
+
if (vnode.shapeFlag & 4) {
|
|
3447
|
+
const proxyToUse = withProxy || proxy;
|
|
3448
|
+
const thisProxy = !!(process.env.NODE_ENV !== "production") && setupState.__isScriptSetup ? new Proxy(proxyToUse, { get(target, key, receiver) {
|
|
3449
|
+
warn$1(`Property '${String(key)}' was accessed via 'this'. Avoid using 'this' in templates.`);
|
|
3450
|
+
return Reflect.get(target, key, receiver);
|
|
3451
|
+
} }) : proxyToUse;
|
|
3452
|
+
result = normalizeVNode(render.call(thisProxy, proxyToUse, renderCache, !!(process.env.NODE_ENV !== "production") ? /* @__PURE__ */ shallowReadonly(props) : props, setupState, data, ctx));
|
|
3453
|
+
fallthroughAttrs = attrs;
|
|
3454
|
+
} else {
|
|
3455
|
+
const render2 = Component;
|
|
3456
|
+
if (!!(process.env.NODE_ENV !== "production") && attrs === props) markAttrsAccessed();
|
|
3457
|
+
result = normalizeVNode(render2.length > 1 ? render2(!!(process.env.NODE_ENV !== "production") ? /* @__PURE__ */ shallowReadonly(props) : props, !!(process.env.NODE_ENV !== "production") ? {
|
|
3458
|
+
get attrs() {
|
|
3459
|
+
markAttrsAccessed();
|
|
3460
|
+
return /* @__PURE__ */ shallowReadonly(attrs);
|
|
3461
|
+
},
|
|
3462
|
+
slots,
|
|
3463
|
+
emit
|
|
3464
|
+
} : {
|
|
3465
|
+
attrs,
|
|
3466
|
+
slots,
|
|
3467
|
+
emit
|
|
3468
|
+
}) : render2(!!(process.env.NODE_ENV !== "production") ? /* @__PURE__ */ shallowReadonly(props) : props, null));
|
|
3469
|
+
fallthroughAttrs = Component.props ? attrs : getFunctionalFallthrough(attrs);
|
|
3470
|
+
}
|
|
3471
|
+
} catch (err) {
|
|
3472
|
+
blockStack.length = 0;
|
|
3473
|
+
handleError(err, instance, 1);
|
|
3474
|
+
result = createVNode(Comment);
|
|
3475
|
+
}
|
|
3476
|
+
let root = result;
|
|
3477
|
+
let setRoot = void 0;
|
|
3478
|
+
if (!!(process.env.NODE_ENV !== "production") && result.patchFlag > 0 && result.patchFlag & 2048) [root, setRoot] = getChildRoot(result);
|
|
3479
|
+
if (fallthroughAttrs && inheritAttrs !== false) {
|
|
3480
|
+
const keys = Object.keys(fallthroughAttrs);
|
|
3481
|
+
const { shapeFlag } = root;
|
|
3482
|
+
if (keys.length) {
|
|
3483
|
+
if (shapeFlag & 7) {
|
|
3484
|
+
if (propsOptions && keys.some(isModelListener)) fallthroughAttrs = filterModelListeners(fallthroughAttrs, propsOptions);
|
|
3485
|
+
root = cloneVNode(root, fallthroughAttrs, false, true);
|
|
3486
|
+
} else if (!!(process.env.NODE_ENV !== "production") && !accessedAttrs && root.type !== Comment) {
|
|
3487
|
+
const allAttrs = Object.keys(attrs);
|
|
3488
|
+
const eventAttrs = [];
|
|
3489
|
+
const extraAttrs = [];
|
|
3490
|
+
for (let i = 0, l = allAttrs.length; i < l; i++) {
|
|
3491
|
+
const key = allAttrs[i];
|
|
3492
|
+
if (isOn(key)) {
|
|
3493
|
+
if (!isModelListener(key)) eventAttrs.push(key[2].toLowerCase() + key.slice(3));
|
|
3494
|
+
} else extraAttrs.push(key);
|
|
3495
|
+
}
|
|
3496
|
+
if (extraAttrs.length) warn$1(`Extraneous non-props attributes (${extraAttrs.join(", ")}) were passed to component but could not be automatically inherited because component renders fragment or text or teleport root nodes.`);
|
|
3497
|
+
if (eventAttrs.length) warn$1(`Extraneous non-emits event listeners (${eventAttrs.join(", ")}) were passed to component but could not be automatically inherited because component renders fragment or text root nodes. If the listener is intended to be a component custom event listener only, declare it using the "emits" option.`);
|
|
3498
|
+
}
|
|
3499
|
+
}
|
|
3500
|
+
}
|
|
3501
|
+
if (vnode.dirs) {
|
|
3502
|
+
if (!!(process.env.NODE_ENV !== "production") && !isElementRoot(root)) warn$1(`Runtime directive used on component with non-element root node. The directives will not function as intended.`);
|
|
3503
|
+
root = cloneVNode(root, null, false, true);
|
|
3504
|
+
root.dirs = root.dirs ? root.dirs.concat(vnode.dirs) : vnode.dirs;
|
|
3505
|
+
}
|
|
3506
|
+
if (vnode.transition) {
|
|
3507
|
+
if (!!(process.env.NODE_ENV !== "production") && !isElementRoot(root)) warn$1(`Component inside <Transition> renders non-element root node that cannot be animated.`);
|
|
3508
|
+
setTransitionHooks(root, vnode.transition);
|
|
3509
|
+
}
|
|
3510
|
+
if (!!(process.env.NODE_ENV !== "production") && setRoot) setRoot(root);
|
|
3511
|
+
else result = root;
|
|
3512
|
+
setCurrentRenderingInstance(prev);
|
|
3513
|
+
return result;
|
|
3514
|
+
}
|
|
3515
|
+
const getChildRoot = (vnode) => {
|
|
3516
|
+
const rawChildren = vnode.children;
|
|
3517
|
+
const dynamicChildren = vnode.dynamicChildren;
|
|
3518
|
+
const childRoot = filterSingleRoot(rawChildren, false);
|
|
3519
|
+
if (!childRoot) return [vnode, void 0];
|
|
3520
|
+
else if (!!(process.env.NODE_ENV !== "production") && childRoot.patchFlag > 0 && childRoot.patchFlag & 2048) return getChildRoot(childRoot);
|
|
3521
|
+
const index = rawChildren.indexOf(childRoot);
|
|
3522
|
+
const dynamicIndex = dynamicChildren ? dynamicChildren.indexOf(childRoot) : -1;
|
|
3523
|
+
const setRoot = (updatedRoot) => {
|
|
3524
|
+
rawChildren[index] = updatedRoot;
|
|
3525
|
+
if (dynamicChildren) {
|
|
3526
|
+
if (dynamicIndex > -1) dynamicChildren[dynamicIndex] = updatedRoot;
|
|
3527
|
+
else if (updatedRoot.patchFlag > 0) vnode.dynamicChildren = [...dynamicChildren, updatedRoot];
|
|
3528
|
+
}
|
|
3529
|
+
};
|
|
3530
|
+
return [normalizeVNode(childRoot), setRoot];
|
|
3531
|
+
};
|
|
3532
|
+
function filterSingleRoot(children, recurse = true) {
|
|
3533
|
+
let singleRoot;
|
|
3534
|
+
for (let i = 0; i < children.length; i++) {
|
|
3535
|
+
const child = children[i];
|
|
3536
|
+
if (isVNode(child)) {
|
|
3537
|
+
if (child.type !== Comment || child.children === "v-if") if (singleRoot) return;
|
|
3538
|
+
else {
|
|
3539
|
+
singleRoot = child;
|
|
3540
|
+
if (!!(process.env.NODE_ENV !== "production") && recurse && singleRoot.patchFlag > 0 && singleRoot.patchFlag & 2048) return filterSingleRoot(singleRoot.children);
|
|
3541
|
+
}
|
|
3542
|
+
} else return;
|
|
3543
|
+
}
|
|
3544
|
+
return singleRoot;
|
|
3545
|
+
}
|
|
3546
|
+
const getFunctionalFallthrough = (attrs) => {
|
|
3547
|
+
let res;
|
|
3548
|
+
for (const key in attrs) if (key === "class" || key === "style" || isOn(key)) (res || (res = {}))[key] = attrs[key];
|
|
3549
|
+
return res;
|
|
3550
|
+
};
|
|
3551
|
+
const filterModelListeners = (attrs, props) => {
|
|
3552
|
+
const res = {};
|
|
3553
|
+
for (const key in attrs) if (!isModelListener(key) || !(key.slice(9) in props)) res[key] = attrs[key];
|
|
3554
|
+
return res;
|
|
3555
|
+
};
|
|
3556
|
+
const isElementRoot = (vnode) => {
|
|
3557
|
+
return vnode.shapeFlag & 7 || vnode.type === Comment;
|
|
3558
|
+
};
|
|
3559
|
+
function shouldUpdateComponent(prevVNode, nextVNode, optimized) {
|
|
3560
|
+
const { props: prevProps, children: prevChildren, component } = prevVNode;
|
|
3561
|
+
const { props: nextProps, children: nextChildren, patchFlag } = nextVNode;
|
|
3562
|
+
const emits = component.emitsOptions;
|
|
3563
|
+
if (!!(process.env.NODE_ENV !== "production") && (prevChildren || nextChildren) && isHmrUpdating) return true;
|
|
3564
|
+
if (nextVNode.dirs || nextVNode.transition) return true;
|
|
3565
|
+
if (optimized && patchFlag >= 0) {
|
|
3566
|
+
if (patchFlag & 1024) return true;
|
|
3567
|
+
if (patchFlag & 16) {
|
|
3568
|
+
if (!prevProps) return !!nextProps;
|
|
3569
|
+
return hasPropsChanged(prevProps, nextProps, emits);
|
|
3570
|
+
} else if (patchFlag & 8) {
|
|
3571
|
+
const dynamicProps = nextVNode.dynamicProps;
|
|
3572
|
+
for (let i = 0; i < dynamicProps.length; i++) {
|
|
3573
|
+
const key = dynamicProps[i];
|
|
3574
|
+
if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emits, key)) return true;
|
|
3575
|
+
}
|
|
3576
|
+
}
|
|
3577
|
+
} else {
|
|
3578
|
+
if (prevChildren || nextChildren) {
|
|
3579
|
+
if (!nextChildren || !nextChildren.$stable) return true;
|
|
3580
|
+
}
|
|
3581
|
+
if (prevProps === nextProps) return false;
|
|
3582
|
+
if (!prevProps) return !!nextProps;
|
|
3583
|
+
if (!nextProps) return true;
|
|
3584
|
+
return hasPropsChanged(prevProps, nextProps, emits);
|
|
3585
|
+
}
|
|
3586
|
+
return false;
|
|
3587
|
+
}
|
|
3588
|
+
function hasPropsChanged(prevProps, nextProps, emitsOptions) {
|
|
3589
|
+
const nextKeys = Object.keys(nextProps);
|
|
3590
|
+
if (nextKeys.length !== Object.keys(prevProps).length) return true;
|
|
3591
|
+
for (let i = 0; i < nextKeys.length; i++) {
|
|
3592
|
+
const key = nextKeys[i];
|
|
3593
|
+
if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emitsOptions, key)) return true;
|
|
3594
|
+
}
|
|
3595
|
+
return false;
|
|
3596
|
+
}
|
|
3597
|
+
function hasPropValueChanged(nextProps, prevProps, key) {
|
|
3598
|
+
const nextProp = nextProps[key];
|
|
3599
|
+
const prevProp = prevProps[key];
|
|
3600
|
+
if (key === "style" && isObject$1(nextProp) && isObject$1(prevProp)) return !looseEqual(nextProp, prevProp);
|
|
3601
|
+
return nextProp !== prevProp;
|
|
3602
|
+
}
|
|
3603
|
+
function updateHOCHostEl({ vnode, parent }, el) {
|
|
3604
|
+
while (parent) {
|
|
3605
|
+
const root = parent.subTree;
|
|
3606
|
+
if (root.suspense && root.suspense.activeBranch === vnode) root.el = vnode.el;
|
|
3607
|
+
if (root === vnode) {
|
|
3608
|
+
(vnode = parent.vnode).el = el;
|
|
3609
|
+
parent = parent.parent;
|
|
3610
|
+
} else break;
|
|
3611
|
+
}
|
|
3612
|
+
}
|
|
3613
|
+
const internalObjectProto = {};
|
|
3614
|
+
const createInternalObject = () => Object.create(internalObjectProto);
|
|
3615
|
+
const isInternalObject = (obj) => Object.getPrototypeOf(obj) === internalObjectProto;
|
|
3616
|
+
function initProps(instance, rawProps, isStateful, isSSR = false) {
|
|
3617
|
+
const props = {};
|
|
3618
|
+
const attrs = createInternalObject();
|
|
3619
|
+
instance.propsDefaults = /* @__PURE__ */ Object.create(null);
|
|
3620
|
+
setFullProps(instance, rawProps, props, attrs);
|
|
3621
|
+
for (const key in instance.propsOptions[0]) if (!(key in props)) props[key] = void 0;
|
|
3622
|
+
if (!!(process.env.NODE_ENV !== "production")) validateProps(rawProps || {}, props, instance);
|
|
3623
|
+
if (isStateful) instance.props = isSSR ? props : /* @__PURE__ */ shallowReactive(props);
|
|
3624
|
+
else if (!instance.type.props) instance.props = attrs;
|
|
3625
|
+
else instance.props = props;
|
|
3626
|
+
instance.attrs = attrs;
|
|
3627
|
+
}
|
|
3628
|
+
function isInHmrContext(instance) {
|
|
3629
|
+
while (instance) {
|
|
3630
|
+
if (instance.type.__hmrId) return true;
|
|
3631
|
+
instance = instance.parent;
|
|
3632
|
+
}
|
|
3633
|
+
}
|
|
3634
|
+
function updateProps(instance, rawProps, rawPrevProps, optimized) {
|
|
3635
|
+
const { props, attrs, vnode: { patchFlag } } = instance;
|
|
3636
|
+
const rawCurrentProps = /* @__PURE__ */ toRaw(props);
|
|
3637
|
+
const [options] = instance.propsOptions;
|
|
3638
|
+
let hasAttrsChanged = false;
|
|
2952
3639
|
if (!(!!(process.env.NODE_ENV !== "production") && isInHmrContext(instance)) && (optimized || patchFlag > 0) && !(patchFlag & 16)) {
|
|
2953
3640
|
if (patchFlag & 8) {
|
|
2954
3641
|
const propsToUpdate = instance.vnode.dynamicProps;
|
|
@@ -2956,7 +3643,7 @@ function updateProps(instance, rawProps, rawPrevProps, optimized) {
|
|
|
2956
3643
|
let key = propsToUpdate[i];
|
|
2957
3644
|
if (isEmitListener(instance.emitsOptions, key)) continue;
|
|
2958
3645
|
const value = rawProps[key];
|
|
2959
|
-
if (options) if (hasOwn
|
|
3646
|
+
if (options) if (hasOwn(attrs, key)) {
|
|
2960
3647
|
if (value !== attrs[key]) {
|
|
2961
3648
|
attrs[key] = value;
|
|
2962
3649
|
hasAttrsChanged = true;
|
|
@@ -2974,11 +3661,11 @@ function updateProps(instance, rawProps, rawPrevProps, optimized) {
|
|
|
2974
3661
|
} else {
|
|
2975
3662
|
if (setFullProps(instance, rawProps, props, attrs)) hasAttrsChanged = true;
|
|
2976
3663
|
let kebabKey;
|
|
2977
|
-
for (const key in rawCurrentProps) if (!rawProps || !hasOwn
|
|
3664
|
+
for (const key in rawCurrentProps) if (!rawProps || !hasOwn(rawProps, key) && ((kebabKey = hyphenate$1(key)) === key || !hasOwn(rawProps, kebabKey))) if (options) {
|
|
2978
3665
|
if (rawPrevProps && (rawPrevProps[key] !== void 0 || rawPrevProps[kebabKey] !== void 0)) props[key] = resolvePropValue(options, rawCurrentProps, key, void 0, instance, true);
|
|
2979
3666
|
} else delete props[key];
|
|
2980
3667
|
if (attrs !== rawCurrentProps) {
|
|
2981
|
-
for (const key in attrs) if (!rawProps || !hasOwn
|
|
3668
|
+
for (const key in attrs) if (!rawProps || !hasOwn(rawProps, key) && true) {
|
|
2982
3669
|
delete attrs[key];
|
|
2983
3670
|
hasAttrsChanged = true;
|
|
2984
3671
|
}
|
|
@@ -2995,7 +3682,7 @@ function setFullProps(instance, rawProps, props, attrs) {
|
|
|
2995
3682
|
if (isReservedProp(key)) continue;
|
|
2996
3683
|
const value = rawProps[key];
|
|
2997
3684
|
let camelKey;
|
|
2998
|
-
if (options && hasOwn
|
|
3685
|
+
if (options && hasOwn(options, camelKey = camelize$1(key))) if (!needCastKeys || !needCastKeys.includes(camelKey)) props[camelKey] = value;
|
|
2999
3686
|
else (rawCastValues || (rawCastValues = {}))[camelKey] = value;
|
|
3000
3687
|
else if (!isEmitListener(instance.emitsOptions, key)) {
|
|
3001
3688
|
if (!(key in attrs) || value !== attrs[key]) {
|
|
@@ -3005,11 +3692,11 @@ function setFullProps(instance, rawProps, props, attrs) {
|
|
|
3005
3692
|
}
|
|
3006
3693
|
}
|
|
3007
3694
|
if (needCastKeys) {
|
|
3008
|
-
const rawCurrentProps = toRaw(props);
|
|
3695
|
+
const rawCurrentProps = /* @__PURE__ */ toRaw(props);
|
|
3009
3696
|
const castValues = rawCastValues || EMPTY_OBJ;
|
|
3010
3697
|
for (let i = 0; i < needCastKeys.length; i++) {
|
|
3011
3698
|
const key = needCastKeys[i];
|
|
3012
|
-
props[key] = resolvePropValue(options, rawCurrentProps, key, castValues[key], instance, !hasOwn
|
|
3699
|
+
props[key] = resolvePropValue(options, rawCurrentProps, key, castValues[key], instance, !hasOwn(castValues, key));
|
|
3013
3700
|
}
|
|
3014
3701
|
}
|
|
3015
3702
|
return hasAttrsChanged;
|
|
@@ -3017,7 +3704,7 @@ function setFullProps(instance, rawProps, props, attrs) {
|
|
|
3017
3704
|
function resolvePropValue(options, props, key, value, instance, isAbsent) {
|
|
3018
3705
|
const opt = options[key];
|
|
3019
3706
|
if (opt != null) {
|
|
3020
|
-
const hasDefault = hasOwn
|
|
3707
|
+
const hasDefault = hasOwn(opt, "default");
|
|
3021
3708
|
if (hasDefault && value === void 0) {
|
|
3022
3709
|
const defaultValue = opt.default;
|
|
3023
3710
|
if (opt.type !== Function && !opt.skipFactory && isFunction(defaultValue)) {
|
|
@@ -3088,7 +3775,7 @@ function normalizePropsOptions(comp, appContext, asMixin = false) {
|
|
|
3088
3775
|
else shouldCast = isFunction(propType) && propType.name === "Boolean";
|
|
3089
3776
|
prop[0] = shouldCast;
|
|
3090
3777
|
prop[1] = shouldCastTrue;
|
|
3091
|
-
if (shouldCast || hasOwn
|
|
3778
|
+
if (shouldCast || hasOwn(prop, "default")) needCastKeys.push(normalizedKey);
|
|
3092
3779
|
}
|
|
3093
3780
|
}
|
|
3094
3781
|
}
|
|
@@ -3108,13 +3795,13 @@ function getType(ctor) {
|
|
|
3108
3795
|
return "";
|
|
3109
3796
|
}
|
|
3110
3797
|
function validateProps(rawProps, props, instance) {
|
|
3111
|
-
const resolvedValues = toRaw(props);
|
|
3798
|
+
const resolvedValues = /* @__PURE__ */ toRaw(props);
|
|
3112
3799
|
const options = instance.propsOptions[0];
|
|
3113
3800
|
const camelizePropsKey = Object.keys(rawProps).map((key) => camelize$1(key));
|
|
3114
3801
|
for (const key in options) {
|
|
3115
3802
|
let opt = options[key];
|
|
3116
3803
|
if (opt == null) continue;
|
|
3117
|
-
validateProp(key, resolvedValues[key], opt, !!(process.env.NODE_ENV !== "production") ? shallowReadonly(resolvedValues) : resolvedValues, !camelizePropsKey.includes(key));
|
|
3804
|
+
validateProp(key, resolvedValues[key], opt, !!(process.env.NODE_ENV !== "production") ? /* @__PURE__ */ shallowReadonly(resolvedValues) : resolvedValues, !camelizePropsKey.includes(key));
|
|
3118
3805
|
}
|
|
3119
3806
|
}
|
|
3120
3807
|
function validateProp(name, value, prop, props, isAbsent) {
|
|
@@ -3319,7 +4006,7 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
3319
4006
|
optimized = false;
|
|
3320
4007
|
n2.dynamicChildren = null;
|
|
3321
4008
|
}
|
|
3322
|
-
const { type, ref
|
|
4009
|
+
const { type, ref, shapeFlag } = n2;
|
|
3323
4010
|
switch (type) {
|
|
3324
4011
|
case Text:
|
|
3325
4012
|
processText(n1, n2, container, anchor);
|
|
@@ -3340,8 +4027,8 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
3340
4027
|
else if (shapeFlag & 128) type.process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, internals);
|
|
3341
4028
|
else if (!!(process.env.NODE_ENV !== "production")) warn$1("Invalid VNode type:", type, `(${typeof type})`);
|
|
3342
4029
|
}
|
|
3343
|
-
if (ref
|
|
3344
|
-
else if (ref
|
|
4030
|
+
if (ref != null && parentComponent) setRef(ref, n1 && n1.ref, parentSuspense, n2 || n1, !n2);
|
|
4031
|
+
else if (ref == null && n1 && n1.ref != null) setRef(n1.ref, null, parentSuspense, n1, true);
|
|
3345
4032
|
};
|
|
3346
4033
|
const processText = (n1, n2, container, anchor) => {
|
|
3347
4034
|
if (n1 == null) hostInsert(n2.el = hostCreateText(n2.children), container, anchor);
|
|
@@ -3389,7 +4076,15 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
3389
4076
|
if (n2.type === "svg") namespace = "svg";
|
|
3390
4077
|
else if (n2.type === "math") namespace = "mathml";
|
|
3391
4078
|
if (n1 == null) mountElement(n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
|
|
3392
|
-
else
|
|
4079
|
+
else {
|
|
4080
|
+
const customElement = n1.el && n1.el._isVueCE ? n1.el : null;
|
|
4081
|
+
try {
|
|
4082
|
+
if (customElement) customElement._beginPatch();
|
|
4083
|
+
patchElement(n1, n2, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
|
|
4084
|
+
} finally {
|
|
4085
|
+
if (customElement) customElement._endPatch();
|
|
4086
|
+
}
|
|
4087
|
+
}
|
|
3393
4088
|
};
|
|
3394
4089
|
const mountElement = (vnode, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => {
|
|
3395
4090
|
let el;
|
|
@@ -3517,7 +4212,7 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
3517
4212
|
hostInsert(fragmentStartAnchor, container, anchor);
|
|
3518
4213
|
hostInsert(fragmentEndAnchor, container, anchor);
|
|
3519
4214
|
mountChildren(n2.children || [], container, fragmentEndAnchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
|
|
3520
|
-
} else if (patchFlag > 0 && patchFlag & 64 && dynamicChildren && n1.dynamicChildren) {
|
|
4215
|
+
} else if (patchFlag > 0 && patchFlag & 64 && dynamicChildren && n1.dynamicChildren && n1.dynamicChildren.length === dynamicChildren.length) {
|
|
3521
4216
|
patchBlockChildren(n1.dynamicChildren, dynamicChildren, container, parentComponent, parentSuspense, namespace, slotScopeIds);
|
|
3522
4217
|
if (!!(process.env.NODE_ENV !== "production")) traverseStaticChildren(n1, n2);
|
|
3523
4218
|
else if (n2.key != null || parentComponent && n2 === parentComponent.subTree) traverseStaticChildren(n1, n2, true);
|
|
@@ -3593,7 +4288,7 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
3593
4288
|
if (isAsyncWrapperVNode && type.__asyncHydrate) type.__asyncHydrate(el, instance, hydrateSubTree);
|
|
3594
4289
|
else hydrateSubTree();
|
|
3595
4290
|
} else {
|
|
3596
|
-
if (root.ce && root.ce.
|
|
4291
|
+
if (root.ce && root.ce._hasShadowRoot()) root.ce._injectChildStyle(type, instance.parent ? instance.parent.type : void 0);
|
|
3597
4292
|
if (!!(process.env.NODE_ENV !== "production")) startMeasure(instance, `render`);
|
|
3598
4293
|
const subTree = instance.subTree = renderComponentRoot(instance);
|
|
3599
4294
|
if (!!(process.env.NODE_ENV !== "production")) endMeasure(instance, `render`);
|
|
@@ -3621,7 +4316,9 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
3621
4316
|
updateComponentPreRender(instance, next, optimized);
|
|
3622
4317
|
}
|
|
3623
4318
|
nonHydratedAsyncRoot.asyncDep.then(() => {
|
|
3624
|
-
|
|
4319
|
+
queuePostRenderEffect(() => {
|
|
4320
|
+
if (!instance.isUnmounted) update();
|
|
4321
|
+
}, parentSuspense);
|
|
3625
4322
|
});
|
|
3626
4323
|
return;
|
|
3627
4324
|
}
|
|
@@ -3654,17 +4351,17 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
3654
4351
|
}
|
|
3655
4352
|
};
|
|
3656
4353
|
instance.scope.on();
|
|
3657
|
-
const effect
|
|
4354
|
+
const effect = instance.effect = new ReactiveEffect(componentUpdateFn);
|
|
3658
4355
|
instance.scope.off();
|
|
3659
|
-
const update = instance.update = effect
|
|
3660
|
-
const job = instance.job = effect
|
|
4356
|
+
const update = instance.update = effect.run.bind(effect);
|
|
4357
|
+
const job = instance.job = effect.runIfDirty.bind(effect);
|
|
3661
4358
|
job.i = instance;
|
|
3662
4359
|
job.id = instance.uid;
|
|
3663
|
-
effect
|
|
4360
|
+
effect.scheduler = () => queueJob(job);
|
|
3664
4361
|
toggleRecurse(instance, true);
|
|
3665
4362
|
if (!!(process.env.NODE_ENV !== "production")) {
|
|
3666
|
-
effect
|
|
3667
|
-
effect
|
|
4363
|
+
effect.onTrack = instance.rtc ? (e) => invokeArrayFns(instance.rtc, e) : void 0;
|
|
4364
|
+
effect.onTrigger = instance.rtg ? (e) => invokeArrayFns(instance.rtg, e) : void 0;
|
|
3668
4365
|
}
|
|
3669
4366
|
update();
|
|
3670
4367
|
};
|
|
@@ -3795,7 +4492,7 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
3795
4492
|
const nextIndex = s2 + i;
|
|
3796
4493
|
const nextChild = c2[nextIndex];
|
|
3797
4494
|
const anchorVNode = c2[nextIndex + 1];
|
|
3798
|
-
const anchor = nextIndex + 1 < l2 ? anchorVNode.el || anchorVNode
|
|
4495
|
+
const anchor = nextIndex + 1 < l2 ? anchorVNode.el || resolveAsyncComponentPlaceholder(anchorVNode) : parentAnchor;
|
|
3799
4496
|
if (newIndexToOldIndexMap[i] === 0) patch(null, nextChild, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
|
|
3800
4497
|
else if (moved) if (j < 0 || i !== increasingNewIndexSequence[j]) move(nextChild, container, anchor, 2);
|
|
3801
4498
|
else j--;
|
|
@@ -3849,11 +4546,11 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
3849
4546
|
else hostInsert(el, container, anchor);
|
|
3850
4547
|
};
|
|
3851
4548
|
const unmount = (vnode, parentComponent, parentSuspense, doRemove = false, optimized = false) => {
|
|
3852
|
-
const { type, props, ref
|
|
4549
|
+
const { type, props, ref, children, dynamicChildren, shapeFlag, patchFlag, dirs, cacheIndex } = vnode;
|
|
3853
4550
|
if (patchFlag === -2) optimized = false;
|
|
3854
|
-
if (ref
|
|
4551
|
+
if (ref != null) {
|
|
3855
4552
|
pauseTracking();
|
|
3856
|
-
setRef(ref
|
|
4553
|
+
setRef(ref, null, parentSuspense, vnode, true);
|
|
3857
4554
|
resetTracking();
|
|
3858
4555
|
}
|
|
3859
4556
|
if (cacheIndex != null) parentComponent.renderCache[cacheIndex] = void 0;
|
|
@@ -3875,19 +4572,19 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
3875
4572
|
if (shapeFlag & 64) vnode.type.remove(vnode, parentComponent, parentSuspense, internals, doRemove);
|
|
3876
4573
|
else if (dynamicChildren && !dynamicChildren.hasOnce && (type !== Fragment || patchFlag > 0 && patchFlag & 64)) unmountChildren(dynamicChildren, parentComponent, parentSuspense, false, true);
|
|
3877
4574
|
else if (type === Fragment && patchFlag & 384 || !optimized && shapeFlag & 16) unmountChildren(children, parentComponent, parentSuspense);
|
|
3878
|
-
if (doRemove) remove
|
|
4575
|
+
if (doRemove) remove(vnode);
|
|
3879
4576
|
}
|
|
3880
4577
|
if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeUnmounted) || shouldInvokeDirs) queuePostRenderEffect(() => {
|
|
3881
4578
|
vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
|
|
3882
4579
|
shouldInvokeDirs && invokeDirectiveHook(vnode, null, parentComponent, "unmounted");
|
|
3883
4580
|
}, parentSuspense);
|
|
3884
4581
|
};
|
|
3885
|
-
const remove
|
|
4582
|
+
const remove = (vnode) => {
|
|
3886
4583
|
const { type, el, anchor, transition } = vnode;
|
|
3887
4584
|
if (type === Fragment) {
|
|
3888
4585
|
if (!!(process.env.NODE_ENV !== "production") && vnode.patchFlag > 0 && vnode.patchFlag & 2048 && transition && !transition.persisted) vnode.children.forEach((child) => {
|
|
3889
4586
|
if (child.type === Comment) hostRemove(child.el);
|
|
3890
|
-
else remove
|
|
4587
|
+
else remove(child);
|
|
3891
4588
|
});
|
|
3892
4589
|
else removeFragment(el, anchor);
|
|
3893
4590
|
return;
|
|
@@ -3944,14 +4641,18 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
3944
4641
|
return teleportEnd ? hostNextSibling(teleportEnd) : el;
|
|
3945
4642
|
};
|
|
3946
4643
|
let isFlushing = false;
|
|
3947
|
-
const render
|
|
4644
|
+
const render = (vnode, container, namespace) => {
|
|
4645
|
+
let instance;
|
|
3948
4646
|
if (vnode == null) {
|
|
3949
|
-
if (container._vnode)
|
|
4647
|
+
if (container._vnode) {
|
|
4648
|
+
unmount(container._vnode, null, null, true);
|
|
4649
|
+
instance = container._vnode.component;
|
|
4650
|
+
}
|
|
3950
4651
|
} else patch(container._vnode || null, vnode, container, null, null, null, namespace);
|
|
3951
4652
|
container._vnode = vnode;
|
|
3952
4653
|
if (!isFlushing) {
|
|
3953
4654
|
isFlushing = true;
|
|
3954
|
-
flushPreFlushCbs();
|
|
4655
|
+
flushPreFlushCbs(instance);
|
|
3955
4656
|
flushPostFlushCbs();
|
|
3956
4657
|
isFlushing = false;
|
|
3957
4658
|
}
|
|
@@ -3960,7 +4661,7 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
3960
4661
|
p: patch,
|
|
3961
4662
|
um: unmount,
|
|
3962
4663
|
m: move,
|
|
3963
|
-
r: remove
|
|
4664
|
+
r: remove,
|
|
3964
4665
|
mt: mountComponent,
|
|
3965
4666
|
mc: mountChildren,
|
|
3966
4667
|
pc: patchChildren,
|
|
@@ -3972,20 +4673,20 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
3972
4673
|
let hydrateNode;
|
|
3973
4674
|
if (createHydrationFns) [hydrate, hydrateNode] = createHydrationFns(internals);
|
|
3974
4675
|
return {
|
|
3975
|
-
render
|
|
4676
|
+
render,
|
|
3976
4677
|
hydrate,
|
|
3977
|
-
createApp: createAppAPI(render
|
|
4678
|
+
createApp: createAppAPI(render, hydrate)
|
|
3978
4679
|
};
|
|
3979
4680
|
}
|
|
3980
4681
|
function resolveChildrenNamespace({ type, props }, currentNamespace) {
|
|
3981
4682
|
return currentNamespace === "svg" && type === "foreignObject" || currentNamespace === "mathml" && type === "annotation-xml" && props && props.encoding && props.encoding.includes("html") ? void 0 : currentNamespace;
|
|
3982
4683
|
}
|
|
3983
|
-
function toggleRecurse({ effect
|
|
4684
|
+
function toggleRecurse({ effect, job }, allowed) {
|
|
3984
4685
|
if (allowed) {
|
|
3985
|
-
effect
|
|
4686
|
+
effect.flags |= 32;
|
|
3986
4687
|
job.flags |= 4;
|
|
3987
4688
|
} else {
|
|
3988
|
-
effect
|
|
4689
|
+
effect.flags &= -33;
|
|
3989
4690
|
job.flags &= -5;
|
|
3990
4691
|
}
|
|
3991
4692
|
}
|
|
@@ -4005,13 +4706,16 @@ function traverseStaticChildren(n1, n2, shallow = false) {
|
|
|
4005
4706
|
}
|
|
4006
4707
|
if (!shallow && c2.patchFlag !== -2) traverseStaticChildren(c1, c2);
|
|
4007
4708
|
}
|
|
4008
|
-
if (c2.type === Text
|
|
4709
|
+
if (c2.type === Text) {
|
|
4710
|
+
if (c2.patchFlag === -1) c2 = ch2[i] = cloneIfMounted(c2);
|
|
4711
|
+
c2.el = c1.el;
|
|
4712
|
+
}
|
|
4009
4713
|
if (c2.type === Comment && !c2.el) c2.el = c1.el;
|
|
4010
4714
|
if (!!(process.env.NODE_ENV !== "production")) c2.el && (c2.el.__vnode = c2);
|
|
4011
4715
|
}
|
|
4012
4716
|
}
|
|
4013
4717
|
function getSequence(arr) {
|
|
4014
|
-
const p
|
|
4718
|
+
const p = arr.slice();
|
|
4015
4719
|
const result = [0];
|
|
4016
4720
|
let i, j, u, v, c;
|
|
4017
4721
|
const len = arr.length;
|
|
@@ -4020,7 +4724,7 @@ function getSequence(arr) {
|
|
|
4020
4724
|
if (arrI !== 0) {
|
|
4021
4725
|
j = result[result.length - 1];
|
|
4022
4726
|
if (arr[j] < arrI) {
|
|
4023
|
-
p
|
|
4727
|
+
p[i] = j;
|
|
4024
4728
|
result.push(i);
|
|
4025
4729
|
continue;
|
|
4026
4730
|
}
|
|
@@ -4032,7 +4736,7 @@ function getSequence(arr) {
|
|
|
4032
4736
|
else v = c;
|
|
4033
4737
|
}
|
|
4034
4738
|
if (arrI < arr[result[u]]) {
|
|
4035
|
-
if (u > 0) p
|
|
4739
|
+
if (u > 0) p[i] = result[u - 1];
|
|
4036
4740
|
result[u] = i;
|
|
4037
4741
|
}
|
|
4038
4742
|
}
|
|
@@ -4041,7 +4745,7 @@ function getSequence(arr) {
|
|
|
4041
4745
|
v = result[u - 1];
|
|
4042
4746
|
while (u-- > 0) {
|
|
4043
4747
|
result[u] = v;
|
|
4044
|
-
v = p
|
|
4748
|
+
v = p[v];
|
|
4045
4749
|
}
|
|
4046
4750
|
return result;
|
|
4047
4751
|
}
|
|
@@ -4053,412 +4757,308 @@ function locateNonHydratedAsyncRoot(instance) {
|
|
|
4053
4757
|
function invalidateMount(hooks) {
|
|
4054
4758
|
if (hooks) for (let i = 0; i < hooks.length; i++) hooks[i].flags |= 8;
|
|
4055
4759
|
}
|
|
4056
|
-
|
|
4057
|
-
|
|
4058
|
-
|
|
4059
|
-
|
|
4060
|
-
|
|
4061
|
-
return ctx;
|
|
4062
|
-
}
|
|
4063
|
-
};
|
|
4064
|
-
function watchEffect(effect$1, options) {
|
|
4065
|
-
return doWatch(effect$1, null, options);
|
|
4066
|
-
}
|
|
4067
|
-
function watchSyncEffect(effect$1, options) {
|
|
4068
|
-
return doWatch(effect$1, null, !!(process.env.NODE_ENV !== "production") ? extend({}, options, { flush: "sync" }) : { flush: "sync" });
|
|
4069
|
-
}
|
|
4070
|
-
function watch(source, cb, options) {
|
|
4071
|
-
if (!!(process.env.NODE_ENV !== "production") && !isFunction(cb)) warn$1(`\`watch(fn, options?)\` signature has been moved to a separate API. Use \`watchEffect(fn, options?)\` instead. \`watch\` now only supports \`watch(source, cb, options?) signature.`);
|
|
4072
|
-
return doWatch(source, cb, options);
|
|
4760
|
+
function resolveAsyncComponentPlaceholder(anchorVnode) {
|
|
4761
|
+
if (anchorVnode.placeholder) return anchorVnode.placeholder;
|
|
4762
|
+
const instance = anchorVnode.component;
|
|
4763
|
+
if (instance) return resolveAsyncComponentPlaceholder(instance.subTree);
|
|
4764
|
+
return null;
|
|
4073
4765
|
}
|
|
4074
|
-
|
|
4075
|
-
|
|
4076
|
-
|
|
4077
|
-
|
|
4078
|
-
|
|
4079
|
-
|
|
4080
|
-
|
|
4081
|
-
|
|
4082
|
-
|
|
4083
|
-
|
|
4084
|
-
|
|
4085
|
-
|
|
4086
|
-
|
|
4087
|
-
const ctx = useSSRContext();
|
|
4088
|
-
ssrCleanup = ctx.__watcherHandles || (ctx.__watcherHandles = []);
|
|
4089
|
-
} else if (!runsImmediately) {
|
|
4090
|
-
const watchStopHandle = () => {};
|
|
4091
|
-
watchStopHandle.stop = NOOP;
|
|
4092
|
-
watchStopHandle.resume = NOOP;
|
|
4093
|
-
watchStopHandle.pause = NOOP;
|
|
4094
|
-
return watchStopHandle;
|
|
4095
|
-
}
|
|
4096
|
-
}
|
|
4097
|
-
const instance = currentInstance;
|
|
4098
|
-
baseWatchOptions.call = (fn, type, args) => callWithAsyncErrorHandling(fn, instance, type, args);
|
|
4099
|
-
let isPre = false;
|
|
4100
|
-
if (flush === "post") baseWatchOptions.scheduler = (job) => {
|
|
4101
|
-
queuePostRenderEffect(job, instance && instance.suspense);
|
|
4102
|
-
};
|
|
4103
|
-
else if (flush !== "sync") {
|
|
4104
|
-
isPre = true;
|
|
4105
|
-
baseWatchOptions.scheduler = (job, isFirstRun) => {
|
|
4106
|
-
if (isFirstRun) job();
|
|
4107
|
-
else queueJob(job);
|
|
4108
|
-
};
|
|
4109
|
-
}
|
|
4110
|
-
baseWatchOptions.augmentJob = (job) => {
|
|
4111
|
-
if (cb) job.flags |= 4;
|
|
4112
|
-
if (isPre) {
|
|
4113
|
-
job.flags |= 2;
|
|
4114
|
-
if (instance) {
|
|
4115
|
-
job.id = instance.uid;
|
|
4116
|
-
job.i = instance;
|
|
4766
|
+
const isSuspense = (type) => type.__isSuspense;
|
|
4767
|
+
let suspenseId = 0;
|
|
4768
|
+
const Suspense = {
|
|
4769
|
+
name: "Suspense",
|
|
4770
|
+
__isSuspense: true,
|
|
4771
|
+
process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals) {
|
|
4772
|
+
if (n1 == null) mountSuspense(n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals);
|
|
4773
|
+
else {
|
|
4774
|
+
if (parentSuspense && parentSuspense.deps > 0 && !n1.suspense.isInFallback) {
|
|
4775
|
+
n2.suspense = n1.suspense;
|
|
4776
|
+
n2.suspense.vnode = n2;
|
|
4777
|
+
n2.el = n1.el;
|
|
4778
|
+
return;
|
|
4117
4779
|
}
|
|
4780
|
+
patchSuspense(n1, n2, container, anchor, parentComponent, namespace, slotScopeIds, optimized, rendererInternals);
|
|
4118
4781
|
}
|
|
4119
|
-
}
|
|
4120
|
-
|
|
4121
|
-
|
|
4122
|
-
|
|
4123
|
-
|
|
4124
|
-
|
|
4125
|
-
|
|
4126
|
-
}
|
|
4127
|
-
function
|
|
4128
|
-
const
|
|
4129
|
-
const
|
|
4130
|
-
|
|
4131
|
-
|
|
4132
|
-
|
|
4133
|
-
|
|
4134
|
-
|
|
4135
|
-
|
|
4136
|
-
|
|
4137
|
-
|
|
4138
|
-
|
|
4139
|
-
|
|
4140
|
-
|
|
4141
|
-
|
|
4142
|
-
|
|
4143
|
-
|
|
4144
|
-
|
|
4145
|
-
|
|
4146
|
-
|
|
4147
|
-
|
|
4148
|
-
|
|
4149
|
-
|
|
4150
|
-
|
|
4151
|
-
|
|
4152
|
-
|
|
4153
|
-
|
|
4154
|
-
|
|
4155
|
-
const camelizedName = camelize$1(name);
|
|
4156
|
-
if (!!(process.env.NODE_ENV !== "production") && !i.propsOptions[0][camelizedName]) {
|
|
4157
|
-
warn$1(`useModel() called with prop "${name}" which is not declared.`);
|
|
4158
|
-
return ref();
|
|
4159
|
-
}
|
|
4160
|
-
const hyphenatedName = hyphenate$1(name);
|
|
4161
|
-
const modifiers = getModelModifiers(props, camelizedName);
|
|
4162
|
-
const res = customRef((track$1, trigger$1) => {
|
|
4163
|
-
let localValue;
|
|
4164
|
-
let prevSetValue = EMPTY_OBJ;
|
|
4165
|
-
let prevEmittedValue;
|
|
4166
|
-
watchSyncEffect(() => {
|
|
4167
|
-
const propValue = props[camelizedName];
|
|
4168
|
-
if (hasChanged(localValue, propValue)) {
|
|
4169
|
-
localValue = propValue;
|
|
4170
|
-
trigger$1();
|
|
4171
|
-
}
|
|
4172
|
-
});
|
|
4173
|
-
return {
|
|
4174
|
-
get() {
|
|
4175
|
-
track$1();
|
|
4176
|
-
return options.get ? options.get(localValue) : localValue;
|
|
4177
|
-
},
|
|
4178
|
-
set(value) {
|
|
4179
|
-
const emittedValue = options.set ? options.set(value) : value;
|
|
4180
|
-
if (!hasChanged(emittedValue, localValue) && !(prevSetValue !== EMPTY_OBJ && hasChanged(value, prevSetValue))) return;
|
|
4181
|
-
const rawProps = i.vnode.props;
|
|
4182
|
-
if (!(rawProps && (name in rawProps || camelizedName in rawProps || hyphenatedName in rawProps) && (`onUpdate:${name}` in rawProps || `onUpdate:${camelizedName}` in rawProps || `onUpdate:${hyphenatedName}` in rawProps))) {
|
|
4183
|
-
localValue = value;
|
|
4184
|
-
trigger$1();
|
|
4782
|
+
},
|
|
4783
|
+
hydrate: hydrateSuspense,
|
|
4784
|
+
normalize: normalizeSuspenseChildren
|
|
4785
|
+
};
|
|
4786
|
+
function triggerEvent(vnode, name) {
|
|
4787
|
+
const eventListener = vnode.props && vnode.props[name];
|
|
4788
|
+
if (isFunction(eventListener)) eventListener();
|
|
4789
|
+
}
|
|
4790
|
+
function mountSuspense(vnode, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals) {
|
|
4791
|
+
const { p: patch, o: { createElement } } = rendererInternals;
|
|
4792
|
+
const hiddenContainer = createElement("div");
|
|
4793
|
+
const suspense = vnode.suspense = createSuspenseBoundary(vnode, parentSuspense, parentComponent, container, hiddenContainer, anchor, namespace, slotScopeIds, optimized, rendererInternals);
|
|
4794
|
+
patch(null, suspense.pendingBranch = vnode.ssContent, hiddenContainer, null, parentComponent, suspense, namespace, slotScopeIds);
|
|
4795
|
+
if (suspense.deps > 0) {
|
|
4796
|
+
triggerEvent(vnode, "onPending");
|
|
4797
|
+
triggerEvent(vnode, "onFallback");
|
|
4798
|
+
patch(null, vnode.ssFallback, container, anchor, parentComponent, null, namespace, slotScopeIds);
|
|
4799
|
+
setActiveBranch(suspense, vnode.ssFallback);
|
|
4800
|
+
} else suspense.resolve(false, true);
|
|
4801
|
+
}
|
|
4802
|
+
function patchSuspense(n1, n2, container, anchor, parentComponent, namespace, slotScopeIds, optimized, { p: patch, um: unmount, o: { createElement } }) {
|
|
4803
|
+
const suspense = n2.suspense = n1.suspense;
|
|
4804
|
+
suspense.vnode = n2;
|
|
4805
|
+
n2.el = n1.el;
|
|
4806
|
+
const newBranch = n2.ssContent;
|
|
4807
|
+
const newFallback = n2.ssFallback;
|
|
4808
|
+
const { activeBranch, pendingBranch, isInFallback, isHydrating } = suspense;
|
|
4809
|
+
if (pendingBranch) {
|
|
4810
|
+
suspense.pendingBranch = newBranch;
|
|
4811
|
+
if (isSameVNodeType(pendingBranch, newBranch)) {
|
|
4812
|
+
patch(pendingBranch, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, namespace, slotScopeIds, optimized);
|
|
4813
|
+
if (suspense.deps <= 0) suspense.resolve();
|
|
4814
|
+
else if (isInFallback) {
|
|
4815
|
+
if (!isHydrating) {
|
|
4816
|
+
patch(activeBranch, newFallback, container, anchor, parentComponent, null, namespace, slotScopeIds, optimized);
|
|
4817
|
+
setActiveBranch(suspense, newFallback);
|
|
4185
4818
|
}
|
|
4186
|
-
i.emit(`update:${name}`, emittedValue);
|
|
4187
|
-
if (hasChanged(value, emittedValue) && hasChanged(value, prevSetValue) && !hasChanged(emittedValue, prevEmittedValue)) trigger$1();
|
|
4188
|
-
prevSetValue = value;
|
|
4189
|
-
prevEmittedValue = emittedValue;
|
|
4190
4819
|
}
|
|
4191
|
-
};
|
|
4192
|
-
});
|
|
4193
|
-
res[Symbol.iterator] = () => {
|
|
4194
|
-
let i2 = 0;
|
|
4195
|
-
return { next() {
|
|
4196
|
-
if (i2 < 2) return {
|
|
4197
|
-
value: i2++ ? modifiers || EMPTY_OBJ : res,
|
|
4198
|
-
done: false
|
|
4199
|
-
};
|
|
4200
|
-
else return { done: true };
|
|
4201
|
-
} };
|
|
4202
|
-
};
|
|
4203
|
-
return res;
|
|
4204
|
-
}
|
|
4205
|
-
const getModelModifiers = (props, modelName) => {
|
|
4206
|
-
return modelName === "modelValue" || modelName === "model-value" ? props.modelModifiers : props[`${modelName}Modifiers`] || props[`${camelize$1(modelName)}Modifiers`] || props[`${hyphenate$1(modelName)}Modifiers`];
|
|
4207
|
-
};
|
|
4208
|
-
function emit(instance, event, ...rawArgs) {
|
|
4209
|
-
if (instance.isUnmounted) return;
|
|
4210
|
-
const props = instance.vnode.props || EMPTY_OBJ;
|
|
4211
|
-
if (!!(process.env.NODE_ENV !== "production")) {
|
|
4212
|
-
const { emitsOptions, propsOptions: [propsOptions] } = instance;
|
|
4213
|
-
if (emitsOptions) if (!(event in emitsOptions) && true) {
|
|
4214
|
-
if (!propsOptions || !(toHandlerKey(camelize$1(event)) in propsOptions)) warn$1(`Component emitted event "${event}" but it is neither declared in the emits option nor as an "${toHandlerKey(camelize$1(event))}" prop.`);
|
|
4215
4820
|
} else {
|
|
4216
|
-
|
|
4217
|
-
if (
|
|
4218
|
-
|
|
4821
|
+
suspense.pendingId = suspenseId++;
|
|
4822
|
+
if (isHydrating) {
|
|
4823
|
+
suspense.isHydrating = false;
|
|
4824
|
+
suspense.activeBranch = pendingBranch;
|
|
4825
|
+
} else unmount(pendingBranch, parentComponent, suspense);
|
|
4826
|
+
suspense.deps = 0;
|
|
4827
|
+
suspense.effects.length = 0;
|
|
4828
|
+
suspense.hiddenContainer = createElement("div");
|
|
4829
|
+
if (isInFallback) {
|
|
4830
|
+
patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, namespace, slotScopeIds, optimized);
|
|
4831
|
+
if (suspense.deps <= 0) suspense.resolve();
|
|
4832
|
+
else {
|
|
4833
|
+
patch(activeBranch, newFallback, container, anchor, parentComponent, null, namespace, slotScopeIds, optimized);
|
|
4834
|
+
setActiveBranch(suspense, newFallback);
|
|
4835
|
+
}
|
|
4836
|
+
} else if (activeBranch && isSameVNodeType(activeBranch, newBranch)) {
|
|
4837
|
+
patch(activeBranch, newBranch, container, anchor, parentComponent, suspense, namespace, slotScopeIds, optimized);
|
|
4838
|
+
suspense.resolve(true);
|
|
4839
|
+
} else {
|
|
4840
|
+
patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, namespace, slotScopeIds, optimized);
|
|
4841
|
+
if (suspense.deps <= 0) suspense.resolve();
|
|
4219
4842
|
}
|
|
4220
4843
|
}
|
|
4221
|
-
}
|
|
4222
|
-
|
|
4223
|
-
|
|
4224
|
-
|
|
4225
|
-
|
|
4226
|
-
|
|
4227
|
-
if (
|
|
4228
|
-
|
|
4229
|
-
|
|
4230
|
-
|
|
4231
|
-
|
|
4232
|
-
|
|
4233
|
-
|
|
4234
|
-
|
|
4235
|
-
|
|
4236
|
-
|
|
4237
|
-
|
|
4238
|
-
const onceHandler = props[handlerName + `Once`];
|
|
4239
|
-
if (onceHandler) {
|
|
4240
|
-
if (!instance.emitted) instance.emitted = {};
|
|
4241
|
-
else if (instance.emitted[handlerName]) return;
|
|
4242
|
-
instance.emitted[handlerName] = true;
|
|
4243
|
-
callWithAsyncErrorHandling(onceHandler, instance, 6, args);
|
|
4844
|
+
} else if (activeBranch && isSameVNodeType(activeBranch, newBranch)) {
|
|
4845
|
+
patch(activeBranch, newBranch, container, anchor, parentComponent, suspense, namespace, slotScopeIds, optimized);
|
|
4846
|
+
setActiveBranch(suspense, newBranch);
|
|
4847
|
+
} else {
|
|
4848
|
+
triggerEvent(n2, "onPending");
|
|
4849
|
+
suspense.pendingBranch = newBranch;
|
|
4850
|
+
if (newBranch.shapeFlag & 512) suspense.pendingId = newBranch.component.suspenseId;
|
|
4851
|
+
else suspense.pendingId = suspenseId++;
|
|
4852
|
+
patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, namespace, slotScopeIds, optimized);
|
|
4853
|
+
if (suspense.deps <= 0) suspense.resolve();
|
|
4854
|
+
else {
|
|
4855
|
+
const { timeout, pendingId } = suspense;
|
|
4856
|
+
if (timeout > 0) setTimeout(() => {
|
|
4857
|
+
if (suspense.pendingId === pendingId) suspense.fallback(newFallback);
|
|
4858
|
+
}, timeout);
|
|
4859
|
+
else if (timeout === 0) suspense.fallback(newFallback);
|
|
4860
|
+
}
|
|
4244
4861
|
}
|
|
4245
4862
|
}
|
|
4246
|
-
|
|
4247
|
-
function
|
|
4248
|
-
|
|
4249
|
-
|
|
4250
|
-
|
|
4251
|
-
const raw = comp.emits;
|
|
4252
|
-
let normalized = {};
|
|
4253
|
-
let hasExtends = false;
|
|
4254
|
-
if (__VUE_OPTIONS_API__ && !isFunction(comp)) {
|
|
4255
|
-
const extendEmits = (raw2) => {
|
|
4256
|
-
const normalizedFromExtend = normalizeEmitsOptions(raw2, appContext, true);
|
|
4257
|
-
if (normalizedFromExtend) {
|
|
4258
|
-
hasExtends = true;
|
|
4259
|
-
extend(normalized, normalizedFromExtend);
|
|
4260
|
-
}
|
|
4261
|
-
};
|
|
4262
|
-
if (!asMixin && appContext.mixins.length) appContext.mixins.forEach(extendEmits);
|
|
4263
|
-
if (comp.extends) extendEmits(comp.extends);
|
|
4264
|
-
if (comp.mixins) comp.mixins.forEach(extendEmits);
|
|
4265
|
-
}
|
|
4266
|
-
if (!raw && !hasExtends) {
|
|
4267
|
-
if (isObject$1(comp)) cache.set(comp, null);
|
|
4268
|
-
return null;
|
|
4863
|
+
let hasWarned = false;
|
|
4864
|
+
function createSuspenseBoundary(vnode, parentSuspense, parentComponent, container, hiddenContainer, anchor, namespace, slotScopeIds, optimized, rendererInternals, isHydrating = false) {
|
|
4865
|
+
if (!!(process.env.NODE_ENV !== "production") && !hasWarned) {
|
|
4866
|
+
hasWarned = true;
|
|
4867
|
+
console[console.info ? "info" : "log"](`<Suspense> is an experimental feature and its API will likely change.`);
|
|
4269
4868
|
}
|
|
4270
|
-
|
|
4271
|
-
|
|
4272
|
-
|
|
4273
|
-
|
|
4274
|
-
|
|
4275
|
-
|
|
4276
|
-
|
|
4277
|
-
key = key.slice(2).replace(/Once$/, "");
|
|
4278
|
-
return hasOwn$1(options, key[0].toLowerCase() + key.slice(1)) || hasOwn$1(options, hyphenate$1(key)) || hasOwn$1(options, key);
|
|
4279
|
-
}
|
|
4280
|
-
let accessedAttrs = false;
|
|
4281
|
-
function markAttrsAccessed() {
|
|
4282
|
-
accessedAttrs = true;
|
|
4283
|
-
}
|
|
4284
|
-
function renderComponentRoot(instance) {
|
|
4285
|
-
const { type: Component, vnode, proxy, withProxy, propsOptions: [propsOptions], slots, attrs, emit: emit$2, render: render$1, renderCache, props, data, setupState, ctx, inheritAttrs } = instance;
|
|
4286
|
-
const prev = setCurrentRenderingInstance(instance);
|
|
4287
|
-
let result;
|
|
4288
|
-
let fallthroughAttrs;
|
|
4289
|
-
if (!!(process.env.NODE_ENV !== "production")) accessedAttrs = false;
|
|
4290
|
-
try {
|
|
4291
|
-
if (vnode.shapeFlag & 4) {
|
|
4292
|
-
const proxyToUse = withProxy || proxy;
|
|
4293
|
-
const thisProxy = !!(process.env.NODE_ENV !== "production") && setupState.__isScriptSetup ? new Proxy(proxyToUse, { get(target, key, receiver) {
|
|
4294
|
-
warn$1(`Property '${String(key)}' was accessed via 'this'. Avoid using 'this' in templates.`);
|
|
4295
|
-
return Reflect.get(target, key, receiver);
|
|
4296
|
-
} }) : proxyToUse;
|
|
4297
|
-
result = normalizeVNode(render$1.call(thisProxy, proxyToUse, renderCache, !!(process.env.NODE_ENV !== "production") ? shallowReadonly(props) : props, setupState, data, ctx));
|
|
4298
|
-
fallthroughAttrs = attrs;
|
|
4299
|
-
} else {
|
|
4300
|
-
const render2 = Component;
|
|
4301
|
-
if (!!(process.env.NODE_ENV !== "production") && attrs === props) markAttrsAccessed();
|
|
4302
|
-
result = normalizeVNode(render2.length > 1 ? render2(!!(process.env.NODE_ENV !== "production") ? shallowReadonly(props) : props, !!(process.env.NODE_ENV !== "production") ? {
|
|
4303
|
-
get attrs() {
|
|
4304
|
-
markAttrsAccessed();
|
|
4305
|
-
return shallowReadonly(attrs);
|
|
4306
|
-
},
|
|
4307
|
-
slots,
|
|
4308
|
-
emit: emit$2
|
|
4309
|
-
} : {
|
|
4310
|
-
attrs,
|
|
4311
|
-
slots,
|
|
4312
|
-
emit: emit$2
|
|
4313
|
-
}) : render2(!!(process.env.NODE_ENV !== "production") ? shallowReadonly(props) : props, null));
|
|
4314
|
-
fallthroughAttrs = Component.props ? attrs : getFunctionalFallthrough(attrs);
|
|
4869
|
+
const { p: patch, m: move, um: unmount, n: next, o: { parentNode, remove } } = rendererInternals;
|
|
4870
|
+
let parentSuspenseId;
|
|
4871
|
+
const isSuspensible = isVNodeSuspensible(vnode);
|
|
4872
|
+
if (isSuspensible) {
|
|
4873
|
+
if (parentSuspense && parentSuspense.pendingBranch) {
|
|
4874
|
+
parentSuspenseId = parentSuspense.pendingId;
|
|
4875
|
+
parentSuspense.deps++;
|
|
4315
4876
|
}
|
|
4316
|
-
} catch (err) {
|
|
4317
|
-
blockStack.length = 0;
|
|
4318
|
-
handleError(err, instance, 1);
|
|
4319
|
-
result = createVNode(Comment);
|
|
4320
4877
|
}
|
|
4321
|
-
|
|
4322
|
-
|
|
4323
|
-
|
|
4324
|
-
|
|
4325
|
-
|
|
4326
|
-
|
|
4327
|
-
|
|
4328
|
-
|
|
4329
|
-
|
|
4330
|
-
|
|
4331
|
-
|
|
4332
|
-
|
|
4333
|
-
|
|
4334
|
-
|
|
4335
|
-
|
|
4336
|
-
|
|
4337
|
-
|
|
4338
|
-
|
|
4339
|
-
|
|
4878
|
+
const timeout = vnode.props ? toNumber(vnode.props.timeout) : void 0;
|
|
4879
|
+
if (!!(process.env.NODE_ENV !== "production")) assertNumber(timeout, `Suspense timeout`);
|
|
4880
|
+
const initialAnchor = anchor;
|
|
4881
|
+
const suspense = {
|
|
4882
|
+
vnode,
|
|
4883
|
+
parent: parentSuspense,
|
|
4884
|
+
parentComponent,
|
|
4885
|
+
namespace,
|
|
4886
|
+
container,
|
|
4887
|
+
hiddenContainer,
|
|
4888
|
+
deps: 0,
|
|
4889
|
+
pendingId: suspenseId++,
|
|
4890
|
+
timeout: typeof timeout === "number" ? timeout : -1,
|
|
4891
|
+
activeBranch: null,
|
|
4892
|
+
pendingBranch: null,
|
|
4893
|
+
isInFallback: !isHydrating,
|
|
4894
|
+
isHydrating,
|
|
4895
|
+
isUnmounted: false,
|
|
4896
|
+
effects: [],
|
|
4897
|
+
resolve(resume = false, sync = false) {
|
|
4898
|
+
if (!!(process.env.NODE_ENV !== "production")) {
|
|
4899
|
+
if (!resume && !suspense.pendingBranch) throw new Error(`suspense.resolve() is called without a pending branch.`);
|
|
4900
|
+
if (suspense.isUnmounted) throw new Error(`suspense.resolve() is called on an already unmounted suspense boundary.`);
|
|
4901
|
+
}
|
|
4902
|
+
const { vnode: vnode2, activeBranch, pendingBranch, pendingId, effects, parentComponent: parentComponent2, container: container2, isInFallback } = suspense;
|
|
4903
|
+
let delayEnter = false;
|
|
4904
|
+
if (suspense.isHydrating) suspense.isHydrating = false;
|
|
4905
|
+
else if (!resume) {
|
|
4906
|
+
delayEnter = activeBranch && pendingBranch.transition && pendingBranch.transition.mode === "out-in";
|
|
4907
|
+
if (delayEnter) activeBranch.transition.afterLeave = () => {
|
|
4908
|
+
if (pendingId === suspense.pendingId) {
|
|
4909
|
+
move(pendingBranch, container2, anchor === initialAnchor ? next(activeBranch) : anchor, 0);
|
|
4910
|
+
queuePostFlushCb(effects);
|
|
4911
|
+
if (isInFallback && vnode2.ssFallback) vnode2.ssFallback.el = null;
|
|
4912
|
+
}
|
|
4913
|
+
};
|
|
4914
|
+
if (activeBranch) {
|
|
4915
|
+
if (parentNode(activeBranch.el) === container2) anchor = next(activeBranch);
|
|
4916
|
+
unmount(activeBranch, parentComponent2, suspense, true);
|
|
4917
|
+
if (!delayEnter && isInFallback && vnode2.ssFallback) queuePostRenderEffect(() => vnode2.ssFallback.el = null, suspense);
|
|
4340
4918
|
}
|
|
4341
|
-
if (
|
|
4342
|
-
if (eventAttrs.length) warn$1(`Extraneous non-emits event listeners (${eventAttrs.join(", ")}) were passed to component but could not be automatically inherited because component renders fragment or text root nodes. If the listener is intended to be a component custom event listener only, declare it using the "emits" option.`);
|
|
4919
|
+
if (!delayEnter) move(pendingBranch, container2, anchor, 0);
|
|
4343
4920
|
}
|
|
4344
|
-
|
|
4345
|
-
|
|
4346
|
-
|
|
4347
|
-
|
|
4348
|
-
|
|
4349
|
-
|
|
4350
|
-
|
|
4351
|
-
|
|
4352
|
-
|
|
4353
|
-
|
|
4354
|
-
|
|
4355
|
-
|
|
4356
|
-
else result = root;
|
|
4357
|
-
setCurrentRenderingInstance(prev);
|
|
4358
|
-
return result;
|
|
4359
|
-
}
|
|
4360
|
-
const getChildRoot = (vnode) => {
|
|
4361
|
-
const rawChildren = vnode.children;
|
|
4362
|
-
const dynamicChildren = vnode.dynamicChildren;
|
|
4363
|
-
const childRoot = filterSingleRoot(rawChildren, false);
|
|
4364
|
-
if (!childRoot) return [vnode, void 0];
|
|
4365
|
-
else if (!!(process.env.NODE_ENV !== "production") && childRoot.patchFlag > 0 && childRoot.patchFlag & 2048) return getChildRoot(childRoot);
|
|
4366
|
-
const index = rawChildren.indexOf(childRoot);
|
|
4367
|
-
const dynamicIndex = dynamicChildren ? dynamicChildren.indexOf(childRoot) : -1;
|
|
4368
|
-
const setRoot = (updatedRoot) => {
|
|
4369
|
-
rawChildren[index] = updatedRoot;
|
|
4370
|
-
if (dynamicChildren) {
|
|
4371
|
-
if (dynamicIndex > -1) dynamicChildren[dynamicIndex] = updatedRoot;
|
|
4372
|
-
else if (updatedRoot.patchFlag > 0) vnode.dynamicChildren = [...dynamicChildren, updatedRoot];
|
|
4373
|
-
}
|
|
4374
|
-
};
|
|
4375
|
-
return [normalizeVNode(childRoot), setRoot];
|
|
4376
|
-
};
|
|
4377
|
-
function filterSingleRoot(children, recurse = true) {
|
|
4378
|
-
let singleRoot;
|
|
4379
|
-
for (let i = 0; i < children.length; i++) {
|
|
4380
|
-
const child = children[i];
|
|
4381
|
-
if (isVNode(child)) {
|
|
4382
|
-
if (child.type !== Comment || child.children === "v-if") if (singleRoot) return;
|
|
4383
|
-
else {
|
|
4384
|
-
singleRoot = child;
|
|
4385
|
-
if (!!(process.env.NODE_ENV !== "production") && recurse && singleRoot.patchFlag > 0 && singleRoot.patchFlag & 2048) return filterSingleRoot(singleRoot.children);
|
|
4921
|
+
setActiveBranch(suspense, pendingBranch);
|
|
4922
|
+
suspense.pendingBranch = null;
|
|
4923
|
+
suspense.isInFallback = false;
|
|
4924
|
+
let parent = suspense.parent;
|
|
4925
|
+
let hasUnresolvedAncestor = false;
|
|
4926
|
+
while (parent) {
|
|
4927
|
+
if (parent.pendingBranch) {
|
|
4928
|
+
parent.effects.push(...effects);
|
|
4929
|
+
hasUnresolvedAncestor = true;
|
|
4930
|
+
break;
|
|
4931
|
+
}
|
|
4932
|
+
parent = parent.parent;
|
|
4386
4933
|
}
|
|
4387
|
-
|
|
4388
|
-
|
|
4389
|
-
|
|
4390
|
-
|
|
4391
|
-
|
|
4392
|
-
|
|
4393
|
-
|
|
4394
|
-
return res;
|
|
4395
|
-
};
|
|
4396
|
-
const filterModelListeners = (attrs, props) => {
|
|
4397
|
-
const res = {};
|
|
4398
|
-
for (const key in attrs) if (!isModelListener(key) || !(key.slice(9) in props)) res[key] = attrs[key];
|
|
4399
|
-
return res;
|
|
4400
|
-
};
|
|
4401
|
-
const isElementRoot = (vnode) => {
|
|
4402
|
-
return vnode.shapeFlag & 7 || vnode.type === Comment;
|
|
4403
|
-
};
|
|
4404
|
-
function shouldUpdateComponent(prevVNode, nextVNode, optimized) {
|
|
4405
|
-
const { props: prevProps, children: prevChildren, component } = prevVNode;
|
|
4406
|
-
const { props: nextProps, children: nextChildren, patchFlag } = nextVNode;
|
|
4407
|
-
const emits = component.emitsOptions;
|
|
4408
|
-
if (!!(process.env.NODE_ENV !== "production") && (prevChildren || nextChildren) && isHmrUpdating) return true;
|
|
4409
|
-
if (nextVNode.dirs || nextVNode.transition) return true;
|
|
4410
|
-
if (optimized && patchFlag >= 0) {
|
|
4411
|
-
if (patchFlag & 1024) return true;
|
|
4412
|
-
if (patchFlag & 16) {
|
|
4413
|
-
if (!prevProps) return !!nextProps;
|
|
4414
|
-
return hasPropsChanged(prevProps, nextProps, emits);
|
|
4415
|
-
} else if (patchFlag & 8) {
|
|
4416
|
-
const dynamicProps = nextVNode.dynamicProps;
|
|
4417
|
-
for (let i = 0; i < dynamicProps.length; i++) {
|
|
4418
|
-
const key = dynamicProps[i];
|
|
4419
|
-
if (nextProps[key] !== prevProps[key] && !isEmitListener(emits, key)) return true;
|
|
4934
|
+
if (!hasUnresolvedAncestor && !delayEnter) queuePostFlushCb(effects);
|
|
4935
|
+
suspense.effects = [];
|
|
4936
|
+
if (isSuspensible) {
|
|
4937
|
+
if (parentSuspense && parentSuspense.pendingBranch && parentSuspenseId === parentSuspense.pendingId) {
|
|
4938
|
+
parentSuspense.deps--;
|
|
4939
|
+
if (parentSuspense.deps === 0 && !sync) parentSuspense.resolve();
|
|
4940
|
+
}
|
|
4420
4941
|
}
|
|
4942
|
+
triggerEvent(vnode2, "onResolve");
|
|
4943
|
+
},
|
|
4944
|
+
fallback(fallbackVNode) {
|
|
4945
|
+
if (!suspense.pendingBranch) return;
|
|
4946
|
+
const { vnode: vnode2, activeBranch, parentComponent: parentComponent2, container: container2, namespace: namespace2 } = suspense;
|
|
4947
|
+
triggerEvent(vnode2, "onFallback");
|
|
4948
|
+
const anchor2 = next(activeBranch);
|
|
4949
|
+
const mountFallback = () => {
|
|
4950
|
+
if (!suspense.isInFallback) return;
|
|
4951
|
+
patch(null, fallbackVNode, container2, anchor2, parentComponent2, null, namespace2, slotScopeIds, optimized);
|
|
4952
|
+
setActiveBranch(suspense, fallbackVNode);
|
|
4953
|
+
};
|
|
4954
|
+
const delayEnter = fallbackVNode.transition && fallbackVNode.transition.mode === "out-in";
|
|
4955
|
+
if (delayEnter) activeBranch.transition.afterLeave = mountFallback;
|
|
4956
|
+
suspense.isInFallback = true;
|
|
4957
|
+
unmount(activeBranch, parentComponent2, null, true);
|
|
4958
|
+
if (!delayEnter) mountFallback();
|
|
4959
|
+
},
|
|
4960
|
+
move(container2, anchor2, type) {
|
|
4961
|
+
suspense.activeBranch && move(suspense.activeBranch, container2, anchor2, type);
|
|
4962
|
+
suspense.container = container2;
|
|
4963
|
+
},
|
|
4964
|
+
next() {
|
|
4965
|
+
return suspense.activeBranch && next(suspense.activeBranch);
|
|
4966
|
+
},
|
|
4967
|
+
registerDep(instance, setupRenderEffect, optimized2) {
|
|
4968
|
+
const isInPendingSuspense = !!suspense.pendingBranch;
|
|
4969
|
+
if (isInPendingSuspense) suspense.deps++;
|
|
4970
|
+
const hydratedEl = instance.vnode.el;
|
|
4971
|
+
instance.asyncDep.catch((err) => {
|
|
4972
|
+
handleError(err, instance, 0);
|
|
4973
|
+
}).then((asyncSetupResult) => {
|
|
4974
|
+
if (instance.isUnmounted || suspense.isUnmounted || suspense.pendingId !== instance.suspenseId) return;
|
|
4975
|
+
instance.asyncResolved = true;
|
|
4976
|
+
const { vnode: vnode2 } = instance;
|
|
4977
|
+
if (!!(process.env.NODE_ENV !== "production")) pushWarningContext(vnode2);
|
|
4978
|
+
handleSetupResult(instance, asyncSetupResult, false);
|
|
4979
|
+
if (hydratedEl) vnode2.el = hydratedEl;
|
|
4980
|
+
const placeholder = !hydratedEl && instance.subTree.el;
|
|
4981
|
+
setupRenderEffect(instance, vnode2, parentNode(hydratedEl || instance.subTree.el), hydratedEl ? null : next(instance.subTree), suspense, namespace, optimized2);
|
|
4982
|
+
if (placeholder) {
|
|
4983
|
+
vnode2.placeholder = null;
|
|
4984
|
+
remove(placeholder);
|
|
4985
|
+
}
|
|
4986
|
+
updateHOCHostEl(instance, vnode2.el);
|
|
4987
|
+
if (!!(process.env.NODE_ENV !== "production")) popWarningContext();
|
|
4988
|
+
if (isInPendingSuspense && --suspense.deps === 0) suspense.resolve();
|
|
4989
|
+
});
|
|
4990
|
+
},
|
|
4991
|
+
unmount(parentSuspense2, doRemove) {
|
|
4992
|
+
suspense.isUnmounted = true;
|
|
4993
|
+
if (suspense.activeBranch) unmount(suspense.activeBranch, parentComponent, parentSuspense2, doRemove);
|
|
4994
|
+
if (suspense.pendingBranch) unmount(suspense.pendingBranch, parentComponent, parentSuspense2, doRemove);
|
|
4421
4995
|
}
|
|
4422
|
-
}
|
|
4423
|
-
|
|
4424
|
-
if (!nextChildren || !nextChildren.$stable) return true;
|
|
4425
|
-
}
|
|
4426
|
-
if (prevProps === nextProps) return false;
|
|
4427
|
-
if (!prevProps) return !!nextProps;
|
|
4428
|
-
if (!nextProps) return true;
|
|
4429
|
-
return hasPropsChanged(prevProps, nextProps, emits);
|
|
4430
|
-
}
|
|
4431
|
-
return false;
|
|
4996
|
+
};
|
|
4997
|
+
return suspense;
|
|
4432
4998
|
}
|
|
4433
|
-
function
|
|
4434
|
-
const
|
|
4435
|
-
|
|
4436
|
-
|
|
4437
|
-
|
|
4438
|
-
if (nextProps[key] !== prevProps[key] && !isEmitListener(emitsOptions, key)) return true;
|
|
4439
|
-
}
|
|
4440
|
-
return false;
|
|
4999
|
+
function hydrateSuspense(node, vnode, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals, hydrateNode) {
|
|
5000
|
+
const suspense = vnode.suspense = createSuspenseBoundary(vnode, parentSuspense, parentComponent, node.parentNode, document.createElement("div"), null, namespace, slotScopeIds, optimized, rendererInternals, true);
|
|
5001
|
+
const result = hydrateNode(node, suspense.pendingBranch = vnode.ssContent, parentComponent, suspense, slotScopeIds, optimized);
|
|
5002
|
+
if (suspense.deps === 0) suspense.resolve(false, true);
|
|
5003
|
+
return result;
|
|
4441
5004
|
}
|
|
4442
|
-
function
|
|
4443
|
-
|
|
4444
|
-
|
|
4445
|
-
|
|
4446
|
-
|
|
4447
|
-
|
|
4448
|
-
|
|
4449
|
-
|
|
5005
|
+
function normalizeSuspenseChildren(vnode) {
|
|
5006
|
+
const { shapeFlag, children } = vnode;
|
|
5007
|
+
const isSlotChildren = shapeFlag & 32;
|
|
5008
|
+
vnode.ssContent = normalizeSuspenseSlot(isSlotChildren ? children.default : children);
|
|
5009
|
+
vnode.ssFallback = isSlotChildren ? normalizeSuspenseSlot(children.fallback) : createVNode(Comment);
|
|
5010
|
+
}
|
|
5011
|
+
function normalizeSuspenseSlot(s) {
|
|
5012
|
+
let block;
|
|
5013
|
+
if (isFunction(s)) {
|
|
5014
|
+
const trackBlock = isBlockTreeEnabled && s._c;
|
|
5015
|
+
if (trackBlock) {
|
|
5016
|
+
s._d = false;
|
|
5017
|
+
openBlock();
|
|
5018
|
+
}
|
|
5019
|
+
s = s();
|
|
5020
|
+
if (trackBlock) {
|
|
5021
|
+
s._d = true;
|
|
5022
|
+
block = currentBlock;
|
|
5023
|
+
closeBlock();
|
|
5024
|
+
}
|
|
4450
5025
|
}
|
|
5026
|
+
if (isArray(s)) {
|
|
5027
|
+
const singleChild = filterSingleRoot(s);
|
|
5028
|
+
if (!!(process.env.NODE_ENV !== "production") && !singleChild && s.filter((child) => child !== NULL_DYNAMIC_COMPONENT).length > 0) warn$1(`<Suspense> slots expect a single root node.`);
|
|
5029
|
+
s = singleChild;
|
|
5030
|
+
}
|
|
5031
|
+
s = normalizeVNode(s);
|
|
5032
|
+
if (block && !s.dynamicChildren) s.dynamicChildren = block.filter((c) => c !== s);
|
|
5033
|
+
return s;
|
|
4451
5034
|
}
|
|
4452
|
-
const isSuspense = (type) => type.__isSuspense;
|
|
4453
5035
|
function queueEffectWithSuspense(fn, suspense) {
|
|
4454
5036
|
if (suspense && suspense.pendingBranch) if (isArray(fn)) suspense.effects.push(...fn);
|
|
4455
5037
|
else suspense.effects.push(fn);
|
|
4456
5038
|
else queuePostFlushCb(fn);
|
|
4457
5039
|
}
|
|
4458
|
-
|
|
4459
|
-
|
|
4460
|
-
const
|
|
4461
|
-
|
|
5040
|
+
function setActiveBranch(suspense, branch) {
|
|
5041
|
+
suspense.activeBranch = branch;
|
|
5042
|
+
const { vnode, parentComponent } = suspense;
|
|
5043
|
+
let el = branch.el;
|
|
5044
|
+
while (!el && branch.component) {
|
|
5045
|
+
branch = branch.component.subTree;
|
|
5046
|
+
el = branch.el;
|
|
5047
|
+
}
|
|
5048
|
+
vnode.el = el;
|
|
5049
|
+
if (parentComponent && parentComponent.subTree === vnode) {
|
|
5050
|
+
parentComponent.vnode.el = el;
|
|
5051
|
+
updateHOCHostEl(parentComponent, el);
|
|
5052
|
+
}
|
|
5053
|
+
}
|
|
5054
|
+
function isVNodeSuspensible(vnode) {
|
|
5055
|
+
const suspensible = vnode.props && vnode.props.suspensible;
|
|
5056
|
+
return suspensible != null && suspensible !== false;
|
|
5057
|
+
}
|
|
5058
|
+
const Fragment = /* @__PURE__ */ Symbol.for("v-fgt");
|
|
5059
|
+
const Text = /* @__PURE__ */ Symbol.for("v-txt");
|
|
5060
|
+
const Comment = /* @__PURE__ */ Symbol.for("v-cmt");
|
|
5061
|
+
const Static = /* @__PURE__ */ Symbol.for("v-stc");
|
|
4462
5062
|
const blockStack = [];
|
|
4463
5063
|
let currentBlock = null;
|
|
4464
5064
|
function openBlock(disableTracking = false) {
|
|
@@ -4499,19 +5099,18 @@ function isSameVNodeType(n1, n2) {
|
|
|
4499
5099
|
}
|
|
4500
5100
|
return n1.type === n2.type && n1.key === n2.key;
|
|
4501
5101
|
}
|
|
4502
|
-
let vnodeArgsTransformer;
|
|
4503
5102
|
const createVNodeWithArgsTransform = (...args) => {
|
|
4504
|
-
return _createVNode(...
|
|
5103
|
+
return _createVNode(...args);
|
|
4505
5104
|
};
|
|
4506
5105
|
const normalizeKey = ({ key }) => key != null ? key : null;
|
|
4507
|
-
const normalizeRef = ({ ref
|
|
4508
|
-
if (typeof ref
|
|
4509
|
-
return ref
|
|
5106
|
+
const normalizeRef = ({ ref, ref_key, ref_for }) => {
|
|
5107
|
+
if (typeof ref === "number") ref = "" + ref;
|
|
5108
|
+
return ref != null ? isString(ref) || /* @__PURE__ */ isRef(ref) || isFunction(ref) ? {
|
|
4510
5109
|
i: currentRenderingInstance,
|
|
4511
|
-
r: ref
|
|
5110
|
+
r: ref,
|
|
4512
5111
|
k: ref_key,
|
|
4513
5112
|
f: !!ref_for
|
|
4514
|
-
} : ref
|
|
5113
|
+
} : ref : null;
|
|
4515
5114
|
};
|
|
4516
5115
|
function createBaseVNode(type, props = null, children = null, patchFlag = 0, dynamicProps = null, shapeFlag = type === Fragment ? 0 : 1, isBlockNode = false, needFullChildrenNormalization = false) {
|
|
4517
5116
|
const vnode = {
|
|
@@ -4571,13 +5170,13 @@ function _createVNode(type, props = null, children = null, patchFlag = 0, dynami
|
|
|
4571
5170
|
let { class: klass, style } = props;
|
|
4572
5171
|
if (klass && !isString(klass)) props.class = normalizeClass(klass);
|
|
4573
5172
|
if (isObject$1(style)) {
|
|
4574
|
-
if (isProxy(style) && !isArray(style)) style = extend({}, style);
|
|
5173
|
+
if (/* @__PURE__ */ isProxy(style) && !isArray(style)) style = extend({}, style);
|
|
4575
5174
|
props.style = normalizeStyle(style);
|
|
4576
5175
|
}
|
|
4577
5176
|
}
|
|
4578
5177
|
const shapeFlag = isString(type) ? 1 : isSuspense(type) ? 128 : isTeleport(type) ? 64 : isObject$1(type) ? 4 : isFunction(type) ? 2 : 0;
|
|
4579
|
-
if (!!(process.env.NODE_ENV !== "production") && shapeFlag & 4 && isProxy(type)) {
|
|
4580
|
-
type = toRaw(type);
|
|
5178
|
+
if (!!(process.env.NODE_ENV !== "production") && shapeFlag & 4 && /* @__PURE__ */ isProxy(type)) {
|
|
5179
|
+
type = /* @__PURE__ */ toRaw(type);
|
|
4581
5180
|
warn$1(`Vue received a Component that was made a reactive object. This can lead to unnecessary performance overhead and should be avoided by marking the component with \`markRaw\` or using \`shallowRef\` instead of \`ref\`.`, `
|
|
4582
5181
|
Component that was made reactive: `, type);
|
|
4583
5182
|
}
|
|
@@ -4585,10 +5184,10 @@ Component that was made reactive: `, type);
|
|
|
4585
5184
|
}
|
|
4586
5185
|
function guardReactiveProps(props) {
|
|
4587
5186
|
if (!props) return null;
|
|
4588
|
-
return isProxy(props) || isInternalObject(props) ? extend({}, props) : props;
|
|
5187
|
+
return /* @__PURE__ */ isProxy(props) || isInternalObject(props) ? extend({}, props) : props;
|
|
4589
5188
|
}
|
|
4590
5189
|
function cloneVNode(vnode, extraProps, mergeRef = false, cloneTransition = false) {
|
|
4591
|
-
const { props, ref
|
|
5190
|
+
const { props, ref, patchFlag, children, transition } = vnode;
|
|
4592
5191
|
const mergedProps = extraProps ? mergeProps(props || {}, extraProps) : props;
|
|
4593
5192
|
const cloned = {
|
|
4594
5193
|
__v_isVNode: true,
|
|
@@ -4596,7 +5195,7 @@ function cloneVNode(vnode, extraProps, mergeRef = false, cloneTransition = false
|
|
|
4596
5195
|
type: vnode.type,
|
|
4597
5196
|
props: mergedProps,
|
|
4598
5197
|
key: mergedProps && normalizeKey(mergedProps),
|
|
4599
|
-
ref: extraProps && extraProps.ref ? mergeRef && ref
|
|
5198
|
+
ref: extraProps && extraProps.ref ? mergeRef && ref ? isArray(ref) ? ref.concat(normalizeRef(extraProps)) : [ref, normalizeRef(extraProps)] : normalizeRef(extraProps) : ref,
|
|
4600
5199
|
scopeId: vnode.scopeId,
|
|
4601
5200
|
slotScopeIds: vnode.slotScopeIds,
|
|
4602
5201
|
children: !!(process.env.NODE_ENV !== "production") && patchFlag === -1 && isArray(children) ? children.map(deepCloneVNode) : children,
|
|
@@ -4632,6 +5231,11 @@ function deepCloneVNode(vnode) {
|
|
|
4632
5231
|
function createTextVNode(text = " ", flag = 0) {
|
|
4633
5232
|
return createVNode(Text, null, text, flag);
|
|
4634
5233
|
}
|
|
5234
|
+
function createStaticVNode(content, numberOfNodes) {
|
|
5235
|
+
const vnode = createVNode(Static, null, content);
|
|
5236
|
+
vnode.staticCount = numberOfNodes;
|
|
5237
|
+
return vnode;
|
|
5238
|
+
}
|
|
4635
5239
|
function createCommentVNode(text = "", asBlock = false) {
|
|
4636
5240
|
return asBlock ? (openBlock(), createBlock(Comment, null, text)) : createVNode(Comment, null, text);
|
|
4637
5241
|
}
|
|
@@ -4827,7 +5431,6 @@ function setupComponent(instance, isSSR = false, optimized = false) {
|
|
|
4827
5431
|
return setupResult;
|
|
4828
5432
|
}
|
|
4829
5433
|
function setupStatefulComponent(instance, isSSR) {
|
|
4830
|
-
var _a;
|
|
4831
5434
|
const Component = instance.type;
|
|
4832
5435
|
if (!!(process.env.NODE_ENV !== "production")) {
|
|
4833
5436
|
if (Component.name) validateComponentName(Component.name, instance.appContext.config);
|
|
@@ -4849,7 +5452,7 @@ function setupStatefulComponent(instance, isSSR) {
|
|
|
4849
5452
|
pauseTracking();
|
|
4850
5453
|
const setupContext = instance.setupContext = setup.length > 1 ? createSetupContext(instance) : null;
|
|
4851
5454
|
const reset = setCurrentInstance(instance);
|
|
4852
|
-
const setupResult = callWithErrorHandling(setup, instance, 0, [!!(process.env.NODE_ENV !== "production") ? shallowReadonly(instance.props) : instance.props, setupContext]);
|
|
5455
|
+
const setupResult = callWithErrorHandling(setup, instance, 0, [!!(process.env.NODE_ENV !== "production") ? /* @__PURE__ */ shallowReadonly(instance.props) : instance.props, setupContext]);
|
|
4853
5456
|
const isAsyncSetup = isPromise(setupResult);
|
|
4854
5457
|
resetTracking();
|
|
4855
5458
|
reset();
|
|
@@ -4863,7 +5466,7 @@ function setupStatefulComponent(instance, isSSR) {
|
|
|
4863
5466
|
});
|
|
4864
5467
|
else {
|
|
4865
5468
|
instance.asyncDep = setupResult;
|
|
4866
|
-
if (!!(process.env.NODE_ENV !== "production") && !instance.suspense) warn$1(`Component <${(
|
|
5469
|
+
if (!!(process.env.NODE_ENV !== "production") && !instance.suspense) warn$1(`Component <${formatComponentName(instance, Component)}>: setup function returned a promise, but no <Suspense> boundary was found in the parent component tree. A component with async setup() must be nested in a <Suspense> in order to be rendered.`);
|
|
4867
5470
|
}
|
|
4868
5471
|
} else handleSetupResult(instance, setupResult, isSSR);
|
|
4869
5472
|
} else finishComponentSetup(instance, isSSR);
|
|
@@ -4879,29 +5482,10 @@ function handleSetupResult(instance, setupResult, isSSR) {
|
|
|
4879
5482
|
} else if (!!(process.env.NODE_ENV !== "production") && setupResult !== void 0) warn$1(`setup() should return an object. Received: ${setupResult === null ? "null" : typeof setupResult}`);
|
|
4880
5483
|
finishComponentSetup(instance, isSSR);
|
|
4881
5484
|
}
|
|
4882
|
-
|
|
4883
|
-
let installWithProxy;
|
|
4884
|
-
const isRuntimeOnly = () => !compile;
|
|
5485
|
+
const isRuntimeOnly = () => true;
|
|
4885
5486
|
function finishComponentSetup(instance, isSSR, skipOptions) {
|
|
4886
5487
|
const Component = instance.type;
|
|
4887
|
-
if (!instance.render)
|
|
4888
|
-
if (!isSSR && compile && !Component.render) {
|
|
4889
|
-
const template = Component.template || __VUE_OPTIONS_API__ && resolveMergedOptions(instance).template;
|
|
4890
|
-
if (template) {
|
|
4891
|
-
if (!!(process.env.NODE_ENV !== "production")) startMeasure(instance, `compile`);
|
|
4892
|
-
const { isCustomElement, compilerOptions } = instance.appContext.config;
|
|
4893
|
-
const { delimiters, compilerOptions: componentCompilerOptions } = Component;
|
|
4894
|
-
const finalCompilerOptions = extend(extend({
|
|
4895
|
-
isCustomElement,
|
|
4896
|
-
delimiters
|
|
4897
|
-
}, compilerOptions), componentCompilerOptions);
|
|
4898
|
-
Component.render = compile(template, finalCompilerOptions);
|
|
4899
|
-
if (!!(process.env.NODE_ENV !== "production")) endMeasure(instance, `compile`);
|
|
4900
|
-
}
|
|
4901
|
-
}
|
|
4902
|
-
instance.render = Component.render || NOOP;
|
|
4903
|
-
if (installWithProxy) installWithProxy(instance);
|
|
4904
|
-
}
|
|
5488
|
+
if (!instance.render) instance.render = Component.render || NOOP;
|
|
4905
5489
|
if (__VUE_OPTIONS_API__ && true) {
|
|
4906
5490
|
const reset = setCurrentInstance(instance);
|
|
4907
5491
|
pauseTracking();
|
|
@@ -4912,7 +5496,7 @@ function finishComponentSetup(instance, isSSR, skipOptions) {
|
|
|
4912
5496
|
reset();
|
|
4913
5497
|
}
|
|
4914
5498
|
}
|
|
4915
|
-
if (!!(process.env.NODE_ENV !== "production") && !Component.render && instance.render === NOOP && !isSSR) if (
|
|
5499
|
+
if (!!(process.env.NODE_ENV !== "production") && !Component.render && instance.render === NOOP && !isSSR) if (Component.template) warn$1("Component provided template option but runtime compilation is not supported in this build of Vue. Configure your bundler to alias \"vue\" to \"vue/dist/vue.esm-bundler.js\".");
|
|
4916
5500
|
else warn$1(`Component is missing template or render function: `, Component);
|
|
4917
5501
|
}
|
|
4918
5502
|
const attrsProxyHandlers = !!(process.env.NODE_ENV !== "production") ? {
|
|
@@ -4947,7 +5531,7 @@ function createSetupContext(instance) {
|
|
|
4947
5531
|
let exposedType = typeof exposed;
|
|
4948
5532
|
if (exposedType === "object") {
|
|
4949
5533
|
if (isArray(exposed)) exposedType = "array";
|
|
4950
|
-
else if (isRef(exposed)) exposedType = "ref";
|
|
5534
|
+
else if (/* @__PURE__ */ isRef(exposed)) exposedType = "ref";
|
|
4951
5535
|
}
|
|
4952
5536
|
if (exposedType !== "object") warn$1(`expose() should be passed a plain object, received ${exposedType}.`);
|
|
4953
5537
|
}
|
|
@@ -4999,11 +5583,11 @@ function formatComponentName(instance, Component, isRoot = false) {
|
|
|
4999
5583
|
const match = Component.__file.match(/([^/\\]+)\.\w+$/);
|
|
5000
5584
|
if (match) name = match[1];
|
|
5001
5585
|
}
|
|
5002
|
-
if (!name && instance
|
|
5586
|
+
if (!name && instance) {
|
|
5003
5587
|
const inferFromRegistry = (registry) => {
|
|
5004
5588
|
for (const key in registry) if (registry[key] === Component) return key;
|
|
5005
5589
|
};
|
|
5006
|
-
name = inferFromRegistry(instance.components || instance.parent.type.components) || inferFromRegistry(instance.appContext.components);
|
|
5590
|
+
name = inferFromRegistry(instance.components) || instance.parent && inferFromRegistry(instance.parent.type.components) || inferFromRegistry(instance.appContext.components);
|
|
5007
5591
|
}
|
|
5008
5592
|
return name ? classify(name) : isRoot ? `App` : `Anonymous`;
|
|
5009
5593
|
}
|
|
@@ -5011,13 +5595,30 @@ function isClassComponent(value) {
|
|
|
5011
5595
|
return isFunction(value) && "__vccOpts" in value;
|
|
5012
5596
|
}
|
|
5013
5597
|
const computed = (getterOrOptions, debugOptions) => {
|
|
5014
|
-
const c = computed$1(getterOrOptions, debugOptions, isInSSRComponentSetup);
|
|
5598
|
+
const c = /* @__PURE__ */ computed$1(getterOrOptions, debugOptions, isInSSRComponentSetup);
|
|
5015
5599
|
if (!!(process.env.NODE_ENV !== "production")) {
|
|
5016
5600
|
const i = getCurrentInstance();
|
|
5017
5601
|
if (i && i.appContext.config.warnRecursiveComputed) c._warnRecursive = true;
|
|
5018
5602
|
}
|
|
5019
5603
|
return c;
|
|
5020
5604
|
};
|
|
5605
|
+
function h(type, propsOrChildren, children) {
|
|
5606
|
+
try {
|
|
5607
|
+
setBlockTracking(-1);
|
|
5608
|
+
const l = arguments.length;
|
|
5609
|
+
if (l === 2) if (isObject$1(propsOrChildren) && !isArray(propsOrChildren)) {
|
|
5610
|
+
if (isVNode(propsOrChildren)) return createVNode(type, null, [propsOrChildren]);
|
|
5611
|
+
return createVNode(type, propsOrChildren);
|
|
5612
|
+
} else return createVNode(type, null, propsOrChildren);
|
|
5613
|
+
else {
|
|
5614
|
+
if (l > 3) children = Array.prototype.slice.call(arguments, 2);
|
|
5615
|
+
else if (l === 3 && isVNode(children)) children = [children];
|
|
5616
|
+
return createVNode(type, propsOrChildren, children);
|
|
5617
|
+
}
|
|
5618
|
+
} finally {
|
|
5619
|
+
setBlockTracking(1);
|
|
5620
|
+
}
|
|
5621
|
+
}
|
|
5021
5622
|
function initCustomFormatter() {
|
|
5022
5623
|
if (!!!(process.env.NODE_ENV !== "production") || typeof window === "undefined") return;
|
|
5023
5624
|
const vueStyle = { style: "color:#3ba776" };
|
|
@@ -5033,7 +5634,7 @@ function initCustomFormatter() {
|
|
|
5033
5634
|
vueStyle,
|
|
5034
5635
|
`VueInstance`
|
|
5035
5636
|
];
|
|
5036
|
-
else if (isRef(obj)) {
|
|
5637
|
+
else if (/* @__PURE__ */ isRef(obj)) {
|
|
5037
5638
|
pauseTracking();
|
|
5038
5639
|
const value = obj.value;
|
|
5039
5640
|
resetTracking();
|
|
@@ -5049,25 +5650,25 @@ function initCustomFormatter() {
|
|
|
5049
5650
|
formatValue(value),
|
|
5050
5651
|
`>`
|
|
5051
5652
|
];
|
|
5052
|
-
} else if (isReactive(obj)) return [
|
|
5653
|
+
} else if (/* @__PURE__ */ isReactive(obj)) return [
|
|
5053
5654
|
"div",
|
|
5054
5655
|
{},
|
|
5055
5656
|
[
|
|
5056
5657
|
"span",
|
|
5057
5658
|
vueStyle,
|
|
5058
|
-
isShallow(obj) ? "ShallowReactive" : "Reactive"
|
|
5659
|
+
/* @__PURE__ */ isShallow(obj) ? "ShallowReactive" : "Reactive"
|
|
5059
5660
|
],
|
|
5060
5661
|
"<",
|
|
5061
5662
|
formatValue(obj),
|
|
5062
|
-
`>${isReadonly(obj) ? ` (readonly)` : ``}`
|
|
5663
|
+
`>${/* @__PURE__ */ isReadonly(obj) ? ` (readonly)` : ``}`
|
|
5063
5664
|
];
|
|
5064
|
-
else if (isReadonly(obj)) return [
|
|
5665
|
+
else if (/* @__PURE__ */ isReadonly(obj)) return [
|
|
5065
5666
|
"div",
|
|
5066
5667
|
{},
|
|
5067
5668
|
[
|
|
5068
5669
|
"span",
|
|
5069
5670
|
vueStyle,
|
|
5070
|
-
isShallow(obj) ? "ShallowReadonly" : "Readonly"
|
|
5671
|
+
/* @__PURE__ */ isShallow(obj) ? "ShallowReadonly" : "Readonly"
|
|
5071
5672
|
],
|
|
5072
5673
|
"<",
|
|
5073
5674
|
formatValue(obj),
|
|
@@ -5088,11 +5689,11 @@ function initCustomFormatter() {
|
|
|
5088
5689
|
};
|
|
5089
5690
|
function formatInstance(instance) {
|
|
5090
5691
|
const blocks = [];
|
|
5091
|
-
if (instance.type.props && instance.props) blocks.push(createInstanceBlock("props", toRaw(instance.props)));
|
|
5692
|
+
if (instance.type.props && instance.props) blocks.push(createInstanceBlock("props", /* @__PURE__ */ toRaw(instance.props)));
|
|
5092
5693
|
if (instance.setupState !== EMPTY_OBJ) blocks.push(createInstanceBlock("setup", instance.setupState));
|
|
5093
|
-
if (instance.data !== EMPTY_OBJ) blocks.push(createInstanceBlock("data", toRaw(instance.data)));
|
|
5094
|
-
const computed
|
|
5095
|
-
if (computed
|
|
5694
|
+
if (instance.data !== EMPTY_OBJ) blocks.push(createInstanceBlock("data", /* @__PURE__ */ toRaw(instance.data)));
|
|
5695
|
+
const computed = extractKeys(instance, "computed");
|
|
5696
|
+
if (computed) blocks.push(createInstanceBlock("computed", computed));
|
|
5096
5697
|
const injected = extractKeys(instance, "inject");
|
|
5097
5698
|
if (injected) blocks.push(createInstanceBlock("injected", injected));
|
|
5098
5699
|
blocks.push([
|
|
@@ -5152,7 +5753,7 @@ function initCustomFormatter() {
|
|
|
5152
5753
|
keywordStyle,
|
|
5153
5754
|
v
|
|
5154
5755
|
];
|
|
5155
|
-
else if (isObject$1(v)) return ["object", { object: asRaw ? toRaw(v) : v }];
|
|
5756
|
+
else if (isObject$1(v)) return ["object", { object: asRaw ? /* @__PURE__ */ toRaw(v) : v }];
|
|
5156
5757
|
else return [
|
|
5157
5758
|
"span",
|
|
5158
5759
|
stringStyle,
|
|
@@ -5173,20 +5774,24 @@ function initCustomFormatter() {
|
|
|
5173
5774
|
if (Comp.mixins && Comp.mixins.some((m) => isKeyOfType(m, key, type))) return true;
|
|
5174
5775
|
}
|
|
5175
5776
|
function genRefFlag(v) {
|
|
5176
|
-
if (isShallow(v)) return `ShallowRef`;
|
|
5777
|
+
if (/* @__PURE__ */ isShallow(v)) return `ShallowRef`;
|
|
5177
5778
|
if (v.effect) return `ComputedRef`;
|
|
5178
5779
|
return `Ref`;
|
|
5179
5780
|
}
|
|
5180
5781
|
if (window.devtoolsFormatters) window.devtoolsFormatters.push(formatter);
|
|
5181
5782
|
else window.devtoolsFormatters = [formatter];
|
|
5182
5783
|
}
|
|
5183
|
-
const version = "3.5.
|
|
5784
|
+
const version = "3.5.30";
|
|
5184
5785
|
const warn = !!(process.env.NODE_ENV !== "production") ? warn$1 : NOOP;
|
|
5185
|
-
|
|
5186
|
-
|
|
5187
|
-
|
|
5786
|
+
process.env.NODE_ENV;
|
|
5787
|
+
process.env.NODE_ENV;
|
|
5188
5788
|
//#endregion
|
|
5189
|
-
//#region ../../node_modules/.pnpm/@vue+runtime-dom@3.5.
|
|
5789
|
+
//#region ../../node_modules/.pnpm/@vue+runtime-dom@3.5.30/node_modules/@vue/runtime-dom/dist/runtime-dom.esm-bundler.js
|
|
5790
|
+
/**
|
|
5791
|
+
* @vue/runtime-dom v3.5.30
|
|
5792
|
+
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
5793
|
+
* @license MIT
|
|
5794
|
+
**/
|
|
5190
5795
|
let policy = void 0;
|
|
5191
5796
|
const tt = typeof window !== "undefined" && window.trustedTypes;
|
|
5192
5797
|
if (tt) try {
|
|
@@ -5245,7 +5850,220 @@ const nodeOps = {
|
|
|
5245
5850
|
return [before ? before.nextSibling : parent.firstChild, anchor ? anchor.previousSibling : parent.lastChild];
|
|
5246
5851
|
}
|
|
5247
5852
|
};
|
|
5248
|
-
const
|
|
5853
|
+
const TRANSITION = "transition";
|
|
5854
|
+
const ANIMATION = "animation";
|
|
5855
|
+
const vtcKey = /* @__PURE__ */ Symbol("_vtc");
|
|
5856
|
+
const DOMTransitionPropsValidators = {
|
|
5857
|
+
name: String,
|
|
5858
|
+
type: String,
|
|
5859
|
+
css: {
|
|
5860
|
+
type: Boolean,
|
|
5861
|
+
default: true
|
|
5862
|
+
},
|
|
5863
|
+
duration: [
|
|
5864
|
+
String,
|
|
5865
|
+
Number,
|
|
5866
|
+
Object
|
|
5867
|
+
],
|
|
5868
|
+
enterFromClass: String,
|
|
5869
|
+
enterActiveClass: String,
|
|
5870
|
+
enterToClass: String,
|
|
5871
|
+
appearFromClass: String,
|
|
5872
|
+
appearActiveClass: String,
|
|
5873
|
+
appearToClass: String,
|
|
5874
|
+
leaveFromClass: String,
|
|
5875
|
+
leaveActiveClass: String,
|
|
5876
|
+
leaveToClass: String
|
|
5877
|
+
};
|
|
5878
|
+
const TransitionPropsValidators = /* @__PURE__ */ extend({}, BaseTransitionPropsValidators, DOMTransitionPropsValidators);
|
|
5879
|
+
const callHook = (hook, args = []) => {
|
|
5880
|
+
if (isArray(hook)) hook.forEach((h2) => h2(...args));
|
|
5881
|
+
else if (hook) hook(...args);
|
|
5882
|
+
};
|
|
5883
|
+
const hasExplicitCallback = (hook) => {
|
|
5884
|
+
return hook ? isArray(hook) ? hook.some((h2) => h2.length > 1) : hook.length > 1 : false;
|
|
5885
|
+
};
|
|
5886
|
+
function resolveTransitionProps(rawProps) {
|
|
5887
|
+
const baseProps = {};
|
|
5888
|
+
for (const key in rawProps) if (!(key in DOMTransitionPropsValidators)) baseProps[key] = rawProps[key];
|
|
5889
|
+
if (rawProps.css === false) return baseProps;
|
|
5890
|
+
const { name = "v", type, duration, enterFromClass = `${name}-enter-from`, enterActiveClass = `${name}-enter-active`, enterToClass = `${name}-enter-to`, appearFromClass = enterFromClass, appearActiveClass = enterActiveClass, appearToClass = enterToClass, leaveFromClass = `${name}-leave-from`, leaveActiveClass = `${name}-leave-active`, leaveToClass = `${name}-leave-to` } = rawProps;
|
|
5891
|
+
const durations = normalizeDuration(duration);
|
|
5892
|
+
const enterDuration = durations && durations[0];
|
|
5893
|
+
const leaveDuration = durations && durations[1];
|
|
5894
|
+
const { onBeforeEnter, onEnter, onEnterCancelled, onLeave, onLeaveCancelled, onBeforeAppear = onBeforeEnter, onAppear = onEnter, onAppearCancelled = onEnterCancelled } = baseProps;
|
|
5895
|
+
const finishEnter = (el, isAppear, done, isCancelled) => {
|
|
5896
|
+
el._enterCancelled = isCancelled;
|
|
5897
|
+
removeTransitionClass(el, isAppear ? appearToClass : enterToClass);
|
|
5898
|
+
removeTransitionClass(el, isAppear ? appearActiveClass : enterActiveClass);
|
|
5899
|
+
done && done();
|
|
5900
|
+
};
|
|
5901
|
+
const finishLeave = (el, done) => {
|
|
5902
|
+
el._isLeaving = false;
|
|
5903
|
+
removeTransitionClass(el, leaveFromClass);
|
|
5904
|
+
removeTransitionClass(el, leaveToClass);
|
|
5905
|
+
removeTransitionClass(el, leaveActiveClass);
|
|
5906
|
+
done && done();
|
|
5907
|
+
};
|
|
5908
|
+
const makeEnterHook = (isAppear) => {
|
|
5909
|
+
return (el, done) => {
|
|
5910
|
+
const hook = isAppear ? onAppear : onEnter;
|
|
5911
|
+
const resolve = () => finishEnter(el, isAppear, done);
|
|
5912
|
+
callHook(hook, [el, resolve]);
|
|
5913
|
+
nextFrame(() => {
|
|
5914
|
+
removeTransitionClass(el, isAppear ? appearFromClass : enterFromClass);
|
|
5915
|
+
addTransitionClass(el, isAppear ? appearToClass : enterToClass);
|
|
5916
|
+
if (!hasExplicitCallback(hook)) whenTransitionEnds(el, type, enterDuration, resolve);
|
|
5917
|
+
});
|
|
5918
|
+
};
|
|
5919
|
+
};
|
|
5920
|
+
return extend(baseProps, {
|
|
5921
|
+
onBeforeEnter(el) {
|
|
5922
|
+
callHook(onBeforeEnter, [el]);
|
|
5923
|
+
addTransitionClass(el, enterFromClass);
|
|
5924
|
+
addTransitionClass(el, enterActiveClass);
|
|
5925
|
+
},
|
|
5926
|
+
onBeforeAppear(el) {
|
|
5927
|
+
callHook(onBeforeAppear, [el]);
|
|
5928
|
+
addTransitionClass(el, appearFromClass);
|
|
5929
|
+
addTransitionClass(el, appearActiveClass);
|
|
5930
|
+
},
|
|
5931
|
+
onEnter: makeEnterHook(false),
|
|
5932
|
+
onAppear: makeEnterHook(true),
|
|
5933
|
+
onLeave(el, done) {
|
|
5934
|
+
el._isLeaving = true;
|
|
5935
|
+
const resolve = () => finishLeave(el, done);
|
|
5936
|
+
addTransitionClass(el, leaveFromClass);
|
|
5937
|
+
if (!el._enterCancelled) {
|
|
5938
|
+
forceReflow(el);
|
|
5939
|
+
addTransitionClass(el, leaveActiveClass);
|
|
5940
|
+
} else {
|
|
5941
|
+
addTransitionClass(el, leaveActiveClass);
|
|
5942
|
+
forceReflow(el);
|
|
5943
|
+
}
|
|
5944
|
+
nextFrame(() => {
|
|
5945
|
+
if (!el._isLeaving) return;
|
|
5946
|
+
removeTransitionClass(el, leaveFromClass);
|
|
5947
|
+
addTransitionClass(el, leaveToClass);
|
|
5948
|
+
if (!hasExplicitCallback(onLeave)) whenTransitionEnds(el, type, leaveDuration, resolve);
|
|
5949
|
+
});
|
|
5950
|
+
callHook(onLeave, [el, resolve]);
|
|
5951
|
+
},
|
|
5952
|
+
onEnterCancelled(el) {
|
|
5953
|
+
finishEnter(el, false, void 0, true);
|
|
5954
|
+
callHook(onEnterCancelled, [el]);
|
|
5955
|
+
},
|
|
5956
|
+
onAppearCancelled(el) {
|
|
5957
|
+
finishEnter(el, true, void 0, true);
|
|
5958
|
+
callHook(onAppearCancelled, [el]);
|
|
5959
|
+
},
|
|
5960
|
+
onLeaveCancelled(el) {
|
|
5961
|
+
finishLeave(el);
|
|
5962
|
+
callHook(onLeaveCancelled, [el]);
|
|
5963
|
+
}
|
|
5964
|
+
});
|
|
5965
|
+
}
|
|
5966
|
+
function normalizeDuration(duration) {
|
|
5967
|
+
if (duration == null) return null;
|
|
5968
|
+
else if (isObject$1(duration)) return [NumberOf(duration.enter), NumberOf(duration.leave)];
|
|
5969
|
+
else {
|
|
5970
|
+
const n = NumberOf(duration);
|
|
5971
|
+
return [n, n];
|
|
5972
|
+
}
|
|
5973
|
+
}
|
|
5974
|
+
function NumberOf(val) {
|
|
5975
|
+
const res = toNumber(val);
|
|
5976
|
+
if (!!(process.env.NODE_ENV !== "production")) assertNumber(res, "<transition> explicit duration");
|
|
5977
|
+
return res;
|
|
5978
|
+
}
|
|
5979
|
+
function addTransitionClass(el, cls) {
|
|
5980
|
+
cls.split(/\s+/).forEach((c) => c && el.classList.add(c));
|
|
5981
|
+
(el[vtcKey] || (el[vtcKey] = /* @__PURE__ */ new Set())).add(cls);
|
|
5982
|
+
}
|
|
5983
|
+
function removeTransitionClass(el, cls) {
|
|
5984
|
+
cls.split(/\s+/).forEach((c) => c && el.classList.remove(c));
|
|
5985
|
+
const _vtc = el[vtcKey];
|
|
5986
|
+
if (_vtc) {
|
|
5987
|
+
_vtc.delete(cls);
|
|
5988
|
+
if (!_vtc.size) el[vtcKey] = void 0;
|
|
5989
|
+
}
|
|
5990
|
+
}
|
|
5991
|
+
function nextFrame(cb) {
|
|
5992
|
+
requestAnimationFrame(() => {
|
|
5993
|
+
requestAnimationFrame(cb);
|
|
5994
|
+
});
|
|
5995
|
+
}
|
|
5996
|
+
let endId = 0;
|
|
5997
|
+
function whenTransitionEnds(el, expectedType, explicitTimeout, resolve) {
|
|
5998
|
+
const id = el._endId = ++endId;
|
|
5999
|
+
const resolveIfNotStale = () => {
|
|
6000
|
+
if (id === el._endId) resolve();
|
|
6001
|
+
};
|
|
6002
|
+
if (explicitTimeout != null) return setTimeout(resolveIfNotStale, explicitTimeout);
|
|
6003
|
+
const { type, timeout, propCount } = getTransitionInfo(el, expectedType);
|
|
6004
|
+
if (!type) return resolve();
|
|
6005
|
+
const endEvent = type + "end";
|
|
6006
|
+
let ended = 0;
|
|
6007
|
+
const end = () => {
|
|
6008
|
+
el.removeEventListener(endEvent, onEnd);
|
|
6009
|
+
resolveIfNotStale();
|
|
6010
|
+
};
|
|
6011
|
+
const onEnd = (e) => {
|
|
6012
|
+
if (e.target === el && ++ended >= propCount) end();
|
|
6013
|
+
};
|
|
6014
|
+
setTimeout(() => {
|
|
6015
|
+
if (ended < propCount) end();
|
|
6016
|
+
}, timeout + 1);
|
|
6017
|
+
el.addEventListener(endEvent, onEnd);
|
|
6018
|
+
}
|
|
6019
|
+
function getTransitionInfo(el, expectedType) {
|
|
6020
|
+
const styles = window.getComputedStyle(el);
|
|
6021
|
+
const getStyleProperties = (key) => (styles[key] || "").split(", ");
|
|
6022
|
+
const transitionDelays = getStyleProperties(`${TRANSITION}Delay`);
|
|
6023
|
+
const transitionDurations = getStyleProperties(`${TRANSITION}Duration`);
|
|
6024
|
+
const transitionTimeout = getTimeout(transitionDelays, transitionDurations);
|
|
6025
|
+
const animationDelays = getStyleProperties(`${ANIMATION}Delay`);
|
|
6026
|
+
const animationDurations = getStyleProperties(`${ANIMATION}Duration`);
|
|
6027
|
+
const animationTimeout = getTimeout(animationDelays, animationDurations);
|
|
6028
|
+
let type = null;
|
|
6029
|
+
let timeout = 0;
|
|
6030
|
+
let propCount = 0;
|
|
6031
|
+
if (expectedType === TRANSITION) {
|
|
6032
|
+
if (transitionTimeout > 0) {
|
|
6033
|
+
type = TRANSITION;
|
|
6034
|
+
timeout = transitionTimeout;
|
|
6035
|
+
propCount = transitionDurations.length;
|
|
6036
|
+
}
|
|
6037
|
+
} else if (expectedType === ANIMATION) {
|
|
6038
|
+
if (animationTimeout > 0) {
|
|
6039
|
+
type = ANIMATION;
|
|
6040
|
+
timeout = animationTimeout;
|
|
6041
|
+
propCount = animationDurations.length;
|
|
6042
|
+
}
|
|
6043
|
+
} else {
|
|
6044
|
+
timeout = Math.max(transitionTimeout, animationTimeout);
|
|
6045
|
+
type = timeout > 0 ? transitionTimeout > animationTimeout ? TRANSITION : ANIMATION : null;
|
|
6046
|
+
propCount = type ? type === TRANSITION ? transitionDurations.length : animationDurations.length : 0;
|
|
6047
|
+
}
|
|
6048
|
+
const hasTransform = type === TRANSITION && /\b(?:transform|all)(?:,|$)/.test(getStyleProperties(`${TRANSITION}Property`).toString());
|
|
6049
|
+
return {
|
|
6050
|
+
type,
|
|
6051
|
+
timeout,
|
|
6052
|
+
propCount,
|
|
6053
|
+
hasTransform
|
|
6054
|
+
};
|
|
6055
|
+
}
|
|
6056
|
+
function getTimeout(delays, durations) {
|
|
6057
|
+
while (delays.length < durations.length) delays = delays.concat(delays);
|
|
6058
|
+
return Math.max(...durations.map((d, i) => toMs(d) + toMs(delays[i])));
|
|
6059
|
+
}
|
|
6060
|
+
function toMs(s) {
|
|
6061
|
+
if (s === "auto") return 0;
|
|
6062
|
+
return Number(s.slice(0, -1).replace(",", ".")) * 1e3;
|
|
6063
|
+
}
|
|
6064
|
+
function forceReflow(el) {
|
|
6065
|
+
return (el ? el.ownerDocument : document).body.offsetHeight;
|
|
6066
|
+
}
|
|
5249
6067
|
function patchClass(el, value, isSVG) {
|
|
5250
6068
|
const transitionClasses = el[vtcKey];
|
|
5251
6069
|
if (transitionClasses) value = (value ? [value, ...transitionClasses] : [...transitionClasses]).join(" ");
|
|
@@ -5253,8 +6071,8 @@ function patchClass(el, value, isSVG) {
|
|
|
5253
6071
|
else if (isSVG) el.setAttribute("class", value);
|
|
5254
6072
|
else el.className = value;
|
|
5255
6073
|
}
|
|
5256
|
-
const vShowOriginalDisplay = Symbol("_vod");
|
|
5257
|
-
const vShowHidden = Symbol("_vsh");
|
|
6074
|
+
const vShowOriginalDisplay = /* @__PURE__ */ Symbol("_vod");
|
|
6075
|
+
const vShowHidden = /* @__PURE__ */ Symbol("_vsh");
|
|
5258
6076
|
const vShow = {
|
|
5259
6077
|
name: "show",
|
|
5260
6078
|
beforeMount(el, { value }, { transition }) {
|
|
@@ -5284,7 +6102,7 @@ function setDisplay(el, value) {
|
|
|
5284
6102
|
el.style.display = value ? el[vShowOriginalDisplay] : "none";
|
|
5285
6103
|
el[vShowHidden] = !value;
|
|
5286
6104
|
}
|
|
5287
|
-
const CSS_VAR_TEXT = Symbol(!!(process.env.NODE_ENV !== "production") ? "CSS_VAR_TEXT" : "");
|
|
6105
|
+
const CSS_VAR_TEXT = /* @__PURE__ */ Symbol(!!(process.env.NODE_ENV !== "production") ? "CSS_VAR_TEXT" : "");
|
|
5288
6106
|
const displayRE = /(?:^|;)\s*display\s*:/;
|
|
5289
6107
|
function patchStyle(el, prev, next) {
|
|
5290
6108
|
const style = el.style;
|
|
@@ -5350,11 +6168,11 @@ function autoPrefix(style, rawName) {
|
|
|
5350
6168
|
return rawName;
|
|
5351
6169
|
}
|
|
5352
6170
|
const xlinkNS = "http://www.w3.org/1999/xlink";
|
|
5353
|
-
function patchAttr(el, key, value, isSVG, instance, isBoolean
|
|
6171
|
+
function patchAttr(el, key, value, isSVG, instance, isBoolean = isSpecialBooleanAttr(key)) {
|
|
5354
6172
|
if (isSVG && key.startsWith("xlink:")) if (value == null) el.removeAttributeNS(xlinkNS, key.slice(6, key.length));
|
|
5355
6173
|
else el.setAttributeNS(xlinkNS, key, value);
|
|
5356
|
-
else if (value == null || isBoolean
|
|
5357
|
-
else el.setAttribute(key, isBoolean
|
|
6174
|
+
else if (value == null || isBoolean && !includeBooleanAttr(value)) el.removeAttribute(key);
|
|
6175
|
+
else el.setAttribute(key, isBoolean ? "" : isSymbol(value) ? String(value) : value);
|
|
5358
6176
|
}
|
|
5359
6177
|
function patchDOMProp(el, key, value, parentComponent, attrName) {
|
|
5360
6178
|
if (key === "innerHTML" || key === "textContent") {
|
|
@@ -5395,7 +6213,7 @@ function addEventListener(el, event, handler, options) {
|
|
|
5395
6213
|
function removeEventListener(el, event, handler, options) {
|
|
5396
6214
|
el.removeEventListener(event, handler, options);
|
|
5397
6215
|
}
|
|
5398
|
-
const veiKey = Symbol("_vei");
|
|
6216
|
+
const veiKey = /* @__PURE__ */ Symbol("_vei");
|
|
5399
6217
|
function patchEvent(el, rawName, prevValue, nextValue, instance = null) {
|
|
5400
6218
|
const invokers = el[veiKey] || (el[veiKey] = {});
|
|
5401
6219
|
const existingInvoker = invokers[rawName];
|
|
@@ -5461,7 +6279,7 @@ const patchProp = (el, key, prevValue, nextValue, namespace, parentComponent) =>
|
|
|
5461
6279
|
} else if (key[0] === "." ? (key = key.slice(1), true) : key[0] === "^" ? (key = key.slice(1), false) : shouldSetAsProp(el, key, nextValue, isSVG)) {
|
|
5462
6280
|
patchDOMProp(el, key, nextValue);
|
|
5463
6281
|
if (!el.tagName.includes("-") && (key === "value" || key === "checked" || key === "selected")) patchAttr(el, key, nextValue, isSVG, parentComponent, key !== "value");
|
|
5464
|
-
} else if (el._isVueCE && (/[A-Z]/.test(key) || !isString(nextValue))) patchDOMProp(el, camelize$1(key), nextValue, parentComponent, key);
|
|
6282
|
+
} else if (el._isVueCE && (shouldSetAsPropForVueCE(el, key) || el._def.__asyncLoader && (/[A-Z]/.test(key) || !isString(nextValue)))) patchDOMProp(el, camelize$1(key), nextValue, parentComponent, key);
|
|
5465
6283
|
else {
|
|
5466
6284
|
if (key === "true-value") el._trueValue = nextValue;
|
|
5467
6285
|
else if (key === "false-value") el._falseValue = nextValue;
|
|
@@ -5475,6 +6293,7 @@ function shouldSetAsProp(el, key, value, isSVG) {
|
|
|
5475
6293
|
return false;
|
|
5476
6294
|
}
|
|
5477
6295
|
if (key === "spellcheck" || key === "draggable" || key === "translate" || key === "autocorrect") return false;
|
|
6296
|
+
if (key === "sandbox" && el.tagName === "IFRAME") return false;
|
|
5478
6297
|
if (key === "form") return false;
|
|
5479
6298
|
if (key === "list" && el.tagName === "INPUT") return false;
|
|
5480
6299
|
if (key === "type" && el.tagName === "TEXTAREA") return false;
|
|
@@ -5485,10 +6304,16 @@ function shouldSetAsProp(el, key, value, isSVG) {
|
|
|
5485
6304
|
if (isNativeOn(key) && isString(value)) return false;
|
|
5486
6305
|
return key in el;
|
|
5487
6306
|
}
|
|
6307
|
+
function shouldSetAsPropForVueCE(el, key) {
|
|
6308
|
+
const props = el._def.props;
|
|
6309
|
+
if (!props) return false;
|
|
6310
|
+
const camelKey = camelize$1(key);
|
|
6311
|
+
return Array.isArray(props) ? props.some((prop) => camelize$1(prop) === camelKey) : Object.keys(props).some((prop) => camelize$1(prop) === camelKey);
|
|
6312
|
+
}
|
|
5488
6313
|
const REMOVAL = {};
|
|
5489
6314
|
/* @__NO_SIDE_EFFECTS__ */
|
|
5490
6315
|
function defineCustomElement(options, extraOptions, _createApp) {
|
|
5491
|
-
let Comp = defineComponent(options, extraOptions);
|
|
6316
|
+
let Comp = /* @__PURE__ */ defineComponent(options, extraOptions);
|
|
5492
6317
|
if (isPlainObject(Comp)) Comp = extend({}, Comp, extraOptions);
|
|
5493
6318
|
class VueCustomElement extends VueElement {
|
|
5494
6319
|
constructor(initialProps) {
|
|
@@ -5520,8 +6345,11 @@ var VueElement = class VueElement extends BaseClass {
|
|
|
5520
6345
|
this._nonce = this._def.nonce;
|
|
5521
6346
|
this._connected = false;
|
|
5522
6347
|
this._resolved = false;
|
|
6348
|
+
this._patching = false;
|
|
6349
|
+
this._dirty = false;
|
|
5523
6350
|
this._numberProps = null;
|
|
5524
6351
|
this._styleChildren = /* @__PURE__ */ new WeakSet();
|
|
6352
|
+
this._styleAnchors = /* @__PURE__ */ new WeakMap();
|
|
5525
6353
|
this._ob = null;
|
|
5526
6354
|
if (this.shadowRoot && _createApp !== createApp) this._root = this.shadowRoot;
|
|
5527
6355
|
else {
|
|
@@ -5537,7 +6365,7 @@ var VueElement = class VueElement extends BaseClass {
|
|
|
5537
6365
|
if (!this.shadowRoot && !this._resolved) this._parseSlots();
|
|
5538
6366
|
this._connected = true;
|
|
5539
6367
|
let parent = this;
|
|
5540
|
-
while (parent = parent && (parent.parentNode || parent.host)) if (parent instanceof VueElement) {
|
|
6368
|
+
while (parent = parent && (parent.assignedSlot || parent.parentNode || parent.host)) if (parent instanceof VueElement) {
|
|
5541
6369
|
this._parent = parent;
|
|
5542
6370
|
break;
|
|
5543
6371
|
}
|
|
@@ -5586,10 +6414,10 @@ var VueElement = class VueElement extends BaseClass {
|
|
|
5586
6414
|
for (let i = 0; i < this.attributes.length; i++) this._setAttr(this.attributes[i].name);
|
|
5587
6415
|
this._ob = new MutationObserver(this._processMutations.bind(this));
|
|
5588
6416
|
this._ob.observe(this, { attributes: true });
|
|
5589
|
-
const resolve = (def
|
|
6417
|
+
const resolve = (def, isAsync = false) => {
|
|
5590
6418
|
this._resolved = true;
|
|
5591
6419
|
this._pendingResolve = void 0;
|
|
5592
|
-
const { props, styles } = def
|
|
6420
|
+
const { props, styles } = def;
|
|
5593
6421
|
let numberProps;
|
|
5594
6422
|
if (props && !isArray(props)) for (const key in props) {
|
|
5595
6423
|
const opt = props[key];
|
|
@@ -5599,32 +6427,32 @@ var VueElement = class VueElement extends BaseClass {
|
|
|
5599
6427
|
}
|
|
5600
6428
|
}
|
|
5601
6429
|
this._numberProps = numberProps;
|
|
5602
|
-
this._resolveProps(def
|
|
6430
|
+
this._resolveProps(def);
|
|
5603
6431
|
if (this.shadowRoot) this._applyStyles(styles);
|
|
5604
6432
|
else if (!!(process.env.NODE_ENV !== "production") && styles) warn("Custom element style injection is not supported when using shadowRoot: false");
|
|
5605
|
-
this._mount(def
|
|
6433
|
+
this._mount(def);
|
|
5606
6434
|
};
|
|
5607
6435
|
const asyncDef = this._def.__asyncLoader;
|
|
5608
|
-
if (asyncDef) this._pendingResolve = asyncDef().then((def
|
|
5609
|
-
def
|
|
5610
|
-
resolve(this._def = def
|
|
6436
|
+
if (asyncDef) this._pendingResolve = asyncDef().then((def) => {
|
|
6437
|
+
def.configureApp = this._def.configureApp;
|
|
6438
|
+
resolve(this._def = def, true);
|
|
5611
6439
|
});
|
|
5612
6440
|
else resolve(this._def);
|
|
5613
6441
|
}
|
|
5614
|
-
_mount(def
|
|
5615
|
-
if ((!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) && !def
|
|
5616
|
-
this._app = this._createApp(def
|
|
6442
|
+
_mount(def) {
|
|
6443
|
+
if ((!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) && !def.name) def.name = "VueElement";
|
|
6444
|
+
this._app = this._createApp(def);
|
|
5617
6445
|
this._inheritParentContext();
|
|
5618
|
-
if (def
|
|
6446
|
+
if (def.configureApp) def.configureApp(this._app);
|
|
5619
6447
|
this._app._ceVNode = this._createVNode();
|
|
5620
6448
|
this._app.mount(this._root);
|
|
5621
6449
|
const exposed = this._instance && this._instance.exposed;
|
|
5622
6450
|
if (!exposed) return;
|
|
5623
|
-
for (const key in exposed) if (!hasOwn
|
|
6451
|
+
for (const key in exposed) if (!hasOwn(this, key)) Object.defineProperty(this, key, { get: () => unref(exposed[key]) });
|
|
5624
6452
|
else if (!!(process.env.NODE_ENV !== "production")) warn(`Exposed property "${key}" already exists on custom element.`);
|
|
5625
6453
|
}
|
|
5626
|
-
_resolveProps(def
|
|
5627
|
-
const { props } = def
|
|
6454
|
+
_resolveProps(def) {
|
|
6455
|
+
const { props } = def;
|
|
5628
6456
|
const declaredPropKeys = isArray(props) ? props : Object.keys(props || {});
|
|
5629
6457
|
for (const key of Object.keys(this)) if (key[0] !== "_" && declaredPropKeys.includes(key)) this._setProp(key, this[key]);
|
|
5630
6458
|
for (const key of declaredPropKeys.map(camelize$1)) Object.defineProperty(this, key, {
|
|
@@ -5632,7 +6460,7 @@ var VueElement = class VueElement extends BaseClass {
|
|
|
5632
6460
|
return this._getProp(key);
|
|
5633
6461
|
},
|
|
5634
6462
|
set(val) {
|
|
5635
|
-
this._setProp(key, val, true,
|
|
6463
|
+
this._setProp(key, val, true, !this._patching);
|
|
5636
6464
|
}
|
|
5637
6465
|
});
|
|
5638
6466
|
}
|
|
@@ -5655,6 +6483,7 @@ var VueElement = class VueElement extends BaseClass {
|
|
|
5655
6483
|
*/
|
|
5656
6484
|
_setProp(key, val, shouldReflect = true, shouldUpdate = false) {
|
|
5657
6485
|
if (val !== this._props[key]) {
|
|
6486
|
+
this._dirty = true;
|
|
5658
6487
|
if (val === REMOVAL) delete this._props[key];
|
|
5659
6488
|
else {
|
|
5660
6489
|
this._props[key] = val;
|
|
@@ -5692,6 +6521,7 @@ var VueElement = class VueElement extends BaseClass {
|
|
|
5692
6521
|
this._styles.forEach((s) => this._root.removeChild(s));
|
|
5693
6522
|
this._styles.length = 0;
|
|
5694
6523
|
}
|
|
6524
|
+
this._styleAnchors.delete(this._def);
|
|
5695
6525
|
this._applyStyles(newStyles);
|
|
5696
6526
|
this._instance = null;
|
|
5697
6527
|
this._update();
|
|
@@ -5707,18 +6537,26 @@ var VueElement = class VueElement extends BaseClass {
|
|
|
5707
6537
|
};
|
|
5708
6538
|
return vnode;
|
|
5709
6539
|
}
|
|
5710
|
-
_applyStyles(styles, owner) {
|
|
6540
|
+
_applyStyles(styles, owner, parentComp) {
|
|
5711
6541
|
if (!styles) return;
|
|
5712
6542
|
if (owner) {
|
|
5713
6543
|
if (owner === this._def || this._styleChildren.has(owner)) return;
|
|
5714
6544
|
this._styleChildren.add(owner);
|
|
5715
6545
|
}
|
|
5716
6546
|
const nonce = this._nonce;
|
|
6547
|
+
const root = this.shadowRoot;
|
|
6548
|
+
const insertionAnchor = parentComp ? this._getStyleAnchor(parentComp) || this._getStyleAnchor(this._def) : this._getRootStyleInsertionAnchor(root);
|
|
6549
|
+
let last = null;
|
|
5717
6550
|
for (let i = styles.length - 1; i >= 0; i--) {
|
|
5718
6551
|
const s = document.createElement("style");
|
|
5719
6552
|
if (nonce) s.setAttribute("nonce", nonce);
|
|
5720
6553
|
s.textContent = styles[i];
|
|
5721
|
-
|
|
6554
|
+
root.insertBefore(s, last || insertionAnchor);
|
|
6555
|
+
last = s;
|
|
6556
|
+
if (i === 0) {
|
|
6557
|
+
if (!parentComp) this._styleAnchors.set(this._def, s);
|
|
6558
|
+
if (owner) this._styleAnchors.set(owner, s);
|
|
6559
|
+
}
|
|
5722
6560
|
if (!!(process.env.NODE_ENV !== "production")) if (owner) {
|
|
5723
6561
|
if (owner.__hmrId) {
|
|
5724
6562
|
if (!this._childStyles) this._childStyles = /* @__PURE__ */ new Map();
|
|
@@ -5729,6 +6567,20 @@ var VueElement = class VueElement extends BaseClass {
|
|
|
5729
6567
|
} else (this._styles || (this._styles = [])).push(s);
|
|
5730
6568
|
}
|
|
5731
6569
|
}
|
|
6570
|
+
_getStyleAnchor(comp) {
|
|
6571
|
+
if (!comp) return null;
|
|
6572
|
+
const anchor = this._styleAnchors.get(comp);
|
|
6573
|
+
if (anchor && anchor.parentNode === this.shadowRoot) return anchor;
|
|
6574
|
+
if (anchor) this._styleAnchors.delete(comp);
|
|
6575
|
+
return null;
|
|
6576
|
+
}
|
|
6577
|
+
_getRootStyleInsertionAnchor(root) {
|
|
6578
|
+
for (let i = 0; i < root.childNodes.length; i++) {
|
|
6579
|
+
const node = root.childNodes[i];
|
|
6580
|
+
if (!(node instanceof HTMLStyleElement)) return node;
|
|
6581
|
+
}
|
|
6582
|
+
return null;
|
|
6583
|
+
}
|
|
5732
6584
|
/**
|
|
5733
6585
|
* Only called when shadowRoot is false
|
|
5734
6586
|
*/
|
|
@@ -5772,16 +6624,38 @@ var VueElement = class VueElement extends BaseClass {
|
|
|
5772
6624
|
_getSlots() {
|
|
5773
6625
|
const roots = [this];
|
|
5774
6626
|
if (this._teleportTargets) roots.push(...this._teleportTargets);
|
|
5775
|
-
|
|
5776
|
-
|
|
5777
|
-
|
|
5778
|
-
|
|
6627
|
+
const slots = /* @__PURE__ */ new Set();
|
|
6628
|
+
for (const root of roots) {
|
|
6629
|
+
const found = root.querySelectorAll("slot");
|
|
6630
|
+
for (let i = 0; i < found.length; i++) slots.add(found[i]);
|
|
6631
|
+
}
|
|
6632
|
+
return Array.from(slots);
|
|
6633
|
+
}
|
|
6634
|
+
/**
|
|
6635
|
+
* @internal
|
|
6636
|
+
*/
|
|
6637
|
+
_injectChildStyle(comp, parentComp) {
|
|
6638
|
+
this._applyStyles(comp.styles, comp, parentComp);
|
|
6639
|
+
}
|
|
6640
|
+
/**
|
|
6641
|
+
* @internal
|
|
6642
|
+
*/
|
|
6643
|
+
_beginPatch() {
|
|
6644
|
+
this._patching = true;
|
|
6645
|
+
this._dirty = false;
|
|
6646
|
+
}
|
|
6647
|
+
/**
|
|
6648
|
+
* @internal
|
|
6649
|
+
*/
|
|
6650
|
+
_endPatch() {
|
|
6651
|
+
this._patching = false;
|
|
6652
|
+
if (this._dirty && this._instance) this._update();
|
|
5779
6653
|
}
|
|
5780
6654
|
/**
|
|
5781
6655
|
* @internal
|
|
5782
6656
|
*/
|
|
5783
|
-
|
|
5784
|
-
this.
|
|
6657
|
+
_hasShadowRoot() {
|
|
6658
|
+
return this._def.shadowRoot !== false;
|
|
5785
6659
|
}
|
|
5786
6660
|
/**
|
|
5787
6661
|
* @internal
|
|
@@ -5789,6 +6663,7 @@ var VueElement = class VueElement extends BaseClass {
|
|
|
5789
6663
|
_removeChildStyle(comp) {
|
|
5790
6664
|
if (!!(process.env.NODE_ENV !== "production")) {
|
|
5791
6665
|
this._styleChildren.delete(comp);
|
|
6666
|
+
this._styleAnchors.delete(comp);
|
|
5792
6667
|
if (this._childStyles && comp.__hmrId) {
|
|
5793
6668
|
const oldStyles = this._childStyles.get(comp.__hmrId);
|
|
5794
6669
|
if (oldStyles) {
|
|
@@ -5799,9 +6674,180 @@ var VueElement = class VueElement extends BaseClass {
|
|
|
5799
6674
|
}
|
|
5800
6675
|
}
|
|
5801
6676
|
};
|
|
5802
|
-
const
|
|
5803
|
-
const
|
|
5804
|
-
const
|
|
6677
|
+
const positionMap = /* @__PURE__ */ new WeakMap();
|
|
6678
|
+
const newPositionMap = /* @__PURE__ */ new WeakMap();
|
|
6679
|
+
const moveCbKey = /* @__PURE__ */ Symbol("_moveCb");
|
|
6680
|
+
const enterCbKey = /* @__PURE__ */ Symbol("_enterCb");
|
|
6681
|
+
const decorate = (t) => {
|
|
6682
|
+
delete t.props.mode;
|
|
6683
|
+
return t;
|
|
6684
|
+
};
|
|
6685
|
+
const TransitionGroup = /* @__PURE__ */ decorate({
|
|
6686
|
+
name: "TransitionGroup",
|
|
6687
|
+
props: /* @__PURE__ */ extend({}, TransitionPropsValidators, {
|
|
6688
|
+
tag: String,
|
|
6689
|
+
moveClass: String
|
|
6690
|
+
}),
|
|
6691
|
+
setup(props, { slots }) {
|
|
6692
|
+
const instance = getCurrentInstance();
|
|
6693
|
+
const state = useTransitionState();
|
|
6694
|
+
let prevChildren;
|
|
6695
|
+
let children;
|
|
6696
|
+
onUpdated(() => {
|
|
6697
|
+
if (!prevChildren.length) return;
|
|
6698
|
+
const moveClass = props.moveClass || `${props.name || "v"}-move`;
|
|
6699
|
+
if (!hasCSSTransform(prevChildren[0].el, instance.vnode.el, moveClass)) {
|
|
6700
|
+
prevChildren = [];
|
|
6701
|
+
return;
|
|
6702
|
+
}
|
|
6703
|
+
prevChildren.forEach(callPendingCbs);
|
|
6704
|
+
prevChildren.forEach(recordPosition);
|
|
6705
|
+
const movedChildren = prevChildren.filter(applyTranslation);
|
|
6706
|
+
forceReflow(instance.vnode.el);
|
|
6707
|
+
movedChildren.forEach((c) => {
|
|
6708
|
+
const el = c.el;
|
|
6709
|
+
const style = el.style;
|
|
6710
|
+
addTransitionClass(el, moveClass);
|
|
6711
|
+
style.transform = style.webkitTransform = style.transitionDuration = "";
|
|
6712
|
+
const cb = el[moveCbKey] = (e) => {
|
|
6713
|
+
if (e && e.target !== el) return;
|
|
6714
|
+
if (!e || e.propertyName.endsWith("transform")) {
|
|
6715
|
+
el.removeEventListener("transitionend", cb);
|
|
6716
|
+
el[moveCbKey] = null;
|
|
6717
|
+
removeTransitionClass(el, moveClass);
|
|
6718
|
+
}
|
|
6719
|
+
};
|
|
6720
|
+
el.addEventListener("transitionend", cb);
|
|
6721
|
+
});
|
|
6722
|
+
prevChildren = [];
|
|
6723
|
+
});
|
|
6724
|
+
return () => {
|
|
6725
|
+
const rawProps = /* @__PURE__ */ toRaw(props);
|
|
6726
|
+
const cssTransitionProps = resolveTransitionProps(rawProps);
|
|
6727
|
+
let tag = rawProps.tag || Fragment;
|
|
6728
|
+
prevChildren = [];
|
|
6729
|
+
if (children) for (let i = 0; i < children.length; i++) {
|
|
6730
|
+
const child = children[i];
|
|
6731
|
+
if (child.el && child.el instanceof Element) {
|
|
6732
|
+
prevChildren.push(child);
|
|
6733
|
+
setTransitionHooks(child, resolveTransitionHooks(child, cssTransitionProps, state, instance));
|
|
6734
|
+
positionMap.set(child, getPosition(child.el));
|
|
6735
|
+
}
|
|
6736
|
+
}
|
|
6737
|
+
children = slots.default ? getTransitionRawChildren(slots.default()) : [];
|
|
6738
|
+
for (let i = 0; i < children.length; i++) {
|
|
6739
|
+
const child = children[i];
|
|
6740
|
+
if (child.key != null) setTransitionHooks(child, resolveTransitionHooks(child, cssTransitionProps, state, instance));
|
|
6741
|
+
else if (!!(process.env.NODE_ENV !== "production") && child.type !== Text) warn(`<TransitionGroup> children must be keyed.`);
|
|
6742
|
+
}
|
|
6743
|
+
return createVNode(tag, null, children);
|
|
6744
|
+
};
|
|
6745
|
+
}
|
|
6746
|
+
});
|
|
6747
|
+
function callPendingCbs(c) {
|
|
6748
|
+
const el = c.el;
|
|
6749
|
+
if (el[moveCbKey]) el[moveCbKey]();
|
|
6750
|
+
if (el[enterCbKey]) el[enterCbKey]();
|
|
6751
|
+
}
|
|
6752
|
+
function recordPosition(c) {
|
|
6753
|
+
newPositionMap.set(c, getPosition(c.el));
|
|
6754
|
+
}
|
|
6755
|
+
function applyTranslation(c) {
|
|
6756
|
+
const oldPos = positionMap.get(c);
|
|
6757
|
+
const newPos = newPositionMap.get(c);
|
|
6758
|
+
const dx = oldPos.left - newPos.left;
|
|
6759
|
+
const dy = oldPos.top - newPos.top;
|
|
6760
|
+
if (dx || dy) {
|
|
6761
|
+
const el = c.el;
|
|
6762
|
+
const s = el.style;
|
|
6763
|
+
const rect = el.getBoundingClientRect();
|
|
6764
|
+
let scaleX = 1;
|
|
6765
|
+
let scaleY = 1;
|
|
6766
|
+
if (el.offsetWidth) scaleX = rect.width / el.offsetWidth;
|
|
6767
|
+
if (el.offsetHeight) scaleY = rect.height / el.offsetHeight;
|
|
6768
|
+
if (!Number.isFinite(scaleX) || scaleX === 0) scaleX = 1;
|
|
6769
|
+
if (!Number.isFinite(scaleY) || scaleY === 0) scaleY = 1;
|
|
6770
|
+
if (Math.abs(scaleX - 1) < .01) scaleX = 1;
|
|
6771
|
+
if (Math.abs(scaleY - 1) < .01) scaleY = 1;
|
|
6772
|
+
s.transform = s.webkitTransform = `translate(${dx / scaleX}px,${dy / scaleY}px)`;
|
|
6773
|
+
s.transitionDuration = "0s";
|
|
6774
|
+
return c;
|
|
6775
|
+
}
|
|
6776
|
+
}
|
|
6777
|
+
function getPosition(el) {
|
|
6778
|
+
const rect = el.getBoundingClientRect();
|
|
6779
|
+
return {
|
|
6780
|
+
left: rect.left,
|
|
6781
|
+
top: rect.top
|
|
6782
|
+
};
|
|
6783
|
+
}
|
|
6784
|
+
function hasCSSTransform(el, root, moveClass) {
|
|
6785
|
+
const clone = el.cloneNode();
|
|
6786
|
+
const _vtc = el[vtcKey];
|
|
6787
|
+
if (_vtc) _vtc.forEach((cls) => {
|
|
6788
|
+
cls.split(/\s+/).forEach((c) => c && clone.classList.remove(c));
|
|
6789
|
+
});
|
|
6790
|
+
moveClass.split(/\s+/).forEach((c) => c && clone.classList.add(c));
|
|
6791
|
+
clone.style.display = "none";
|
|
6792
|
+
const container = root.nodeType === 1 ? root : root.parentNode;
|
|
6793
|
+
container.appendChild(clone);
|
|
6794
|
+
const { hasTransform } = getTransitionInfo(clone);
|
|
6795
|
+
container.removeChild(clone);
|
|
6796
|
+
return hasTransform;
|
|
6797
|
+
}
|
|
6798
|
+
const getModelAssigner = (vnode) => {
|
|
6799
|
+
const fn = vnode.props["onUpdate:modelValue"] || false;
|
|
6800
|
+
return isArray(fn) ? (value) => invokeArrayFns(fn, value) : fn;
|
|
6801
|
+
};
|
|
6802
|
+
function onCompositionStart(e) {
|
|
6803
|
+
e.target.composing = true;
|
|
6804
|
+
}
|
|
6805
|
+
function onCompositionEnd(e) {
|
|
6806
|
+
const target = e.target;
|
|
6807
|
+
if (target.composing) {
|
|
6808
|
+
target.composing = false;
|
|
6809
|
+
target.dispatchEvent(new Event("input"));
|
|
6810
|
+
}
|
|
6811
|
+
}
|
|
6812
|
+
const assignKey = /* @__PURE__ */ Symbol("_assign");
|
|
6813
|
+
function castValue(value, trim, number) {
|
|
6814
|
+
if (trim) value = value.trim();
|
|
6815
|
+
if (number) value = looseToNumber(value);
|
|
6816
|
+
return value;
|
|
6817
|
+
}
|
|
6818
|
+
const vModelText = {
|
|
6819
|
+
created(el, { modifiers: { lazy, trim, number } }, vnode) {
|
|
6820
|
+
el[assignKey] = getModelAssigner(vnode);
|
|
6821
|
+
const castToNumber = number || vnode.props && vnode.props.type === "number";
|
|
6822
|
+
addEventListener(el, lazy ? "change" : "input", (e) => {
|
|
6823
|
+
if (e.target.composing) return;
|
|
6824
|
+
el[assignKey](castValue(el.value, trim, castToNumber));
|
|
6825
|
+
});
|
|
6826
|
+
if (trim || castToNumber) addEventListener(el, "change", () => {
|
|
6827
|
+
el.value = castValue(el.value, trim, castToNumber);
|
|
6828
|
+
});
|
|
6829
|
+
if (!lazy) {
|
|
6830
|
+
addEventListener(el, "compositionstart", onCompositionStart);
|
|
6831
|
+
addEventListener(el, "compositionend", onCompositionEnd);
|
|
6832
|
+
addEventListener(el, "change", onCompositionEnd);
|
|
6833
|
+
}
|
|
6834
|
+
},
|
|
6835
|
+
mounted(el, { value }) {
|
|
6836
|
+
el.value = value == null ? "" : value;
|
|
6837
|
+
},
|
|
6838
|
+
beforeUpdate(el, { value, oldValue, modifiers: { lazy, trim, number } }, vnode) {
|
|
6839
|
+
el[assignKey] = getModelAssigner(vnode);
|
|
6840
|
+
if (el.composing) return;
|
|
6841
|
+
const elValue = (number || el.type === "number") && !/^0\d/.test(el.value) ? looseToNumber(el.value) : el.value;
|
|
6842
|
+
const newValue = value == null ? "" : value;
|
|
6843
|
+
if (elValue === newValue) return;
|
|
6844
|
+
if (document.activeElement === el && el.type !== "range") {
|
|
6845
|
+
if (lazy && value === oldValue) return;
|
|
6846
|
+
if (trim && el.value.trim() === newValue) return;
|
|
6847
|
+
}
|
|
6848
|
+
el.value = newValue;
|
|
6849
|
+
}
|
|
6850
|
+
};
|
|
5805
6851
|
const systemModifiers = [
|
|
5806
6852
|
"ctrl",
|
|
5807
6853
|
"shift",
|
|
@@ -5822,6 +6868,7 @@ const modifierGuards = {
|
|
|
5822
6868
|
exact: (e, modifiers) => systemModifiers.some((m) => e[`${m}Key`] && !modifiers.includes(m))
|
|
5823
6869
|
};
|
|
5824
6870
|
const withModifiers = (fn, modifiers) => {
|
|
6871
|
+
if (!fn) return fn;
|
|
5825
6872
|
const cache = fn._withMods || (fn._withMods = {});
|
|
5826
6873
|
const cacheKey = modifiers.join(".");
|
|
5827
6874
|
return cache[cacheKey] || (cache[cacheKey] = ((event, ...args) => {
|
|
@@ -5832,6 +6879,24 @@ const withModifiers = (fn, modifiers) => {
|
|
|
5832
6879
|
return fn(event, ...args);
|
|
5833
6880
|
}));
|
|
5834
6881
|
};
|
|
6882
|
+
const keyNames = {
|
|
6883
|
+
esc: "escape",
|
|
6884
|
+
space: " ",
|
|
6885
|
+
up: "arrow-up",
|
|
6886
|
+
left: "arrow-left",
|
|
6887
|
+
right: "arrow-right",
|
|
6888
|
+
down: "arrow-down",
|
|
6889
|
+
delete: "backspace"
|
|
6890
|
+
};
|
|
6891
|
+
const withKeys = (fn, modifiers) => {
|
|
6892
|
+
const cache = fn._withKeys || (fn._withKeys = {});
|
|
6893
|
+
const cacheKey = modifiers.join(".");
|
|
6894
|
+
return cache[cacheKey] || (cache[cacheKey] = ((event) => {
|
|
6895
|
+
if (!("key" in event)) return;
|
|
6896
|
+
const eventKey = hyphenate$1(event.key);
|
|
6897
|
+
if (modifiers.some((k) => k === eventKey || keyNames[k] === eventKey)) return fn(event);
|
|
6898
|
+
}));
|
|
6899
|
+
};
|
|
5835
6900
|
const rendererOptions = /* @__PURE__ */ extend({ patchProp }, nodeOps);
|
|
5836
6901
|
let renderer;
|
|
5837
6902
|
function ensureRenderer() {
|
|
@@ -5908,16 +6973,19 @@ function normalizeContainer(container) {
|
|
|
5908
6973
|
if (!!(process.env.NODE_ENV !== "production") && window.ShadowRoot && container instanceof window.ShadowRoot && container.mode === "closed") warn(`mounting on a ShadowRoot with \`{mode: "closed"}\` may lead to unpredictable bugs`);
|
|
5909
6974
|
return container;
|
|
5910
6975
|
}
|
|
5911
|
-
|
|
5912
6976
|
//#endregion
|
|
5913
|
-
//#region ../../node_modules/.pnpm/vue@3.5.
|
|
6977
|
+
//#region ../../node_modules/.pnpm/vue@3.5.30_typescript@5.9.3/node_modules/vue/dist/vue.runtime.esm-bundler.js
|
|
6978
|
+
/**
|
|
6979
|
+
* vue v3.5.30
|
|
6980
|
+
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
6981
|
+
* @license MIT
|
|
6982
|
+
**/
|
|
5914
6983
|
function initDev() {
|
|
5915
6984
|
initCustomFormatter();
|
|
5916
6985
|
}
|
|
5917
6986
|
if (!!(process.env.NODE_ENV !== "production")) initDev();
|
|
5918
|
-
|
|
5919
6987
|
//#endregion
|
|
5920
|
-
//#region ../../node_modules/.pnpm/@vueuse+shared@14.
|
|
6988
|
+
//#region ../../node_modules/.pnpm/@vueuse+shared@14.2.1_vue@3.5.30_typescript@5.9.3_/node_modules/@vueuse/shared/dist/index.js
|
|
5921
6989
|
/**
|
|
5922
6990
|
* Call onScopeDispose() if it's inside an effect scope lifecycle, if not, do nothing
|
|
5923
6991
|
*
|
|
@@ -5952,18 +7020,23 @@ const injectLocal = (...args) => {
|
|
|
5952
7020
|
return inject(...args);
|
|
5953
7021
|
};
|
|
5954
7022
|
const isClient = typeof window !== "undefined" && typeof document !== "undefined";
|
|
5955
|
-
|
|
7023
|
+
typeof WorkerGlobalScope !== "undefined" && globalThis instanceof WorkerGlobalScope;
|
|
5956
7024
|
const notNullish = (val) => val != null;
|
|
5957
7025
|
const toString = Object.prototype.toString;
|
|
5958
7026
|
const isObject = (val) => toString.call(val) === "[object Object]";
|
|
5959
7027
|
const noop = () => {};
|
|
7028
|
+
const isIOS = /* @__PURE__ */ getIsIOS();
|
|
7029
|
+
function getIsIOS() {
|
|
7030
|
+
var _window, _window2, _window3;
|
|
7031
|
+
return isClient && !!((_window = window) === null || _window === void 0 || (_window = _window.navigator) === null || _window === void 0 ? void 0 : _window.userAgent) && (/iP(?:ad|hone|od)/.test(window.navigator.userAgent) || ((_window2 = window) === null || _window2 === void 0 || (_window2 = _window2.navigator) === null || _window2 === void 0 ? void 0 : _window2.maxTouchPoints) > 2 && /iPad|Macintosh/.test((_window3 = window) === null || _window3 === void 0 ? void 0 : _window3.navigator.userAgent));
|
|
7032
|
+
}
|
|
5960
7033
|
function toRef(...args) {
|
|
5961
|
-
if (args.length !== 1) return toRef$1(...args);
|
|
7034
|
+
if (args.length !== 1) return /* @__PURE__ */ toRef$1(...args);
|
|
5962
7035
|
const r = args[0];
|
|
5963
|
-
return typeof r === "function" ? readonly(customRef(() => ({
|
|
7036
|
+
return typeof r === "function" ? /* @__PURE__ */ readonly(customRef(() => ({
|
|
5964
7037
|
get: r,
|
|
5965
7038
|
set: noop
|
|
5966
|
-
}))) : ref(r);
|
|
7039
|
+
}))) : /* @__PURE__ */ ref(r);
|
|
5967
7040
|
}
|
|
5968
7041
|
/**
|
|
5969
7042
|
* @internal
|
|
@@ -6043,7 +7116,7 @@ function pausableFilter(extendFilter = bypassFilter, options = {}) {
|
|
|
6043
7116
|
if (isActive.value) extendFilter(...args);
|
|
6044
7117
|
};
|
|
6045
7118
|
return {
|
|
6046
|
-
isActive: readonly(isActive),
|
|
7119
|
+
isActive: /* @__PURE__ */ readonly(isActive),
|
|
6047
7120
|
pause,
|
|
6048
7121
|
resume,
|
|
6049
7122
|
eventFilter
|
|
@@ -6065,9 +7138,9 @@ function cacheStringFunction(fn) {
|
|
|
6065
7138
|
});
|
|
6066
7139
|
}
|
|
6067
7140
|
const hyphenateRE = /\B([A-Z])/g;
|
|
6068
|
-
|
|
7141
|
+
cacheStringFunction((str) => str.replace(hyphenateRE, "-$1").toLowerCase());
|
|
6069
7142
|
const camelizeRE = /-(\w)/g;
|
|
6070
|
-
|
|
7143
|
+
cacheStringFunction((str) => {
|
|
6071
7144
|
return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : "");
|
|
6072
7145
|
});
|
|
6073
7146
|
function getLifeCycleTarget(target) {
|
|
@@ -6089,11 +7162,12 @@ function useDebounceFn(fn, ms = 200, options = {}) {
|
|
|
6089
7162
|
return createFilterWrapper(debounceFilter(ms, options), fn);
|
|
6090
7163
|
}
|
|
6091
7164
|
function watchWithFilter(source, cb, options = {}) {
|
|
6092
|
-
const { eventFilter = bypassFilter
|
|
7165
|
+
const { eventFilter = bypassFilter, ...watchOptions } = options;
|
|
6093
7166
|
return watch(source, createFilterWrapper(eventFilter, cb), watchOptions);
|
|
6094
7167
|
}
|
|
7168
|
+
/** @deprecated Use Vue's built-in `watch` instead. This function will be removed in future version. */
|
|
6095
7169
|
function watchPausable(source, cb, options = {}) {
|
|
6096
|
-
const { eventFilter: filter, initialState = "active"
|
|
7170
|
+
const { eventFilter: filter, initialState = "active", ...watchOptions } = options;
|
|
6097
7171
|
const { eventFilter, pause, resume, isActive } = pausableFilter(filter, { initialState });
|
|
6098
7172
|
return {
|
|
6099
7173
|
stop: watchWithFilter(source, cb, {
|
|
@@ -6105,41 +7179,6 @@ function watchPausable(source, cb, options = {}) {
|
|
|
6105
7179
|
isActive
|
|
6106
7180
|
};
|
|
6107
7181
|
}
|
|
6108
|
-
/** @deprecated use `watchPausable` instead */
|
|
6109
|
-
const pausableWatch = watchPausable;
|
|
6110
|
-
/**
|
|
6111
|
-
* Extended `toRefs` that also accepts refs of an object.
|
|
6112
|
-
*
|
|
6113
|
-
* @see https://vueuse.org/toRefs
|
|
6114
|
-
* @param objectRef A ref or normal object or array.
|
|
6115
|
-
* @param options Options
|
|
6116
|
-
*/
|
|
6117
|
-
function toRefs(objectRef, options = {}) {
|
|
6118
|
-
if (!isRef(objectRef)) return toRefs$1(objectRef);
|
|
6119
|
-
const result = Array.isArray(objectRef.value) ? Array.from({ length: objectRef.value.length }) : {};
|
|
6120
|
-
for (const key in objectRef.value) result[key] = customRef(() => ({
|
|
6121
|
-
get() {
|
|
6122
|
-
return objectRef.value[key];
|
|
6123
|
-
},
|
|
6124
|
-
set(v) {
|
|
6125
|
-
var _toValue;
|
|
6126
|
-
if ((_toValue = toValue(options.replaceRef)) !== null && _toValue !== void 0 ? _toValue : true) if (Array.isArray(objectRef.value)) {
|
|
6127
|
-
const copy = [...objectRef.value];
|
|
6128
|
-
copy[key] = v;
|
|
6129
|
-
objectRef.value = copy;
|
|
6130
|
-
} else {
|
|
6131
|
-
const newObject = {
|
|
6132
|
-
...objectRef.value,
|
|
6133
|
-
[key]: v
|
|
6134
|
-
};
|
|
6135
|
-
Object.setPrototypeOf(newObject, Object.getPrototypeOf(objectRef.value));
|
|
6136
|
-
objectRef.value = newObject;
|
|
6137
|
-
}
|
|
6138
|
-
else objectRef.value[key] = v;
|
|
6139
|
-
}
|
|
6140
|
-
}));
|
|
6141
|
-
return result;
|
|
6142
|
-
}
|
|
6143
7182
|
/**
|
|
6144
7183
|
* Call onMounted() if it's inside a component lifecycle, if not, just call the function
|
|
6145
7184
|
*
|
|
@@ -6153,6 +7192,54 @@ function tryOnMounted(fn, sync = true, target) {
|
|
|
6153
7192
|
else nextTick(fn);
|
|
6154
7193
|
}
|
|
6155
7194
|
/**
|
|
7195
|
+
* Wrapper for `setInterval` with controls
|
|
7196
|
+
*
|
|
7197
|
+
* @see https://vueuse.org/useIntervalFn
|
|
7198
|
+
* @param cb
|
|
7199
|
+
* @param interval
|
|
7200
|
+
* @param options
|
|
7201
|
+
*/
|
|
7202
|
+
function useIntervalFn(cb, interval = 1e3, options = {}) {
|
|
7203
|
+
const { immediate = true, immediateCallback = false } = options;
|
|
7204
|
+
let timer = null;
|
|
7205
|
+
const isActive = /* @__PURE__ */ shallowRef(false);
|
|
7206
|
+
function clean() {
|
|
7207
|
+
if (timer) {
|
|
7208
|
+
clearInterval(timer);
|
|
7209
|
+
timer = null;
|
|
7210
|
+
}
|
|
7211
|
+
}
|
|
7212
|
+
function pause() {
|
|
7213
|
+
isActive.value = false;
|
|
7214
|
+
clean();
|
|
7215
|
+
}
|
|
7216
|
+
function resume() {
|
|
7217
|
+
const intervalValue = toValue(interval);
|
|
7218
|
+
if (intervalValue <= 0) return;
|
|
7219
|
+
isActive.value = true;
|
|
7220
|
+
if (immediateCallback) cb();
|
|
7221
|
+
clean();
|
|
7222
|
+
if (isActive.value) timer = setInterval(cb, intervalValue);
|
|
7223
|
+
}
|
|
7224
|
+
if (immediate && isClient) resume();
|
|
7225
|
+
if (/* @__PURE__ */ isRef(interval) || typeof interval === "function") tryOnScopeDispose(watch(interval, () => {
|
|
7226
|
+
if (isActive.value && isClient) resume();
|
|
7227
|
+
}));
|
|
7228
|
+
tryOnScopeDispose(pause);
|
|
7229
|
+
return {
|
|
7230
|
+
isActive: /* @__PURE__ */ shallowReadonly(isActive),
|
|
7231
|
+
pause,
|
|
7232
|
+
resume
|
|
7233
|
+
};
|
|
7234
|
+
}
|
|
7235
|
+
function watchDebounced(source, cb, options = {}) {
|
|
7236
|
+
const { debounce = 0, maxWait = void 0, ...watchOptions } = options;
|
|
7237
|
+
return watchWithFilter(source, cb, {
|
|
7238
|
+
...watchOptions,
|
|
7239
|
+
eventFilter: debounceFilter(debounce, { maxWait })
|
|
7240
|
+
});
|
|
7241
|
+
}
|
|
7242
|
+
/**
|
|
6156
7243
|
* Shorthand for watching value with {immediate: true}
|
|
6157
7244
|
*
|
|
6158
7245
|
* @see https://vueuse.org/watchImmediate
|
|
@@ -6163,13 +7250,12 @@ function watchImmediate(source, cb, options) {
|
|
|
6163
7250
|
immediate: true
|
|
6164
7251
|
});
|
|
6165
7252
|
}
|
|
6166
|
-
|
|
6167
7253
|
//#endregion
|
|
6168
|
-
//#region ../../node_modules/.pnpm/@vueuse+core@14.
|
|
7254
|
+
//#region ../../node_modules/.pnpm/@vueuse+core@14.2.1_vue@3.5.30_typescript@5.9.3_/node_modules/@vueuse/core/dist/index.js
|
|
6169
7255
|
const defaultWindow = isClient ? window : void 0;
|
|
6170
|
-
|
|
6171
|
-
|
|
6172
|
-
|
|
7256
|
+
isClient && window.document;
|
|
7257
|
+
isClient && window.navigator;
|
|
7258
|
+
isClient && window.location;
|
|
6173
7259
|
/**
|
|
6174
7260
|
* Get the dom element of a ref of element or Vue component instance
|
|
6175
7261
|
*
|
|
@@ -6181,11 +7267,6 @@ function unrefElement(elRef) {
|
|
|
6181
7267
|
return (_$el = plain === null || plain === void 0 ? void 0 : plain.$el) !== null && _$el !== void 0 ? _$el : plain;
|
|
6182
7268
|
}
|
|
6183
7269
|
function useEventListener(...args) {
|
|
6184
|
-
const cleanups = [];
|
|
6185
|
-
const cleanup = () => {
|
|
6186
|
-
cleanups.forEach((fn) => fn());
|
|
6187
|
-
cleanups.length = 0;
|
|
6188
|
-
};
|
|
6189
7270
|
const register = (el, event, listener, options) => {
|
|
6190
7271
|
el.addEventListener(event, listener, options);
|
|
6191
7272
|
return () => el.removeEventListener(event, listener, options);
|
|
@@ -6194,7 +7275,7 @@ function useEventListener(...args) {
|
|
|
6194
7275
|
const test = toArray(toValue(args[0])).filter((e) => e != null);
|
|
6195
7276
|
return test.every((e) => typeof e !== "string") ? test : void 0;
|
|
6196
7277
|
});
|
|
6197
|
-
|
|
7278
|
+
return watchImmediate(() => {
|
|
6198
7279
|
var _firstParamTargets$va, _firstParamTargets$va2;
|
|
6199
7280
|
return [
|
|
6200
7281
|
(_firstParamTargets$va = (_firstParamTargets$va2 = firstParamTargets.value) === null || _firstParamTargets$va2 === void 0 ? void 0 : _firstParamTargets$va2.map((e) => unrefElement(e))) !== null && _firstParamTargets$va !== void 0 ? _firstParamTargets$va : [defaultWindow].filter((e) => e != null),
|
|
@@ -6202,18 +7283,104 @@ function useEventListener(...args) {
|
|
|
6202
7283
|
toArray(unref(firstParamTargets.value ? args[2] : args[1])),
|
|
6203
7284
|
toValue(firstParamTargets.value ? args[3] : args[2])
|
|
6204
7285
|
];
|
|
6205
|
-
}, ([raw_targets, raw_events, raw_listeners, raw_options]) => {
|
|
6206
|
-
cleanup();
|
|
7286
|
+
}, ([raw_targets, raw_events, raw_listeners, raw_options], _, onCleanup) => {
|
|
6207
7287
|
if (!(raw_targets === null || raw_targets === void 0 ? void 0 : raw_targets.length) || !(raw_events === null || raw_events === void 0 ? void 0 : raw_events.length) || !(raw_listeners === null || raw_listeners === void 0 ? void 0 : raw_listeners.length)) return;
|
|
6208
7288
|
const optionsClone = isObject(raw_options) ? { ...raw_options } : raw_options;
|
|
6209
|
-
cleanups
|
|
7289
|
+
const cleanups = raw_targets.flatMap((el) => raw_events.flatMap((event) => raw_listeners.map((listener) => register(el, event, listener, optionsClone))));
|
|
7290
|
+
onCleanup(() => {
|
|
7291
|
+
cleanups.forEach((fn) => fn());
|
|
7292
|
+
});
|
|
6210
7293
|
}, { flush: "post" });
|
|
6211
|
-
|
|
6212
|
-
|
|
6213
|
-
|
|
7294
|
+
}
|
|
7295
|
+
let _iOSWorkaround = false;
|
|
7296
|
+
function onClickOutside(target, handler, options = {}) {
|
|
7297
|
+
const { window: window$1 = defaultWindow, ignore = [], capture = true, detectIframe = false, controls = false } = options;
|
|
7298
|
+
if (!window$1) return controls ? {
|
|
7299
|
+
stop: noop,
|
|
7300
|
+
cancel: noop,
|
|
7301
|
+
trigger: noop
|
|
7302
|
+
} : noop;
|
|
7303
|
+
if (isIOS && !_iOSWorkaround) {
|
|
7304
|
+
_iOSWorkaround = true;
|
|
7305
|
+
const listenerOptions = { passive: true };
|
|
7306
|
+
Array.from(window$1.document.body.children).forEach((el) => el.addEventListener("click", noop, listenerOptions));
|
|
7307
|
+
window$1.document.documentElement.addEventListener("click", noop, listenerOptions);
|
|
7308
|
+
}
|
|
7309
|
+
let shouldListen = true;
|
|
7310
|
+
const shouldIgnore = (event) => {
|
|
7311
|
+
return toValue(ignore).some((target$1) => {
|
|
7312
|
+
if (typeof target$1 === "string") return Array.from(window$1.document.querySelectorAll(target$1)).some((el) => el === event.target || event.composedPath().includes(el));
|
|
7313
|
+
else {
|
|
7314
|
+
const el = unrefElement(target$1);
|
|
7315
|
+
return el && (event.target === el || event.composedPath().includes(el));
|
|
7316
|
+
}
|
|
7317
|
+
});
|
|
7318
|
+
};
|
|
7319
|
+
/**
|
|
7320
|
+
* Determines if the given target has multiple root elements.
|
|
7321
|
+
* Referenced from: https://github.com/vuejs/test-utils/blob/ccb460be55f9f6be05ab708500a41ec8adf6f4bc/src/vue-wrapper.ts#L21
|
|
7322
|
+
*/
|
|
7323
|
+
function hasMultipleRoots(target$1) {
|
|
7324
|
+
const vm = toValue(target$1);
|
|
7325
|
+
return vm && vm.$.subTree.shapeFlag === 16;
|
|
7326
|
+
}
|
|
7327
|
+
function checkMultipleRoots(target$1, event) {
|
|
7328
|
+
const vm = toValue(target$1);
|
|
7329
|
+
const children = vm.$.subTree && vm.$.subTree.children;
|
|
7330
|
+
if (children == null || !Array.isArray(children)) return false;
|
|
7331
|
+
return children.some((child) => child.el === event.target || event.composedPath().includes(child.el));
|
|
7332
|
+
}
|
|
7333
|
+
const listener = (event) => {
|
|
7334
|
+
const el = unrefElement(target);
|
|
7335
|
+
if (event.target == null) return;
|
|
7336
|
+
if (!(el instanceof Element) && hasMultipleRoots(target) && checkMultipleRoots(target, event)) return;
|
|
7337
|
+
if (!el || el === event.target || event.composedPath().includes(el)) return;
|
|
7338
|
+
if ("detail" in event && event.detail === 0) shouldListen = !shouldIgnore(event);
|
|
7339
|
+
if (!shouldListen) {
|
|
7340
|
+
shouldListen = true;
|
|
7341
|
+
return;
|
|
7342
|
+
}
|
|
7343
|
+
handler(event);
|
|
7344
|
+
};
|
|
7345
|
+
let isProcessingClick = false;
|
|
7346
|
+
const cleanup = [
|
|
7347
|
+
useEventListener(window$1, "click", (event) => {
|
|
7348
|
+
if (!isProcessingClick) {
|
|
7349
|
+
isProcessingClick = true;
|
|
7350
|
+
setTimeout(() => {
|
|
7351
|
+
isProcessingClick = false;
|
|
7352
|
+
}, 0);
|
|
7353
|
+
listener(event);
|
|
7354
|
+
}
|
|
7355
|
+
}, {
|
|
7356
|
+
passive: true,
|
|
7357
|
+
capture
|
|
7358
|
+
}),
|
|
7359
|
+
useEventListener(window$1, "pointerdown", (e) => {
|
|
7360
|
+
const el = unrefElement(target);
|
|
7361
|
+
shouldListen = !shouldIgnore(e) && !!(el && !e.composedPath().includes(el));
|
|
7362
|
+
}, { passive: true }),
|
|
7363
|
+
detectIframe && useEventListener(window$1, "blur", (event) => {
|
|
7364
|
+
setTimeout(() => {
|
|
7365
|
+
var _window$document$acti;
|
|
7366
|
+
const el = unrefElement(target);
|
|
7367
|
+
if (((_window$document$acti = window$1.document.activeElement) === null || _window$document$acti === void 0 ? void 0 : _window$document$acti.tagName) === "IFRAME" && !(el === null || el === void 0 ? void 0 : el.contains(window$1.document.activeElement))) handler(event);
|
|
7368
|
+
}, 0);
|
|
7369
|
+
}, { passive: true })
|
|
7370
|
+
].filter(Boolean);
|
|
7371
|
+
const stop = () => cleanup.forEach((fn) => fn());
|
|
7372
|
+
if (controls) return {
|
|
7373
|
+
stop,
|
|
7374
|
+
cancel: () => {
|
|
7375
|
+
shouldListen = false;
|
|
7376
|
+
},
|
|
7377
|
+
trigger: (event) => {
|
|
7378
|
+
shouldListen = true;
|
|
7379
|
+
listener(event);
|
|
7380
|
+
shouldListen = false;
|
|
7381
|
+
}
|
|
6214
7382
|
};
|
|
6215
|
-
|
|
6216
|
-
return stop$1;
|
|
7383
|
+
return stop;
|
|
6217
7384
|
}
|
|
6218
7385
|
/**
|
|
6219
7386
|
* Mounted state in ref.
|
|
@@ -6223,7 +7390,7 @@ function useEventListener(...args) {
|
|
|
6223
7390
|
* @__NO_SIDE_EFFECTS__
|
|
6224
7391
|
*/
|
|
6225
7392
|
function useMounted() {
|
|
6226
|
-
const isMounted = shallowRef(false);
|
|
7393
|
+
const isMounted = /* @__PURE__ */ shallowRef(false);
|
|
6227
7394
|
const instance = getCurrentInstance();
|
|
6228
7395
|
if (instance) onMounted(() => {
|
|
6229
7396
|
isMounted.value = true;
|
|
@@ -6248,9 +7415,9 @@ function useSupported(callback) {
|
|
|
6248
7415
|
* @param options
|
|
6249
7416
|
*/
|
|
6250
7417
|
function useMutationObserver(target, callback, options = {}) {
|
|
6251
|
-
const { window: window$1 = defaultWindow
|
|
7418
|
+
const { window: window$1 = defaultWindow, ...mutationOptions } = options;
|
|
6252
7419
|
let observer;
|
|
6253
|
-
const isSupported
|
|
7420
|
+
const isSupported = /* @__PURE__ */ useSupported(() => window$1 && "MutationObserver" in window$1);
|
|
6254
7421
|
const cleanup = () => {
|
|
6255
7422
|
if (observer) {
|
|
6256
7423
|
observer.disconnect();
|
|
@@ -6262,7 +7429,7 @@ function useMutationObserver(target, callback, options = {}) {
|
|
|
6262
7429
|
return new Set(items);
|
|
6263
7430
|
}), (newTargets) => {
|
|
6264
7431
|
cleanup();
|
|
6265
|
-
if (isSupported
|
|
7432
|
+
if (isSupported.value && newTargets.size) {
|
|
6266
7433
|
observer = new MutationObserver(callback);
|
|
6267
7434
|
newTargets.forEach((el) => observer.observe(el, mutationOptions));
|
|
6268
7435
|
}
|
|
@@ -6273,17 +7440,75 @@ function useMutationObserver(target, callback, options = {}) {
|
|
|
6273
7440
|
const takeRecords = () => {
|
|
6274
7441
|
return observer === null || observer === void 0 ? void 0 : observer.takeRecords();
|
|
6275
7442
|
};
|
|
6276
|
-
const stop
|
|
7443
|
+
const stop = () => {
|
|
6277
7444
|
stopWatch();
|
|
6278
7445
|
cleanup();
|
|
6279
7446
|
};
|
|
6280
|
-
tryOnScopeDispose(stop
|
|
7447
|
+
tryOnScopeDispose(stop);
|
|
6281
7448
|
return {
|
|
6282
|
-
isSupported
|
|
6283
|
-
stop
|
|
7449
|
+
isSupported,
|
|
7450
|
+
stop,
|
|
6284
7451
|
takeRecords
|
|
6285
7452
|
};
|
|
6286
7453
|
}
|
|
7454
|
+
/**
|
|
7455
|
+
* Call function on every `requestAnimationFrame`. With controls of pausing and resuming.
|
|
7456
|
+
*
|
|
7457
|
+
* @see https://vueuse.org/useRafFn
|
|
7458
|
+
* @param fn
|
|
7459
|
+
* @param options
|
|
7460
|
+
*/
|
|
7461
|
+
function useRafFn(fn, options = {}) {
|
|
7462
|
+
const { immediate = true, fpsLimit = null, window: window$1 = defaultWindow, once = false } = options;
|
|
7463
|
+
const isActive = /* @__PURE__ */ shallowRef(false);
|
|
7464
|
+
const intervalLimit = computed(() => {
|
|
7465
|
+
const limit = toValue(fpsLimit);
|
|
7466
|
+
return limit ? 1e3 / limit : null;
|
|
7467
|
+
});
|
|
7468
|
+
let previousFrameTimestamp = 0;
|
|
7469
|
+
let rafId = null;
|
|
7470
|
+
function loop(timestamp$1) {
|
|
7471
|
+
if (!isActive.value || !window$1) return;
|
|
7472
|
+
if (!previousFrameTimestamp) previousFrameTimestamp = timestamp$1;
|
|
7473
|
+
const delta = timestamp$1 - previousFrameTimestamp;
|
|
7474
|
+
if (intervalLimit.value && delta < intervalLimit.value) {
|
|
7475
|
+
rafId = window$1.requestAnimationFrame(loop);
|
|
7476
|
+
return;
|
|
7477
|
+
}
|
|
7478
|
+
previousFrameTimestamp = timestamp$1;
|
|
7479
|
+
fn({
|
|
7480
|
+
delta,
|
|
7481
|
+
timestamp: timestamp$1
|
|
7482
|
+
});
|
|
7483
|
+
if (once) {
|
|
7484
|
+
isActive.value = false;
|
|
7485
|
+
rafId = null;
|
|
7486
|
+
return;
|
|
7487
|
+
}
|
|
7488
|
+
rafId = window$1.requestAnimationFrame(loop);
|
|
7489
|
+
}
|
|
7490
|
+
function resume() {
|
|
7491
|
+
if (!isActive.value && window$1) {
|
|
7492
|
+
isActive.value = true;
|
|
7493
|
+
previousFrameTimestamp = 0;
|
|
7494
|
+
rafId = window$1.requestAnimationFrame(loop);
|
|
7495
|
+
}
|
|
7496
|
+
}
|
|
7497
|
+
function pause() {
|
|
7498
|
+
isActive.value = false;
|
|
7499
|
+
if (rafId != null && window$1) {
|
|
7500
|
+
window$1.cancelAnimationFrame(rafId);
|
|
7501
|
+
rafId = null;
|
|
7502
|
+
}
|
|
7503
|
+
}
|
|
7504
|
+
if (immediate) resume();
|
|
7505
|
+
tryOnScopeDispose(pause);
|
|
7506
|
+
return {
|
|
7507
|
+
isActive: /* @__PURE__ */ readonly(isActive),
|
|
7508
|
+
pause,
|
|
7509
|
+
resume
|
|
7510
|
+
};
|
|
7511
|
+
}
|
|
6287
7512
|
const ssrWidthSymbol = Symbol("vueuse-ssr-width");
|
|
6288
7513
|
/* @__NO_SIDE_EFFECTS__ */
|
|
6289
7514
|
function useSSRWidth() {
|
|
@@ -6299,16 +7524,16 @@ function useSSRWidth() {
|
|
|
6299
7524
|
*/
|
|
6300
7525
|
function useMediaQuery(query, options = {}) {
|
|
6301
7526
|
const { window: window$1 = defaultWindow, ssrWidth = /* @__PURE__ */ useSSRWidth() } = options;
|
|
6302
|
-
const isSupported
|
|
6303
|
-
const ssrSupport = shallowRef(typeof ssrWidth === "number");
|
|
6304
|
-
const mediaQuery = shallowRef();
|
|
6305
|
-
const matches = shallowRef(false);
|
|
7527
|
+
const isSupported = /* @__PURE__ */ useSupported(() => window$1 && "matchMedia" in window$1 && typeof window$1.matchMedia === "function");
|
|
7528
|
+
const ssrSupport = /* @__PURE__ */ shallowRef(typeof ssrWidth === "number");
|
|
7529
|
+
const mediaQuery = /* @__PURE__ */ shallowRef();
|
|
7530
|
+
const matches = /* @__PURE__ */ shallowRef(false);
|
|
6306
7531
|
const handler = (event) => {
|
|
6307
7532
|
matches.value = event.matches;
|
|
6308
7533
|
};
|
|
6309
7534
|
watchEffect(() => {
|
|
6310
7535
|
if (ssrSupport.value) {
|
|
6311
|
-
ssrSupport.value = !isSupported
|
|
7536
|
+
ssrSupport.value = !isSupported.value;
|
|
6312
7537
|
matches.value = toValue(query).split(",").some((queryString) => {
|
|
6313
7538
|
const not = queryString.includes("not all");
|
|
6314
7539
|
const minWidth = queryString.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/);
|
|
@@ -6320,7 +7545,7 @@ function useMediaQuery(query, options = {}) {
|
|
|
6320
7545
|
});
|
|
6321
7546
|
return;
|
|
6322
7547
|
}
|
|
6323
|
-
if (!isSupported
|
|
7548
|
+
if (!isSupported.value) return;
|
|
6324
7549
|
mediaQuery.value = window$1.matchMedia(toValue(query));
|
|
6325
7550
|
matches.value = mediaQuery.value.matches;
|
|
6326
7551
|
});
|
|
@@ -6396,7 +7621,7 @@ function useStorage(key, defaults$1, storage, options = {}) {
|
|
|
6396
7621
|
const rawInit = toValue(defaults$1);
|
|
6397
7622
|
const type = guessSerializerType(rawInit);
|
|
6398
7623
|
const serializer = (_options$serializer = options.serializer) !== null && _options$serializer !== void 0 ? _options$serializer : StorageSerializers[type];
|
|
6399
|
-
const { pause: pauseWatch, resume: resumeWatch } =
|
|
7624
|
+
const { pause: pauseWatch, resume: resumeWatch } = watchPausable(data, (newValue) => write(newValue), {
|
|
6400
7625
|
flush,
|
|
6401
7626
|
deep,
|
|
6402
7627
|
eventFilter
|
|
@@ -6501,7 +7726,7 @@ function useStorage(key, defaults$1, storage, options = {}) {
|
|
|
6501
7726
|
*/
|
|
6502
7727
|
function useCssVar(prop, target, options = {}) {
|
|
6503
7728
|
const { window: window$1 = defaultWindow, initialValue, observe = false } = options;
|
|
6504
|
-
const variable = shallowRef(initialValue);
|
|
7729
|
+
const variable = /* @__PURE__ */ shallowRef(initialValue);
|
|
6505
7730
|
const elRef = computed(() => {
|
|
6506
7731
|
var _window$document;
|
|
6507
7732
|
return unrefElement(target) || (window$1 === null || window$1 === void 0 || (_window$document = window$1.document) === null || _window$document === void 0 ? void 0 : _window$document.documentElement);
|
|
@@ -6538,9 +7763,9 @@ function useCssVar(prop, target, options = {}) {
|
|
|
6538
7763
|
* @param options
|
|
6539
7764
|
*/
|
|
6540
7765
|
function useResizeObserver(target, callback, options = {}) {
|
|
6541
|
-
const { window: window$1 = defaultWindow
|
|
7766
|
+
const { window: window$1 = defaultWindow, ...observerOptions } = options;
|
|
6542
7767
|
let observer;
|
|
6543
|
-
const isSupported
|
|
7768
|
+
const isSupported = /* @__PURE__ */ useSupported(() => window$1 && "ResizeObserver" in window$1);
|
|
6544
7769
|
const cleanup = () => {
|
|
6545
7770
|
if (observer) {
|
|
6546
7771
|
observer.disconnect();
|
|
@@ -6552,7 +7777,7 @@ function useResizeObserver(target, callback, options = {}) {
|
|
|
6552
7777
|
return Array.isArray(_targets) ? _targets.map((el) => unrefElement(el)) : [unrefElement(_targets)];
|
|
6553
7778
|
}), (els) => {
|
|
6554
7779
|
cleanup();
|
|
6555
|
-
if (isSupported
|
|
7780
|
+
if (isSupported.value && window$1) {
|
|
6556
7781
|
observer = new ResizeObserver(callback);
|
|
6557
7782
|
for (const _el of els) if (_el) observer.observe(_el, observerOptions);
|
|
6558
7783
|
}
|
|
@@ -6560,14 +7785,14 @@ function useResizeObserver(target, callback, options = {}) {
|
|
|
6560
7785
|
immediate: true,
|
|
6561
7786
|
flush: "post"
|
|
6562
7787
|
});
|
|
6563
|
-
const stop
|
|
7788
|
+
const stop = () => {
|
|
6564
7789
|
cleanup();
|
|
6565
7790
|
stopWatch();
|
|
6566
7791
|
};
|
|
6567
|
-
tryOnScopeDispose(stop
|
|
7792
|
+
tryOnScopeDispose(stop);
|
|
6568
7793
|
return {
|
|
6569
|
-
isSupported
|
|
6570
|
-
stop
|
|
7794
|
+
isSupported,
|
|
7795
|
+
stop
|
|
6571
7796
|
};
|
|
6572
7797
|
}
|
|
6573
7798
|
/**
|
|
@@ -6578,14 +7803,14 @@ function useResizeObserver(target, callback, options = {}) {
|
|
|
6578
7803
|
*/
|
|
6579
7804
|
function useElementBounding(target, options = {}) {
|
|
6580
7805
|
const { reset = true, windowResize = true, windowScroll = true, immediate = true, updateTiming = "sync" } = options;
|
|
6581
|
-
const height = shallowRef(0);
|
|
6582
|
-
const bottom = shallowRef(0);
|
|
6583
|
-
const left = shallowRef(0);
|
|
6584
|
-
const right = shallowRef(0);
|
|
6585
|
-
const top = shallowRef(0);
|
|
6586
|
-
const width = shallowRef(0);
|
|
6587
|
-
const x = shallowRef(0);
|
|
6588
|
-
const y = shallowRef(0);
|
|
7806
|
+
const height = /* @__PURE__ */ shallowRef(0);
|
|
7807
|
+
const bottom = /* @__PURE__ */ shallowRef(0);
|
|
7808
|
+
const left = /* @__PURE__ */ shallowRef(0);
|
|
7809
|
+
const right = /* @__PURE__ */ shallowRef(0);
|
|
7810
|
+
const top = /* @__PURE__ */ shallowRef(0);
|
|
7811
|
+
const width = /* @__PURE__ */ shallowRef(0);
|
|
7812
|
+
const x = /* @__PURE__ */ shallowRef(0);
|
|
7813
|
+
const y = /* @__PURE__ */ shallowRef(0);
|
|
6589
7814
|
function recalculate() {
|
|
6590
7815
|
const el = unrefElement(target);
|
|
6591
7816
|
if (!el) {
|
|
@@ -6650,6 +7875,32 @@ function useLocalStorage(key, initialValue, options = {}) {
|
|
|
6650
7875
|
const { window: window$1 = defaultWindow } = options;
|
|
6651
7876
|
return useStorage(key, initialValue, window$1 === null || window$1 === void 0 ? void 0 : window$1.localStorage, options);
|
|
6652
7877
|
}
|
|
7878
|
+
function getDefaultScheduler$5(options) {
|
|
7879
|
+
if ("interval" in options || "immediate" in options) {
|
|
7880
|
+
const { interval = "requestAnimationFrame", immediate = true } = options;
|
|
7881
|
+
return interval === "requestAnimationFrame" ? (fn) => useRafFn(fn, { immediate }) : (fn) => useIntervalFn(fn, interval, options);
|
|
7882
|
+
}
|
|
7883
|
+
return useRafFn;
|
|
7884
|
+
}
|
|
7885
|
+
/**
|
|
7886
|
+
* Reactive current Date instance.
|
|
7887
|
+
*
|
|
7888
|
+
* @see https://vueuse.org/useNow
|
|
7889
|
+
* @param options
|
|
7890
|
+
*
|
|
7891
|
+
* @__NO_SIDE_EFFECTS__
|
|
7892
|
+
*/
|
|
7893
|
+
function useNow(options = {}) {
|
|
7894
|
+
const { controls: exposeControls = false, scheduler = getDefaultScheduler$5(options) } = options;
|
|
7895
|
+
const now = /* @__PURE__ */ ref(/* @__PURE__ */ new Date());
|
|
7896
|
+
const update = () => now.value = /* @__PURE__ */ new Date();
|
|
7897
|
+
const controls = scheduler(update);
|
|
7898
|
+
if (exposeControls) return {
|
|
7899
|
+
now,
|
|
7900
|
+
...controls
|
|
7901
|
+
};
|
|
7902
|
+
else return now;
|
|
7903
|
+
}
|
|
6653
7904
|
const topVarName = "--vueuse-safe-area-top";
|
|
6654
7905
|
const rightVarName = "--vueuse-safe-area-right";
|
|
6655
7906
|
const bottomVarName = "--vueuse-safe-area-bottom";
|
|
@@ -6660,10 +7911,10 @@ const leftVarName = "--vueuse-safe-area-left";
|
|
|
6660
7911
|
* @see https://vueuse.org/useScreenSafeArea
|
|
6661
7912
|
*/
|
|
6662
7913
|
function useScreenSafeArea() {
|
|
6663
|
-
const top = shallowRef("");
|
|
6664
|
-
const right = shallowRef("");
|
|
6665
|
-
const bottom = shallowRef("");
|
|
6666
|
-
const left = shallowRef("");
|
|
7914
|
+
const top = /* @__PURE__ */ shallowRef("");
|
|
7915
|
+
const right = /* @__PURE__ */ shallowRef("");
|
|
7916
|
+
const bottom = /* @__PURE__ */ shallowRef("");
|
|
7917
|
+
const left = /* @__PURE__ */ shallowRef("");
|
|
6667
7918
|
if (isClient) {
|
|
6668
7919
|
const topCssVar = useCssVar(topVarName);
|
|
6669
7920
|
const rightCssVar = useCssVar(rightVarName);
|
|
@@ -6730,6 +7981,81 @@ const DEFAULT_UNITS = [
|
|
|
6730
7981
|
name: "year"
|
|
6731
7982
|
}
|
|
6732
7983
|
];
|
|
7984
|
+
const DEFAULT_MESSAGES = {
|
|
7985
|
+
justNow: "just now",
|
|
7986
|
+
past: (n) => n.match(/\d/) ? `${n} ago` : n,
|
|
7987
|
+
future: (n) => n.match(/\d/) ? `in ${n}` : n,
|
|
7988
|
+
month: (n, past) => n === 1 ? past ? "last month" : "next month" : `${n} month${n > 1 ? "s" : ""}`,
|
|
7989
|
+
year: (n, past) => n === 1 ? past ? "last year" : "next year" : `${n} year${n > 1 ? "s" : ""}`,
|
|
7990
|
+
day: (n, past) => n === 1 ? past ? "yesterday" : "tomorrow" : `${n} day${n > 1 ? "s" : ""}`,
|
|
7991
|
+
week: (n, past) => n === 1 ? past ? "last week" : "next week" : `${n} week${n > 1 ? "s" : ""}`,
|
|
7992
|
+
hour: (n) => `${n} hour${n > 1 ? "s" : ""}`,
|
|
7993
|
+
minute: (n) => `${n} minute${n > 1 ? "s" : ""}`,
|
|
7994
|
+
second: (n) => `${n} second${n > 1 ? "s" : ""}`,
|
|
7995
|
+
invalid: ""
|
|
7996
|
+
};
|
|
7997
|
+
function DEFAULT_FORMATTER(date) {
|
|
7998
|
+
return date.toISOString().slice(0, 10);
|
|
7999
|
+
}
|
|
8000
|
+
function getDefaultScheduler$4(options) {
|
|
8001
|
+
if ("updateInterval" in options) {
|
|
8002
|
+
const { updateInterval = 3e4 } = options;
|
|
8003
|
+
return (cb) => useIntervalFn(cb, updateInterval);
|
|
8004
|
+
}
|
|
8005
|
+
return (cb) => useIntervalFn(cb, 3e4);
|
|
8006
|
+
}
|
|
8007
|
+
/**
|
|
8008
|
+
* Reactive time ago formatter.
|
|
8009
|
+
*
|
|
8010
|
+
* @see https://vueuse.org/useTimeAgo
|
|
8011
|
+
*
|
|
8012
|
+
* @__NO_SIDE_EFFECTS__
|
|
8013
|
+
*/
|
|
8014
|
+
function useTimeAgo(time, options = {}) {
|
|
8015
|
+
const { controls: exposeControls = false, scheduler = getDefaultScheduler$4(options) } = options;
|
|
8016
|
+
const { now, ...controls } = useNow({
|
|
8017
|
+
scheduler,
|
|
8018
|
+
controls: true
|
|
8019
|
+
});
|
|
8020
|
+
const timeAgo = computed(() => formatTimeAgo(new Date(toValue(time)), options, toValue(now)));
|
|
8021
|
+
if (exposeControls) return {
|
|
8022
|
+
timeAgo,
|
|
8023
|
+
...controls
|
|
8024
|
+
};
|
|
8025
|
+
else return timeAgo;
|
|
8026
|
+
}
|
|
8027
|
+
function formatTimeAgo(from, options = {}, now = Date.now()) {
|
|
8028
|
+
const { max, messages = DEFAULT_MESSAGES, fullDateFormatter = DEFAULT_FORMATTER, units = DEFAULT_UNITS, showSecond = false, rounding = "round" } = options;
|
|
8029
|
+
const roundFn = typeof rounding === "number" ? (n) => +n.toFixed(rounding) : Math[rounding];
|
|
8030
|
+
const diff = +now - +from;
|
|
8031
|
+
const absDiff = Math.abs(diff);
|
|
8032
|
+
function getValue$1(diff$1, unit) {
|
|
8033
|
+
return roundFn(Math.abs(diff$1) / unit.value);
|
|
8034
|
+
}
|
|
8035
|
+
function format(diff$1, unit) {
|
|
8036
|
+
const val = getValue$1(diff$1, unit);
|
|
8037
|
+
const past = diff$1 > 0;
|
|
8038
|
+
const str = applyFormat(unit.name, val, past);
|
|
8039
|
+
return applyFormat(past ? "past" : "future", str, past);
|
|
8040
|
+
}
|
|
8041
|
+
function applyFormat(name, val, isPast) {
|
|
8042
|
+
const formatter = messages[name];
|
|
8043
|
+
if (typeof formatter === "function") return formatter(val, isPast);
|
|
8044
|
+
return formatter.replace("{0}", val.toString());
|
|
8045
|
+
}
|
|
8046
|
+
if (absDiff < 6e4 && !showSecond) return messages.justNow;
|
|
8047
|
+
if (typeof max === "number" && absDiff > max) return fullDateFormatter(new Date(from));
|
|
8048
|
+
if (typeof max === "string") {
|
|
8049
|
+
var _units$find;
|
|
8050
|
+
const unitMax = (_units$find = units.find((i) => i.name === max)) === null || _units$find === void 0 ? void 0 : _units$find.max;
|
|
8051
|
+
if (unitMax && absDiff > unitMax) return fullDateFormatter(new Date(from));
|
|
8052
|
+
}
|
|
8053
|
+
for (const [idx, unit] of units.entries()) {
|
|
8054
|
+
if (getValue$1(diff, unit) <= 0 && units[idx - 1]) return format(diff, units[idx - 1]);
|
|
8055
|
+
if (absDiff < unit.max) return format(diff, unit);
|
|
8056
|
+
}
|
|
8057
|
+
return messages.invalid;
|
|
8058
|
+
}
|
|
6733
8059
|
/**
|
|
6734
8060
|
* Reactive window size.
|
|
6735
8061
|
*
|
|
@@ -6740,8 +8066,8 @@ const DEFAULT_UNITS = [
|
|
|
6740
8066
|
*/
|
|
6741
8067
|
function useWindowSize(options = {}) {
|
|
6742
8068
|
const { window: window$1 = defaultWindow, initialWidth = Number.POSITIVE_INFINITY, initialHeight = Number.POSITIVE_INFINITY, listenOrientation = true, includeScrollbar = true, type = "inner" } = options;
|
|
6743
|
-
const width = shallowRef(initialWidth);
|
|
6744
|
-
const height = shallowRef(initialHeight);
|
|
8069
|
+
const width = /* @__PURE__ */ shallowRef(initialWidth);
|
|
8070
|
+
const height = /* @__PURE__ */ shallowRef(initialHeight);
|
|
6745
8071
|
const update = () => {
|
|
6746
8072
|
if (window$1) if (type === "outer") {
|
|
6747
8073
|
width.value = window$1.outerWidth;
|
|
@@ -6769,6 +8095,5 @@ function useWindowSize(options = {}) {
|
|
|
6769
8095
|
height
|
|
6770
8096
|
};
|
|
6771
8097
|
}
|
|
6772
|
-
|
|
6773
8098
|
//#endregion
|
|
6774
|
-
export {
|
|
8099
|
+
export { nextTick as A, withDirectives as B, createElementBlock as C, defineAsyncComponent as D, createVNode as E, renderSlot as F, toRefs as G, reactive as H, useTemplateRef as I, normalizeStyle as J, unref as K, watch as L, onUnmounted as M, openBlock as N, defineComponent as O, renderList as P, watchEffect as R, createCommentVNode as S, createTextVNode as T, ref as U, markRaw as V, shallowRef as W, toDisplayString as Y, Fragment as _, useScreenSafeArea as a, createBaseVNode as b, useDebounceFn as c, TransitionGroup as d, defineCustomElement as f, withModifiers as g, withKeys as h, useLocalStorage as i, onMounted as j, h as k, watchDebounced as l, vShow as m, useElementBounding as n, useTimeAgo as o, vModelText as p, normalizeClass as q, useEventListener as r, useWindowSize as s, onClickOutside as t, watchImmediate as u, Suspense as v, createStaticVNode as w, createBlock as x, computed as y, withCtx as z };
|