vike 0.4.217 → 0.4.218-commit-01a099d
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/cjs/__internal/index.js +9 -8
- package/dist/cjs/node/api/build.js +20 -11
- package/dist/cjs/node/api/index.js +17 -7
- package/dist/cjs/node/api/prepareViteApiCall.js +109 -26
- package/dist/cjs/node/api/utils.js +2 -0
- package/dist/cjs/node/cli/entry.js +17 -7
- package/dist/cjs/node/plugin/index.js +6 -5
- package/dist/cjs/node/plugin/plugins/autoFullBuild.js +2 -3
- package/dist/cjs/node/plugin/plugins/baseUrls.js +20 -18
- package/dist/cjs/node/plugin/plugins/buildConfig.js +2 -2
- package/dist/cjs/node/plugin/plugins/{importBuild → buildEntry}/index.js +16 -17
- package/dist/cjs/node/plugin/plugins/commonConfig.js +6 -6
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +1 -3
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.js +22 -111
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +188 -13
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigs.js +2 -1
- package/dist/cjs/node/plugin/plugins/setGlobalContext.js +1 -1
- package/dist/cjs/node/plugin/plugins/{vite6HmrRegressionWorkaround.js → workaroundVite6HmrRegression.js} +3 -3
- package/dist/cjs/node/plugin/shared/getHttpRequestAsyncStore.js +17 -7
- package/dist/cjs/node/prerender/isPrerenderEnabled.js +8 -0
- package/dist/cjs/node/prerender/runPrerender.js +21 -12
- package/dist/cjs/node/runtime/globalContext.js +44 -21
- package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +2 -2
- package/dist/cjs/node/runtime/index-common.js +0 -15
- package/dist/cjs/node/runtime/onLoad.js +17 -3
- package/dist/cjs/node/runtime/renderPage/analyzePage.js +2 -2
- package/dist/cjs/node/runtime/renderPage/createHttpResponse/getCacheControl.js +2 -2
- package/dist/cjs/node/runtime/renderPage/loadUserFilesServerSide.js +1 -1
- package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +3 -3
- package/dist/cjs/node/runtime-dev/index.js +17 -7
- package/dist/cjs/node/shared/resolveBase.js +2 -2
- package/dist/cjs/shared/getPageFiles/analyzeClientSide.js +3 -3
- package/dist/cjs/shared/getPageFiles/{setPageFiles.js → getPageFiles.js} +2 -3
- package/dist/cjs/shared/getPageFiles.js +3 -9
- package/dist/cjs/shared/hooks/getHook.js +3 -3
- package/dist/cjs/shared/{getPageFiles/getExports.js → page-configs/getPageConfigUserFriendly.js} +113 -81
- package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +79 -54
- package/dist/cjs/shared/route/loadPageRoutes.js +3 -3
- package/dist/cjs/shared/utils.js +1 -0
- package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
- package/dist/cjs/utils/assert.js +4 -3
- package/dist/esm/__internal/index.d.ts +3 -5
- package/dist/esm/__internal/index.js +4 -5
- package/dist/esm/client/client-routing-runtime/createPageContext.js +7 -1
- package/dist/esm/client/client-routing-runtime/entry.d.ts +1 -1
- package/dist/esm/client/client-routing-runtime/entry.js +0 -1
- package/dist/esm/client/client-routing-runtime/getPageContextCurrent.d.ts +2 -2
- package/dist/esm/client/client-routing-runtime/getPageContextFromHooks.d.ts +4 -4
- package/dist/esm/client/client-routing-runtime/getPageContextFromHooks.js +1 -1
- package/dist/esm/client/client-routing-runtime/prefetch/getPrefetchSettings.d.ts +2 -2
- package/dist/esm/client/client-routing-runtime/prefetch.d.ts +2 -2
- package/dist/esm/client/client-routing-runtime/prefetch.js +2 -2
- package/dist/esm/client/server-routing-runtime/entry.d.ts +1 -1
- package/dist/esm/client/server-routing-runtime/entry.js +0 -1
- package/dist/esm/client/server-routing-runtime/getPageContext.d.ts +1 -1
- package/dist/esm/client/server-routing-runtime/getPageContext.js +8 -2
- package/dist/esm/client/shared/executeOnRenderClientHook.d.ts +2 -2
- package/dist/esm/client/shared/loadUserFilesClientSide.d.ts +2 -2
- package/dist/esm/client/shared/loadUserFilesClientSide.js +2 -2
- package/dist/esm/client/shared/preparePageContextForUserConsumptionClientSide.d.ts +2 -2
- package/dist/esm/node/api/build.js +3 -4
- package/dist/esm/node/api/prepareViteApiCall.d.ts +9 -3
- package/dist/esm/node/api/prepareViteApiCall.js +91 -21
- package/dist/esm/node/api/utils.d.ts +2 -0
- package/dist/esm/node/api/utils.js +2 -0
- package/dist/esm/node/cli/parseCli.d.ts +1 -1
- package/dist/esm/node/plugin/index.d.ts +1 -1
- package/dist/esm/node/plugin/index.js +6 -5
- package/dist/esm/node/plugin/plugins/autoFullBuild.js +2 -3
- package/dist/esm/node/plugin/plugins/baseUrls.d.ts +1 -2
- package/dist/esm/node/plugin/plugins/baseUrls.js +21 -19
- package/dist/esm/node/plugin/plugins/buildConfig.js +2 -2
- package/dist/esm/node/plugin/plugins/{importBuild → buildEntry}/getVikeManifest.d.ts +1 -1
- package/dist/esm/node/plugin/plugins/{importBuild → buildEntry}/index.d.ts +2 -2
- package/dist/esm/node/plugin/plugins/{importBuild → buildEntry}/index.js +16 -17
- package/dist/esm/node/plugin/plugins/commonConfig.d.ts +7 -1
- package/dist/esm/node/plugin/plugins/commonConfig.js +2 -2
- package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.d.ts +1 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +1 -3
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.d.ts +1 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.js +23 -112
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +99 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +188 -13
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigs.js +2 -1
- package/dist/esm/node/plugin/plugins/setGlobalContext.js +1 -1
- package/dist/esm/node/plugin/plugins/workaroundVite6HmrRegression.d.ts +3 -0
- package/dist/esm/node/plugin/plugins/{vite6HmrRegressionWorkaround.js → workaroundVite6HmrRegression.js} +3 -3
- package/dist/esm/node/plugin/shared/getEnvVarObject.d.ts +1 -1
- package/dist/esm/node/prerender/isPrerenderEnabled.d.ts +3 -0
- package/dist/esm/node/prerender/isPrerenderEnabled.js +6 -0
- package/dist/esm/node/prerender/runPrerender.d.ts +1 -2
- package/dist/esm/node/prerender/runPrerender.js +3 -4
- package/dist/esm/node/runtime/globalContext.d.ts +4 -4
- package/dist/esm/node/runtime/globalContext.js +44 -21
- package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.js +1 -1
- package/dist/esm/node/runtime/index-common.d.ts +0 -1
- package/dist/esm/node/runtime/index-common.js +0 -15
- package/dist/esm/node/runtime/index-deprecated.d.ts +1 -0
- package/dist/esm/node/runtime/onLoad.js +16 -2
- package/dist/esm/node/runtime/renderPage/analyzePage.js +1 -1
- package/dist/esm/node/runtime/renderPage/createHttpResponse/getCacheControl.js +1 -1
- package/dist/esm/node/runtime/renderPage/executeOnBeforeRenderAndDataHooks.d.ts +2 -2
- package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.js +2 -2
- package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.d.ts +2 -2
- package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +5 -5
- package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +3 -3
- package/dist/esm/node/shared/resolveBase.js +2 -2
- package/dist/esm/shared/getPageFiles/analyzeClientSide.js +1 -1
- package/dist/esm/shared/getPageFiles/{setPageFiles.js → getPageFiles.js} +2 -3
- package/dist/esm/shared/getPageFiles.d.ts +2 -5
- package/dist/esm/shared/getPageFiles.js +1 -4
- package/dist/esm/shared/hooks/getHook.d.ts +3 -3
- package/dist/esm/shared/hooks/getHook.js +1 -1
- package/dist/esm/shared/page-configs/Config.d.ts +1 -1
- package/dist/esm/shared/page-configs/PageConfig.d.ts +7 -3
- package/dist/esm/shared/{getPageFiles/getExports.d.ts → page-configs/getPageConfigUserFriendly.d.ts} +23 -12
- package/dist/esm/shared/{getPageFiles/getExports.js → page-configs/getPageConfigUserFriendly.js} +112 -80
- package/dist/esm/shared/page-configs/serialize/serializeConfigValues.d.ts +28 -4
- package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +79 -54
- package/dist/esm/shared/route/executeGuardHook.d.ts +2 -2
- package/dist/esm/shared/route/loadPageRoutes.js +1 -1
- package/dist/esm/shared/types.d.ts +1 -1
- package/dist/esm/shared/utils.d.ts +1 -0
- package/dist/esm/shared/utils.js +1 -0
- package/dist/esm/types/index.d.ts +1 -1
- package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
- package/dist/esm/utils/PROJECT_VERSION.js +1 -1
- package/dist/esm/utils/assert.js +4 -3
- package/dist/esm/utils/projectInfo.d.ts +1 -1
- package/package.json +2 -21
- package/__internal/loadImportBuild.js +0 -3
- package/__internal/setup.js +0 -3
- package/dist/cjs/node/plugin/plugins/commonConfig/pluginName.js +0 -4
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolveVikeConfigGlobal.js +0 -128
- package/dist/cjs/node/runtime/globalContext/loadImportBuild.js +0 -25
- package/dist/cjs/node/runtime/page-files/getPageFilesExports.js +0 -22
- package/dist/cjs/node/runtime/page-files/setup.js +0 -5
- package/dist/esm/client/client-routing-runtime/pageFiles.d.ts +0 -1
- package/dist/esm/client/client-routing-runtime/pageFiles.js +0 -4
- package/dist/esm/client/server-routing-runtime/pageFiles.d.ts +0 -1
- package/dist/esm/client/server-routing-runtime/pageFiles.js +0 -4
- package/dist/esm/node/plugin/plugins/commonConfig/pluginName.d.ts +0 -1
- package/dist/esm/node/plugin/plugins/commonConfig/pluginName.js +0 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolveVikeConfigGlobal.d.ts +0 -104
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolveVikeConfigGlobal.js +0 -123
- package/dist/esm/node/plugin/plugins/vite6HmrRegressionWorkaround.d.ts +0 -3
- package/dist/esm/node/runtime/globalContext/loadImportBuild.d.ts +0 -18
- package/dist/esm/node/runtime/globalContext/loadImportBuild.js +0 -23
- package/dist/esm/node/runtime/page-files/getPageFilesExports.d.ts +0 -2
- package/dist/esm/node/runtime/page-files/getPageFilesExports.js +0 -20
- package/dist/esm/node/runtime/page-files/setup.d.ts +0 -1
- package/dist/esm/node/runtime/page-files/setup.js +0 -3
- package/dist/cjs/node/plugin/plugins/{importBuild → buildEntry}/getVikeManifest.js +0 -0
- package/dist/cjs/shared/page-configs/{getConfigValue.js → getConfigValueRuntime.js} +0 -0
- package/dist/esm/node/plugin/plugins/{importBuild → buildEntry}/getVikeManifest.js +0 -0
- package/dist/esm/shared/getPageFiles/{setPageFiles.d.ts → getPageFiles.d.ts} +1 -1
- /package/dist/esm/shared/page-configs/{getConfigValue.d.ts → getConfigValueRuntime.d.ts} +0 -0
- /package/dist/esm/shared/page-configs/{getConfigValue.js → getConfigValueRuntime.js} +0 -0
|
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.serializeConfigValues = serializeConfigValues;
|
|
7
|
+
exports.getConfigValuesBase = getConfigValuesBase;
|
|
7
8
|
const assertSetup_js_1 = require("../../../utils/assertSetup.js");
|
|
8
9
|
const utils_js_1 = require("../../../node/plugin/utils.js");
|
|
9
10
|
const addImportStatement_js_1 = require("../../../node/plugin/plugins/importUserCode/addImportStatement.js");
|
|
@@ -20,74 +21,42 @@ const REPLACE_ME_AFTER = '__VIKE__REPLACE_ME_AFTER__';
|
|
|
20
21
|
function serializeConfigValues(pageConfig, importStatements, isEnvMatch, { isEager }, tabspace) {
|
|
21
22
|
const lines = [];
|
|
22
23
|
tabspace += ' ';
|
|
23
|
-
|
|
24
|
-
if (
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
return;
|
|
29
|
-
const valueData = serializeWithJson(configValuesComputed.value, configName, null, importStatements);
|
|
30
|
-
const configValueBase = {
|
|
31
|
-
type: 'computed',
|
|
32
|
-
definedAtData: null
|
|
33
|
-
};
|
|
34
|
-
serializeConfigValue(configValueBase, valueData, configName, lines, tabspace);
|
|
35
|
-
});
|
|
36
|
-
Object.entries(pageConfig.configValueSources).forEach(([configName, sources]) => {
|
|
37
|
-
const configDef = pageConfig.configDefinitions[configName];
|
|
38
|
-
(0, utils_js_1.assert)(configDef);
|
|
39
|
-
if (isEager !== !!configDef.eager)
|
|
40
|
-
return;
|
|
41
|
-
if (!configDef.cumulative) {
|
|
42
|
-
const configValueSource = sources[0];
|
|
43
|
-
(0, utils_js_1.assert)(configValueSource);
|
|
44
|
-
(0, utils_js_1.assert)(sources.slice(1).every((s) => s.isOverriden === true));
|
|
45
|
-
if (!isEnvMatch(configValueSource.configEnv))
|
|
46
|
-
return;
|
|
47
|
-
const { valueData, definedAtFile } = serializeConfigValueSource(configValueSource, configName, importStatements);
|
|
48
|
-
const configValueBase = {
|
|
49
|
-
type: 'standard',
|
|
50
|
-
definedAtData: definedAtFile
|
|
51
|
-
};
|
|
24
|
+
getConfigValuesBase(pageConfig, isEnvMatch, { isEager }).forEach((entry) => {
|
|
25
|
+
if (entry.configValueBase.type === 'computed') {
|
|
26
|
+
(0, utils_js_1.assert)('value' in entry); // Help TS
|
|
27
|
+
const { configValueBase, value, configName } = entry;
|
|
28
|
+
const valueData = getValueSerializedWithJson(value, configName, configValueBase.definedAtData, importStatements);
|
|
52
29
|
serializeConfigValue(configValueBase, valueData, configName, lines, tabspace);
|
|
53
30
|
}
|
|
54
|
-
|
|
31
|
+
if (entry.configValueBase.type === 'standard') {
|
|
32
|
+
(0, utils_js_1.assert)('sourceRelevant' in entry); // Help TS
|
|
33
|
+
const { configValueBase, sourceRelevant, configName } = entry;
|
|
34
|
+
const valueData = getValueSerializedFromSource(sourceRelevant, configName, importStatements);
|
|
35
|
+
serializeConfigValue(configValueBase, valueData, configName, lines, tabspace);
|
|
36
|
+
}
|
|
37
|
+
if (entry.configValueBase.type === 'cumulative') {
|
|
38
|
+
(0, utils_js_1.assert)('sourcesRelevant' in entry); // Help TS
|
|
39
|
+
const { configValueBase, sourcesRelevant, configName } = entry;
|
|
55
40
|
const valueDataList = [];
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
.filter((s) => !s.isOverriden)
|
|
59
|
-
.forEach((configValueSource) => {
|
|
60
|
-
if (!isEnvMatch(configValueSource.configEnv))
|
|
61
|
-
return;
|
|
62
|
-
const { valueData, definedAtFile } = serializeConfigValueSource(configValueSource, configName, importStatements);
|
|
41
|
+
sourcesRelevant.forEach((source) => {
|
|
42
|
+
const valueData = getValueSerializedFromSource(source, configName, importStatements);
|
|
63
43
|
valueDataList.push(valueData);
|
|
64
|
-
definedAtData.push(definedAtFile);
|
|
65
44
|
});
|
|
66
|
-
if (valueDataList.length === 0)
|
|
67
|
-
return;
|
|
68
|
-
const configValueBase = {
|
|
69
|
-
type: 'cumulative',
|
|
70
|
-
definedAtData
|
|
71
|
-
};
|
|
72
45
|
serializeConfigValue(configValueBase, valueDataList, configName, lines, tabspace);
|
|
73
46
|
}
|
|
74
47
|
});
|
|
75
48
|
return lines;
|
|
76
49
|
}
|
|
77
|
-
function
|
|
50
|
+
function getValueSerializedFromSource(configValueSource, configName, importStatements) {
|
|
78
51
|
(0, utils_js_1.assert)(configValueSource.isOverriden === false);
|
|
79
52
|
let valueData;
|
|
80
53
|
if ('value' in configValueSource) {
|
|
81
|
-
valueData =
|
|
54
|
+
valueData = getValueSerializedWithJson(configValueSource.value, configName, configValueSource.definedAtFilePath, importStatements);
|
|
82
55
|
}
|
|
83
56
|
else {
|
|
84
|
-
valueData =
|
|
57
|
+
valueData = getValueSerializedWithImport(configValueSource, importStatements);
|
|
85
58
|
}
|
|
86
|
-
|
|
87
|
-
filePathToShowToUser: configValueSource.definedAtFilePath.filePathToShowToUser,
|
|
88
|
-
fileExportPathToShowToUser: configValueSource.definedAtFilePath.fileExportPathToShowToUser
|
|
89
|
-
};
|
|
90
|
-
return { valueData, definedAtFile };
|
|
59
|
+
return valueData;
|
|
91
60
|
}
|
|
92
61
|
function serializeConfigValue(configValueBase, valueData, configName, lines, tabspace) {
|
|
93
62
|
lineAdd(`[${JSON.stringify(configName)}]: {`);
|
|
@@ -131,7 +100,7 @@ function serializeConfigValue(configValueBase, valueData, configName, lines, tab
|
|
|
131
100
|
tabspace = tabspace.slice(2);
|
|
132
101
|
}
|
|
133
102
|
}
|
|
134
|
-
function
|
|
103
|
+
function getValueSerializedWithImport(configValueSource, importStatements) {
|
|
135
104
|
(0, utils_js_1.assert)(!configValueSource.valueIsFilePath);
|
|
136
105
|
const { valueIsImportedAtRuntime, valueIsDefinedByPlusFile, definedAtFilePath } = configValueSource;
|
|
137
106
|
(0, utils_js_1.assert)(valueIsImportedAtRuntime);
|
|
@@ -144,7 +113,7 @@ function serializeWithImport(configValueSource, importStatements) {
|
|
|
144
113
|
valueAsJsCode: importName
|
|
145
114
|
};
|
|
146
115
|
}
|
|
147
|
-
function
|
|
116
|
+
function getValueSerializedWithJson(value, configName, definedAtData, importStatements) {
|
|
148
117
|
const valueAsJsCode = valueToJson(value, configName, definedAtData, importStatements);
|
|
149
118
|
return {
|
|
150
119
|
type: 'js-serialized',
|
|
@@ -201,3 +170,59 @@ function logJsonSerializeError(err, configName, definedAtData) {
|
|
|
201
170
|
(0, utils_js_1.assert)(configValueFilePathToShowToUser);
|
|
202
171
|
(0, utils_js_1.assertUsage)(false, `${picocolors_1.default.cyan(configName)} defined by ${configValueFilePathToShowToUser} must be defined over a so-called "pointer import", see https://vike.dev/config#pointer-imports`);
|
|
203
172
|
}
|
|
173
|
+
function getConfigValuesBase(pageConfig, isEnvMatch, { isEager } = {}) {
|
|
174
|
+
const fromComputed = Object.entries(pageConfig.configValuesComputed ?? {}).map(([configName, valueInfo]) => {
|
|
175
|
+
if (!isEnvMatch(valueInfo.configEnv))
|
|
176
|
+
return 'SKIP';
|
|
177
|
+
// Is there a use case for overriding computed values? If yes, then configValeSources has higher precedence
|
|
178
|
+
if (pageConfig.configValueSources[configName])
|
|
179
|
+
return 'SKIP';
|
|
180
|
+
const configValueBase = {
|
|
181
|
+
type: 'computed',
|
|
182
|
+
definedAtData: null
|
|
183
|
+
};
|
|
184
|
+
return { configValueBase, value: valueInfo.value, configName };
|
|
185
|
+
});
|
|
186
|
+
const fromSources = Object.entries(pageConfig.configValueSources).map(([configName, sources]) => {
|
|
187
|
+
const configDef = pageConfig.configDefinitions[configName];
|
|
188
|
+
(0, utils_js_1.assert)(configDef);
|
|
189
|
+
if (isEager !== undefined && isEager !== !!configDef.eager)
|
|
190
|
+
return 'SKIP';
|
|
191
|
+
if (!configDef.cumulative) {
|
|
192
|
+
const source = sources[0];
|
|
193
|
+
(0, utils_js_1.assert)(source);
|
|
194
|
+
(0, utils_js_1.assert)(sources.slice(1).every((s) => s.isOverriden === true));
|
|
195
|
+
if (!isEnvMatch(source.configEnv))
|
|
196
|
+
return 'SKIP';
|
|
197
|
+
const definedAtFile = getDefinedAtFileSource(source);
|
|
198
|
+
const configValueBase = {
|
|
199
|
+
type: 'standard',
|
|
200
|
+
definedAtData: definedAtFile
|
|
201
|
+
};
|
|
202
|
+
return { configValueBase, sourceRelevant: source, configName };
|
|
203
|
+
}
|
|
204
|
+
else {
|
|
205
|
+
const sourcesRelevant = sources.filter((source) => !source.isOverriden && isEnvMatch(source.configEnv));
|
|
206
|
+
if (sourcesRelevant.length === 0)
|
|
207
|
+
return 'SKIP';
|
|
208
|
+
const definedAtData = [];
|
|
209
|
+
sourcesRelevant.forEach((source) => {
|
|
210
|
+
const definedAtFile = getDefinedAtFileSource(source);
|
|
211
|
+
definedAtData.push(definedAtFile);
|
|
212
|
+
});
|
|
213
|
+
const configValueBase = {
|
|
214
|
+
type: 'cumulative',
|
|
215
|
+
definedAtData
|
|
216
|
+
};
|
|
217
|
+
return { configValueBase, sourcesRelevant, configName };
|
|
218
|
+
}
|
|
219
|
+
});
|
|
220
|
+
return [...fromComputed, ...fromSources].filter((r) => r !== 'SKIP');
|
|
221
|
+
}
|
|
222
|
+
function getDefinedAtFileSource(source) {
|
|
223
|
+
const definedAtFile = {
|
|
224
|
+
filePathToShowToUser: source.definedAtFilePath.filePathToShowToUser,
|
|
225
|
+
fileExportPathToShowToUser: source.definedAtFilePath.fileExportPathToShowToUser
|
|
226
|
+
};
|
|
227
|
+
return definedAtFile;
|
|
228
|
+
}
|
|
@@ -5,7 +5,7 @@ const error_page_js_1 = require("../error-page.js");
|
|
|
5
5
|
const utils_js_1 = require("./utils.js");
|
|
6
6
|
const deduceRouteStringFromFilesystemPath_js_1 = require("./deduceRouteStringFromFilesystemPath.js");
|
|
7
7
|
const utils_js_2 = require("../utils.js");
|
|
8
|
-
const
|
|
8
|
+
const getConfigValueRuntime_js_1 = require("../page-configs/getConfigValueRuntime.js");
|
|
9
9
|
const getConfigDefinedAt_js_1 = require("../page-configs/getConfigDefinedAt.js");
|
|
10
10
|
const resolveRouteFunction_js_1 = require("./resolveRouteFunction.js");
|
|
11
11
|
const getHook_js_1 = require("../hooks/getHook.js");
|
|
@@ -30,7 +30,7 @@ function getPageRoutes(filesystemRoots, pageFilesAll, pageConfigs, allPageIds) {
|
|
|
30
30
|
let pageRoute = null;
|
|
31
31
|
{
|
|
32
32
|
const configName = 'route';
|
|
33
|
-
const configValue = (0,
|
|
33
|
+
const configValue = (0, getConfigValueRuntime_js_1.getConfigValueRuntime)(pageConfig, configName);
|
|
34
34
|
if (configValue) {
|
|
35
35
|
const route = configValue.value;
|
|
36
36
|
(0, utils_js_1.assert)(configValue.definedAtData);
|
|
@@ -46,7 +46,7 @@ function getPageRoutes(filesystemRoots, pageFilesAll, pageConfigs, allPageIds) {
|
|
|
46
46
|
}
|
|
47
47
|
else {
|
|
48
48
|
(0, utils_js_1.assert)((0, utils_js_2.isCallable)(route));
|
|
49
|
-
if ((0,
|
|
49
|
+
if ((0, getConfigValueRuntime_js_1.getConfigValueRuntime)(pageConfig, 'iKnowThePerformanceRisksOfAsyncRouteFunctions', 'boolean'))
|
|
50
50
|
(0, resolveRouteFunction_js_1.warnDeprecatedAllowKey)();
|
|
51
51
|
pageRoute = {
|
|
52
52
|
pageId,
|
package/dist/cjs/shared/utils.js
CHANGED
|
@@ -42,3 +42,4 @@ __exportStar(require("../utils/escapeRegex.js"), exports);
|
|
|
42
42
|
__exportStar(require("../utils/isArray.js"), exports);
|
|
43
43
|
__exportStar(require("../utils/changeEnumerable.js"), exports);
|
|
44
44
|
__exportStar(require("../utils/objectDefineProperty.js"), exports);
|
|
45
|
+
__exportStar(require("../utils/isScriptFile.js"), exports);
|
package/dist/cjs/utils/assert.js
CHANGED
|
@@ -35,6 +35,7 @@ const globalObject = (0, getGlobalObject_js_1.getGlobalObject)('utils/assert.ts'
|
|
|
35
35
|
(0, assertSingleInstance_js_1.assertSingleInstance_onAssertModuleLoad)();
|
|
36
36
|
const projectTag = `[vike]`;
|
|
37
37
|
const projectTagWithVersion = `[vike@${projectInfo_js_1.projectInfo.projectVersion}]`;
|
|
38
|
+
const bugTag = 'Bug';
|
|
38
39
|
const numberOfStackTraceLinesToRemove = 2;
|
|
39
40
|
function assert(condition, debugInfo) {
|
|
40
41
|
if (condition)
|
|
@@ -54,7 +55,7 @@ function assert(condition, debugInfo) {
|
|
|
54
55
|
.filter(Boolean)
|
|
55
56
|
.join(' ');
|
|
56
57
|
errMsg = addWhitespace(errMsg);
|
|
57
|
-
errMsg = addPrefixAssertType(errMsg,
|
|
58
|
+
errMsg = addPrefixAssertType(errMsg, bugTag);
|
|
58
59
|
errMsg = addPrefixProjctName(errMsg, true);
|
|
59
60
|
const internalError = (0, createErrorWithCleanStackTrace_js_1.createErrorWithCleanStackTrace)(errMsg, numberOfStackTraceLinesToRemove);
|
|
60
61
|
globalObject.onBeforeLog?.();
|
|
@@ -165,7 +166,7 @@ function getAssertErrMsg(thing) {
|
|
|
165
166
|
const showVikeVersion = tag === projectTagWithVersion;
|
|
166
167
|
const errStackPrefix = `Error: ${tag}`;
|
|
167
168
|
if (errStack?.startsWith(errStackPrefix)) {
|
|
168
|
-
if (globalObject.showStackTraceList.has(thing)) {
|
|
169
|
+
if (globalObject.showStackTraceList.has(thing) || isBug(thing)) {
|
|
169
170
|
const assertMsg = errStack.slice(errStackPrefix.length);
|
|
170
171
|
return { assertMsg, showVikeVersion };
|
|
171
172
|
}
|
|
@@ -184,7 +185,7 @@ function overwriteAssertProductionLogger(logger) {
|
|
|
184
185
|
globalObject.logger = logger;
|
|
185
186
|
}
|
|
186
187
|
function isBug(err) {
|
|
187
|
-
return
|
|
188
|
+
return String(err).includes(`[${bugTag}]`);
|
|
188
189
|
}
|
|
189
190
|
function setAlwaysShowStackTrace() {
|
|
190
191
|
globalObject.alwaysShowStackTrace = true;
|
|
@@ -1,14 +1,12 @@
|
|
|
1
|
+
export { setBuildEntry } from '../node/runtime/globalContext.js';
|
|
1
2
|
export { route, getPagesAndRoutes };
|
|
2
3
|
export type { PageRoutes, PageFile, PageConfigRuntime as PageConfig };
|
|
3
4
|
export { getMiddlewares };
|
|
4
5
|
import { route as routeInternal, type PageRoutes } from '../shared/route/index.js';
|
|
5
|
-
import {
|
|
6
|
+
import type { PageFile } from '../shared/getPageFiles/getPageFileObject.js';
|
|
6
7
|
import { PageConfigRuntime } from '../shared/page-configs/PageConfig.js';
|
|
7
8
|
/**
|
|
8
|
-
* Used by {@link https://github.com/magne4000/vite-plugin-vercel|vite-plugin-vercel}
|
|
9
|
-
* to compute some rewrite rules and extract { isr } configs.
|
|
10
|
-
* Needs `import 'vike/__internal/setup'`
|
|
11
|
-
* @param config
|
|
9
|
+
* Used by {@link https://github.com/magne4000/vite-plugin-vercel|vite-plugin-vercel} to compute some rewrite rules and extract { isr } configs.
|
|
12
10
|
*/
|
|
13
11
|
declare function getPagesAndRoutes(): Promise<{
|
|
14
12
|
pageRoutes: PageRoutes;
|
|
@@ -1,17 +1,16 @@
|
|
|
1
|
+
// Internals needed by Vike
|
|
2
|
+
export { setBuildEntry } from '../node/runtime/globalContext.js';
|
|
1
3
|
// Internals needed by vite-plugin-vercel
|
|
2
4
|
export { route, getPagesAndRoutes };
|
|
3
5
|
// Internals needed by experimental implementation of vike-telefunc
|
|
4
6
|
export { getMiddlewares };
|
|
5
7
|
import { route as routeInternal } from '../shared/route/index.js';
|
|
6
|
-
import { getPageFilesAll } from '../shared/getPageFiles.js';
|
|
8
|
+
import { getPageFilesAll } from '../shared/getPageFiles/getPageFiles.js';
|
|
7
9
|
import { getGlobalContext, initGlobalContext_getGlobalContextAsync } from '../node/runtime/globalContext.js';
|
|
8
10
|
import { setNodeEnvProduction } from '../utils/assertSetup.js';
|
|
9
11
|
import { getRenderContext } from '../node/runtime/renderPage/renderPageAlreadyRouted.js';
|
|
10
12
|
/**
|
|
11
|
-
* Used by {@link https://github.com/magne4000/vite-plugin-vercel|vite-plugin-vercel}
|
|
12
|
-
* to compute some rewrite rules and extract { isr } configs.
|
|
13
|
-
* Needs `import 'vike/__internal/setup'`
|
|
14
|
-
* @param config
|
|
13
|
+
* Used by {@link https://github.com/magne4000/vite-plugin-vercel|vite-plugin-vercel} to compute some rewrite rules and extract { isr } configs.
|
|
15
14
|
*/
|
|
16
15
|
async function getPagesAndRoutes() {
|
|
17
16
|
setNodeEnvProduction();
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
export { createPageContext };
|
|
2
2
|
import { getPageContextUrlComputed } from '../../shared/getPageContextUrlComputed.js';
|
|
3
|
-
import { getPageFilesAll } from '../../shared/getPageFiles.js';
|
|
3
|
+
import { getPageFilesAll, setPageFiles } from '../../shared/getPageFiles/getPageFiles.js';
|
|
4
4
|
import { loadPageRoutes } from '../../shared/route/loadPageRoutes.js';
|
|
5
5
|
import { getBaseServer } from './getBaseServer.js';
|
|
6
6
|
import { assert, isBaseServer, getGlobalObject, objectAssign } from './utils.js';
|
|
7
|
+
// @ts-ignore
|
|
8
|
+
import * as pageFilesExports from 'virtual:vike:importUserCode:client:client-routing';
|
|
7
9
|
const globalObject = getGlobalObject('createPageContext.ts', {});
|
|
10
|
+
initDevEntry();
|
|
8
11
|
async function createPageContext(urlOriginal) {
|
|
9
12
|
if (!globalObject.pageFilesData) {
|
|
10
13
|
globalObject.pageFilesData = await getPageFilesAll(true);
|
|
@@ -31,3 +34,6 @@ async function createPageContext(urlOriginal) {
|
|
|
31
34
|
objectAssign(pageContext, pageContextUrlComputed);
|
|
32
35
|
return pageContext;
|
|
33
36
|
}
|
|
37
|
+
function initDevEntry() {
|
|
38
|
+
setPageFiles(pageFilesExports);
|
|
39
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export {};
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { assertClientRouting } from '../../utils/assertRoutingType.js';
|
|
2
2
|
assertClientRouting();
|
|
3
|
-
import './pageFiles';
|
|
4
3
|
import { initClientRouter } from './initClientRouter.js';
|
|
5
4
|
import { assertSingleInstance_onClientEntryClientRouting } from './utils.js';
|
|
6
5
|
import { removeFoucBuster } from '../shared/removeFoucBuster.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { setPageContextCurrent };
|
|
2
2
|
export { getPageContextCurrent };
|
|
3
|
-
import type {
|
|
4
|
-
type PageContextCurrent =
|
|
3
|
+
import type { PageConfigUserFriendly } from '../../shared/getPageFiles.js';
|
|
4
|
+
type PageContextCurrent = PageConfigUserFriendly & {
|
|
5
5
|
urlPathname: string;
|
|
6
6
|
};
|
|
7
7
|
declare function getPageContextCurrent(): null | PageContextCurrent;
|
|
@@ -5,7 +5,7 @@ export { getPageContextFromClientHooks };
|
|
|
5
5
|
export { setPageContextInitIsPassedToClient };
|
|
6
6
|
export type { PageContextFromServerHooks };
|
|
7
7
|
export type { PageContextFromClientHooks };
|
|
8
|
-
import type {
|
|
8
|
+
import type { PageConfigUserFriendly, PageFile } from '../../shared/getPageFiles.js';
|
|
9
9
|
import type { PageConfigRuntime } from '../../shared/page-configs/PageConfig.js';
|
|
10
10
|
type PageContext = {
|
|
11
11
|
urlOriginal: string;
|
|
@@ -21,9 +21,9 @@ declare function getPageContextFromHooks_serialized(): PageContextSerialized & {
|
|
|
21
21
|
routeParams: Record<string, string>;
|
|
22
22
|
_hasPageContextFromServer: true;
|
|
23
23
|
};
|
|
24
|
-
declare function getPageContextFromHooks_isHydration(pageContext: PageContextSerialized & PageContext &
|
|
24
|
+
declare function getPageContextFromHooks_isHydration(pageContext: PageContextSerialized & PageContext & PageConfigUserFriendly & {
|
|
25
25
|
_hasPageContextFromServer: true;
|
|
26
|
-
}): Promise<PageContextSerialized & PageContext &
|
|
26
|
+
}): Promise<PageContextSerialized & PageContext & PageConfigUserFriendly & {
|
|
27
27
|
_hasPageContextFromServer: true;
|
|
28
28
|
} & {
|
|
29
29
|
_hasPageContextFromClient: boolean;
|
|
@@ -45,5 +45,5 @@ type PageContextFromClientHooks = {
|
|
|
45
45
|
declare function getPageContextFromClientHooks(pageContext: {
|
|
46
46
|
pageId: string;
|
|
47
47
|
_hasPageContextFromServer: boolean;
|
|
48
|
-
} & PageContext &
|
|
48
|
+
} & PageContext & PageConfigUserFriendly, isErrorPage: boolean): Promise<PageContextFromClientHooks>;
|
|
49
49
|
declare function setPageContextInitIsPassedToClient(pageContext: Record<string, unknown>): void;
|
|
@@ -12,7 +12,7 @@ import { preparePageContextForUserConsumptionClientSide } from '../shared/prepar
|
|
|
12
12
|
import { removeBuiltInOverrides } from './getPageContext/removeBuiltInOverrides.js';
|
|
13
13
|
import { getPageContextRequestUrl } from '../../shared/getPageContextRequestUrl.js';
|
|
14
14
|
import { getPageConfig } from '../../shared/page-configs/helpers.js';
|
|
15
|
-
import { getConfigValueRuntime } from '../../shared/page-configs/
|
|
15
|
+
import { getConfigValueRuntime } from '../../shared/page-configs/getConfigValueRuntime.js';
|
|
16
16
|
import { assertOnBeforeRenderHookReturn } from '../../shared/assertOnBeforeRenderHookReturn.js';
|
|
17
17
|
import { executeGuardHook } from '../../shared/route/executeGuardHook.js';
|
|
18
18
|
import { AbortRender, isAbortPageContext } from '../../shared/route/abort.js';
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
export { getPrefetchSettings };
|
|
2
2
|
export { PAGE_CONTEXT_MAX_AGE_DEFAULT };
|
|
3
3
|
export type { PrefetchSettingResolved };
|
|
4
|
-
import type {
|
|
4
|
+
import type { PageConfigUserFriendly } from '../../../shared/getPageFiles.js';
|
|
5
5
|
declare const PAGE_CONTEXT_MAX_AGE_DEFAULT = 5000;
|
|
6
6
|
type PrefetchSettingResolved = {
|
|
7
7
|
staticAssets: false | 'hover' | 'viewport';
|
|
8
8
|
pageContext: false | number;
|
|
9
9
|
};
|
|
10
|
-
declare function getPrefetchSettings(pageContext:
|
|
10
|
+
declare function getPrefetchSettings(pageContext: PageConfigUserFriendly, linkTag: null | HTMLElement): PrefetchSettingResolved;
|
|
@@ -6,7 +6,7 @@ export { addLinkPrefetchHandlers };
|
|
|
6
6
|
export { addLinkPrefetchHandlers_watch };
|
|
7
7
|
export { addLinkPrefetchHandlers_unwatch };
|
|
8
8
|
import { type PageContextFromServerHooks, getPageContextFromServerHooks } from './getPageContextFromHooks.js';
|
|
9
|
-
import type {
|
|
9
|
+
import type { PageConfigUserFriendly, PageFile } from '../../shared/getPageFiles.js';
|
|
10
10
|
import { type PageConfigRuntime } from '../../shared/page-configs/PageConfig.js';
|
|
11
11
|
type ResultPageContextFromServer = Awaited<ReturnType<typeof getPageContextFromServerHooks>>;
|
|
12
12
|
type PageContextForPrefetch = {
|
|
@@ -19,7 +19,7 @@ type PageContextForPrefetch = {
|
|
|
19
19
|
};
|
|
20
20
|
declare function getPageContextPrefetched(pageContext: {
|
|
21
21
|
urlPathname: string;
|
|
22
|
-
} &
|
|
22
|
+
} & PageConfigUserFriendly): null | PageContextFromServerHooks;
|
|
23
23
|
declare function populatePageContextPrefetchCache(pageContext: PageContextForPrefetch, result: ResultPageContextFromServer): void;
|
|
24
24
|
/**
|
|
25
25
|
* Programmatically prefetch client assets.
|
|
@@ -60,8 +60,8 @@ async function prefetchPageContextFromServerHooks(pageContextLink, resultMaxAge)
|
|
|
60
60
|
const result = await getPageContextFromServerHooks(pageContextLink, false);
|
|
61
61
|
setPageContextPrefetchCache(pageContextLink, result, resultMaxAge);
|
|
62
62
|
}
|
|
63
|
-
function populatePageContextPrefetchCache(pageContext /*&
|
|
64
|
-
// TODO/pageContext-prefetch: replace with using pageContext.config.prerender instead. (For being able to do that: eager configs need to be accessible without have to use
|
|
63
|
+
function populatePageContextPrefetchCache(pageContext /*& PageConfigUserFriendly*/, result) {
|
|
64
|
+
// TODO/pageContext-prefetch: replace with using pageContext.config.prerender instead. (For being able to do that: eager configs need to be accessible without have to use PageConfigUserFriendly as it isn't available here.)
|
|
65
65
|
if (!isBrilloutDocpress())
|
|
66
66
|
return;
|
|
67
67
|
setPageContextPrefetchCache(pageContext, result, null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export {};
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { assertServerRouting } from '../../utils/assertRoutingType.js';
|
|
2
2
|
assertServerRouting();
|
|
3
|
-
import './pageFiles';
|
|
4
3
|
import { getPageContext } from './getPageContext.js';
|
|
5
4
|
import { executeOnRenderClientHook } from '../shared/executeOnRenderClientHook.js';
|
|
6
5
|
import { assertHook } from '../../shared/hooks/getHook.js';
|
|
@@ -10,6 +10,6 @@ declare function getPageContext(): Promise<{
|
|
|
10
10
|
} & {
|
|
11
11
|
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
12
12
|
_pageConfigs: import("../../__internal/index.js").PageConfig[];
|
|
13
|
-
} & import("../../shared/getPageFiles.js").
|
|
13
|
+
} & import("../../shared/getPageFiles.js").PageConfigUserFriendly & {
|
|
14
14
|
_pageFilesLoaded: import("../../shared/getPageFiles.js").PageFile[];
|
|
15
15
|
}>;
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
+
export { getPageContext };
|
|
1
2
|
import { assertUsage, assertWarning, objectAssign } from './utils.js';
|
|
2
3
|
import { getPageContextSerializedInHtml } from '../shared/getPageContextSerializedInHtml.js';
|
|
3
|
-
import { getPageFilesAll } from '../../shared/getPageFiles.js';
|
|
4
|
+
import { getPageFilesAll, setPageFiles } from '../../shared/getPageFiles/getPageFiles.js';
|
|
4
5
|
import { loadUserFilesClientSide } from '../shared/loadUserFilesClientSide.js';
|
|
5
6
|
import { getCurrentUrl } from '../shared/getCurrentUrl.js';
|
|
6
|
-
|
|
7
|
+
// @ts-ignore
|
|
8
|
+
import * as pageFilesExports from 'virtual:vike:importUserCode:client:server-routing';
|
|
7
9
|
const urlFirst = getCurrentUrl({ withoutHash: true });
|
|
10
|
+
initDevEntry();
|
|
8
11
|
async function getPageContext() {
|
|
9
12
|
const pageContext = getPageContextSerializedInHtml();
|
|
10
13
|
objectAssign(pageContext, {
|
|
@@ -36,3 +39,6 @@ async function loadPageUserFiles(pageId) {
|
|
|
36
39
|
});
|
|
37
40
|
return pageContextAddendum;
|
|
38
41
|
}
|
|
42
|
+
function initDevEntry() {
|
|
43
|
+
setPageFiles(pageFilesExports);
|
|
44
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { executeOnRenderClientHook };
|
|
2
2
|
export type { PageContextBeforeRenderClient };
|
|
3
|
-
import type { PageFile,
|
|
3
|
+
import type { PageFile, PageConfigUserFriendly } from '../../shared/getPageFiles.js';
|
|
4
4
|
import { type PageContextForUserConsumptionClientSide } from './preparePageContextForUserConsumptionClientSide.js';
|
|
5
5
|
import type { PageConfigRuntime } from '../../shared/page-configs/PageConfig.js';
|
|
6
6
|
type PageContextBeforeRenderClient = {
|
|
@@ -9,5 +9,5 @@ type PageContextBeforeRenderClient = {
|
|
|
9
9
|
urlPathname?: string;
|
|
10
10
|
pageId: string;
|
|
11
11
|
_pageConfigs: PageConfigRuntime[];
|
|
12
|
-
} &
|
|
12
|
+
} & PageConfigUserFriendly & PageContextForUserConsumptionClientSide;
|
|
13
13
|
declare function executeOnRenderClientHook<PC extends PageContextBeforeRenderClient>(pageContext: PC, isClientRouting: boolean): Promise<void>;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export { loadUserFilesClientSide };
|
|
2
2
|
export { isErrorFetchingStaticAssets };
|
|
3
3
|
export type { PageContextUserFiles };
|
|
4
|
-
import { type PageFile, type
|
|
4
|
+
import { type PageFile, type PageConfigUserFriendly } from '../../shared/getPageFiles.js';
|
|
5
5
|
import type { PageConfigRuntime } from '../../shared/page-configs/PageConfig.js';
|
|
6
|
-
type PageContextUserFilesLoaded =
|
|
6
|
+
type PageContextUserFilesLoaded = PageConfigUserFriendly & {
|
|
7
7
|
_pageFilesLoaded: PageFile[];
|
|
8
8
|
};
|
|
9
9
|
type PageContextUserFiles = {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { loadUserFilesClientSide };
|
|
2
2
|
export { isErrorFetchingStaticAssets };
|
|
3
|
-
import { getPageFilesClientSide,
|
|
3
|
+
import { getPageFilesClientSide, getPageConfigUserFriendly } from '../../shared/getPageFiles.js';
|
|
4
4
|
import { findPageConfig } from '../../shared/page-configs/findPageConfig.js';
|
|
5
5
|
import { loadConfigValues } from '../../shared/page-configs/loadConfigValues.js';
|
|
6
6
|
import { objectAssign } from '../server-routing-runtime/utils.js';
|
|
@@ -29,7 +29,7 @@ async function loadUserFilesClientSide(pageId, pageFilesAll, pageConfigs) {
|
|
|
29
29
|
}
|
|
30
30
|
throw err;
|
|
31
31
|
}
|
|
32
|
-
const pageContextExports =
|
|
32
|
+
const pageContextExports = getPageConfigUserFriendly(pageFilesClientSide, pageConfigLoaded);
|
|
33
33
|
const pageContextAddendum = {};
|
|
34
34
|
objectAssign(pageContextAddendum, pageContextExports);
|
|
35
35
|
objectAssign(pageContextAddendum, { _pageFilesLoaded: pageFilesClientSide });
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export { preparePageContextForUserConsumptionClientSide };
|
|
2
2
|
export type { PageContextForUserConsumptionClientSide };
|
|
3
|
-
import type {
|
|
3
|
+
import type { PageConfigUserFriendly } from '../../shared/getPageFiles.js';
|
|
4
4
|
import type { PageConfigRuntime } from '../../shared/page-configs/PageConfig.js';
|
|
5
5
|
import { PageContextForPassToClientWarning } from './getPageContextProxyForUser.js';
|
|
6
|
-
type PageContextForUserConsumptionClientSide =
|
|
6
|
+
type PageContextForUserConsumptionClientSide = PageConfigUserFriendly & PageContextForPassToClientWarning & {
|
|
7
7
|
pageId: string;
|
|
8
8
|
_pageConfigs: PageConfigRuntime[];
|
|
9
9
|
};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { build };
|
|
2
2
|
import { prepareViteApiCall } from './prepareViteApiCall.js';
|
|
3
3
|
import { build as buildVite } from 'vite';
|
|
4
|
+
import { isPrerenderEnabled } from '../prerender/isPrerenderEnabled.js';
|
|
4
5
|
/**
|
|
5
6
|
* Programmatically trigger `$ vike build`
|
|
6
7
|
*
|
|
@@ -13,9 +14,7 @@ async function build(options = {}) {
|
|
|
13
14
|
// Build server-side
|
|
14
15
|
const outputServer = await buildVite(setSSR(viteConfigEnhanced));
|
|
15
16
|
// Pre-render
|
|
16
|
-
if (vikeConfigGlobal
|
|
17
|
-
!vikeConfigGlobal.prerender.disableAutoRun &&
|
|
18
|
-
vikeConfigGlobal.disableAutoFullBuild !== 'prerender') {
|
|
17
|
+
if (isPrerenderEnabled(vikeConfigGlobal)) {
|
|
19
18
|
const { runPrerenderFromAutoRun } = await import('../prerender/runPrerender.js');
|
|
20
19
|
await runPrerenderFromAutoRun(viteConfigEnhanced, true);
|
|
21
20
|
}
|
|
@@ -31,7 +30,7 @@ function setSSR(viteConfig) {
|
|
|
31
30
|
return {
|
|
32
31
|
...viteConfig,
|
|
33
32
|
build: {
|
|
34
|
-
...viteConfig
|
|
33
|
+
...viteConfig?.build,
|
|
35
34
|
ssr: true
|
|
36
35
|
}
|
|
37
36
|
};
|
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
export { prepareViteApiCall };
|
|
2
|
-
|
|
2
|
+
export { getViteRoot };
|
|
3
|
+
export { assertViteRoot };
|
|
4
|
+
export { normalizeViteRoot };
|
|
5
|
+
import type { InlineConfig, ResolvedConfig } from 'vite';
|
|
3
6
|
import type { Operation } from './types.js';
|
|
4
7
|
declare function prepareViteApiCall(viteConfig: InlineConfig | undefined, operation: Operation): Promise<{
|
|
5
|
-
viteConfigEnhanced: InlineConfig;
|
|
6
|
-
vikeConfigGlobal: import("../plugin/plugins/importUserCode/v1-design/getVikeConfig
|
|
8
|
+
viteConfigEnhanced: InlineConfig | undefined;
|
|
9
|
+
vikeConfigGlobal: import("../plugin/plugins/importUserCode/v1-design/getVikeConfig.js").VikeConfigGlobal;
|
|
7
10
|
}>;
|
|
11
|
+
declare function getViteRoot(operation: 'build' | 'dev' | 'preview' | 'prerender'): Promise<string>;
|
|
12
|
+
declare function normalizeViteRoot(root: string): string;
|
|
13
|
+
declare function assertViteRoot(root: string, config: ResolvedConfig): void;
|