vike 0.4.161 → 0.4.162-commit-49fe40c
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 +2 -2
- package/dist/cjs/node/plugin/index.js +0 -2
- package/dist/cjs/node/plugin/plugins/buildConfig.js +20 -20
- package/dist/cjs/node/plugin/plugins/config/index.js +2 -7
- package/dist/cjs/node/plugin/plugins/devConfig/determineFsAllowList.js +1 -8
- package/dist/cjs/node/plugin/plugins/devConfig/determineOptimizeDeps.js +1 -18
- package/dist/cjs/node/plugin/plugins/devConfig/index.js +2 -4
- package/dist/cjs/node/plugin/plugins/envVars.js +6 -2
- package/dist/cjs/node/plugin/plugins/extractAssetsPlugin.js +10 -22
- package/dist/cjs/node/plugin/plugins/extractExportNamesPlugin.js +2 -2
- package/dist/cjs/node/plugin/plugins/importBuild/getVikeManifest.js +1 -21
- package/dist/cjs/node/plugin/plugins/importBuild/index.js +1 -1
- package/dist/cjs/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +29 -95
- package/dist/cjs/node/plugin/plugins/importUserCode/index.js +8 -8
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getConfigValuesSerialized.js +1 -9
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +3 -0
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/filesystemRouting.js +1 -1
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +4 -4
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolveImportPath.js +1 -1
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transformFileImports.js +35 -36
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +109 -104
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +39 -33
- package/dist/cjs/node/plugin/plugins/setGlobalContext.js +0 -14
- package/dist/cjs/node/plugin/shared/rollupSourceMap.js +20 -0
- package/dist/cjs/node/plugin/utils.js +0 -1
- package/dist/cjs/node/prerender/runPrerender.js +3 -2
- package/dist/cjs/node/prerender/utils.js +1 -1
- package/dist/cjs/node/runtime/globalContext.js +8 -19
- package/dist/cjs/node/runtime/html/serializePageContextClientSide.js +1 -0
- package/dist/cjs/node/runtime/renderPage/analyzePage.js +2 -2
- package/dist/cjs/node/runtime/renderPage/getPageAssets/assertClientEntryId.js +2 -8
- package/dist/cjs/node/runtime/renderPage/getPageAssets/getManifestEntry.js +6 -7
- package/dist/cjs/node/runtime/renderPage/getPageAssets/retrieveAssetsProd.js +2 -2
- package/dist/cjs/node/runtime/renderPage/getPageAssets.js +23 -28
- package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +2 -23
- package/dist/cjs/node/runtime/utils.js +1 -2
- package/dist/cjs/node/shared/assertPluginManifest.js +1 -4
- package/dist/cjs/node/shared/assertV1Design.js +26 -0
- package/dist/cjs/node/shared/{getClientEntryFilePath.js → getClientEntry.js} +3 -3
- package/dist/cjs/node/shared/prependEntriesDir.js +13 -0
- package/dist/cjs/node/shared/utils.js +2 -0
- package/dist/cjs/node/shared/virtual-files/virtualFileImportUserCode.js +1 -0
- package/dist/cjs/shared/hooks/getHook.js +1 -1
- package/dist/cjs/shared/page-configs/helpers/getConfigValue.js +1 -0
- package/dist/cjs/shared/page-configs/serialize/parseConfigValuesImported.js +1 -1
- package/dist/cjs/shared/route/abort.js +1 -0
- package/dist/cjs/shared/route/resolvePrecedence.js +1 -0
- package/dist/cjs/utils/{nodeEnv.js → assertNodeEnv.js} +3 -0
- package/dist/cjs/utils/formatHintLog.js +1 -0
- package/dist/cjs/utils/hasProp.js +1 -0
- package/dist/cjs/utils/isScriptFile.js +15 -4
- package/dist/cjs/utils/projectInfo.js +1 -1
- package/dist/esm/__internal/index.js +1 -1
- package/dist/esm/client/client-routing-runtime/renderPageClientSide.js +20 -14
- package/dist/esm/client/shared/getPageContextProxyForUser.js +19 -2
- package/dist/esm/client/shared/loadUserFilesClientSide.js +1 -0
- package/dist/esm/node/plugin/index.js +0 -2
- package/dist/esm/node/plugin/plugins/buildConfig.js +19 -19
- package/dist/esm/node/plugin/plugins/config/index.js +2 -7
- package/dist/esm/node/plugin/plugins/devConfig/determineFsAllowList.d.ts +1 -2
- package/dist/esm/node/plugin/plugins/devConfig/determineFsAllowList.js +1 -8
- package/dist/esm/node/plugin/plugins/devConfig/determineOptimizeDeps.d.ts +1 -2
- package/dist/esm/node/plugin/plugins/devConfig/determineOptimizeDeps.js +2 -19
- package/dist/esm/node/plugin/plugins/devConfig/index.js +2 -4
- package/dist/esm/node/plugin/plugins/envVars.js +6 -2
- package/dist/esm/node/plugin/plugins/extractAssetsPlugin.js +11 -23
- package/dist/esm/node/plugin/plugins/extractExportNamesPlugin.js +2 -2
- package/dist/esm/node/plugin/plugins/importBuild/getVikeManifest.d.ts +1 -2
- package/dist/esm/node/plugin/plugins/importBuild/getVikeManifest.js +2 -19
- package/dist/esm/node/plugin/plugins/importBuild/index.js +1 -1
- package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +31 -97
- package/dist/esm/node/plugin/plugins/importUserCode/index.js +8 -8
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getConfigValuesSerialized.js +1 -9
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +3 -0
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/filesystemRouting.d.ts +3 -3
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/filesystemRouting.js +1 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.d.ts +1 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +4 -4
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolveImportPath.js +1 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transformFileImports.d.ts +1 -13
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transformFileImports.js +35 -36
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.d.ts +1 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +111 -106
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +3 -3
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +39 -33
- package/dist/esm/node/plugin/plugins/setGlobalContext.js +1 -15
- package/dist/esm/node/plugin/shared/rollupSourceMap.d.ts +14 -0
- package/dist/esm/node/plugin/shared/rollupSourceMap.js +17 -0
- package/dist/esm/node/plugin/utils.d.ts +0 -1
- package/dist/esm/node/plugin/utils.js +0 -1
- package/dist/esm/node/prerender/runPrerender.d.ts +3 -3
- package/dist/esm/node/prerender/runPrerender.js +4 -3
- package/dist/esm/node/prerender/utils.d.ts +1 -1
- package/dist/esm/node/prerender/utils.js +1 -1
- package/dist/esm/node/runtime/globalContext.d.ts +3 -10
- package/dist/esm/node/runtime/globalContext.js +7 -18
- package/dist/esm/node/runtime/html/serializePageContextClientSide.js +1 -0
- package/dist/esm/node/runtime/renderPage/analyzePage.js +2 -2
- package/dist/esm/node/runtime/renderPage/getPageAssets/assertClientEntryId.js +2 -8
- package/dist/esm/node/runtime/renderPage/getPageAssets/getManifestEntry.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/getPageAssets/getManifestEntry.js +6 -7
- package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsProd.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsProd.js +2 -2
- package/dist/esm/node/runtime/renderPage/getPageAssets.js +24 -29
- package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +3 -24
- package/dist/esm/node/runtime/utils.d.ts +1 -2
- package/dist/esm/node/runtime/utils.js +1 -2
- package/dist/esm/node/shared/ViteManifest.d.ts +1 -0
- package/dist/esm/node/shared/assertPluginManifest.d.ts +0 -1
- package/dist/esm/node/shared/assertPluginManifest.js +2 -5
- package/dist/esm/node/shared/assertV1Design.d.ts +4 -0
- package/dist/esm/node/shared/assertV1Design.js +23 -0
- package/dist/esm/node/shared/getClientEntry.d.ts +3 -0
- package/dist/esm/node/shared/{getClientEntryFilePath.js → getClientEntry.js} +2 -2
- package/dist/esm/node/shared/prependEntriesDir.d.ts +2 -0
- package/dist/esm/node/shared/prependEntriesDir.js +10 -0
- package/dist/esm/node/shared/utils.d.ts +2 -0
- package/dist/esm/node/shared/utils.js +2 -0
- package/dist/esm/node/shared/virtual-files/virtualFileImportUserCode.js +1 -0
- package/dist/esm/shared/ConfigVike.d.ts +0 -27
- package/dist/esm/shared/hooks/getHook.js +2 -2
- package/dist/esm/shared/page-configs/Config.d.ts +5 -0
- package/dist/esm/shared/page-configs/PageConfig.d.ts +2 -4
- package/dist/esm/shared/page-configs/helpers/getConfigValue.js +1 -0
- package/dist/esm/shared/page-configs/serialize/parseConfigValuesImported.js +1 -1
- package/dist/esm/shared/route/abort.js +1 -0
- package/dist/esm/shared/route/resolvePrecedence.js +1 -0
- package/dist/esm/utils/{nodeEnv.js → assertNodeEnv.js} +3 -0
- package/dist/esm/utils/debug.d.ts +1 -1
- package/dist/esm/utils/formatHintLog.js +1 -0
- package/dist/esm/utils/hasProp.js +1 -0
- package/dist/esm/utils/isScriptFile.d.ts +3 -1
- package/dist/esm/utils/isScriptFile.js +14 -3
- package/dist/esm/utils/projectInfo.d.ts +2 -2
- package/dist/esm/utils/projectInfo.js +1 -1
- package/package.json +4 -3
- package/dist/cjs/node/plugin/plugins/config/findConfigVikeFromStemPackages.js +0 -27
- package/dist/cjs/node/plugin/plugins/config/resolveExtensions.js +0 -107
- package/dist/cjs/node/plugin/plugins/config/stemUtils.js +0 -85
- package/dist/cjs/node/plugin/plugins/extensionsAssets.js +0 -101
- package/dist/cjs/node/plugin/shared/removeSourceMap.js +0 -12
- package/dist/cjs/utils/getDependencyPackageJson.js +0 -91
- package/dist/cjs/utils/isStemPackageName.js +0 -14
- package/dist/esm/node/plugin/plugins/config/findConfigVikeFromStemPackages.d.ts +0 -3
- package/dist/esm/node/plugin/plugins/config/findConfigVikeFromStemPackages.js +0 -24
- package/dist/esm/node/plugin/plugins/config/resolveExtensions.d.ts +0 -4
- package/dist/esm/node/plugin/plugins/config/resolveExtensions.js +0 -101
- package/dist/esm/node/plugin/plugins/config/stemUtils.d.ts +0 -8
- package/dist/esm/node/plugin/plugins/config/stemUtils.js +0 -79
- package/dist/esm/node/plugin/plugins/extensionsAssets.d.ts +0 -3
- package/dist/esm/node/plugin/plugins/extensionsAssets.js +0 -95
- package/dist/esm/node/plugin/shared/removeSourceMap.d.ts +0 -7
- package/dist/esm/node/plugin/shared/removeSourceMap.js +0 -9
- package/dist/esm/node/shared/getClientEntryFilePath.d.ts +0 -3
- package/dist/esm/utils/getDependencyPackageJson.d.ts +0 -6
- package/dist/esm/utils/getDependencyPackageJson.js +0 -85
- package/dist/esm/utils/isStemPackageName.d.ts +0 -1
- package/dist/esm/utils/isStemPackageName.js +0 -10
- /package/dist/esm/utils/{nodeEnv.d.ts → assertNodeEnv.d.ts} +0 -0
|
@@ -15,7 +15,6 @@ const loggerNotProd_js_1 = require("../../../shared/loggerNotProd.js");
|
|
|
15
15
|
const removeSuperfluousViteLog_js_1 = require("../../../shared/loggerVite/removeSuperfluousViteLog.js");
|
|
16
16
|
const picocolors_1 = __importDefault(require("@brillout/picocolors"));
|
|
17
17
|
const helpers_js_1 = require("../../../../../shared/page-configs/helpers.js");
|
|
18
|
-
const getConfigVike_js_1 = require("../../../../shared/getConfigVike.js");
|
|
19
18
|
const getConfigValuesSerialized_js_1 = require("./getConfigValuesSerialized.js");
|
|
20
19
|
const crawlPlusFiles_js_1 = require("./getVikeConfig/crawlPlusFiles.js");
|
|
21
20
|
const getConfigFileExport_js_1 = require("./getConfigFileExport.js");
|
|
@@ -28,10 +27,10 @@ let wasConfigInvalid = null;
|
|
|
28
27
|
let vikeConfigPromise = null;
|
|
29
28
|
const vikeConfigDependencies = new Set();
|
|
30
29
|
exports.vikeConfigDependencies = vikeConfigDependencies;
|
|
31
|
-
function reloadVikeConfig(userRootDir, outDirRoot
|
|
30
|
+
function reloadVikeConfig(userRootDir, outDirRoot) {
|
|
32
31
|
vikeConfigDependencies.clear();
|
|
33
32
|
(0, resolveImportPath_js_1.clearFilesEnvMap)();
|
|
34
|
-
vikeConfigPromise = loadVikeConfig_withErrorHandling(userRootDir, outDirRoot, true,
|
|
33
|
+
vikeConfigPromise = loadVikeConfig_withErrorHandling(userRootDir, outDirRoot, true, true);
|
|
35
34
|
handleReloadSideEffects();
|
|
36
35
|
}
|
|
37
36
|
exports.reloadVikeConfig = reloadVikeConfig;
|
|
@@ -66,22 +65,24 @@ async function handleReloadSideEffects() {
|
|
|
66
65
|
}
|
|
67
66
|
}
|
|
68
67
|
}
|
|
69
|
-
async function getVikeConfig(config, isDev, tolerateInvalidConfig = false
|
|
68
|
+
async function getVikeConfig(config, isDev, tolerateInvalidConfig = false) {
|
|
70
69
|
const { outDirRoot } = (0, utils_js_1.getOutDirs)(config);
|
|
71
70
|
const userRootDir = config.root;
|
|
72
71
|
if (!vikeConfigPromise) {
|
|
73
|
-
vikeConfigPromise = loadVikeConfig_withErrorHandling(userRootDir, outDirRoot, isDev,
|
|
72
|
+
vikeConfigPromise = loadVikeConfig_withErrorHandling(userRootDir, outDirRoot, isDev, tolerateInvalidConfig);
|
|
74
73
|
}
|
|
75
74
|
return await vikeConfigPromise;
|
|
76
75
|
}
|
|
77
76
|
exports.getVikeConfig = getVikeConfig;
|
|
78
77
|
async function isV1Design(config, isDev) {
|
|
79
|
-
const
|
|
78
|
+
const vikeConfig = await getVikeConfig(config, isDev);
|
|
79
|
+
const { pageConfigs } = vikeConfig;
|
|
80
|
+
const isV1Design = pageConfigs.length > 0;
|
|
80
81
|
return isV1Design;
|
|
81
82
|
}
|
|
82
83
|
exports.isV1Design = isV1Design;
|
|
83
|
-
async function loadInterfaceFiles(userRootDir, outDirRoot, isDev
|
|
84
|
-
const plusFiles = await findPlusFiles(userRootDir, outDirRoot, isDev
|
|
84
|
+
async function loadInterfaceFiles(userRootDir, outDirRoot, isDev) {
|
|
85
|
+
const plusFiles = await findPlusFiles(userRootDir, outDirRoot, isDev);
|
|
85
86
|
const configFiles = [];
|
|
86
87
|
const valueFiles = [];
|
|
87
88
|
plusFiles.forEach((f) => {
|
|
@@ -107,14 +108,14 @@ async function loadInterfaceFiles(userRootDir, outDirRoot, isDev, extensions) {
|
|
|
107
108
|
extendsConfigs.forEach((extendsConfig) => {
|
|
108
109
|
/* We purposely use the same locationId because the Vike extension's config should only apply to where it's being extended from, for example:
|
|
109
110
|
```js
|
|
110
|
-
// /pages/admin/+config.
|
|
111
|
+
// /pages/admin/+config.js
|
|
111
112
|
|
|
112
113
|
import vikeVue from 'vike-vue/config'
|
|
113
114
|
// Should only apply to /pages/admin/**
|
|
114
115
|
export default { extends: [vikeVue] }
|
|
115
116
|
```
|
|
116
117
|
```js
|
|
117
|
-
// /pages/marketing/+config.
|
|
118
|
+
// /pages/marketing/+config.js
|
|
118
119
|
|
|
119
120
|
import vikeReact from 'vike-react/config'
|
|
120
121
|
// Should only apply to /pages/marketing/**
|
|
@@ -122,6 +123,28 @@ async function loadInterfaceFiles(userRootDir, outDirRoot, isDev, extensions) {
|
|
|
122
123
|
```
|
|
123
124
|
*/
|
|
124
125
|
const interfaceFile = getInterfaceFileFromConfigFile(extendsConfig, true, locationId);
|
|
126
|
+
{
|
|
127
|
+
const alreadyMigrated = [
|
|
128
|
+
'vike-react',
|
|
129
|
+
'vike-react-query',
|
|
130
|
+
'vike-react-zustand',
|
|
131
|
+
'vike-vue',
|
|
132
|
+
'vike-pinia',
|
|
133
|
+
'vike-solid'
|
|
134
|
+
];
|
|
135
|
+
const extensionName = extendsConfig.filePath.importPathAbsolute.split('/')[0];
|
|
136
|
+
const warnMsg = alreadyMigrated.includes(extensionName)
|
|
137
|
+
? `You're using a deprecated version of the Vike extension ${extensionName}, update ${extensionName} to its latest version.`
|
|
138
|
+
: `The config of the Vike extension ${extensionName} should set a ${picocolors_1.default.cyan('name')} value`;
|
|
139
|
+
const isNameDefined = interfaceFile.fileExportsByConfigName.name?.configValue;
|
|
140
|
+
if (alreadyMigrated) {
|
|
141
|
+
// Eventually always make it a assertUsage()
|
|
142
|
+
(0, utils_js_1.assertWarning)(isNameDefined, warnMsg, { onlyOnce: true });
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
(0, utils_js_1.assertUsage)(isNameDefined, warnMsg);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
125
148
|
interfaceFilesByLocationId[locationId].push(interfaceFile);
|
|
126
149
|
});
|
|
127
150
|
}),
|
|
@@ -189,12 +212,12 @@ function assertAllConfigsAreKnown(interfaceFilesByLocationId) {
|
|
|
189
212
|
});
|
|
190
213
|
});
|
|
191
214
|
}
|
|
192
|
-
async function loadVikeConfig_withErrorHandling(userRootDir, outDirRoot, isDev,
|
|
215
|
+
async function loadVikeConfig_withErrorHandling(userRootDir, outDirRoot, isDev, tolerateInvalidConfig) {
|
|
193
216
|
let hasError = false;
|
|
194
217
|
let ret;
|
|
195
218
|
let err;
|
|
196
219
|
try {
|
|
197
|
-
ret = await loadVikeConfig(userRootDir, outDirRoot, isDev
|
|
220
|
+
ret = await loadVikeConfig(userRootDir, outDirRoot, isDev);
|
|
198
221
|
}
|
|
199
222
|
catch (err_) {
|
|
200
223
|
hasError = true;
|
|
@@ -230,8 +253,8 @@ async function loadVikeConfig_withErrorHandling(userRootDir, outDirRoot, isDev,
|
|
|
230
253
|
}
|
|
231
254
|
}
|
|
232
255
|
}
|
|
233
|
-
async function loadVikeConfig(userRootDir, outDirRoot, isDev
|
|
234
|
-
const interfaceFilesByLocationId = await loadInterfaceFiles(userRootDir, outDirRoot, isDev
|
|
256
|
+
async function loadVikeConfig(userRootDir, outDirRoot, isDev) {
|
|
257
|
+
const interfaceFilesByLocationId = await loadInterfaceFiles(userRootDir, outDirRoot, isDev);
|
|
235
258
|
const importedFilesLoaded = {};
|
|
236
259
|
const { globalVikeConfig, pageConfigGlobal } = await getGlobalConfigs(interfaceFilesByLocationId, userRootDir, importedFilesLoaded);
|
|
237
260
|
const pageConfigs = await Promise.all((0, utils_js_1.objectEntries)(interfaceFilesByLocationId)
|
|
@@ -406,7 +429,7 @@ async function resolveConfigValueSources(configName, configDef, interfaceFilesRe
|
|
|
406
429
|
// Make this value:
|
|
407
430
|
// /pages/some-page/+{configName}.js > `export default`
|
|
408
431
|
// override that value:
|
|
409
|
-
// /pages/some-page/+config.
|
|
432
|
+
// /pages/some-page/+config.js > `export default { someConfig }`
|
|
410
433
|
const interfaceFileWinner = interfaceValueFile ?? interfaceConfigFile;
|
|
411
434
|
if (interfaceFileWinner) {
|
|
412
435
|
const interfaceFilesOverriden = [...interfaceValueFiles, ...interfaceConfigFiles].filter((f) => f !== interfaceFileWinner);
|
|
@@ -714,26 +737,9 @@ function getComputed(configValueSources, configDefinitions) {
|
|
|
714
737
|
});
|
|
715
738
|
return configValuesComputed;
|
|
716
739
|
}
|
|
717
|
-
async function findPlusFiles(userRootDir, outDirRoot, isDev
|
|
740
|
+
async function findPlusFiles(userRootDir, outDirRoot, isDev) {
|
|
718
741
|
const files = await (0, crawlPlusFiles_js_1.crawlPlusFiles)(userRootDir, outDirRoot, isDev);
|
|
719
742
|
const plusFiles = files.map(({ filePathRelativeToUserRootDir }) => (0, resolveFilePath_js_1.resolveFilePathRelativeToUserRootDir)(filePathRelativeToUserRootDir, userRootDir));
|
|
720
|
-
// TODO/v1-release: remove
|
|
721
|
-
extensions.forEach((extension) => {
|
|
722
|
-
extension.pageConfigsDistFiles?.forEach((pageConfigDistFile) => {
|
|
723
|
-
if (!pageConfigDistFile.importPath.includes('+'))
|
|
724
|
-
return;
|
|
725
|
-
(0, utils_js_1.assert)(pageConfigDistFile.importPath.includes('+'));
|
|
726
|
-
(0, utils_js_1.assert)(path_1.default.posix.basename(pageConfigDistFile.importPath).startsWith('+'));
|
|
727
|
-
const { importPath, filePath } = pageConfigDistFile;
|
|
728
|
-
plusFiles.push({
|
|
729
|
-
filePathRelativeToUserRootDir: null,
|
|
730
|
-
filePathAbsoluteVite: importPath,
|
|
731
|
-
filePathAbsoluteFilesystem: filePath,
|
|
732
|
-
filePathToShowToUser: importPath,
|
|
733
|
-
importPathAbsolute: importPath
|
|
734
|
-
});
|
|
735
|
-
});
|
|
736
|
-
});
|
|
737
743
|
return plusFiles;
|
|
738
744
|
}
|
|
739
745
|
function getConfigName(filePath) {
|
|
@@ -11,20 +11,6 @@ function setGlobalContext() {
|
|
|
11
11
|
handler(viteDevServer) {
|
|
12
12
|
(0, globalContext_js_1.setGlobalContext_viteDevServer)(viteDevServer);
|
|
13
13
|
}
|
|
14
|
-
},
|
|
15
|
-
configurePreviewServer: {
|
|
16
|
-
order: 'pre',
|
|
17
|
-
handler(vitePreviewServer) {
|
|
18
|
-
(0, globalContext_js_1.setGlobalContext_vitePreviewServer)(
|
|
19
|
-
// Type cast won't be necessary after https://github.com/vitejs/vite/pull/14119 is released in Vite 5
|
|
20
|
-
vitePreviewServer);
|
|
21
|
-
}
|
|
22
|
-
},
|
|
23
|
-
configResolved: {
|
|
24
|
-
order: 'pre',
|
|
25
|
-
handler(config) {
|
|
26
|
-
(0, globalContext_js_1.setGlobalContext_viteConfig)(config);
|
|
27
|
-
}
|
|
28
14
|
}
|
|
29
15
|
};
|
|
30
16
|
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.sourceMapPassthrough = exports.sourceMapRemove = void 0;
|
|
4
|
+
// https://rollupjs.org/guide/en/#source-code-transformations
|
|
5
|
+
/** Remove entire source mapping, to save KBs. */
|
|
6
|
+
function sourceMapRemove(code) {
|
|
7
|
+
return {
|
|
8
|
+
code,
|
|
9
|
+
map: { mappings: '' }
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
exports.sourceMapRemove = sourceMapRemove;
|
|
13
|
+
/** Don't provide any source map, pass through current source map instead. */
|
|
14
|
+
function sourceMapPassthrough(code) {
|
|
15
|
+
return {
|
|
16
|
+
code,
|
|
17
|
+
map: null
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
exports.sourceMapPassthrough = sourceMapPassthrough;
|
|
@@ -23,7 +23,6 @@ __exportStar(require("../runtime/utils.js"), exports);
|
|
|
23
23
|
// Utils only needed by `plugin/*`
|
|
24
24
|
__exportStar(require("../../utils/viteIsSSR.js"), exports);
|
|
25
25
|
__exportStar(require("../../utils/getFilePathAbsolute.js"), exports);
|
|
26
|
-
__exportStar(require("../../utils/getDependencyPackageJson.js"), exports);
|
|
27
26
|
__exportStar(require("../../utils/requireResolve.js"), exports);
|
|
28
27
|
__exportStar(require("../../utils/arrayIncludes.js"), exports);
|
|
29
28
|
__exportStar(require("../../utils/isDev.js"), exports);
|
|
@@ -90,6 +90,7 @@ async function runPrerender(options, manuallyTriggered) {
|
|
|
90
90
|
handleNodeEnv();
|
|
91
91
|
await disableReactStreaming();
|
|
92
92
|
const viteConfig = await (0, vite_1.resolveConfig)(options.viteConfig || {}, 'vike pre-rendering', 'production');
|
|
93
|
+
(0, globalContext_js_1.setGlobalContext_prerender)(viteConfig);
|
|
93
94
|
assertLoadedConfig(viteConfig, options);
|
|
94
95
|
const configVike = await (0, getConfigVike_js_1.getConfigVike)(viteConfig);
|
|
95
96
|
const { outDirClient, outDirRoot } = (0, utils_js_1.getOutDirs)(viteConfig);
|
|
@@ -557,7 +558,7 @@ function warnMissingPages(prerenderedPageContexts, doNotPrerenderList, renderCon
|
|
|
557
558
|
.filter((pageId) => !(0, error_page_js_1.isErrorPage)(pageId, renderContext.pageConfigs))
|
|
558
559
|
.forEach((pageId) => {
|
|
559
560
|
const pageAt = isV1 ? pageId : `\`${pageId}.page.*\``;
|
|
560
|
-
(0, utils_js_1.assertWarning)(partial, `Cannot pre-render page ${pageAt} because it has a non-static route, while no ${hookName}() hook returned any URL matching the page's route. You need to use a ${hookName}() hook (https://vike.dev/${hookName}) providing a list of URLs for ${pageAt} that should be pre-rendered. If you don't want to pre-render ${pageAt} then use the option prerender.partial (https://vike.dev/prerender
|
|
561
|
+
(0, utils_js_1.assertWarning)(partial, `Cannot pre-render page ${pageAt} because it has a non-static route, while no ${hookName}() hook returned any URL matching the page's route. You need to use a ${hookName}() hook (https://vike.dev/${hookName}) providing a list of URLs for ${pageAt} that should be pre-rendered. If you don't want to pre-render ${pageAt} then use the option prerender.partial (https://vike.dev/prerender#partial) to suppress this warning.`, { onlyOnce: true });
|
|
561
562
|
});
|
|
562
563
|
}
|
|
563
564
|
async function prerender404(prerenderedPageContexts, renderContext, prerenderContext, onComplete) {
|
|
@@ -673,7 +674,7 @@ function checkOutdatedOptions(options) {
|
|
|
673
674
|
(0, utils_js_1.assertUsage)(options.root === undefined, 'Option `prerender({ root })` deprecated: set `prerender({ viteConfig: { root }})` instead.', { showStackTrace: true });
|
|
674
675
|
(0, utils_js_1.assertUsage)(options.configFile === undefined, 'Option `prerender({ configFile })` deprecated: set `prerender({ viteConfig: { configFile }})` instead.', { showStackTrace: true });
|
|
675
676
|
['noExtraDir', 'partial', 'parallel'].forEach((prop) => {
|
|
676
|
-
(0, utils_js_1.assertUsage)(options[prop] === undefined, `[prerender()] Option ${picocolors_1.default.cyan(prop)} is deprecated. Define ${picocolors_1.default.cyan(prop)} in vite.config.js instead. See https://vike.dev/prerender
|
|
677
|
+
(0, utils_js_1.assertUsage)(options[prop] === undefined, `[prerender()] Option ${picocolors_1.default.cyan(prop)} is deprecated. Define ${picocolors_1.default.cyan(prop)} in vite.config.js instead. See https://vike.dev/prerender`, { showStackTrace: true });
|
|
677
678
|
});
|
|
678
679
|
['base', 'outDir'].forEach((prop) => {
|
|
679
680
|
(0, utils_js_1.assertWarning)(options[prop] === undefined, `[prerender()] Option ${picocolors_1.default.cyan(prop)} is outdated and has no effect (vike now automatically determines ${picocolors_1.default.cyan(prop)})`, {
|
|
@@ -28,4 +28,4 @@ __exportStar(require("../../utils/filesystemPathHandling.js"), exports);
|
|
|
28
28
|
__exportStar(require("../../utils/urlToFile.js"), exports);
|
|
29
29
|
__exportStar(require("../../shared/hooks/executeHook.js"), exports);
|
|
30
30
|
__exportStar(require("../../utils/isPlainObject.js"), exports);
|
|
31
|
-
__exportStar(require("../../utils/
|
|
31
|
+
__exportStar(require("../../utils/assertNodeEnv.js"), exports);
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.getRuntimeManifest = exports.
|
|
6
|
+
exports.getRuntimeManifest = exports.setGlobalContext_prerender = exports.setGlobalContext_viteDevServer = exports.getViteConfig = exports.getViteDevServer = exports.getGlobalContext = exports.initGlobalContext = void 0;
|
|
7
7
|
const utils_js_1 = require("./utils.js");
|
|
8
8
|
const loadImportBuild_js_1 = require("./globalContext/loadImportBuild.js");
|
|
9
9
|
const getPageFiles_js_1 = require("../../shared/getPageFiles.js");
|
|
@@ -21,27 +21,22 @@ function setGlobalContext_viteDevServer(viteDevServer) {
|
|
|
21
21
|
if (globalObject.viteDevServer)
|
|
22
22
|
return;
|
|
23
23
|
(0, utils_js_1.assert)(!globalObject.globalContext);
|
|
24
|
+
(0, utils_js_1.assert)(!globalObject.globalContext);
|
|
25
|
+
globalObject.viteConfig = viteDevServer.config;
|
|
24
26
|
globalObject.viteDevServer = viteDevServer;
|
|
25
27
|
}
|
|
26
28
|
exports.setGlobalContext_viteDevServer = setGlobalContext_viteDevServer;
|
|
27
|
-
function setGlobalContext_vitePreviewServer(vitePreviewServer) {
|
|
28
|
-
if (globalObject.vitePreviewServer)
|
|
29
|
-
return;
|
|
30
|
-
(0, utils_js_1.assert)(!globalObject.globalContext);
|
|
31
|
-
globalObject.vitePreviewServer = vitePreviewServer;
|
|
32
|
-
}
|
|
33
|
-
exports.setGlobalContext_vitePreviewServer = setGlobalContext_vitePreviewServer;
|
|
34
29
|
function getViteDevServer() {
|
|
35
30
|
return globalObject.viteDevServer ?? null;
|
|
36
31
|
}
|
|
37
32
|
exports.getViteDevServer = getViteDevServer;
|
|
38
|
-
function
|
|
33
|
+
function setGlobalContext_prerender(viteConfig) {
|
|
39
34
|
if (globalObject.viteConfig)
|
|
40
35
|
return;
|
|
41
36
|
(0, utils_js_1.assert)(!globalObject.globalContext);
|
|
42
37
|
globalObject.viteConfig = viteConfig;
|
|
43
38
|
}
|
|
44
|
-
exports.
|
|
39
|
+
exports.setGlobalContext_prerender = setGlobalContext_prerender;
|
|
45
40
|
function getViteConfig() {
|
|
46
41
|
return globalObject.viteConfig ?? null;
|
|
47
42
|
}
|
|
@@ -49,13 +44,12 @@ exports.getViteConfig = getViteConfig;
|
|
|
49
44
|
async function initGlobalContext(isPrerendering = false, outDir) {
|
|
50
45
|
if (globalObject.globalContext)
|
|
51
46
|
return;
|
|
52
|
-
const { viteDevServer,
|
|
47
|
+
const { viteDevServer, viteConfig } = globalObject;
|
|
53
48
|
assertNodeEnv(!!viteDevServer);
|
|
54
49
|
const isProduction = !viteDevServer;
|
|
55
50
|
if (!isProduction) {
|
|
56
51
|
(0, utils_js_1.assert)(viteConfig);
|
|
57
52
|
(0, utils_js_1.assert)(!isPrerendering);
|
|
58
|
-
(0, utils_js_1.assert)(!vitePreviewServer);
|
|
59
53
|
const configVike = await (0, getConfigVike_js_1.getConfigVike)(viteConfig);
|
|
60
54
|
const pluginManifest = getRuntimeManifest(configVike);
|
|
61
55
|
globalObject.globalContext = {
|
|
@@ -64,9 +58,7 @@ async function initGlobalContext(isPrerendering = false, outDir) {
|
|
|
64
58
|
clientManifest: null,
|
|
65
59
|
pluginManifest: null,
|
|
66
60
|
viteDevServer,
|
|
67
|
-
vitePreviewServer: null,
|
|
68
61
|
viteConfig,
|
|
69
|
-
configVike,
|
|
70
62
|
baseServer: pluginManifest.baseServer,
|
|
71
63
|
baseAssets: pluginManifest.baseAssets,
|
|
72
64
|
includeAssetsImportedByServer: pluginManifest.includeAssetsImportedByServer,
|
|
@@ -87,7 +79,6 @@ async function initGlobalContext(isPrerendering = false, outDir) {
|
|
|
87
79
|
clientManifest,
|
|
88
80
|
pluginManifest,
|
|
89
81
|
viteDevServer: null,
|
|
90
|
-
vitePreviewServer: vitePreviewServer ?? null,
|
|
91
82
|
baseServer: pluginManifest.baseServer,
|
|
92
83
|
baseAssets: pluginManifest.baseAssets,
|
|
93
84
|
includeAssetsImportedByServer: pluginManifest.includeAssetsImportedByServer,
|
|
@@ -101,16 +92,14 @@ async function initGlobalContext(isPrerendering = false, outDir) {
|
|
|
101
92
|
(0, utils_js_1.assert)(configVike);
|
|
102
93
|
(0, utils_js_1.objectAssign)(globalContext, {
|
|
103
94
|
isPrerendering: true,
|
|
104
|
-
viteConfig
|
|
105
|
-
configVike
|
|
95
|
+
viteConfig
|
|
106
96
|
});
|
|
107
97
|
globalObject.globalContext = globalContext;
|
|
108
98
|
}
|
|
109
99
|
else {
|
|
110
100
|
(0, utils_js_1.objectAssign)(globalContext, {
|
|
111
101
|
isPrerendering: false,
|
|
112
|
-
viteConfig: null
|
|
113
|
-
configVike: null
|
|
102
|
+
viteConfig: null
|
|
114
103
|
});
|
|
115
104
|
globalObject.globalContext = globalContext;
|
|
116
105
|
}
|
|
@@ -105,6 +105,7 @@ function serializePageContextAbort(pageContext) {
|
|
|
105
105
|
delete pageContext._abortCaller;
|
|
106
106
|
const unknownProps = Object.keys(pageContext).filter((prop) => ![
|
|
107
107
|
// prettier-ignore
|
|
108
|
+
// biome-ignore format:
|
|
108
109
|
'_abortCall',
|
|
109
110
|
/* Not needed on the client-side
|
|
110
111
|
'_abortCaller',
|
|
@@ -6,11 +6,11 @@ const analyzePageClientSide_js_1 = require("../../../shared/getPageFiles/analyze
|
|
|
6
6
|
const virtualFilePageConfigValuesAll_js_1 = require("../../shared/virtual-files/virtualFilePageConfigValuesAll.js");
|
|
7
7
|
const analyzeClientSide_js_1 = require("../../../shared/getPageFiles/analyzeClientSide.js");
|
|
8
8
|
const globalContext_js_1 = require("../globalContext.js");
|
|
9
|
-
const
|
|
9
|
+
const getClientEntry_js_1 = require("../../shared/getClientEntry.js");
|
|
10
10
|
function analyzePage(pageFilesAll, pageConfig, pageId) {
|
|
11
11
|
if (pageConfig) {
|
|
12
12
|
const { isClientSideRenderable, isClientRouting } = (0, analyzeClientSide_js_1.analyzeClientSide)(pageConfig, pageFilesAll, pageId);
|
|
13
|
-
const clientFilePath = (0,
|
|
13
|
+
const clientFilePath = (0, getClientEntry_js_1.getClientEntry)(pageConfig);
|
|
14
14
|
const clientEntry = !isClientSideRenderable ? clientFilePath : (0, determineClientEntry_js_1.getVikeClientEntry)(isClientRouting);
|
|
15
15
|
const clientDependencies = [];
|
|
16
16
|
clientDependencies.push({
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.assertClientEntryId = void 0;
|
|
4
|
-
const globalContext_js_1 = require("../../globalContext.js");
|
|
5
4
|
const utils_js_1 = require("../../utils.js");
|
|
6
5
|
const virtualFilePageConfigValuesAll_js_1 = require("../../../shared/virtual-files/virtualFilePageConfigValuesAll.js");
|
|
7
6
|
function assertClientEntryId(id) {
|
|
8
7
|
(0, utils_js_1.assertPosixPath)(id);
|
|
9
8
|
(0, utils_js_1.assert)(!id.startsWith('/@fs'), id);
|
|
10
|
-
const isPkg = (0, utils_js_1.isNpmPackageImport)(id);
|
|
11
9
|
(0, utils_js_1.assert)(
|
|
12
10
|
// Client entry
|
|
13
11
|
id.startsWith('@@vike/') ||
|
|
@@ -15,11 +13,7 @@ function assertClientEntryId(id) {
|
|
|
15
13
|
id.startsWith('/') ||
|
|
16
14
|
// Page code importer
|
|
17
15
|
(0, virtualFilePageConfigValuesAll_js_1.isVirtualFileIdPageConfigValuesAll)(id) ||
|
|
18
|
-
//
|
|
19
|
-
|
|
20
|
-
if (isPkg) {
|
|
21
|
-
const { configVike } = (0, globalContext_js_1.getGlobalContext)();
|
|
22
|
-
(0, utils_js_1.assert)(configVike === null || configVike.extensions.some(({ npmPackageName }) => id.startsWith(npmPackageName)), id);
|
|
23
|
-
}
|
|
16
|
+
// Import
|
|
17
|
+
(0, utils_js_1.isNpmPackageImport)(id), id);
|
|
24
18
|
}
|
|
25
19
|
exports.assertClientEntryId = assertClientEntryId;
|
|
@@ -4,7 +4,8 @@ exports.getManifestEntry = void 0;
|
|
|
4
4
|
const utils_js_1 = require("../../utils.js");
|
|
5
5
|
const assertClientEntryId_js_1 = require("./assertClientEntryId.js");
|
|
6
6
|
const virtualFilePageConfigValuesAll_js_1 = require("../../../shared/virtual-files/virtualFilePageConfigValuesAll.js");
|
|
7
|
-
|
|
7
|
+
const prependEntriesDir_js_1 = require("../../../shared/prependEntriesDir.js");
|
|
8
|
+
function getManifestEntry(id, clientManifest) {
|
|
8
9
|
(0, assertClientEntryId_js_1.assertClientEntryId)(id);
|
|
9
10
|
const debugInfo = getDebugInfo(id, clientManifest);
|
|
10
11
|
// Vike client entry
|
|
@@ -42,13 +43,11 @@ function getManifestEntry(id, clientManifest, manifestKeyMap) {
|
|
|
42
43
|
(0, utils_js_1.assert)(manifestEntry, debugInfo);
|
|
43
44
|
return { manifestEntry, manifestKey };
|
|
44
45
|
}
|
|
45
|
-
//
|
|
46
|
+
// npm package import
|
|
46
47
|
if ((0, utils_js_1.isNpmPackageImport)(id)) {
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
const manifestEntry = clientManifest[manifestKey];
|
|
51
|
-
(0, utils_js_1.assert)(manifestEntry, debugInfo2);
|
|
48
|
+
const found = Object.entries(clientManifest).find(([, e]) => e.name === (0, prependEntriesDir_js_1.prependEntriesDir)(id));
|
|
49
|
+
(0, utils_js_1.assert)(found);
|
|
50
|
+
const [manifestKey, manifestEntry] = found;
|
|
52
51
|
return { manifestEntry, manifestKey };
|
|
53
52
|
}
|
|
54
53
|
// extensions[number].pageConfigsSrcDir
|
|
@@ -4,7 +4,7 @@ exports.retrieveAssetsProd = void 0;
|
|
|
4
4
|
const utils_js_1 = require("../../utils.js");
|
|
5
5
|
const getManifestEntry_js_1 = require("./getManifestEntry.js");
|
|
6
6
|
const extractAssetsQuery_js_1 = require("../../../shared/extractAssetsQuery.js");
|
|
7
|
-
function retrieveAssetsProd(clientDependencies, clientManifest, includeAssetsImportedByServer
|
|
7
|
+
function retrieveAssetsProd(clientDependencies, clientManifest, includeAssetsImportedByServer) {
|
|
8
8
|
let assetUrls = new Set();
|
|
9
9
|
(0, utils_js_1.assert)(clientManifest);
|
|
10
10
|
const visistedAssets = new Set();
|
|
@@ -21,7 +21,7 @@ function retrieveAssetsProd(clientDependencies, clientManifest, includeAssetsImp
|
|
|
21
21
|
id = (0, extractAssetsQuery_js_1.extractAssetsAddQuery)(id);
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
|
-
const { manifestKey } = (0, getManifestEntry_js_1.getManifestEntry)(id, clientManifest
|
|
24
|
+
const { manifestKey } = (0, getManifestEntry_js_1.getManifestEntry)(id, clientManifest);
|
|
25
25
|
collectAssets(manifestKey, assetUrls, visistedAssets, clientManifest, onlyAssets);
|
|
26
26
|
});
|
|
27
27
|
collectSingleStyle(assetUrls, clientManifest);
|
|
@@ -16,15 +16,14 @@ async function getPageAssets(pageContext, clientDependencies, clientEntries) {
|
|
|
16
16
|
let assetUrls;
|
|
17
17
|
let clientEntriesSrc;
|
|
18
18
|
if (isDev) {
|
|
19
|
-
const { viteDevServer
|
|
20
|
-
clientEntriesSrc = await Promise.all(clientEntries.map((clientEntry) => resolveClientEntriesDev(clientEntry, viteDevServer
|
|
19
|
+
const { viteDevServer } = globalContext;
|
|
20
|
+
clientEntriesSrc = await Promise.all(clientEntries.map((clientEntry) => resolveClientEntriesDev(clientEntry, viteDevServer)));
|
|
21
21
|
assetUrls = await (0, retrieveAssetsDev_js_1.retrieveAssetsDev)(clientDependencies, viteDevServer);
|
|
22
22
|
}
|
|
23
23
|
else {
|
|
24
|
-
const {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
assetUrls = (0, retrieveAssetsProd_js_1.retrieveAssetsProd)(clientDependencies, clientManifest, pageContext._includeAssetsImportedByServer, manifestKeyMap);
|
|
24
|
+
const { clientManifest } = globalContext;
|
|
25
|
+
clientEntriesSrc = clientEntries.map((clientEntry) => resolveClientEntriesProd(clientEntry, clientManifest));
|
|
26
|
+
assetUrls = (0, retrieveAssetsProd_js_1.retrieveAssetsProd)(clientDependencies, clientManifest, pageContext._includeAssetsImportedByServer);
|
|
28
27
|
}
|
|
29
28
|
let pageAssets = [];
|
|
30
29
|
(0, utils_js_1.unique)([...clientEntriesSrc, ...assetUrls]).forEach((src) => {
|
|
@@ -59,7 +58,7 @@ async function getPageAssets(pageContext, clientDependencies, clientEntries) {
|
|
|
59
58
|
return pageAssets;
|
|
60
59
|
}
|
|
61
60
|
exports.getPageAssets = getPageAssets;
|
|
62
|
-
async function resolveClientEntriesDev(clientEntry, viteDevServer
|
|
61
|
+
async function resolveClientEntriesDev(clientEntry, viteDevServer) {
|
|
63
62
|
(0, assertClientEntryId_js_1.assertClientEntryId)(clientEntry);
|
|
64
63
|
let root = viteDevServer.config.root;
|
|
65
64
|
(0, utils_js_1.assert)(root);
|
|
@@ -80,7 +79,7 @@ async function resolveClientEntriesDev(clientEntry, viteDevServer, configVike) {
|
|
|
80
79
|
// User files
|
|
81
80
|
filePath = (0, utils_js_1.pathJoin)(root, clientEntry);
|
|
82
81
|
}
|
|
83
|
-
else if (clientEntry.startsWith('@@vike/')) {
|
|
82
|
+
else if (clientEntry.startsWith('@@vike/') || (0, utils_js_1.isNpmPackageImport)(clientEntry)) {
|
|
84
83
|
// Vike client entry
|
|
85
84
|
const { createRequire } = (await (0, import_1.import_)('module')).default;
|
|
86
85
|
const { dirname } = (await (0, import_1.import_)('path')).default;
|
|
@@ -92,27 +91,23 @@ async function resolveClientEntriesDev(clientEntry, viteDevServer, configVike) {
|
|
|
92
91
|
// @ts-expect-error
|
|
93
92
|
// Bun workaround https://github.com/vikejs/vike/pull/1048
|
|
94
93
|
const res = typeof Bun !== 'undefined' ? (toPath) => Bun.resolveSync(toPath, __dirname_) : require_.resolve;
|
|
95
|
-
(0, utils_js_1.
|
|
96
|
-
|
|
97
|
-
// For Vitest (which doesn't resolve vike to its dist but to its source files)
|
|
98
|
-
// [RELATIVE_PATH_FROM_DIST] Current file: node_modules/vike/node/runtime/renderPage/getPageAssets.js
|
|
99
|
-
filePath = (0, utils_js_1.toPosixPath)(res(clientEntry.replace('@@vike/dist/esm/client/', '../../../client/').replace('.js', '.ts')));
|
|
94
|
+
if ((0, utils_js_1.isNpmPackageImport)(clientEntry)) {
|
|
95
|
+
filePath = res(clientEntry);
|
|
100
96
|
}
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
97
|
+
else {
|
|
98
|
+
(0, utils_js_1.assert)(clientEntry.endsWith('.js'));
|
|
99
|
+
try {
|
|
100
|
+
// For Vitest (which doesn't resolve vike to its dist but to its source files)
|
|
101
|
+
// [RELATIVE_PATH_FROM_DIST] Current file: node_modules/vike/node/runtime/renderPage/getPageAssets.js
|
|
102
|
+
filePath = (0, utils_js_1.toPosixPath)(res(clientEntry.replace('@@vike/dist/esm/client/', '../../../client/').replace('.js', '.ts')));
|
|
103
|
+
}
|
|
104
|
+
catch {
|
|
105
|
+
// For users
|
|
106
|
+
// [RELATIVE_PATH_FROM_DIST] Current file: node_modules/vike/dist/esm/node/runtime/renderPage/getPageAssets.js
|
|
107
|
+
filePath = (0, utils_js_1.toPosixPath)(res(clientEntry.replace('@@vike/dist/esm/client/', '../../../../../dist/esm/client/')));
|
|
108
|
+
}
|
|
105
109
|
}
|
|
106
110
|
}
|
|
107
|
-
else if ((0, utils_js_1.isNpmPackageImport)(clientEntry)) {
|
|
108
|
-
const extensionPageFile = configVike.extensions
|
|
109
|
-
.map(({ pageConfigsDistFiles }) => pageConfigsDistFiles)
|
|
110
|
-
.flat()
|
|
111
|
-
.filter(utils_js_1.isNotNullish)
|
|
112
|
-
.find((e) => e.importPath === clientEntry);
|
|
113
|
-
(0, utils_js_1.assert)(extensionPageFile, clientEntry);
|
|
114
|
-
filePath = extensionPageFile.filePath;
|
|
115
|
-
}
|
|
116
111
|
else {
|
|
117
112
|
(0, utils_js_1.assert)(false);
|
|
118
113
|
}
|
|
@@ -124,8 +119,8 @@ async function resolveClientEntriesDev(clientEntry, viteDevServer, configVike) {
|
|
|
124
119
|
(0, utils_js_1.assertPosixPath)(filePath);
|
|
125
120
|
return filePath;
|
|
126
121
|
}
|
|
127
|
-
function resolveClientEntriesProd(clientEntry, clientManifest
|
|
128
|
-
const { manifestEntry } = (0, getManifestEntry_js_1.getManifestEntry)(clientEntry, clientManifest
|
|
122
|
+
function resolveClientEntriesProd(clientEntry, clientManifest) {
|
|
123
|
+
const { manifestEntry } = (0, getManifestEntry_js_1.getManifestEntry)(clientEntry, clientManifest);
|
|
129
124
|
(0, utils_js_1.assert)(manifestEntry.isEntry || manifestEntry.isDynamicEntry || clientEntry.endsWith('.css'), { clientEntry });
|
|
130
125
|
let { file } = manifestEntry;
|
|
131
126
|
(0, utils_js_1.assert)(!file.startsWith('/'));
|
|
@@ -21,8 +21,8 @@ const preparePageContextForUserConsumptionServerSide_js_1 = require("./preparePa
|
|
|
21
21
|
const executeGuardHook_js_1 = require("../../../shared/route/executeGuardHook.js");
|
|
22
22
|
const loadPageRoutes_js_1 = require("../../../shared/route/loadPageRoutes.js");
|
|
23
23
|
const picocolors_1 = __importDefault(require("@brillout/picocolors"));
|
|
24
|
-
const helpers_js_1 = require("../../../shared/page-configs/helpers.js");
|
|
25
24
|
const isServerSideError_js_1 = require("../../../shared/misc/isServerSideError.js");
|
|
25
|
+
const assertV1Design_js_1 = require("../../shared/assertV1Design.js");
|
|
26
26
|
async function renderPageAlreadyRouted(pageContext) {
|
|
27
27
|
// pageContext._pageId can either be the:
|
|
28
28
|
// - ID of the page matching the routing, or the
|
|
@@ -156,7 +156,7 @@ async function getRenderContext() {
|
|
|
156
156
|
const globalContext = (0, globalContext_js_1.getGlobalContext)();
|
|
157
157
|
const { pageFilesAll, allPageIds, pageConfigs, pageConfigGlobal } = await (0, getPageFiles_js_1.getPageFilesAll)(false, globalContext.isProduction);
|
|
158
158
|
const { pageRoutes, onBeforeRouteHook } = await (0, loadPageRoutes_js_1.loadPageRoutes)(pageFilesAll, pageConfigs, pageConfigGlobal, allPageIds);
|
|
159
|
-
assertV1Design(pageFilesAll, pageConfigs);
|
|
159
|
+
(0, assertV1Design_js_1.assertV1Design)(pageFilesAll.length > 0, pageConfigs, pageFilesAll);
|
|
160
160
|
const renderContext = {
|
|
161
161
|
pageFilesAll: pageFilesAll,
|
|
162
162
|
pageConfigs,
|
|
@@ -168,24 +168,3 @@ async function getRenderContext() {
|
|
|
168
168
|
return renderContext;
|
|
169
169
|
}
|
|
170
170
|
exports.getRenderContext = getRenderContext;
|
|
171
|
-
function assertV1Design(pageFilesAll, pageConfigs) {
|
|
172
|
-
const isV1Design = pageConfigs.length !== 0;
|
|
173
|
-
const isDesignOld = pageFilesAll.length !== 0;
|
|
174
|
-
if (isV1Design && isDesignOld) {
|
|
175
|
-
const indent = '- ';
|
|
176
|
-
const v1Files = (0, utils_js_1.unique)(pageConfigs
|
|
177
|
-
.map((p) => Object.values(p.configValues)
|
|
178
|
-
.map(helpers_js_1.getConfigValueFilePathToShowToUser)
|
|
179
|
-
.filter(utils_js_1.isNotNullish)
|
|
180
|
-
.map((filePathToShowToUser) => indent + filePathToShowToUser))
|
|
181
|
-
.flat(2));
|
|
182
|
-
(0, utils_js_1.assertUsage)(false, [
|
|
183
|
-
'Mixing the new V1 design with the old V0.4 design is forbidden.',
|
|
184
|
-
'V1 files:',
|
|
185
|
-
...v1Files,
|
|
186
|
-
'V0.4 files:',
|
|
187
|
-
...pageFilesAll.map((p) => indent + p.filePath)
|
|
188
|
-
].join('\n'));
|
|
189
|
-
}
|
|
190
|
-
(0, utils_js_1.assertWarning)(!isDesignOld, "You are using Vike's deprecated design. Update to the new V1 design, see https://vike.dev/migration/v1-design for how to migrate.", { onlyOnce: true });
|
|
191
|
-
}
|
|
@@ -49,7 +49,6 @@ __exportStar(require("../../utils/debug.js"), exports);
|
|
|
49
49
|
__exportStar(require("../../utils/urlToFile.js"), exports);
|
|
50
50
|
__exportStar(require("../../utils/getGlobalObject.js"), exports);
|
|
51
51
|
__exportStar(require("../../shared/hooks/executeHook.js"), exports);
|
|
52
|
-
__exportStar(require("../../utils/isStemPackageName.js"), exports);
|
|
53
52
|
__exportStar(require("../../utils/freezePartial.js"), exports);
|
|
54
53
|
__exportStar(require("../../utils/isNpmPackage.js"), exports);
|
|
55
54
|
__exportStar(require("../../utils/isNotNullish.js"), exports);
|
|
@@ -61,7 +60,7 @@ __exportStar(require("../../utils/getFileExtension.js"), exports);
|
|
|
61
60
|
__exportStar(require("../../utils/assertIsNotProductionRuntime.js"), exports);
|
|
62
61
|
__exportStar(require("../../utils/virtual-files.js"), exports);
|
|
63
62
|
__exportStar(require("../../utils/path-shim.js"), exports);
|
|
64
|
-
__exportStar(require("../../utils/
|
|
63
|
+
__exportStar(require("../../utils/assertNodeEnv.js"), exports);
|
|
65
64
|
__exportStar(require("../../utils/isHtml.js"), exports);
|
|
66
65
|
__exportStar(require("../../utils/warnIfErrorIsNotObject.js"), exports);
|
|
67
66
|
__exportStar(require("../../utils/stripAnsi.js"), exports);
|
|
@@ -9,16 +9,13 @@ function assertPluginManifest(pluginManifest) {
|
|
|
9
9
|
(0, assertRuntimeManifest_js_1.assertRuntimeManifest)(pluginManifest);
|
|
10
10
|
(0, utils_js_1.assert)((0, utils_js_1.hasProp)(pluginManifest, 'usesClientRouter', 'boolean'));
|
|
11
11
|
(0, utils_js_1.assert)((0, utils_js_1.hasProp)(pluginManifest, 'version', 'string'));
|
|
12
|
-
(0, utils_js_1.assert)((0, utils_js_1.hasProp)(pluginManifest, 'manifestKeyMap', 'object'));
|
|
13
|
-
const { manifestKeyMap } = pluginManifest;
|
|
14
|
-
(0, utils_js_1.assert)((0, utils_js_1.isStringRecord)(manifestKeyMap));
|
|
15
12
|
// Avoid:
|
|
16
13
|
// ```
|
|
17
14
|
// Uncaught (in promise) TypeError: Cannot set property manifestKeyMap of #<Object> which has only a getter
|
|
18
15
|
// ```
|
|
16
|
+
// We removed manifestKeyMap, maybe this isn't needed anymore.
|
|
19
17
|
// See https://github.com/vikejs/vike/issues/596
|
|
20
18
|
const pluginManifestClone = { ...pluginManifest };
|
|
21
|
-
(0, utils_js_1.objectAssign)(pluginManifestClone, { manifestKeyMap });
|
|
22
19
|
(0, utils_js_1.checkType)(pluginManifestClone);
|
|
23
20
|
}
|
|
24
21
|
exports.assertPluginManifest = assertPluginManifest;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.assertV1Design = void 0;
|
|
4
|
+
const helpers_js_1 = require("../../shared/page-configs/helpers.js");
|
|
5
|
+
const utils_js_1 = require("./utils.js");
|
|
6
|
+
function assertV1Design(isOldDesign, pageConfigs, pageFilesAll) {
|
|
7
|
+
const isV1Design = pageConfigs.length > 0;
|
|
8
|
+
if (isV1Design && isOldDesign) {
|
|
9
|
+
const lines = ['Mixing the new V1 design with the old V0.4 design is forbidden.'];
|
|
10
|
+
if (pageFilesAll) {
|
|
11
|
+
(0, utils_js_1.assert)(pageFilesAll.length > 0);
|
|
12
|
+
const indent = '- ';
|
|
13
|
+
const filesV1 = (0, utils_js_1.unique)(pageConfigs
|
|
14
|
+
.map((p) => Object.values(p.configValues)
|
|
15
|
+
.map(helpers_js_1.getConfigValueFilePathToShowToUser)
|
|
16
|
+
.filter(utils_js_1.isNotNullish)
|
|
17
|
+
.map((filePathToShowToUser) => indent + filePathToShowToUser))
|
|
18
|
+
.flat(2));
|
|
19
|
+
const filesOld = pageFilesAll.map((p) => indent + p.filePath);
|
|
20
|
+
lines.push(...['V1 design files:', ...filesV1, 'Old design files:', ...filesOld]);
|
|
21
|
+
}
|
|
22
|
+
(0, utils_js_1.assertUsage)(false, lines.join('\n'));
|
|
23
|
+
}
|
|
24
|
+
(0, utils_js_1.assertWarning)(!isOldDesign, "You are using Vike's deprecated design. Update to the new V1 design, see https://vike.dev/migration/v1-design for how to migrate.", { onlyOnce: true });
|
|
25
|
+
}
|
|
26
|
+
exports.assertV1Design = assertV1Design;
|