vike 0.4.220-commit-5c7810f → 0.4.220-commit-af5c91f
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/node/api/utils.js +1 -1
- package/dist/cjs/node/plugin/index.js +1 -1
- package/dist/cjs/node/plugin/onLoad.js +1 -1
- package/dist/cjs/node/plugin/plugins/buildConfig/fixServerAssets.js +5 -3
- package/dist/cjs/node/plugin/plugins/buildConfig.js +7 -5
- package/dist/cjs/node/plugin/plugins/buildEntry/index.js +2 -1
- package/dist/cjs/node/plugin/plugins/commonConfig.js +1 -2
- package/dist/cjs/node/plugin/plugins/extractAssetsPlugin.js +3 -2
- package/dist/cjs/node/plugin/plugins/extractExportNamesPlugin.js +2 -1
- package/dist/cjs/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +10 -8
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +32 -41
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.js +9 -64
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +11 -5
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +281 -313
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigValuesAll.js +2 -1
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigs.js +7 -6
- package/dist/cjs/node/plugin/plugins/packageJsonFile.js +2 -2
- package/dist/cjs/node/plugin/plugins/previewConfig.js +4 -3
- package/dist/cjs/node/plugin/plugins/setGlobalContext.js +2 -1
- package/dist/cjs/node/plugin/shared/findPageFiles.js +2 -1
- package/dist/cjs/node/plugin/{getOutDirs.js → shared/getOutDirs.js} +24 -27
- package/dist/cjs/node/plugin/{resolveClientEntriesDev.js → shared/resolveClientEntriesDev.js} +5 -8
- package/dist/cjs/{utils → node/plugin/shared}/viteIsSSR.js +2 -2
- package/dist/cjs/node/plugin/utils.js +0 -1
- package/dist/cjs/node/prerender/context.js +8 -3
- package/dist/cjs/node/prerender/resolvePrerenderConfig.js +26 -5
- package/dist/cjs/node/prerender/runPrerender.js +6 -11
- package/dist/cjs/node/prerender/utils.js +1 -2
- package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +9 -4
- package/dist/cjs/node/runtime/renderPage/getEarlyHints.js +2 -27
- package/dist/cjs/node/runtime/renderPage/isFontFallback.js +29 -0
- package/dist/cjs/node/runtime/utils.js +1 -3
- package/dist/cjs/shared/getPageFiles/fileTypes.js +0 -1
- package/dist/cjs/shared/getPageFiles/getAllPageIdFiles.js +0 -3
- package/dist/cjs/shared/getPageFiles/getPageFileObject.js +0 -5
- package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +69 -18
- package/dist/cjs/shared/utils.js +0 -1
- package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
- package/dist/cjs/utils/findFile.js +3 -3
- package/dist/cjs/utils/isDev.js +2 -5
- package/dist/cjs/utils/isFilePathAbsoluteFilesystem.js +2 -2
- package/dist/cjs/utils/path.js +48 -0
- package/dist/cjs/utils/requireResolve.js +3 -3
- package/dist/esm/node/api/utils.d.ts +1 -1
- package/dist/esm/node/api/utils.js +1 -1
- package/dist/esm/node/plugin/index.js +1 -1
- package/dist/esm/node/plugin/onLoad.js +1 -1
- package/dist/esm/node/plugin/plugins/buildConfig/fixServerAssets.js +3 -1
- package/dist/esm/node/plugin/plugins/buildConfig.js +3 -1
- package/dist/esm/node/plugin/plugins/buildEntry/index.js +2 -1
- package/dist/esm/node/plugin/plugins/commonConfig.js +2 -3
- package/dist/esm/node/plugin/plugins/extractAssetsPlugin.js +2 -1
- package/dist/esm/node/plugin/plugins/extractExportNamesPlugin.js +2 -1
- package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +9 -7
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.d.ts +14 -11
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +35 -44
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.d.ts +8 -18
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.js +10 -65
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.d.ts +6 -2
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +12 -6
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +8 -6
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +284 -316
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigValuesAll.js +2 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigs.js +7 -6
- package/dist/esm/node/plugin/plugins/packageJsonFile.js +1 -1
- package/dist/esm/node/plugin/plugins/previewConfig.js +2 -1
- package/dist/esm/node/plugin/plugins/setGlobalContext.js +2 -1
- package/dist/esm/node/plugin/shared/findPageFiles.js +2 -1
- package/dist/esm/node/plugin/{getOutDirs.js → shared/getOutDirs.js} +2 -5
- package/dist/esm/node/plugin/{resolveClientEntriesDev.js → shared/resolveClientEntriesDev.js} +5 -8
- package/dist/esm/{utils → node/plugin/shared}/viteIsSSR.js +2 -2
- package/dist/esm/node/plugin/utils.d.ts +0 -1
- package/dist/esm/node/plugin/utils.js +0 -1
- package/dist/esm/node/prerender/context.d.ts +2 -0
- package/dist/esm/node/prerender/context.js +8 -3
- package/dist/esm/node/prerender/resolvePrerenderConfig.d.ts +8 -1
- package/dist/esm/node/prerender/resolvePrerenderConfig.js +26 -5
- package/dist/esm/node/prerender/runPrerender.js +7 -12
- package/dist/esm/node/prerender/utils.d.ts +1 -2
- package/dist/esm/node/prerender/utils.js +1 -2
- package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.js +9 -4
- package/dist/esm/node/runtime/renderPage/getEarlyHints.js +1 -26
- package/dist/esm/node/runtime/renderPage/getPageAssets.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/isFontFallback.d.ts +3 -0
- package/dist/esm/node/runtime/renderPage/isFontFallback.js +27 -0
- package/dist/esm/node/runtime/utils.d.ts +1 -3
- package/dist/esm/node/runtime/utils.js +1 -3
- package/dist/esm/shared/getPageFiles/fileTypes.js +1 -2
- package/dist/esm/shared/getPageFiles/getAllPageIdFiles.js +0 -3
- package/dist/esm/shared/getPageFiles/getPageFileObject.js +0 -5
- package/dist/esm/shared/page-configs/PageConfig.d.ts +0 -1
- package/dist/esm/shared/page-configs/serialize/serializeConfigValues.d.ts +7 -1
- package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +70 -19
- package/dist/esm/shared/utils.d.ts +0 -1
- package/dist/esm/shared/utils.js +0 -1
- package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
- package/dist/esm/utils/PROJECT_VERSION.js +1 -1
- package/dist/esm/utils/findFile.js +1 -1
- package/dist/esm/utils/isDev.js +3 -6
- package/dist/esm/utils/isFilePathAbsoluteFilesystem.js +1 -1
- package/dist/esm/utils/path.d.ts +14 -0
- package/dist/esm/utils/path.js +46 -0
- package/dist/esm/utils/projectInfo.d.ts +1 -1
- package/dist/esm/utils/requireResolve.js +1 -1
- package/package.json +1 -1
- package/dist/cjs/node/plugin/plugins/importUserCode/addImportStatement.js +0 -29
- package/dist/cjs/shared/assertPageFilePath.js +0 -11
- package/dist/cjs/utils/path-shim.js +0 -19
- package/dist/cjs/utils/toPosixPath.js +0 -18
- package/dist/esm/node/plugin/plugins/importUserCode/addImportStatement.d.ts +0 -14
- package/dist/esm/node/plugin/plugins/importUserCode/addImportStatement.js +0 -27
- package/dist/esm/shared/assertPageFilePath.d.ts +0 -2
- package/dist/esm/shared/assertPageFilePath.js +0 -9
- package/dist/esm/utils/path-shim.d.ts +0 -2
- package/dist/esm/utils/path-shim.js +0 -17
- package/dist/esm/utils/toPosixPath.d.ts +0 -4
- package/dist/esm/utils/toPosixPath.js +0 -16
- /package/dist/esm/node/plugin/{getOutDirs.d.ts → shared/getOutDirs.d.ts} +0 -0
- /package/dist/esm/node/plugin/{resolveClientEntriesDev.d.ts → shared/resolveClientEntriesDev.d.ts} +0 -0
- /package/dist/esm/{utils → node/plugin/shared}/viteIsSSR.d.ts +0 -0
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.getPageFileObject = getPageFileObject;
|
|
5
5
|
const determinePageIdOld_js_1 = require("../determinePageIdOld.js");
|
|
6
|
-
const assertPageFilePath_js_1 = require("../assertPageFilePath.js");
|
|
7
6
|
const error_page_js_1 = require("../error-page.js");
|
|
8
7
|
const utils_js_1 = require("../utils.js");
|
|
9
8
|
const fileTypes_js_1 = require("./fileTypes.js");
|
|
@@ -38,19 +37,15 @@ function getPageFileObject(filePath) {
|
|
|
38
37
|
return pageFile;
|
|
39
38
|
}
|
|
40
39
|
function isDefaultFilePath(filePath) {
|
|
41
|
-
(0, assertPageFilePath_js_1.assertPageFilePath)(filePath);
|
|
42
40
|
if ((0, error_page_js_1.isErrorPageId)(filePath, false)) {
|
|
43
41
|
return false;
|
|
44
42
|
}
|
|
45
43
|
return filePath.includes('/_default');
|
|
46
44
|
}
|
|
47
45
|
function isRendererFilePath(filePath) {
|
|
48
|
-
(0, assertPageFilePath_js_1.assertPageFilePath)(filePath);
|
|
49
46
|
return filePath.includes('/renderer/');
|
|
50
47
|
}
|
|
51
48
|
function isAncestorDefaultPage(pageId, defaultPageFilePath) {
|
|
52
|
-
(0, assertPageFilePath_js_1.assertPageFilePath)(pageId);
|
|
53
|
-
(0, assertPageFilePath_js_1.assertPageFilePath)(defaultPageFilePath);
|
|
54
49
|
(0, utils_js_1.assert)(!pageId.endsWith('/'));
|
|
55
50
|
(0, utils_js_1.assert)(!defaultPageFilePath.endsWith('/'));
|
|
56
51
|
(0, utils_js_1.assert)(isDefaultFilePath(defaultPageFilePath));
|
|
@@ -7,7 +7,6 @@ exports.serializeConfigValues = serializeConfigValues;
|
|
|
7
7
|
exports.getConfigValuesBase = getConfigValuesBase;
|
|
8
8
|
const assertSetup_js_1 = require("../../../utils/assertSetup.js");
|
|
9
9
|
const utils_js_1 = require("../../../node/plugin/utils.js");
|
|
10
|
-
const addImportStatement_js_1 = require("../../../node/plugin/plugins/importUserCode/addImportStatement.js");
|
|
11
10
|
const transformPointerImports_js_1 = require("../../../node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transformPointerImports.js");
|
|
12
11
|
const helpers_js_1 = require("../helpers.js");
|
|
13
12
|
const stringify_1 = require("@brillout/json-serializer/stringify");
|
|
@@ -18,20 +17,20 @@ const REPLACE_ME_AFTER = '__VIKE__REPLACE_ME_AFTER__';
|
|
|
18
17
|
// - vike/shared/page-configs/serialize/parsePageConfigs.ts
|
|
19
18
|
// - parsePageConfigs() is loaded on both the client- and server-side.
|
|
20
19
|
(0, assertSetup_js_1.assertIsNotProductionRuntime)();
|
|
21
|
-
function serializeConfigValues(pageConfig, importStatements, isEnvMatch, tabspace, isEager) {
|
|
20
|
+
function serializeConfigValues(pageConfig, importStatements, filesEnv, isEnvMatch, tabspace, isEager) {
|
|
22
21
|
const lines = [];
|
|
23
22
|
tabspace += ' ';
|
|
24
23
|
getConfigValuesBase(pageConfig, isEnvMatch, isEager).forEach((entry) => {
|
|
25
24
|
if (entry.configValueBase.type === 'computed') {
|
|
26
25
|
(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);
|
|
26
|
+
const { configValueBase, value, configName, configEnv } = entry;
|
|
27
|
+
const valueData = getValueSerializedWithJson(value, configName, configValueBase.definedAtData, importStatements, filesEnv, configEnv);
|
|
29
28
|
serializeConfigValue(configValueBase, valueData, configName, lines, tabspace);
|
|
30
29
|
}
|
|
31
30
|
if (entry.configValueBase.type === 'standard') {
|
|
32
31
|
(0, utils_js_1.assert)('sourceRelevant' in entry); // Help TS
|
|
33
32
|
const { configValueBase, sourceRelevant, configName } = entry;
|
|
34
|
-
const valueData = getValueSerializedFromSource(sourceRelevant, configName, importStatements);
|
|
33
|
+
const valueData = getValueSerializedFromSource(sourceRelevant, configName, importStatements, filesEnv);
|
|
35
34
|
serializeConfigValue(configValueBase, valueData, configName, lines, tabspace);
|
|
36
35
|
}
|
|
37
36
|
if (entry.configValueBase.type === 'cumulative') {
|
|
@@ -39,7 +38,7 @@ function serializeConfigValues(pageConfig, importStatements, isEnvMatch, tabspac
|
|
|
39
38
|
const { configValueBase, sourcesRelevant, configName } = entry;
|
|
40
39
|
const valueDataList = [];
|
|
41
40
|
sourcesRelevant.forEach((source) => {
|
|
42
|
-
const valueData = getValueSerializedFromSource(source, configName, importStatements);
|
|
41
|
+
const valueData = getValueSerializedFromSource(source, configName, importStatements, filesEnv);
|
|
43
42
|
valueDataList.push(valueData);
|
|
44
43
|
});
|
|
45
44
|
serializeConfigValue(configValueBase, valueDataList, configName, lines, tabspace);
|
|
@@ -47,14 +46,14 @@ function serializeConfigValues(pageConfig, importStatements, isEnvMatch, tabspac
|
|
|
47
46
|
});
|
|
48
47
|
return lines;
|
|
49
48
|
}
|
|
50
|
-
function getValueSerializedFromSource(configValueSource, configName, importStatements) {
|
|
49
|
+
function getValueSerializedFromSource(configValueSource, configName, importStatements, filesEnv) {
|
|
51
50
|
(0, utils_js_1.assert)(configValueSource.isOverriden === false);
|
|
52
51
|
let valueData;
|
|
53
52
|
if ('value' in configValueSource) {
|
|
54
|
-
valueData = getValueSerializedWithJson(configValueSource.value, configName, configValueSource.definedAtFilePath, importStatements);
|
|
53
|
+
valueData = getValueSerializedWithJson(configValueSource.value, configName, configValueSource.definedAtFilePath, importStatements, filesEnv, configValueSource.configEnv);
|
|
55
54
|
}
|
|
56
55
|
else {
|
|
57
|
-
valueData = getValueSerializedWithImport(configValueSource, importStatements);
|
|
56
|
+
valueData = getValueSerializedWithImport(configValueSource, importStatements, filesEnv, configName);
|
|
58
57
|
}
|
|
59
58
|
return valueData;
|
|
60
59
|
}
|
|
@@ -100,27 +99,27 @@ function serializeConfigValue(configValueBase, valueData, configName, lines, tab
|
|
|
100
99
|
tabspace = tabspace.slice(2);
|
|
101
100
|
}
|
|
102
101
|
}
|
|
103
|
-
function getValueSerializedWithImport(configValueSource, importStatements) {
|
|
102
|
+
function getValueSerializedWithImport(configValueSource, importStatements, filesEnv, configName) {
|
|
104
103
|
(0, utils_js_1.assert)(!configValueSource.valueIsFilePath);
|
|
105
|
-
const { valueIsImportedAtRuntime, valueIsDefinedByPlusFile, definedAtFilePath } = configValueSource;
|
|
104
|
+
const { valueIsImportedAtRuntime, valueIsDefinedByPlusFile, definedAtFilePath, configEnv } = configValueSource;
|
|
106
105
|
(0, utils_js_1.assert)(valueIsImportedAtRuntime);
|
|
107
106
|
const { filePathAbsoluteVite, fileExportName } = definedAtFilePath;
|
|
108
107
|
if (valueIsDefinedByPlusFile)
|
|
109
108
|
(0, utils_js_1.assert)(fileExportName === undefined);
|
|
110
|
-
const { importName } =
|
|
109
|
+
const { importName } = addImportStatement(importStatements, filePathAbsoluteVite, fileExportName || '*', filesEnv, configEnv, configName);
|
|
111
110
|
return {
|
|
112
111
|
type: valueIsDefinedByPlusFile ? 'plus-file' : 'pointer-import',
|
|
113
112
|
valueAsJsCode: importName
|
|
114
113
|
};
|
|
115
114
|
}
|
|
116
|
-
function getValueSerializedWithJson(value, configName, definedAtData, importStatements) {
|
|
117
|
-
const valueAsJsCode = valueToJson(value, configName, definedAtData, importStatements);
|
|
115
|
+
function getValueSerializedWithJson(value, configName, definedAtData, importStatements, filesEnv, configEnv) {
|
|
116
|
+
const valueAsJsCode = valueToJson(value, configName, definedAtData, importStatements, filesEnv, configEnv);
|
|
118
117
|
return {
|
|
119
118
|
type: 'js-serialized',
|
|
120
119
|
valueAsJsCode
|
|
121
120
|
};
|
|
122
121
|
}
|
|
123
|
-
function valueToJson(value, configName, definedAtData, importStatements) {
|
|
122
|
+
function valueToJson(value, configName, definedAtData, importStatements, filesEnv, configEnv) {
|
|
124
123
|
const valueName = `config${(0, utils_js_1.getPropAccessNotation)(configName)}`;
|
|
125
124
|
let configValueSerialized;
|
|
126
125
|
try {
|
|
@@ -135,7 +134,7 @@ function valueToJson(value, configName, definedAtData, importStatements) {
|
|
|
135
134
|
if (typeof value === 'string') {
|
|
136
135
|
const importData = (0, transformPointerImports_js_1.parsePointerImportData)(value);
|
|
137
136
|
if (importData) {
|
|
138
|
-
const { importName } =
|
|
137
|
+
const { importName } = addImportStatement(importStatements, importData.importPath, importData.exportName, filesEnv, configEnv, configName);
|
|
139
138
|
const replacement = [REPLACE_ME_BEFORE, importName, REPLACE_ME_AFTER].join('');
|
|
140
139
|
return { replacement };
|
|
141
140
|
}
|
|
@@ -172,7 +171,8 @@ function logJsonSerializeError(err, configName, definedAtData) {
|
|
|
172
171
|
}
|
|
173
172
|
function getConfigValuesBase(pageConfig, isEnvMatch, isEager) {
|
|
174
173
|
const fromComputed = Object.entries(pageConfig.configValuesComputed ?? {}).map(([configName, valueInfo]) => {
|
|
175
|
-
|
|
174
|
+
const { configEnv, value } = valueInfo;
|
|
175
|
+
if (!isEnvMatch(configEnv))
|
|
176
176
|
return 'SKIP';
|
|
177
177
|
// Is there a use case for overriding computed values? If yes, then configValeSources has higher precedence
|
|
178
178
|
if (pageConfig.configValueSources[configName])
|
|
@@ -181,7 +181,7 @@ function getConfigValuesBase(pageConfig, isEnvMatch, isEager) {
|
|
|
181
181
|
type: 'computed',
|
|
182
182
|
definedAtData: null
|
|
183
183
|
};
|
|
184
|
-
return { configValueBase, value
|
|
184
|
+
return { configValueBase, value, configName, configEnv };
|
|
185
185
|
});
|
|
186
186
|
const fromSources = Object.entries(pageConfig.configValueSources).map(([configName, sources]) => {
|
|
187
187
|
const configDef = pageConfig.configDefinitions[configName];
|
|
@@ -226,3 +226,54 @@ function getDefinedAtFileSource(source) {
|
|
|
226
226
|
};
|
|
227
227
|
return definedAtFile;
|
|
228
228
|
}
|
|
229
|
+
/*
|
|
230
|
+
* Naming:
|
|
231
|
+
* `import { someExport as someImport } from './some-file'`
|
|
232
|
+
* <=>
|
|
233
|
+
* `{`
|
|
234
|
+
* `importPath: './some-file',`
|
|
235
|
+
* `exportName: 'someExport',`
|
|
236
|
+
* `importName: 'someImport',`
|
|
237
|
+
* `}`
|
|
238
|
+
*/
|
|
239
|
+
function addImportStatement(importStatements, importPath, exportName, filesEnv, configEnv, configName) {
|
|
240
|
+
const importCounter = importStatements.length + 1;
|
|
241
|
+
const importName = `import${importCounter}`;
|
|
242
|
+
const importLiteral = (() => {
|
|
243
|
+
if (exportName === '*') {
|
|
244
|
+
return `* as ${importName}`;
|
|
245
|
+
}
|
|
246
|
+
if (exportName === 'default') {
|
|
247
|
+
return importName;
|
|
248
|
+
}
|
|
249
|
+
return `{ ${exportName} as ${importName} }`;
|
|
250
|
+
})();
|
|
251
|
+
const importStatement = `import ${importLiteral} from '${importPath}';`;
|
|
252
|
+
importStatements.push(importStatement);
|
|
253
|
+
assertFileEnv(importPath, configEnv, configName, filesEnv);
|
|
254
|
+
return { importName };
|
|
255
|
+
}
|
|
256
|
+
function assertFileEnv(importPath, configEnv, configName, filesEnv) {
|
|
257
|
+
const key = importPath;
|
|
258
|
+
(0, utils_js_1.assert)(key);
|
|
259
|
+
(0, utils_js_1.assertPosixPath)(key);
|
|
260
|
+
(0, utils_js_1.assert)(!isRelativeImportPath(key));
|
|
261
|
+
if (!filesEnv.has(key)) {
|
|
262
|
+
filesEnv.set(key, []);
|
|
263
|
+
}
|
|
264
|
+
const fileEnvs = filesEnv.get(key);
|
|
265
|
+
const fileEnvNew = { configEnv, configName };
|
|
266
|
+
fileEnvs.push(fileEnvNew);
|
|
267
|
+
const fileEnvDiff = fileEnvs.filter((c) => !(0, utils_js_1.deepEqual)(c.configEnv, configEnv))[0];
|
|
268
|
+
if (fileEnvDiff) {
|
|
269
|
+
(0, utils_js_1.assertUsage)(false, [
|
|
270
|
+
`${importPath} defines the value of configs living in different environments:`,
|
|
271
|
+
...[fileEnvDiff, fileEnvNew].map((c) => ` - config ${picocolors_1.default.code(c.configName)} which value lives in environment ${picocolors_1.default.code(JSON.stringify(c.configEnv))}`),
|
|
272
|
+
'Defining config values in the same file is allowed only if they live in the same environment, see https://vike.dev/config#pointer-imports'
|
|
273
|
+
].join('\n'));
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
// TODO/now dedupe
|
|
277
|
+
function isRelativeImportPath(importPath) {
|
|
278
|
+
return importPath.startsWith('./') || importPath.startsWith('../');
|
|
279
|
+
}
|
package/dist/cjs/shared/utils.js
CHANGED
|
@@ -32,7 +32,6 @@ __exportStar(require("../utils/isPlainObject.js"), exports);
|
|
|
32
32
|
__exportStar(require("../utils/compareString.js"), exports);
|
|
33
33
|
__exportStar(require("../utils/isNotNullish.js"), exports);
|
|
34
34
|
__exportStar(require("../utils/stringifyStringArray.js"), exports);
|
|
35
|
-
__exportStar(require("../utils/toPosixPath.js"), exports);
|
|
36
35
|
__exportStar(require("../utils/cast.js"), exports);
|
|
37
36
|
__exportStar(require("../utils/isPropertyGetter.js"), exports);
|
|
38
37
|
__exportStar(require("../utils/isPromise.js"), exports);
|
|
@@ -7,16 +7,16 @@ exports.findFile = findFile;
|
|
|
7
7
|
const path_1 = __importDefault(require("path"));
|
|
8
8
|
const fs_1 = __importDefault(require("fs"));
|
|
9
9
|
const isArray_js_1 = require("./isArray.js");
|
|
10
|
-
const
|
|
10
|
+
const path_js_1 = require("./path.js");
|
|
11
11
|
function findFile(arg, cwd) {
|
|
12
|
-
(0,
|
|
12
|
+
(0, path_js_1.assertPosixPath)(cwd);
|
|
13
13
|
const filenames = (0, isArray_js_1.isArray)(arg) ? arg : [arg];
|
|
14
14
|
let dir = cwd;
|
|
15
15
|
while (true) {
|
|
16
16
|
for (const filename of filenames) {
|
|
17
17
|
const configFilePath = path_1.default.posix.join(dir, `./${filename}`);
|
|
18
18
|
if (fs_1.default.existsSync(configFilePath)) {
|
|
19
|
-
(0,
|
|
19
|
+
(0, path_js_1.assertPosixPath)(configFilePath);
|
|
20
20
|
return configFilePath;
|
|
21
21
|
}
|
|
22
22
|
}
|
package/dist/cjs/utils/isDev.js
CHANGED
|
@@ -4,13 +4,10 @@ exports.isDevCheck = isDevCheck;
|
|
|
4
4
|
exports.applyDev = applyDev;
|
|
5
5
|
exports.applyPreview = applyPreview;
|
|
6
6
|
const assert_js_1 = require("./assert.js");
|
|
7
|
-
const vite_1 = require("vite");
|
|
8
7
|
function isDevCheck(configEnv) {
|
|
9
8
|
const { isPreview, command } = configEnv;
|
|
10
|
-
//
|
|
11
|
-
|
|
12
|
-
// - Surprisingly, this assert() can fail: https://github.com/vikejs/vike/issues/2135
|
|
13
|
-
(0, assert_js_1.assert)(typeof isPreview === 'boolean', { isPreview, version: vite_1.version });
|
|
9
|
+
// `assertVersion('Vite', version, '5.1.0')` isn't enough: https://github.com/vitejs/vite/pull/19355
|
|
10
|
+
(0, assert_js_1.assertUsage)(typeof isPreview === 'boolean', 'You are using an old Vite version; make sure to use Vite 5.1.0 or above.');
|
|
14
11
|
return command === 'serve' && !isPreview;
|
|
15
12
|
}
|
|
16
13
|
function applyDev(_, env) {
|
|
@@ -7,7 +7,7 @@ exports.assertFilePathAbsoluteFilesystem = assertFilePathAbsoluteFilesystem;
|
|
|
7
7
|
exports.isFilePathAbsolute = isFilePathAbsolute;
|
|
8
8
|
const path_1 = __importDefault(require("path"));
|
|
9
9
|
const assert_js_1 = require("./assert.js");
|
|
10
|
-
const
|
|
10
|
+
const path_js_1 = require("./path.js");
|
|
11
11
|
/**
|
|
12
12
|
* Asserts that `filePath` is an absolute file path starting from the filesystem root.
|
|
13
13
|
*
|
|
@@ -19,7 +19,7 @@ function assertFilePathAbsoluteFilesystem(filePath) {
|
|
|
19
19
|
// - For Linux users assertFilePathAbsoluteFilesystem() will erroneously succeed if `p` is a path absolute from the user root dir.
|
|
20
20
|
// - But that's okay because the assertion will eventually fail for Windows users.
|
|
21
21
|
(0, assert_js_1.assert)(isFilePathAbsoluteFilesystem(filePath));
|
|
22
|
-
(0,
|
|
22
|
+
(0, path_js_1.assertPosixPath)(filePath);
|
|
23
23
|
}
|
|
24
24
|
/**
|
|
25
25
|
* Whether `filePath` is an absolute file path starting from the filesystem root.
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.pathJoin = pathJoin;
|
|
4
|
+
exports.pathIsRelative = pathIsRelative;
|
|
5
|
+
exports.toPosixPath = toPosixPath;
|
|
6
|
+
exports.assertPosixPath = assertPosixPath;
|
|
7
|
+
// Utilites for handling file paths.
|
|
8
|
+
// - Shims `import * from "node:path"` for server runtime.
|
|
9
|
+
// - Robust shim reference: https://github.com/unjs/pathe
|
|
10
|
+
const assert_js_1 = require("./assert.js");
|
|
11
|
+
const assertIsNotBrowser_js_1 = require("./assertIsNotBrowser.js");
|
|
12
|
+
(0, assertIsNotBrowser_js_1.assertIsNotBrowser)();
|
|
13
|
+
/**********************/
|
|
14
|
+
/****** SHIMS *********/
|
|
15
|
+
/**********************/
|
|
16
|
+
function pathJoin(path1, path2) {
|
|
17
|
+
(0, assert_js_1.assert)(!path1.includes('\\'));
|
|
18
|
+
(0, assert_js_1.assert)(!path2.includes('\\'));
|
|
19
|
+
let joined = [...path1.split('/'), ...path2.split('/')].filter(Boolean).join('/');
|
|
20
|
+
if (path1.startsWith('/'))
|
|
21
|
+
joined = '/' + joined;
|
|
22
|
+
return joined;
|
|
23
|
+
}
|
|
24
|
+
/* https://github.com/brillout/telefunc/blob/0fd44322acbd07857ae29361ba7c998607f17dd5/telefunc/utils/path-shim.ts#L17-L21
|
|
25
|
+
const IS_ABSOLUTE_RE = /^[/\\](?![/\\])|^[/\\]{2}(?!\.)|^[A-Za-z]:[/\\]/
|
|
26
|
+
function pathIsAbsolute(filePath: string) {
|
|
27
|
+
return IS_ABSOLUTE_RE.test(filePath)
|
|
28
|
+
}
|
|
29
|
+
//*/
|
|
30
|
+
/**********************/
|
|
31
|
+
/****** UTILS *********/
|
|
32
|
+
/**********************/
|
|
33
|
+
function toPosixPath(path) {
|
|
34
|
+
const pathPosix = path.split('\\').join('/');
|
|
35
|
+
assertPosixPath(pathPosix);
|
|
36
|
+
return pathPosix;
|
|
37
|
+
}
|
|
38
|
+
function assertPosixPath(path) {
|
|
39
|
+
const errMsg = (msg) => `Not a posix path: ${msg}`;
|
|
40
|
+
(0, assert_js_1.assert)(path !== null, errMsg('null'));
|
|
41
|
+
(0, assert_js_1.assert)(typeof path === 'string', errMsg(`typeof path === ${JSON.stringify(typeof path)}`));
|
|
42
|
+
(0, assert_js_1.assert)(path !== '', errMsg('(empty string)'));
|
|
43
|
+
(0, assert_js_1.assert)(path);
|
|
44
|
+
(0, assert_js_1.assert)(!path.includes('\\'), errMsg(path));
|
|
45
|
+
}
|
|
46
|
+
function pathIsRelative(importPath) {
|
|
47
|
+
return importPath.startsWith('./') || importPath.startsWith('../');
|
|
48
|
+
}
|
|
@@ -4,7 +4,7 @@ exports.requireResolve = requireResolve;
|
|
|
4
4
|
const assert_js_1 = require("./assert.js");
|
|
5
5
|
const assertIsNotBrowser_js_1 = require("./assertIsNotBrowser.js");
|
|
6
6
|
const assertSetup_js_1 = require("./assertSetup.js");
|
|
7
|
-
const
|
|
7
|
+
const path_js_1 = require("./path.js");
|
|
8
8
|
const isScriptFile_js_1 = require("./isScriptFile.js");
|
|
9
9
|
const module_1 = require("module");
|
|
10
10
|
// @ts-ignore Shimmed by dist-cjs-fixup.js for CJS build.
|
|
@@ -15,7 +15,7 @@ const require_ = (0, module_1.createRequire)(importMetaUrl);
|
|
|
15
15
|
// We still can't use import.meta.resolve() as of 23.1.0 (November 2024) because `parent` argument requires an experimental flag.
|
|
16
16
|
// - https://stackoverflow.com/questions/54977743/do-require-resolve-for-es-modules#comment139581675_62272600
|
|
17
17
|
function requireResolve(importPath, cwd) {
|
|
18
|
-
(0,
|
|
18
|
+
(0, path_js_1.assertPosixPath)(cwd);
|
|
19
19
|
const clean = addFileExtensionsToRequireResolve();
|
|
20
20
|
importPath = removeFileExtention(importPath);
|
|
21
21
|
let importedFile;
|
|
@@ -29,7 +29,7 @@ function requireResolve(importPath, cwd) {
|
|
|
29
29
|
clean();
|
|
30
30
|
}
|
|
31
31
|
if (importedFile) {
|
|
32
|
-
importedFile = (0,
|
|
32
|
+
importedFile = (0, path_js_1.toPosixPath)(importedFile);
|
|
33
33
|
}
|
|
34
34
|
return importedFile;
|
|
35
35
|
}
|
|
@@ -23,7 +23,7 @@ import { envVarsPlugin } from './plugins/envVars.js';
|
|
|
23
23
|
import pc from '@brillout/picocolors';
|
|
24
24
|
import { fileEnv } from './plugins/fileEnv.js';
|
|
25
25
|
import { setResolveClientEntriesDev } from '../runtime/renderPage/getPageAssets.js';
|
|
26
|
-
import { resolveClientEntriesDev } from './resolveClientEntriesDev.js';
|
|
26
|
+
import { resolveClientEntriesDev } from './shared/resolveClientEntriesDev.js';
|
|
27
27
|
import { workaroundCssModuleHmr } from './plugins/workaroundCssModuleHmr.js';
|
|
28
28
|
import { workaroundVite6HmrRegression } from './plugins/workaroundVite6HmrRegression.js';
|
|
29
29
|
// We don't call this in ./onLoad.ts to avoid a cyclic dependency with utils.ts
|
|
@@ -8,7 +8,7 @@ function onLoad() {
|
|
|
8
8
|
markSetup_vikeVitePlugin();
|
|
9
9
|
assertIsNotBrowser();
|
|
10
10
|
assertNodeVersion();
|
|
11
|
-
// package.json#peerDependencies isn't enough as users
|
|
11
|
+
// package.json#peerDependencies isn't enough as users often ignore it
|
|
12
12
|
assertVersion('Vite', version, '5.1.0');
|
|
13
13
|
// Ensure we don't bloat the server runtime with heavy dependencies such Vite and esbuild
|
|
14
14
|
assertIsNotProductionRuntime();
|
|
@@ -7,12 +7,14 @@ import fs from 'fs/promises';
|
|
|
7
7
|
import fs_sync from 'fs';
|
|
8
8
|
import path from 'path';
|
|
9
9
|
import { existsSync } from 'fs';
|
|
10
|
-
import { assert, assertWarning,
|
|
10
|
+
import { assert, assertWarning, isEqualStringList, pLimit, unique } from '../../utils.js';
|
|
11
11
|
import { isVirtualFileIdPageConfigValuesAll } from '../../../shared/virtual-files/virtualFilePageConfigValuesAll.js';
|
|
12
12
|
import { manifestTempFile } from '../buildConfig.js';
|
|
13
13
|
import { getAssetsDir } from '../../shared/getAssetsDir.js';
|
|
14
14
|
import pc from '@brillout/picocolors';
|
|
15
15
|
import { isV1Design } from '../importUserCode/v1-design/getVikeConfig.js';
|
|
16
|
+
import { getOutDirs } from '../../shared/getOutDirs.js';
|
|
17
|
+
import { viteIsSSR } from '../../shared/viteIsSSR.js';
|
|
16
18
|
/**
|
|
17
19
|
* true => use workaround config.build.ssrEmitAssets
|
|
18
20
|
* false => use workaround extractAssets plugin
|
|
@@ -2,7 +2,7 @@ export { buildConfig };
|
|
|
2
2
|
export { assertRollupInput };
|
|
3
3
|
export { analyzeClientEntries };
|
|
4
4
|
export { manifestTempFile };
|
|
5
|
-
import { assert,
|
|
5
|
+
import { assert, addOnBeforeLogHook, removeFileExtention, unique, assertUsage, injectRollupInputs, normalizeRollupInput, onSetupBuild, assertIsNpmPackageImport } from '../utils.js';
|
|
6
6
|
import { getVikeConfig, isV1Design } from './importUserCode/v1-design/getVikeConfig.js';
|
|
7
7
|
import { findPageFiles } from '../shared/findPageFiles.js';
|
|
8
8
|
import { getVirtualFileIdPageConfigValuesAll } from '../../shared/virtual-files/virtualFilePageConfigValuesAll.js';
|
|
@@ -15,6 +15,8 @@ import { set_ASSETS_MANIFEST } from './buildEntry/index.js';
|
|
|
15
15
|
import { prependEntriesDir } from '../../shared/prependEntriesDir.js';
|
|
16
16
|
import { getFilePathResolved } from '../shared/getFilePath.js';
|
|
17
17
|
import { getConfigValueBuildTime } from '../../../shared/page-configs/getConfigValueBuildTime.js';
|
|
18
|
+
import { getOutDirs, resolveOutDir } from '../shared/getOutDirs.js';
|
|
19
|
+
import { viteIsSSR } from '../shared/viteIsSSR.js';
|
|
18
20
|
// @ts-ignore Shimmed by dist-cjs-fixup.js for CJS build.
|
|
19
21
|
const importMetaUrl = import.meta.url;
|
|
20
22
|
const require_ = createRequire(importMetaUrl);
|
|
@@ -2,7 +2,7 @@ export { buildEntry };
|
|
|
2
2
|
export { set_ASSETS_MANIFEST };
|
|
3
3
|
import { serverProductionEntryPlugin } from '@brillout/vite-plugin-server-entry/plugin';
|
|
4
4
|
import { virtualFileIdImportUserCodeServer } from '../../../shared/virtual-files/virtualFileImportUserCode.js';
|
|
5
|
-
import { assert,
|
|
5
|
+
import { assert, projectInfo, toPosixPath } from '../../utils.js';
|
|
6
6
|
import fs from 'fs/promises';
|
|
7
7
|
import path from 'path';
|
|
8
8
|
import { createRequire } from 'module';
|
|
@@ -11,6 +11,7 @@ const importMetaUrl = import.meta.url;
|
|
|
11
11
|
const require_ = createRequire(importMetaUrl);
|
|
12
12
|
import { isUsingClientRouter } from '../extractExportNamesPlugin.js';
|
|
13
13
|
import { assertBuildInfo, getViteConfigRuntime } from '../../../runtime/globalContext.js';
|
|
14
|
+
import { getOutDirs } from '../../shared/getOutDirs.js';
|
|
14
15
|
const ASSETS_MANIFEST = '__VITE_ASSETS_MANIFEST__';
|
|
15
16
|
function buildEntry() {
|
|
16
17
|
let config;
|
|
@@ -11,8 +11,7 @@ import { isViteCliCall } from '../shared/isViteCliCall.js';
|
|
|
11
11
|
import { isVikeCliOrApi } from '../../api/context.js';
|
|
12
12
|
import { getVikeConfig2 } from './importUserCode/v1-design/getVikeConfig.js';
|
|
13
13
|
import { assertViteRoot, getViteRoot, normalizeViteRoot } from '../../api/prepareViteApiCall.js';
|
|
14
|
-
import { temp_disablePrerenderAutoRun } from '../../prerender/context.js';
|
|
15
|
-
import { resolvePrerenderConfig } from '../../prerender/resolvePrerenderConfig.js';
|
|
14
|
+
import { isPrerenderEnabled, temp_disablePrerenderAutoRun } from '../../prerender/context.js';
|
|
16
15
|
const pluginName = 'vike:commonConfig';
|
|
17
16
|
function commonConfig(vikeVitePluginOptions) {
|
|
18
17
|
return [
|
|
@@ -34,7 +33,7 @@ function commonConfig(vikeVitePluginOptions) {
|
|
|
34
33
|
vike: { global: vikeConfig.global },
|
|
35
34
|
// TODO/v1-release: remove https://github.com/vikejs/vike/issues/2122
|
|
36
35
|
configVikePromise: Promise.resolve({
|
|
37
|
-
prerender:
|
|
36
|
+
prerender: isPrerenderEnabled(vikeConfig)
|
|
38
37
|
})
|
|
39
38
|
};
|
|
40
39
|
}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
// - This appraoch supports import path aliases `vite.config.js#resolve.alias` https://vitejs.dev/config/#resolve-alias
|
|
7
7
|
export { extractAssetsPlugin };
|
|
8
8
|
export { extractAssetsRE };
|
|
9
|
-
import {
|
|
9
|
+
import { assert, assertPosixPath, styleFileRE, createDebugger, isScriptFile, assertUsage } from '../utils.js';
|
|
10
10
|
import { resolveVirtualFileId, isVirtualFileId, getVirtualFileId } from '../../shared/virtual-files.js';
|
|
11
11
|
import { extractAssetsAddQuery } from '../../shared/extractAssetsQuery.js';
|
|
12
12
|
import { isAsset } from '../shared/isAsset.js';
|
|
@@ -17,6 +17,7 @@ import { fixServerAssets_isEnabled } from './buildConfig/fixServerAssets.js';
|
|
|
17
17
|
import { getVikeConfig, isV1Design } from './importUserCode/v1-design/getVikeConfig.js';
|
|
18
18
|
import { assertV1Design } from '../../shared/assertV1Design.js';
|
|
19
19
|
import { normalizeId } from '../shared/normalizeId.js';
|
|
20
|
+
import { viteIsSSR_options } from '../shared/viteIsSSR.js';
|
|
20
21
|
const extractAssetsRE = /(\?|&)extractAssets(?:&|$)/;
|
|
21
22
|
const rawRE = /(\?|&)raw(?:&|$)/;
|
|
22
23
|
const urlRE = /(\?|&)url(?:&|$)/;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
export { extractExportNamesPlugin };
|
|
2
2
|
export { isUsingClientRouter };
|
|
3
3
|
export { extractExportNamesRE };
|
|
4
|
-
import { assert, getFileExtension,
|
|
4
|
+
import { assert, getFileExtension, createDebugger, getGlobalObject, assertUsage } from '../utils.js';
|
|
5
5
|
import { getExportNames } from '../shared/parseEsModule.js';
|
|
6
6
|
import { sourceMapRemove } from '../shared/rollupSourceMap.js';
|
|
7
7
|
import { normalizeId } from '../shared/normalizeId.js';
|
|
8
|
+
import { viteIsSSR_options } from '../shared/viteIsSSR.js';
|
|
8
9
|
const extractExportNamesRE = /(\?|&)extractExportNames(?:&|$)/;
|
|
9
10
|
const debug = createDebugger('vike:extractExportNames');
|
|
10
11
|
const globalObject = getGlobalObject('extractExportNamesPlugin.ts', {});
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
export { getVirtualFileImportUserCode };
|
|
2
|
-
import { assert, assertPosixPath,
|
|
2
|
+
import { assert, assertPosixPath, scriptFileExtensions, debugGlob, isVersionOrAbove, assertWarning } from '../../utils.js';
|
|
3
3
|
import { isVirtualFileIdImportUserCode } from '../../../shared/virtual-files/virtualFileImportUserCode.js';
|
|
4
4
|
import { version as viteVersion } from 'vite';
|
|
5
5
|
import { fileTypes } from '../../../../shared/getPageFiles/fileTypes.js';
|
|
6
6
|
import path from 'path';
|
|
7
7
|
import { getVirtualFilePageConfigs } from './v1-design/getVirtualFilePageConfigs.js';
|
|
8
8
|
import { isV1Design as isV1Design_ } from './v1-design/getVikeConfig.js';
|
|
9
|
-
import {
|
|
9
|
+
import { getOutDirs } from '../../shared/getOutDirs.js';
|
|
10
|
+
import { viteIsSSR_options } from '../../shared/viteIsSSR.js';
|
|
10
11
|
async function getVirtualFileImportUserCode(id, options, vikeConfig, config, isDev) {
|
|
11
12
|
const idParsed = isVirtualFileIdImportUserCode(id);
|
|
12
13
|
assert(idParsed);
|
|
13
14
|
const { isForClientSide, isClientRouting } = idParsed;
|
|
14
15
|
assert(isForClientSide === !viteIsSSR_options(options));
|
|
15
|
-
const
|
|
16
|
-
const code = await getCode(config, vikeConfig, isForClientSide, isClientRouting, isPrerendering, isDev, id);
|
|
16
|
+
const code = await getCode(config, vikeConfig, isForClientSide, isClientRouting, isDev, id);
|
|
17
17
|
return code;
|
|
18
18
|
}
|
|
19
|
-
async function getCode(config, vikeConfig, isForClientSide, isClientRouting,
|
|
19
|
+
async function getCode(config, vikeConfig, isForClientSide, isClientRouting, isDev, id) {
|
|
20
20
|
const { command } = config;
|
|
21
21
|
assert(command === 'serve' || command === 'build');
|
|
22
22
|
const isBuild = command === 'build';
|
|
@@ -25,7 +25,7 @@ async function getCode(config, vikeConfig, isForClientSide, isClientRouting, isP
|
|
|
25
25
|
{
|
|
26
26
|
const globRoots = getGlobRoots(config);
|
|
27
27
|
debugGlob('Glob roots: ', globRoots);
|
|
28
|
-
content += await generateGlobImports(globRoots, isBuild, isForClientSide, isClientRouting, vikeConfig,
|
|
28
|
+
content += await generateGlobImports(globRoots, isBuild, isForClientSide, isClientRouting, vikeConfig, config, isDev, id);
|
|
29
29
|
}
|
|
30
30
|
debugGlob(`Glob imports for ${isForClientSide ? 'client' : 'server'}:\n`, content);
|
|
31
31
|
return content;
|
|
@@ -55,7 +55,7 @@ function determineInjection({ fileType, isForClientSide, isClientRouting, isPrer
|
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
|
-
async function generateGlobImports(globRoots, isBuild, isForClientSide, isClientRouting, vikeConfig,
|
|
58
|
+
async function generateGlobImports(globRoots, isBuild, isForClientSide, isClientRouting, vikeConfig, config, isDev, id) {
|
|
59
59
|
let fileContent = `// Generated by https://github.com/vikejs/vike/blob/main/vike/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.ts
|
|
60
60
|
|
|
61
61
|
export const pageFilesLazy = {};
|
|
@@ -70,6 +70,8 @@ ${await getVirtualFilePageConfigs(isForClientSide, isDev, id, isClientRouting, c
|
|
|
70
70
|
`;
|
|
71
71
|
// We still use import.meta.glob() when using th V1 design in order to not break the V1 design deprecation warning
|
|
72
72
|
const isV1Design = await isV1Design_(config);
|
|
73
|
+
// Old design => no + files => only to enable pre-rendering is setting `vike({prerender})` in vite.config.js
|
|
74
|
+
const isPrerendering = !!vikeConfig.global.config.prerender;
|
|
73
75
|
fileTypes
|
|
74
76
|
.filter((fileType) => fileType !== '.css')
|
|
75
77
|
.forEach((fileType) => {
|
|
@@ -1,24 +1,27 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { loadPointerImport };
|
|
2
2
|
export { loadValueFile };
|
|
3
|
-
export { loadValueFiles };
|
|
4
3
|
export { loadConfigFile };
|
|
5
|
-
export type { ImportedFilesLoaded };
|
|
6
4
|
export type { ConfigFile };
|
|
5
|
+
export type { PointerImportLoaded };
|
|
7
6
|
import type { FilePathResolved } from '../../../../../../shared/page-configs/FilePath.js';
|
|
8
|
-
import {
|
|
7
|
+
import { type EsbuildCache } from './transpileAndExecuteFile.js';
|
|
8
|
+
import { type InterfaceValueFile } from '../getVikeConfig.js';
|
|
9
|
+
import { PointerImport } from './resolvePointerImport.js';
|
|
9
10
|
import type { ConfigDefinitions } from './configDefinitionsBuiltIn.js';
|
|
10
|
-
type ImportedFilesLoaded = Record<string, Promise<Record<string, unknown>>>;
|
|
11
11
|
type ConfigFile = {
|
|
12
12
|
fileExports: Record<string, unknown>;
|
|
13
13
|
filePath: FilePathResolved;
|
|
14
14
|
extendsFilePaths: string[];
|
|
15
15
|
};
|
|
16
|
-
declare function
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
16
|
+
declare function loadPointerImport(pointerImport: PointerImportLoaded, userRootDir: string, configName: string, configDefinitions: ConfigDefinitions, esbuildCache: EsbuildCache): Promise<unknown>;
|
|
17
|
+
type PointerImportLoaded = PointerImport & ({
|
|
18
|
+
fileExportValueLoaded: true;
|
|
19
|
+
fileExportValue: unknown;
|
|
20
|
+
} | {
|
|
21
|
+
fileExportValueLoaded: false;
|
|
22
|
+
});
|
|
23
|
+
declare function loadValueFile(interfaceValueFile: InterfaceValueFile, configDefinitions: ConfigDefinitions, userRootDir: string, esbuildCache: EsbuildCache): Promise<void>;
|
|
24
|
+
declare function loadConfigFile(configFilePath: FilePathResolved, userRootDir: string, visited: string[], isExtensionConfig: boolean, esbuildCache: EsbuildCache): Promise<{
|
|
22
25
|
configFile: ConfigFile;
|
|
23
26
|
extendsConfigs: ConfigFile[];
|
|
24
27
|
}>;
|