@vue/runtime-core 3.6.0-beta.6 → 3.6.0-beta.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/runtime-core.cjs.js +63 -88
- package/dist/runtime-core.cjs.prod.js +54 -84
- package/dist/runtime-core.d.ts +29 -3
- package/dist/runtime-core.esm-bundler.js +67 -80
- package/package.json +3 -3
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @vue/runtime-core v3.6.0-beta.
|
|
2
|
+
* @vue/runtime-core v3.6.0-beta.8
|
|
3
3
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
4
4
|
* @license MIT
|
|
5
5
|
**/
|
|
6
|
-
Object.defineProperties(exports, {
|
|
6
|
+
Object.defineProperties(exports, {
|
|
7
|
+
__esModule: { value: true },
|
|
8
|
+
[Symbol.toStringTag]: { value: "Module" }
|
|
9
|
+
});
|
|
7
10
|
let _vue_reactivity = require("@vue/reactivity");
|
|
8
11
|
let _vue_shared = require("@vue/shared");
|
|
9
|
-
|
|
10
12
|
//#region packages/runtime-core/src/warning.ts
|
|
11
13
|
const stack = [];
|
|
12
14
|
/**
|
|
@@ -26,7 +28,6 @@ function popWarningContext() {
|
|
|
26
28
|
*/
|
|
27
29
|
function assertNumber(val, type) {}
|
|
28
30
|
/* v8 ignore stop */
|
|
29
|
-
|
|
30
31
|
//#endregion
|
|
31
32
|
//#region packages/runtime-core/src/errorHandling.ts
|
|
32
33
|
const ErrorCodes = {
|
|
@@ -143,7 +144,6 @@ function logError(err, type, instance, throwInDev = true, throwInProd = false) {
|
|
|
143
144
|
if (throwInProd) throw err;
|
|
144
145
|
else console.error(err);
|
|
145
146
|
}
|
|
146
|
-
|
|
147
147
|
//#endregion
|
|
148
148
|
//#region packages/runtime-core/src/scheduler.ts
|
|
149
149
|
const jobs = [];
|
|
@@ -278,7 +278,6 @@ function flushJobs(seen) {
|
|
|
278
278
|
if (jobsLength || postJobs.length) flushJobs(seen);
|
|
279
279
|
}
|
|
280
280
|
}
|
|
281
|
-
|
|
282
281
|
//#endregion
|
|
283
282
|
//#region packages/runtime-core/src/componentRenderContext.ts
|
|
284
283
|
/**
|
|
@@ -347,7 +346,6 @@ function withCtx(fn, ctx = currentRenderingInstance, isNonScopedSlot) {
|
|
|
347
346
|
renderFnWithContext._d = true;
|
|
348
347
|
return renderFnWithContext;
|
|
349
348
|
}
|
|
350
|
-
|
|
351
349
|
//#endregion
|
|
352
350
|
//#region packages/runtime-core/src/directives.ts
|
|
353
351
|
/**
|
|
@@ -396,7 +394,6 @@ function invokeDirectiveHook(vnode, prevVNode, instance, name) {
|
|
|
396
394
|
}
|
|
397
395
|
}
|
|
398
396
|
}
|
|
399
|
-
|
|
400
397
|
//#endregion
|
|
401
398
|
//#region packages/runtime-core/src/apiInject.ts
|
|
402
399
|
function provide(key, value) {
|
|
@@ -423,7 +420,6 @@ function inject(key, defaultValue, treatDefaultAsFactory = false) {
|
|
|
423
420
|
function hasInjectionContext() {
|
|
424
421
|
return !!(getCurrentGenericInstance() || currentApp);
|
|
425
422
|
}
|
|
426
|
-
|
|
427
423
|
//#endregion
|
|
428
424
|
//#region packages/runtime-core/src/helpers/useSsrContext.ts
|
|
429
425
|
const ssrContextKey = Symbol.for("v-scx");
|
|
@@ -434,7 +430,6 @@ const useSSRContext = () => {
|
|
|
434
430
|
return ctx;
|
|
435
431
|
}
|
|
436
432
|
};
|
|
437
|
-
|
|
438
433
|
//#endregion
|
|
439
434
|
//#region packages/runtime-core/src/apiWatch.ts
|
|
440
435
|
function watchEffect(effect, options) {
|
|
@@ -528,7 +523,6 @@ function createPathGetter(ctx, path) {
|
|
|
528
523
|
return cur;
|
|
529
524
|
};
|
|
530
525
|
}
|
|
531
|
-
|
|
532
526
|
//#endregion
|
|
533
527
|
//#region packages/runtime-core/src/components/Teleport.ts
|
|
534
528
|
const TeleportEndKey = Symbol("_vte");
|
|
@@ -712,7 +706,6 @@ function prepareAnchor(target, vnode, createText, insert, anchor = null) {
|
|
|
712
706
|
}
|
|
713
707
|
return targetAnchor;
|
|
714
708
|
}
|
|
715
|
-
|
|
716
709
|
//#endregion
|
|
717
710
|
//#region packages/runtime-core/src/components/BaseTransition.ts
|
|
718
711
|
const leaveCbKey = Symbol("_leaveCb");
|
|
@@ -766,7 +759,6 @@ const BaseTransitionImpl = {
|
|
|
766
759
|
const child = findNonCommentChild(children);
|
|
767
760
|
const rawProps = (0, _vue_reactivity.toRaw)(props);
|
|
768
761
|
const { mode } = rawProps;
|
|
769
|
-
/* @__PURE__ */ checkTransitionMode(mode);
|
|
770
762
|
if (state.isLeaving) return emptyPlaceholder(child);
|
|
771
763
|
const innerChild = getInnerChild$1(child);
|
|
772
764
|
if (!innerChild) return emptyPlaceholder(child);
|
|
@@ -830,6 +822,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
|
|
|
830
822
|
const key = String(vnode.key);
|
|
831
823
|
const leavingVNodesCache = getLeavingNodesForType(state, vnode);
|
|
832
824
|
return baseResolveTransitionHooks({
|
|
825
|
+
isLeaving: () => leavingVNodesCache[key] === vnode,
|
|
833
826
|
setLeavingNodeCache: () => {
|
|
834
827
|
leavingVNodesCache[key] = vnode;
|
|
835
828
|
},
|
|
@@ -848,7 +841,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
|
|
|
848
841
|
}, props, state, instance);
|
|
849
842
|
}
|
|
850
843
|
function baseResolveTransitionHooks(context, props, state, instance) {
|
|
851
|
-
const { setLeavingNodeCache, unsetLeavingNodeCache, earlyRemove, cloneHooks } = context;
|
|
844
|
+
const { isLeaving, setLeavingNodeCache, unsetLeavingNodeCache, earlyRemove, cloneHooks } = context;
|
|
852
845
|
const { appear, mode, persisted = false, onBeforeEnter, onEnter, onAfterEnter, onEnterCancelled, onBeforeLeave, onLeave, onAfterLeave, onLeaveCancelled, onBeforeAppear, onAppear, onAfterAppear, onAppearCancelled } = props;
|
|
853
846
|
const callHook = (hook, args) => {
|
|
854
847
|
hook && callWithAsyncErrorHandling(hook, instance, 9, args);
|
|
@@ -872,6 +865,7 @@ function baseResolveTransitionHooks(context, props, state, instance) {
|
|
|
872
865
|
callHook(hook, [el]);
|
|
873
866
|
},
|
|
874
867
|
enter(el) {
|
|
868
|
+
if (isLeaving()) return;
|
|
875
869
|
let hook = onEnter;
|
|
876
870
|
let afterHook = onAfterEnter;
|
|
877
871
|
let cancelHook = onEnterCancelled;
|
|
@@ -962,18 +956,12 @@ function getTransitionRawChildren(children, keepComment = false, parentKey) {
|
|
|
962
956
|
if (keyedFragmentCount > 1) for (let i = 0; i < ret.length; i++) ret[i].patchFlag = -2;
|
|
963
957
|
return ret;
|
|
964
958
|
}
|
|
965
|
-
/**
|
|
966
|
-
* dev-only
|
|
967
|
-
*/
|
|
968
|
-
function checkTransitionMode(mode) {}
|
|
969
|
-
|
|
970
959
|
//#endregion
|
|
971
960
|
//#region packages/runtime-core/src/apiDefineComponent.ts
|
|
972
961
|
/* @__NO_SIDE_EFFECTS__ */
|
|
973
962
|
function defineComponent(options, extraOptions) {
|
|
974
963
|
return (0, _vue_shared.isFunction)(options) ? (0, _vue_shared.extend)({ name: options.name }, extraOptions, { setup: options }) : options;
|
|
975
964
|
}
|
|
976
|
-
|
|
977
965
|
//#endregion
|
|
978
966
|
//#region packages/runtime-core/src/helpers/useId.ts
|
|
979
967
|
function useId() {
|
|
@@ -994,7 +982,6 @@ function markAsyncBoundary(instance) {
|
|
|
994
982
|
0
|
|
995
983
|
];
|
|
996
984
|
}
|
|
997
|
-
|
|
998
985
|
//#endregion
|
|
999
986
|
//#region packages/runtime-core/src/helpers/useTemplateRef.ts
|
|
1000
987
|
function useTemplateRef(key) {
|
|
@@ -1014,7 +1001,6 @@ function isTemplateRefKey(refs, key) {
|
|
|
1014
1001
|
let desc;
|
|
1015
1002
|
return !!((desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable);
|
|
1016
1003
|
}
|
|
1017
|
-
|
|
1018
1004
|
//#endregion
|
|
1019
1005
|
//#region packages/runtime-core/src/rendererTemplateRef.ts
|
|
1020
1006
|
const pendingSetRefMap = /* @__PURE__ */ new WeakMap();
|
|
@@ -1106,20 +1092,12 @@ function invalidatePendingSetRef(rawRef) {
|
|
|
1106
1092
|
pendingSetRefMap.delete(rawRef);
|
|
1107
1093
|
}
|
|
1108
1094
|
}
|
|
1109
|
-
|
|
1110
1095
|
//#endregion
|
|
1111
1096
|
//#region packages/runtime-core/src/hydration.ts
|
|
1112
1097
|
let isHydratingEnabled = false;
|
|
1113
1098
|
function setIsHydratingEnabled(value) {
|
|
1114
1099
|
isHydratingEnabled = value;
|
|
1115
1100
|
}
|
|
1116
|
-
/**
|
|
1117
|
-
* VDOM hydration state.
|
|
1118
|
-
* Also used by vapor interop plugin for tree-shaking:
|
|
1119
|
-
* In non-hydration builds, this is never set to true, so the logic in
|
|
1120
|
-
* vaporInteropImpl's hydrate/hydrateSlot can be tree-shaken.
|
|
1121
|
-
*/
|
|
1122
|
-
let isHydrating = false;
|
|
1123
1101
|
let hasLoggedMismatchError = false;
|
|
1124
1102
|
const logMismatchError = () => {
|
|
1125
1103
|
if (hasLoggedMismatchError) return;
|
|
@@ -1144,9 +1122,7 @@ function createHydrationFunctions(rendererInternals) {
|
|
|
1144
1122
|
container._vnode = vnode;
|
|
1145
1123
|
return;
|
|
1146
1124
|
}
|
|
1147
|
-
isHydrating = true;
|
|
1148
1125
|
hydrateNode(container.firstChild, vnode, null, null, null);
|
|
1149
|
-
isHydrating = false;
|
|
1150
1126
|
flushPostFlushCbs();
|
|
1151
1127
|
container._vnode = vnode;
|
|
1152
1128
|
};
|
|
@@ -1386,7 +1362,6 @@ function isMismatchAllowed(el, allowedType) {
|
|
|
1386
1362
|
return list.includes(MismatchTypeString[allowedType]);
|
|
1387
1363
|
}
|
|
1388
1364
|
}
|
|
1389
|
-
|
|
1390
1365
|
//#endregion
|
|
1391
1366
|
//#region packages/runtime-core/src/hydrationStrategies.ts
|
|
1392
1367
|
let requestIdleCallback;
|
|
@@ -1475,7 +1450,6 @@ function forEachElement(node, cb) {
|
|
|
1475
1450
|
}
|
|
1476
1451
|
} else cb(node);
|
|
1477
1452
|
}
|
|
1478
|
-
|
|
1479
1453
|
//#endregion
|
|
1480
1454
|
//#region packages/runtime-core/src/apiAsyncComponent.ts
|
|
1481
1455
|
const isAsyncWrapper = (i) => !!i.type.__asyncLoader;
|
|
@@ -1604,11 +1578,10 @@ function performAsyncHydrate(el, instance, hydrate, getResolvedComp, load, hydra
|
|
|
1604
1578
|
if (getResolvedComp()) doHydrate();
|
|
1605
1579
|
else load().then(() => !instance.isUnmounted && doHydrate());
|
|
1606
1580
|
}
|
|
1607
|
-
|
|
1608
1581
|
//#endregion
|
|
1609
1582
|
//#region packages/runtime-core/src/components/KeepAlive.ts
|
|
1610
1583
|
const isKeepAlive = (vnode) => vnode.type.__isKeepAlive;
|
|
1611
|
-
const
|
|
1584
|
+
const KeepAlive = {
|
|
1612
1585
|
name: `KeepAlive`,
|
|
1613
1586
|
__isKeepAlive: true,
|
|
1614
1587
|
props: {
|
|
@@ -1744,7 +1717,6 @@ const KeepAliveImpl = {
|
|
|
1744
1717
|
};
|
|
1745
1718
|
}
|
|
1746
1719
|
};
|
|
1747
|
-
const KeepAlive = KeepAliveImpl;
|
|
1748
1720
|
function matches(pattern, name) {
|
|
1749
1721
|
if ((0, _vue_shared.isArray)(pattern)) return pattern.some((p) => matches(p, name));
|
|
1750
1722
|
else if ((0, _vue_shared.isString)(pattern)) return pattern.split(",").includes(name);
|
|
@@ -1822,7 +1794,6 @@ function deactivate(vnode, container, { m: move }, parentComponent, parentSuspen
|
|
|
1822
1794
|
instance.isDeactivated = true;
|
|
1823
1795
|
}, void 0, parentSuspense);
|
|
1824
1796
|
}
|
|
1825
|
-
|
|
1826
1797
|
//#endregion
|
|
1827
1798
|
//#region packages/runtime-core/src/apiLifecycle.ts
|
|
1828
1799
|
function injectHook(type, hook, target = currentInstance, prepend = false) {
|
|
@@ -1858,23 +1829,19 @@ const onRenderTracked = /* @__PURE__ */ createHook("rtc");
|
|
|
1858
1829
|
function onErrorCaptured(hook, target = currentInstance) {
|
|
1859
1830
|
injectHook("ec", hook, target);
|
|
1860
1831
|
}
|
|
1861
|
-
|
|
1862
|
-
//#endregion
|
|
1863
|
-
//#region packages/runtime-core/src/helpers/resolveAssets.ts
|
|
1864
|
-
const COMPONENTS = "components";
|
|
1865
1832
|
const DIRECTIVES = "directives";
|
|
1866
1833
|
/**
|
|
1867
1834
|
* @private
|
|
1868
1835
|
*/
|
|
1869
1836
|
function resolveComponent(name, maybeSelfReference) {
|
|
1870
|
-
return resolveAsset(
|
|
1837
|
+
return resolveAsset("components", name, true, maybeSelfReference) || name;
|
|
1871
1838
|
}
|
|
1872
1839
|
const NULL_DYNAMIC_COMPONENT = Symbol.for("v-ndc");
|
|
1873
1840
|
/**
|
|
1874
1841
|
* @private
|
|
1875
1842
|
*/
|
|
1876
1843
|
function resolveDynamicComponent(component) {
|
|
1877
|
-
if ((0, _vue_shared.isString)(component)) return resolveAsset(
|
|
1844
|
+
if ((0, _vue_shared.isString)(component)) return resolveAsset("components", component, false) || component;
|
|
1878
1845
|
else return component || NULL_DYNAMIC_COMPONENT;
|
|
1879
1846
|
}
|
|
1880
1847
|
/**
|
|
@@ -1887,7 +1854,7 @@ function resolveAsset(type, name, warnMissing = true, maybeSelfReference = false
|
|
|
1887
1854
|
const instance = currentRenderingInstance || currentInstance;
|
|
1888
1855
|
if (instance) {
|
|
1889
1856
|
const Component = instance.type;
|
|
1890
|
-
if (type ===
|
|
1857
|
+
if (type === "components") {
|
|
1891
1858
|
const selfName = getComponentName(Component, false);
|
|
1892
1859
|
if (selfName && (selfName === name || selfName === (0, _vue_shared.camelize)(name) || selfName === (0, _vue_shared.capitalize)((0, _vue_shared.camelize)(name)))) return Component;
|
|
1893
1860
|
}
|
|
@@ -1899,7 +1866,6 @@ function resolveAsset(type, name, warnMissing = true, maybeSelfReference = false
|
|
|
1899
1866
|
function resolve(registry, name) {
|
|
1900
1867
|
return registry && (registry[name] || registry[(0, _vue_shared.camelize)(name)] || registry[(0, _vue_shared.capitalize)((0, _vue_shared.camelize)(name))]);
|
|
1901
1868
|
}
|
|
1902
|
-
|
|
1903
1869
|
//#endregion
|
|
1904
1870
|
//#region packages/runtime-core/src/helpers/renderList.ts
|
|
1905
1871
|
/**
|
|
@@ -1936,7 +1902,6 @@ function renderList(source, renderItem, cache, index) {
|
|
|
1936
1902
|
if (cache) cache[index] = ret;
|
|
1937
1903
|
return ret;
|
|
1938
1904
|
}
|
|
1939
|
-
|
|
1940
1905
|
//#endregion
|
|
1941
1906
|
//#region packages/runtime-core/src/helpers/createSlots.ts
|
|
1942
1907
|
/**
|
|
@@ -1955,7 +1920,6 @@ function createSlots(slots, dynamicSlots) {
|
|
|
1955
1920
|
}
|
|
1956
1921
|
return slots;
|
|
1957
1922
|
}
|
|
1958
|
-
|
|
1959
1923
|
//#endregion
|
|
1960
1924
|
//#region packages/runtime-core/src/helpers/renderSlot.ts
|
|
1961
1925
|
/**
|
|
@@ -2002,7 +1966,6 @@ function ensureVaporSlotFallback(vnodes, fallback) {
|
|
|
2002
1966
|
if (!vaporSlot.fallback && fallback) vaporSlot.fallback = fallback;
|
|
2003
1967
|
}
|
|
2004
1968
|
}
|
|
2005
|
-
|
|
2006
1969
|
//#endregion
|
|
2007
1970
|
//#region packages/runtime-core/src/helpers/toHandlers.ts
|
|
2008
1971
|
/**
|
|
@@ -2014,7 +1977,6 @@ function toHandlers(obj, preserveCaseIfNecessary) {
|
|
|
2014
1977
|
for (const key in obj) ret[preserveCaseIfNecessary && /[A-Z]/.test(key) ? `on:${key}` : (0, _vue_shared.toHandlerKey)(key)] = obj[key];
|
|
2015
1978
|
return ret;
|
|
2016
1979
|
}
|
|
2017
|
-
|
|
2018
1980
|
//#endregion
|
|
2019
1981
|
//#region packages/runtime-core/src/componentPublicInstance.ts
|
|
2020
1982
|
/**
|
|
@@ -2120,7 +2082,6 @@ const RuntimeCompiledPublicInstanceProxyHandlers = /* @__PURE__ */ (0, _vue_shar
|
|
|
2120
2082
|
return key[0] !== "_" && !(0, _vue_shared.isGloballyAllowed)(key);
|
|
2121
2083
|
}
|
|
2122
2084
|
});
|
|
2123
|
-
|
|
2124
2085
|
//#endregion
|
|
2125
2086
|
//#region packages/runtime-core/src/apiSetupHelpers.ts
|
|
2126
2087
|
function defineProps() {
|
|
@@ -2152,6 +2113,22 @@ function defineExpose(exposed) {}
|
|
|
2152
2113
|
* @see {@link https://vuejs.org/api/sfc-script-setup.html#defineoptions}
|
|
2153
2114
|
*/
|
|
2154
2115
|
function defineOptions(options) {}
|
|
2116
|
+
/**
|
|
2117
|
+
* Vue `<script setup>` compiler macro for providing type hints to IDEs for
|
|
2118
|
+
* slot name and slot props type checking.
|
|
2119
|
+
*
|
|
2120
|
+
* Example usage:
|
|
2121
|
+
* ```ts
|
|
2122
|
+
* const slots = defineSlots<{
|
|
2123
|
+
* default(props: { msg: string }): any
|
|
2124
|
+
* }>()
|
|
2125
|
+
* ```
|
|
2126
|
+
*
|
|
2127
|
+
* This is only usable inside `<script setup>`, is compiled away in the
|
|
2128
|
+
* output and should **not** be actually called at runtime.
|
|
2129
|
+
*
|
|
2130
|
+
* @see {@link https://vuejs.org/api/sfc-script-setup.html#defineslots}
|
|
2131
|
+
*/
|
|
2155
2132
|
function defineSlots() {
|
|
2156
2133
|
return null;
|
|
2157
2134
|
}
|
|
@@ -2262,15 +2239,28 @@ function createPropsRestProxy(props, excludedKeys) {
|
|
|
2262
2239
|
*/
|
|
2263
2240
|
function withAsyncContext(getAwaitable) {
|
|
2264
2241
|
const ctx = getCurrentGenericInstance();
|
|
2242
|
+
const inSSRSetup = isInSSRComponentSetup;
|
|
2265
2243
|
let awaitable = getAwaitable();
|
|
2266
2244
|
setCurrentInstance(null, void 0);
|
|
2267
|
-
if (
|
|
2245
|
+
if (inSSRSetup) setInSSRSetupState(false);
|
|
2246
|
+
const restore = () => {
|
|
2268
2247
|
setCurrentInstance(ctx);
|
|
2248
|
+
if (inSSRSetup) setInSSRSetupState(true);
|
|
2249
|
+
};
|
|
2250
|
+
const cleanup = () => {
|
|
2251
|
+
setCurrentInstance(null, void 0);
|
|
2252
|
+
if (inSSRSetup) setInSSRSetupState(false);
|
|
2253
|
+
};
|
|
2254
|
+
if ((0, _vue_shared.isPromise)(awaitable)) awaitable = awaitable.catch((e) => {
|
|
2255
|
+
restore();
|
|
2256
|
+
Promise.resolve().then(() => Promise.resolve().then(cleanup));
|
|
2269
2257
|
throw e;
|
|
2270
2258
|
});
|
|
2271
|
-
return [awaitable, () =>
|
|
2259
|
+
return [awaitable, () => {
|
|
2260
|
+
restore();
|
|
2261
|
+
Promise.resolve().then(cleanup);
|
|
2262
|
+
}];
|
|
2272
2263
|
}
|
|
2273
|
-
|
|
2274
2264
|
//#endregion
|
|
2275
2265
|
//#region packages/runtime-core/src/componentOptions.ts
|
|
2276
2266
|
let shouldCacheAccess = true;
|
|
@@ -2473,7 +2463,6 @@ function mergeWatchOptions(to, from) {
|
|
|
2473
2463
|
for (const key in from) merged[key] = mergeAsArray(to[key], from[key]);
|
|
2474
2464
|
return merged;
|
|
2475
2465
|
}
|
|
2476
|
-
|
|
2477
2466
|
//#endregion
|
|
2478
2467
|
//#region packages/runtime-core/src/apiCreateApp.ts
|
|
2479
2468
|
function createAppContext() {
|
|
@@ -2586,7 +2575,6 @@ function createAppAPI(mount, unmount, getPublicInstance, render) {
|
|
|
2586
2575
|
* `app.runWithContext()`.
|
|
2587
2576
|
*/
|
|
2588
2577
|
let currentApp = null;
|
|
2589
|
-
|
|
2590
2578
|
//#endregion
|
|
2591
2579
|
//#region packages/runtime-core/src/helpers/useModel.ts
|
|
2592
2580
|
function useModel(props, name, options = _vue_shared.EMPTY_OBJ) {
|
|
@@ -2651,7 +2639,6 @@ function useModel(props, name, options = _vue_shared.EMPTY_OBJ) {
|
|
|
2651
2639
|
const getModelModifiers = (props, modelName, getter) => {
|
|
2652
2640
|
return getter(props, (0, _vue_shared.getModifierPropName)(modelName)) || getter(props, `${(0, _vue_shared.camelize)(modelName)}Modifiers`) || getter(props, `${(0, _vue_shared.hyphenate)(modelName)}Modifiers`);
|
|
2653
2641
|
};
|
|
2654
|
-
|
|
2655
2642
|
//#endregion
|
|
2656
2643
|
//#region packages/runtime-core/src/componentEmits.ts
|
|
2657
2644
|
function emit(instance, event, ...rawArgs) {
|
|
@@ -2725,7 +2712,6 @@ function isEmitListener(options, key) {
|
|
|
2725
2712
|
key = key.slice(2).replace(/Once$/, "");
|
|
2726
2713
|
return (0, _vue_shared.hasOwn)(options, key[0].toLowerCase() + key.slice(1)) || (0, _vue_shared.hasOwn)(options, (0, _vue_shared.hyphenate)(key)) || (0, _vue_shared.hasOwn)(options, key);
|
|
2727
2714
|
}
|
|
2728
|
-
|
|
2729
2715
|
//#endregion
|
|
2730
2716
|
//#region packages/runtime-core/src/componentRenderUtils.ts
|
|
2731
2717
|
function renderComponentRoot(instance) {
|
|
@@ -2847,7 +2833,6 @@ function updateHOCHostEl({ vnode, parent }, el) {
|
|
|
2847
2833
|
} else break;
|
|
2848
2834
|
}
|
|
2849
2835
|
}
|
|
2850
|
-
|
|
2851
2836
|
//#endregion
|
|
2852
2837
|
//#region packages/runtime-core/src/internalObject.ts
|
|
2853
2838
|
/**
|
|
@@ -2859,7 +2844,6 @@ function updateHOCHostEl({ vnode, parent }, el) {
|
|
|
2859
2844
|
const internalObjectProto = {};
|
|
2860
2845
|
const createInternalObject = () => Object.create(internalObjectProto);
|
|
2861
2846
|
const isInternalObject = (obj) => Object.getPrototypeOf(obj) === internalObjectProto;
|
|
2862
|
-
|
|
2863
2847
|
//#endregion
|
|
2864
2848
|
//#region packages/runtime-core/src/componentProps.ts
|
|
2865
2849
|
function initProps(instance, rawProps, isStateful, isSSR = false) {
|
|
@@ -3039,7 +3023,6 @@ function validatePropName(key) {
|
|
|
3039
3023
|
if (key[0] !== "$" && !(0, _vue_shared.isReservedProp)(key)) return true;
|
|
3040
3024
|
return false;
|
|
3041
3025
|
}
|
|
3042
|
-
|
|
3043
3026
|
//#endregion
|
|
3044
3027
|
//#region packages/runtime-core/src/componentSlots.ts
|
|
3045
3028
|
const isInternalKey = (key) => key === "_" || key === "_ctx" || key === "$stable";
|
|
@@ -3102,7 +3085,6 @@ const updateSlots = (instance, children, optimized) => {
|
|
|
3102
3085
|
for (const key in slots) if (!isInternalKey(key) && deletionComparisonTarget[key] == null) delete slots[key];
|
|
3103
3086
|
}
|
|
3104
3087
|
};
|
|
3105
|
-
|
|
3106
3088
|
//#endregion
|
|
3107
3089
|
//#region packages/runtime-core/src/renderer.ts
|
|
3108
3090
|
const MoveType = {
|
|
@@ -3165,7 +3147,7 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
3165
3147
|
processFragment(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
|
|
3166
3148
|
break;
|
|
3167
3149
|
case VaporSlot:
|
|
3168
|
-
getVaporInterface(parentComponent, n2).slot(n1, n2, container, anchor, parentComponent);
|
|
3150
|
+
getVaporInterface(parentComponent, n2).slot(n1, n2, container, anchor, parentComponent, parentSuspense);
|
|
3169
3151
|
break;
|
|
3170
3152
|
default: if (shapeFlag & 1) processElement(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
|
|
3171
3153
|
else if (shapeFlag & 6) processComponent(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
|
|
@@ -3441,7 +3423,7 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
3441
3423
|
if (isAsyncWrapperVNode && type.__asyncHydrate) type.__asyncHydrate(el, instance, hydrateSubTree);
|
|
3442
3424
|
else hydrateSubTree();
|
|
3443
3425
|
} else {
|
|
3444
|
-
if (root.ce && root.ce._hasShadowRoot()) root.ce._injectChildStyle(type);
|
|
3426
|
+
if (root.ce && root.ce._hasShadowRoot()) root.ce._injectChildStyle(type, instance.parent ? instance.parent.type : void 0);
|
|
3445
3427
|
const subTree = instance.subTree = renderComponentRoot(instance);
|
|
3446
3428
|
patch(null, subTree, container, anchor, instance, parentSuspense, namespace);
|
|
3447
3429
|
initialVNode.el = subTree.el;
|
|
@@ -3924,12 +3906,11 @@ function resolveAsyncComponentPlaceholder(anchorVnode) {
|
|
|
3924
3906
|
if (instance) return resolveAsyncComponentPlaceholder(instance.subTree);
|
|
3925
3907
|
return null;
|
|
3926
3908
|
}
|
|
3927
|
-
|
|
3928
3909
|
//#endregion
|
|
3929
3910
|
//#region packages/runtime-core/src/components/Suspense.ts
|
|
3930
3911
|
const isSuspense = (type) => type.__isSuspense;
|
|
3931
3912
|
let suspenseId = 0;
|
|
3932
|
-
const
|
|
3913
|
+
const Suspense = {
|
|
3933
3914
|
name: "Suspense",
|
|
3934
3915
|
__isSuspense: true,
|
|
3935
3916
|
process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals) {
|
|
@@ -3947,7 +3928,6 @@ const SuspenseImpl = {
|
|
|
3947
3928
|
hydrate: hydrateSuspense,
|
|
3948
3929
|
normalize: normalizeSuspenseChildren
|
|
3949
3930
|
};
|
|
3950
|
-
const Suspense = SuspenseImpl;
|
|
3951
3931
|
function triggerEvent(vnode, name) {
|
|
3952
3932
|
const eventListener = vnode.props && vnode.props[name];
|
|
3953
3933
|
if ((0, _vue_shared.isFunction)(eventListener)) eventListener();
|
|
@@ -4195,7 +4175,6 @@ function isVNodeSuspensible(vnode) {
|
|
|
4195
4175
|
const suspensible = vnode.props && vnode.props.suspensible;
|
|
4196
4176
|
return suspensible != null && suspensible !== false;
|
|
4197
4177
|
}
|
|
4198
|
-
|
|
4199
4178
|
//#endregion
|
|
4200
4179
|
//#region packages/runtime-core/src/vnode.ts
|
|
4201
4180
|
const Fragment = Symbol.for("v-fgt");
|
|
@@ -4482,7 +4461,6 @@ function mergeProps(...args) {
|
|
|
4482
4461
|
function invokeVNodeHook(hook, instance, vnode, prevVNode = null) {
|
|
4483
4462
|
callWithAsyncErrorHandling(hook, instance, 7, [vnode, prevVNode]);
|
|
4484
4463
|
}
|
|
4485
|
-
|
|
4486
4464
|
//#endregion
|
|
4487
4465
|
//#region packages/runtime-core/src/componentCurrentInstance.ts
|
|
4488
4466
|
/**
|
|
@@ -4544,7 +4522,6 @@ const useInstanceOption = (key, silent = false) => {
|
|
|
4544
4522
|
value: instance[key]
|
|
4545
4523
|
};
|
|
4546
4524
|
};
|
|
4547
|
-
|
|
4548
4525
|
//#endregion
|
|
4549
4526
|
//#region packages/runtime-core/src/component.ts
|
|
4550
4527
|
const emptyAppContext = /* @__PURE__ */ createAppContext();
|
|
@@ -4754,13 +4731,11 @@ function getComponentName(Component, includeInferred = true) {
|
|
|
4754
4731
|
function isClassComponent(value) {
|
|
4755
4732
|
return (0, _vue_shared.isFunction)(value) && "__vccOpts" in value;
|
|
4756
4733
|
}
|
|
4757
|
-
|
|
4758
4734
|
//#endregion
|
|
4759
4735
|
//#region packages/runtime-core/src/apiComputed.ts
|
|
4760
4736
|
const computed = (getterOrOptions, debugOptions) => {
|
|
4761
4737
|
return (0, _vue_reactivity.computed)(getterOrOptions, debugOptions, isInSSRComponentSetup);
|
|
4762
4738
|
};
|
|
4763
|
-
|
|
4764
4739
|
//#endregion
|
|
4765
4740
|
//#region packages/runtime-core/src/h.ts
|
|
4766
4741
|
function h(type, propsOrChildren, children) {
|
|
@@ -4780,7 +4755,6 @@ function h(type, propsOrChildren, children) {
|
|
|
4780
4755
|
setBlockTracking(1);
|
|
4781
4756
|
}
|
|
4782
4757
|
}
|
|
4783
|
-
|
|
4784
4758
|
//#endregion
|
|
4785
4759
|
//#region packages/runtime-core/src/customFormatter.ts
|
|
4786
4760
|
function initCustomFormatter() {
|
|
@@ -4792,7 +4766,6 @@ function initCustomFormatter() {
|
|
|
4792
4766
|
if (Comp.mixins && Comp.mixins.some((m) => isKeyOfType(m, key, type))) return true;
|
|
4793
4767
|
}
|
|
4794
4768
|
}
|
|
4795
|
-
|
|
4796
4769
|
//#endregion
|
|
4797
4770
|
//#region packages/runtime-core/src/helpers/withMemo.ts
|
|
4798
4771
|
function withMemo(memo, render, cache, index) {
|
|
@@ -4810,10 +4783,9 @@ function isMemoSame(cached, memo) {
|
|
|
4810
4783
|
if (isBlockTreeEnabled > 0 && currentBlock) currentBlock.push(cached);
|
|
4811
4784
|
return true;
|
|
4812
4785
|
}
|
|
4813
|
-
|
|
4814
4786
|
//#endregion
|
|
4815
4787
|
//#region packages/runtime-core/src/index.ts
|
|
4816
|
-
const version = "3.6.0-beta.
|
|
4788
|
+
const version = "3.6.0-beta.8";
|
|
4817
4789
|
const warn = _vue_shared.NOOP;
|
|
4818
4790
|
/**
|
|
4819
4791
|
* Runtime error messages. Only exposed in dev or esm builds.
|
|
@@ -4822,7 +4794,11 @@ const warn = _vue_shared.NOOP;
|
|
|
4822
4794
|
const ErrorTypeStrings = ErrorTypeStrings$1;
|
|
4823
4795
|
const devtools = void 0;
|
|
4824
4796
|
const setDevtoolsHook = _vue_shared.NOOP;
|
|
4825
|
-
|
|
4797
|
+
/**
|
|
4798
|
+
* SSR utils for \@vue/server-renderer. Only exposed in ssr-possible builds.
|
|
4799
|
+
* @internal
|
|
4800
|
+
*/
|
|
4801
|
+
const ssrUtils = {
|
|
4826
4802
|
createComponentInstance,
|
|
4827
4803
|
setupComponent,
|
|
4828
4804
|
renderComponentRoot,
|
|
@@ -4835,11 +4811,6 @@ const _ssrUtils = {
|
|
|
4835
4811
|
popWarningContext
|
|
4836
4812
|
};
|
|
4837
4813
|
/**
|
|
4838
|
-
* SSR utils for \@vue/server-renderer. Only exposed in ssr-possible builds.
|
|
4839
|
-
* @internal
|
|
4840
|
-
*/
|
|
4841
|
-
const ssrUtils = _ssrUtils;
|
|
4842
|
-
/**
|
|
4843
4814
|
* @internal only exposed in compat builds
|
|
4844
4815
|
*/
|
|
4845
4816
|
const resolveFilter = null;
|
|
@@ -4848,7 +4819,6 @@ const resolveFilter = null;
|
|
|
4848
4819
|
*/
|
|
4849
4820
|
const compatUtils = null;
|
|
4850
4821
|
const DeprecationTypes = null;
|
|
4851
|
-
|
|
4852
4822
|
//#endregion
|
|
4853
4823
|
exports.BaseTransition = BaseTransition;
|
|
4854
4824
|
exports.BaseTransitionPropsValidators = BaseTransitionPropsValidators;
|
|
@@ -4999,4 +4969,4 @@ exports.withCtx = withCtx;
|
|
|
4999
4969
|
exports.withDefaults = withDefaults;
|
|
5000
4970
|
exports.withDirectives = withDirectives;
|
|
5001
4971
|
exports.withMemo = withMemo;
|
|
5002
|
-
exports.withScopeId = withScopeId;
|
|
4972
|
+
exports.withScopeId = withScopeId;
|
package/dist/runtime-core.d.ts
CHANGED
|
@@ -259,6 +259,22 @@ export declare function defineOptions<RawBindings = {}, D = {}, C extends Comput
|
|
|
259
259
|
*/
|
|
260
260
|
slots?: never;
|
|
261
261
|
}): void;
|
|
262
|
+
/**
|
|
263
|
+
* Vue `<script setup>` compiler macro for providing type hints to IDEs for
|
|
264
|
+
* slot name and slot props type checking.
|
|
265
|
+
*
|
|
266
|
+
* Example usage:
|
|
267
|
+
* ```ts
|
|
268
|
+
* const slots = defineSlots<{
|
|
269
|
+
* default(props: { msg: string }): any
|
|
270
|
+
* }>()
|
|
271
|
+
* ```
|
|
272
|
+
*
|
|
273
|
+
* This is only usable inside `<script setup>`, is compiled away in the
|
|
274
|
+
* output and should **not** be actually called at runtime.
|
|
275
|
+
*
|
|
276
|
+
* @see {@link https://vuejs.org/api/sfc-script-setup.html#defineslots}
|
|
277
|
+
*/
|
|
262
278
|
export declare function defineSlots<S extends Record<string, any> = Record<string, any>>(): StrictUnwrapSlotsType<SlotsType<S>>;
|
|
263
279
|
export type ModelRef<T, M extends PropertyKey = string, G = T, S = T> = Ref$1<G, S> & [ModelRef<T, M, G, S>, Record<M, true | undefined>];
|
|
264
280
|
type DefineModelOptions<T = any, G = T, S = T> = {
|
|
@@ -440,7 +456,7 @@ export type ComponentPublicInstance<P = {}, B = {}, D = {}, C extends ComputedOp
|
|
|
440
456
|
$: ComponentInternalInstance;
|
|
441
457
|
$data: D;
|
|
442
458
|
$props: MakeDefaultsOptional extends true ? Partial<Defaults> & Omit<Prettify<P> & PublicProps, keyof Defaults> : Prettify<P> & PublicProps;
|
|
443
|
-
$attrs:
|
|
459
|
+
$attrs: Attrs;
|
|
444
460
|
$refs: Data & TypeRefs;
|
|
445
461
|
$slots: UnwrapSlotsType<S>;
|
|
446
462
|
$root: ComponentPublicInstance | null;
|
|
@@ -593,6 +609,7 @@ export declare const BaseTransition: {
|
|
|
593
609
|
};
|
|
594
610
|
};
|
|
595
611
|
export interface TransitionHooksContext {
|
|
612
|
+
isLeaving: () => boolean;
|
|
596
613
|
setLeavingNodeCache: (node: any) => void;
|
|
597
614
|
unsetLeavingNodeCache: (node: any) => void;
|
|
598
615
|
earlyRemove: () => void;
|
|
@@ -962,7 +979,7 @@ export type DefineComponent<PropsOrPropOptions = {}, RawBindings = {}, D = {}, C
|
|
|
962
979
|
export type DefineSetupFnComponent<P extends Record<string, any>, E extends EmitsOptions = {}, S extends SlotsType = SlotsType, Props = P & EmitsToProps<E>, PP = PublicProps> = new (props: Props & PP) => CreateComponentPublicInstanceWithMixins<Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, E, PP, {}, false, {}, S>;
|
|
963
980
|
type ToResolvedProps<Props, Emits extends EmitsOptions> = Readonly<Props> & Readonly<EmitsToProps<Emits>>;
|
|
964
981
|
export declare function defineComponent<Props extends Record<string, any>, E extends EmitsOptions = {}, EE extends string = string, S extends SlotsType = {}>(setup: (props: Props, ctx: SetupContext<E, S>) => RenderFunction | Promise<RenderFunction>, options?: Pick<ComponentOptions, "name" | "inheritAttrs"> & {
|
|
965
|
-
props?: (keyof Props)[];
|
|
982
|
+
props?: (keyof NoInfer<Props>)[];
|
|
966
983
|
emits?: E | EE[];
|
|
967
984
|
slots?: S;
|
|
968
985
|
}): DefineSetupFnComponent<Props, E, S>;
|
|
@@ -1305,6 +1322,11 @@ export declare const getCurrentInstance: () => ComponentInternalInstance | null;
|
|
|
1305
1322
|
//#region temp/packages/runtime-core/src/component.d.ts
|
|
1306
1323
|
type Data = Record<string, unknown>;
|
|
1307
1324
|
/**
|
|
1325
|
+
* For extending allowed non-declared attrs on components in TSX
|
|
1326
|
+
*/
|
|
1327
|
+
export interface AllowedAttrs {}
|
|
1328
|
+
export type Attrs = Data & AllowedAttrs;
|
|
1329
|
+
/**
|
|
1308
1330
|
* Public utility type for extracting the instance type of a component.
|
|
1309
1331
|
* Works with all valid component definition types. This is intended to replace
|
|
1310
1332
|
* the usage of `InstanceType<typeof Comp>` which only works for
|
|
@@ -1375,6 +1397,10 @@ export interface ComponentInternalOptions {
|
|
|
1375
1397
|
*/
|
|
1376
1398
|
__vapor?: boolean;
|
|
1377
1399
|
/**
|
|
1400
|
+
* whether this vapor component has multiple root nodes
|
|
1401
|
+
*/
|
|
1402
|
+
__multiRoot?: boolean;
|
|
1403
|
+
/**
|
|
1378
1404
|
* indicates keep-alive component
|
|
1379
1405
|
*/
|
|
1380
1406
|
__isKeepAlive?: boolean;
|
|
@@ -1427,7 +1453,7 @@ export type ConcreteComponent<Props = {}, RawBindings = any, D = any, C extends
|
|
|
1427
1453
|
export type Component<PropsOrInstance = any, RawBindings = any, D = any, C extends ComputedOptions = ComputedOptions, M extends MethodOptions = MethodOptions, E extends EmitsOptions | Record<string, any[]> = {}, S extends Record<string, any> = any> = ConcreteComponent<PropsOrInstance, RawBindings, D, C, M, E, S> | ComponentPublicInstanceConstructor<PropsOrInstance>;
|
|
1428
1454
|
export type LifecycleHook<TFn = Function> = (TFn & SchedulerJob)[] | null;
|
|
1429
1455
|
export type SetupContext<E = EmitsOptions, S extends SlotsType = {}> = E extends any ? {
|
|
1430
|
-
attrs:
|
|
1456
|
+
attrs: Attrs;
|
|
1431
1457
|
slots: UnwrapSlotsType<S>;
|
|
1432
1458
|
emit: EmitFn<E>;
|
|
1433
1459
|
expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed) => void;
|