vike 0.4.237-commit-92dc549 → 0.4.237-commit-fd8294f
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/client/runtime-server-routing/utils.js +1 -1
- package/dist/cjs/node/api/build.js +4 -30
- package/dist/cjs/node/prerender/runPrerender.js +5 -6
- package/dist/cjs/node/runtime/renderPage/analyzePage.js +3 -1
- package/dist/cjs/node/runtime/renderPage/createPageContextServerSide.js +1 -1
- package/dist/cjs/node/runtime/renderPage/execHookOnRenderHtml.js +1 -11
- package/dist/cjs/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +42 -46
- package/dist/cjs/node/runtime/renderPage/{renderPageAlreadyRouted.js → renderPageAfterRoute.js} +3 -4
- package/dist/cjs/node/runtime/renderPage.js +6 -9
- package/dist/cjs/node/runtime/utils.js +1 -1
- package/dist/cjs/node/vite/plugins/pluginBuild/handleAssetsManifest.js +3 -5
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginAutoFullBuild.js +8 -26
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildApp.js +2 -9
- package/dist/cjs/node/vite/plugins/pluginDev/determineOptimizeDeps.js +3 -2
- package/dist/cjs/node/vite/plugins/pluginFileEnv.js +4 -3
- package/dist/cjs/node/vite/shared/getOutDirs.js +5 -4
- package/dist/cjs/node/vite/shared/isViteServerSide.js +46 -19
- package/dist/cjs/shared/page-configs/{loadPageEntry.js → loadAndParseVirtualFilePageEntry.js} +2 -2
- package/dist/cjs/shared/page-configs/resolveVikeConfigPublic.js +5 -0
- package/dist/cjs/shared/route/execHookOnBeforeRoute.js +0 -1
- package/dist/cjs/shared/route/index.js +0 -1
- package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
- package/dist/cjs/utils/{augmentType.js → updateType.js} +3 -3
- package/dist/esm/__internal/index.d.ts +1 -1
- package/dist/esm/client/runtime-client-routing/createPageContextClientSide.js +2 -2
- package/dist/esm/client/runtime-client-routing/renderPageClientSide.js +6 -6
- package/dist/esm/client/runtime-client-routing/utils.d.ts +1 -1
- package/dist/esm/client/runtime-client-routing/utils.js +1 -1
- package/dist/esm/client/runtime-server-routing/createPageContextClientSide.js +3 -3
- package/dist/esm/client/runtime-server-routing/utils.d.ts +1 -1
- package/dist/esm/client/runtime-server-routing/utils.js +1 -1
- package/dist/esm/client/shared/loadPageConfigsLazyClientSide.js +2 -2
- package/dist/esm/node/api/build.js +5 -31
- package/dist/esm/node/prerender/runPrerender.d.ts +9 -300
- package/dist/esm/node/prerender/runPrerender.js +6 -7
- package/dist/esm/node/runtime/renderPage/analyzePage.d.ts +4 -3
- package/dist/esm/node/runtime/renderPage/analyzePage.js +3 -1
- package/dist/esm/node/runtime/renderPage/createPageContextServerSide.js +2 -2
- package/dist/esm/node/runtime/renderPage/execHookOnRenderHtml.d.ts +0 -1
- package/dist/esm/node/runtime/renderPage/execHookOnRenderHtml.js +1 -11
- package/dist/esm/node/runtime/renderPage/getPageAssets.d.ts +2 -4
- package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.d.ts +105 -19
- package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +44 -48
- package/dist/esm/node/runtime/renderPage/{renderPageAlreadyRouted.d.ts → renderPageAfterRoute.d.ts} +20 -4
- package/dist/esm/node/runtime/renderPage/{renderPageAlreadyRouted.js → renderPageAfterRoute.js} +5 -6
- package/dist/esm/node/runtime/renderPage.js +8 -11
- package/dist/esm/node/runtime/utils.d.ts +1 -1
- package/dist/esm/node/runtime/utils.js +1 -1
- package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.d.ts +0 -1
- package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.js +5 -7
- package/dist/esm/node/vite/plugins/pluginBuild/pluginAutoFullBuild.js +10 -28
- package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildApp.js +2 -9
- package/dist/esm/node/vite/plugins/pluginDev/determineOptimizeDeps.js +3 -2
- package/dist/esm/node/vite/plugins/pluginFileEnv.js +4 -3
- package/dist/esm/node/vite/shared/getOutDirs.js +5 -4
- package/dist/esm/node/vite/shared/isViteServerSide.d.ts +1 -1
- package/dist/esm/node/vite/shared/isViteServerSide.js +46 -19
- package/dist/esm/shared/page-configs/loadAndParseVirtualFilePageEntry.d.ts +3 -0
- package/dist/esm/shared/page-configs/{loadPageEntry.js → loadAndParseVirtualFilePageEntry.js} +2 -2
- package/dist/esm/shared/page-configs/resolveVikeConfigPublic.js +5 -0
- package/dist/esm/shared/route/execHookOnBeforeRoute.d.ts +3 -3
- package/dist/esm/shared/route/execHookOnBeforeRoute.js +0 -1
- package/dist/esm/shared/route/index.d.ts +5 -6
- package/dist/esm/shared/route/index.js +0 -1
- package/dist/esm/types/Config.d.ts +2 -4
- package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
- package/dist/esm/utils/PROJECT_VERSION.js +1 -1
- package/dist/esm/utils/updateType.d.ts +3 -0
- package/dist/esm/utils/updateType.js +7 -0
- package/package.json +3 -3
- package/dist/cjs/node/runtime/renderPage/debugPageFiles.js +0 -52
- package/dist/esm/node/runtime/renderPage/debugPageFiles.d.ts +0 -23
- package/dist/esm/node/runtime/renderPage/debugPageFiles.js +0 -47
- package/dist/esm/shared/page-configs/loadPageEntry.d.ts +0 -3
- package/dist/esm/utils/augmentType.d.ts +0 -3
- package/dist/esm/utils/augmentType.js +0 -7
|
@@ -30,5 +30,5 @@ __exportStar(require("../../utils/parseUrl.js"), exports);
|
|
|
30
30
|
__exportStar(require("../../utils/slice.js"), exports);
|
|
31
31
|
__exportStar(require("../../utils/unique.js"), exports); // Only used by Server Routing (not needed for Client Routing)
|
|
32
32
|
__exportStar(require("../../utils/getPropAccessNotation.js"), exports);
|
|
33
|
-
__exportStar(require("../../utils/
|
|
33
|
+
__exportStar(require("../../utils/updateType.js"), exports);
|
|
34
34
|
__exportStar(require("../../utils/changeEnumerable.js"), exports);
|
|
@@ -3,45 +3,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.build = build;
|
|
4
4
|
const prepareViteApiCall_js_1 = require("./prepareViteApiCall.js");
|
|
5
5
|
const vite_1 = require("vite");
|
|
6
|
-
const context_js_1 = require("../cli/context.js");
|
|
7
|
-
const context_js_2 = require("../prerender/context.js");
|
|
8
|
-
const utils_js_1 = require("./utils.js");
|
|
9
6
|
/**
|
|
10
7
|
* Programmatically trigger `$ vike build`
|
|
11
8
|
*
|
|
12
9
|
* https://vike.dev/api#build
|
|
13
10
|
*/
|
|
14
11
|
async function build(options = {}) {
|
|
15
|
-
const { viteConfigFromUserEnhanced
|
|
12
|
+
const { viteConfigFromUserEnhanced } = await (0, prepareViteApiCall_js_1.prepareViteApiCall)(options, 'build');
|
|
16
13
|
// Pass it to pluginAutoFullBuild()
|
|
17
14
|
if (viteConfigFromUserEnhanced)
|
|
18
15
|
viteConfigFromUserEnhanced._viteConfigFromUserEnhanced = viteConfigFromUserEnhanced;
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const builder = await (0, vite_1.createBuilder)(viteConfigFromUserEnhanced);
|
|
23
|
-
// See Vite plugin vike:build:pluginBuildApp
|
|
24
|
-
await builder.buildApp();
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
// This buildVite() call does everything:
|
|
28
|
-
// 1. Build client-side
|
|
29
|
-
// 2. Build server-side
|
|
30
|
-
// > See: https://github.com/vikejs/vike/blob/c6c7533a56b3a16fc43ed644fc5c10c02d0ff375/vike/node/plugin/plugins/autoFullBuild.ts#L90
|
|
31
|
-
// 3. Pre-render (if enabled)
|
|
32
|
-
// > See: https://github.com/vikejs/vike/blob/c6c7533a56b3a16fc43ed644fc5c10c02d0ff375/vike/node/plugin/plugins/autoFullBuild.ts#L98
|
|
33
|
-
// > We purposely don't start the pre-rendering in this `build()` function but in a Rollup hook instead.
|
|
34
|
-
// > Rationale: https://github.com/vikejs/vike/issues/2123
|
|
35
|
-
await (0, vite_1.build)(viteConfigFromUserEnhanced);
|
|
36
|
-
// After pre-rendering, when using the Vike CLI, the process is forcefully exited at the end of the buildVite() call above.
|
|
37
|
-
if (
|
|
38
|
-
// When calling Vike's prerender() API pre-rendering is run without force exit
|
|
39
|
-
![false, 'prerender()'].includes((0, context_js_2.wasPrerenderRun)()) &&
|
|
40
|
-
// When calling Vike's build() API pre-rendering is auto run without force exit
|
|
41
|
-
(0, context_js_1.isVikeCli)()) {
|
|
42
|
-
(0, utils_js_1.assert)(false);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
16
|
+
const builder = await (0, vite_1.createBuilder)(viteConfigFromUserEnhanced);
|
|
17
|
+
// See Vite plugin vike:build:pluginBuildApp
|
|
18
|
+
await builder.buildApp();
|
|
45
19
|
return {
|
|
46
20
|
/* We don't return `viteConfig` because `viteConfigFromUserEnhanced` is `InlineConfig` not `ResolvedConfig`
|
|
47
21
|
viteConfig: viteConfigFromUserEnhanced,
|
|
@@ -43,7 +43,7 @@ exports.runPrerender = runPrerender;
|
|
|
43
43
|
const node_path_1 = __importDefault(require("node:path"));
|
|
44
44
|
const index_js_1 = require("../../shared/route/index.js");
|
|
45
45
|
const utils_js_1 = require("./utils.js");
|
|
46
|
-
const
|
|
46
|
+
const renderPageAfterRoute_js_1 = require("../runtime/renderPage/renderPageAfterRoute.js");
|
|
47
47
|
const createPageContextServerSide_js_1 = require("../runtime/renderPage/createPageContextServerSide.js");
|
|
48
48
|
const picocolors_1 = __importDefault(require("@brillout/picocolors"));
|
|
49
49
|
const node_os_1 = require("node:os");
|
|
@@ -53,7 +53,7 @@ const getPageFiles_js_1 = require("../../shared/getPageFiles.js");
|
|
|
53
53
|
const getPageContextRequestUrl_js_1 = require("../../shared/getPageContextRequestUrl.js");
|
|
54
54
|
const resolveRouteString_js_1 = require("../../shared/route/resolveRouteString.js");
|
|
55
55
|
const getConfigValueRuntime_js_1 = require("../../shared/page-configs/getConfigValueRuntime.js");
|
|
56
|
-
const
|
|
56
|
+
const loadAndParseVirtualFilePageEntry_js_1 = require("../../shared/page-configs/loadAndParseVirtualFilePageEntry.js");
|
|
57
57
|
const error_page_js_1 = require("../../shared/error-page.js");
|
|
58
58
|
const abort_js_1 = require("../../shared/route/abort.js");
|
|
59
59
|
const loadPageConfigsLazyServerSide_js_1 = require("../runtime/renderPage/loadPageConfigsLazyServerSide.js");
|
|
@@ -212,7 +212,7 @@ async function callOnBeforePrerenderStartHooks(prerenderContext, globalContext,
|
|
|
212
212
|
// V1 design
|
|
213
213
|
await Promise.all(globalContext._pageConfigs.map((pageConfig) => concurrencyLimit(async () => {
|
|
214
214
|
const hookName = 'onBeforePrerenderStart';
|
|
215
|
-
const pageConfigLoaded = await (0,
|
|
215
|
+
const pageConfigLoaded = await (0, loadAndParseVirtualFilePageEntry_js_1.loadAndParseVirtualFilePageEntry)(pageConfig, false);
|
|
216
216
|
const hook = (0, getHook_js_1.getHookFromPageConfig)(pageConfigLoaded, hookName);
|
|
217
217
|
if (!hook)
|
|
218
218
|
return;
|
|
@@ -357,11 +357,10 @@ async function createPageContextPrerendering(urlOriginal, prerenderContext, glob
|
|
|
357
357
|
(0, utils_js_1.assert)(pageId);
|
|
358
358
|
(0, utils_js_1.objectAssign)(pageContext, {
|
|
359
359
|
pageId,
|
|
360
|
-
_debugRouteMatches: [],
|
|
361
360
|
routeParams: {},
|
|
362
361
|
});
|
|
363
362
|
}
|
|
364
|
-
(0, utils_js_2.
|
|
363
|
+
(0, utils_js_2.updateType)(pageContext, await (0, loadPageConfigsLazyServerSide_js_1.loadPageConfigsLazyServerSide)(pageContext));
|
|
365
364
|
let usesClientRouter;
|
|
366
365
|
{
|
|
367
366
|
const { pageId } = pageContext;
|
|
@@ -541,7 +540,7 @@ async function prerenderPages(prerenderContext, concurrencyLimit, onComplete) {
|
|
|
541
540
|
await Promise.all(prerenderContext.pageContexts.map((pageContextBeforeRender) => concurrencyLimit(async () => {
|
|
542
541
|
let res;
|
|
543
542
|
try {
|
|
544
|
-
res = await (0,
|
|
543
|
+
res = await (0, renderPageAfterRoute_js_1.prerenderPage)(pageContextBeforeRender);
|
|
545
544
|
}
|
|
546
545
|
catch (err) {
|
|
547
546
|
assertIsNotAbort(err, picocolors_1.default.cyan(pageContextBeforeRender.urlOriginal));
|
|
@@ -6,7 +6,9 @@ const analyzePageClientSide_js_1 = require("../../../shared/getPageFiles/analyze
|
|
|
6
6
|
const virtualFileId_js_1 = require("../../shared/virtualFileId.js");
|
|
7
7
|
const analyzeClientSide_js_1 = require("../../../shared/getPageFiles/analyzeClientSide.js");
|
|
8
8
|
const getConfigValueRuntime_js_1 = require("../../../shared/page-configs/getConfigValueRuntime.js");
|
|
9
|
-
|
|
9
|
+
function analyzePage(pageContext) {
|
|
10
|
+
const { pageId, _pageConfig: pageConfig, _globalContext: globalContext } = pageContext;
|
|
11
|
+
const { _pageFilesAll: pageFilesAll } = globalContext;
|
|
10
12
|
if (pageConfig) {
|
|
11
13
|
const { isClientRuntimeLoaded, isClientRouting } = (0, analyzeClientSide_js_1.analyzeClientSide)(pageConfig, pageFilesAll, pageId);
|
|
12
14
|
const clientEntries = [];
|
|
@@ -41,7 +41,7 @@ function createPageContextServerSide(pageContextInit, globalContext, args) {
|
|
|
41
41
|
(0, utils_js_1.objectAssign)(pageContextCreated, { headers });
|
|
42
42
|
}
|
|
43
43
|
const pageContextAugmented = (0, createPageContextShared_js_1.createPageContextShared)(pageContextCreated, globalContext._vikeConfigPublicGlobal);
|
|
44
|
-
(0, utils_js_1.
|
|
44
|
+
(0, utils_js_1.updateType)(pageContextCreated, pageContextAugmented);
|
|
45
45
|
return pageContextCreated;
|
|
46
46
|
}
|
|
47
47
|
function createPageContextServerSideWithoutGlobalContext(pageContextInit) {
|
|
@@ -58,17 +58,7 @@ function getRenderHook(pageContext) {
|
|
|
58
58
|
}
|
|
59
59
|
if (!hookFound) {
|
|
60
60
|
const hookName = pageContext._globalContext._pageConfigs.length > 0 ? 'onRenderHtml' : 'render';
|
|
61
|
-
(0, utils_js_1.assertUsage)(false,
|
|
62
|
-
`No ${hookName}() hook found, see https://vike.dev/${hookName}`,
|
|
63
|
-
/*
|
|
64
|
-
'See https://vike.dev/render-modes for more information.',
|
|
65
|
-
[
|
|
66
|
-
// 'Loaded config files (none of them define the onRenderHtml() hook):',
|
|
67
|
-
'Loaded server-side page files (none of them `export { render }`):',
|
|
68
|
-
...pageContext._pageFilePathsLoaded.map((f, i) => ` (${i + 1}): ${f}`)
|
|
69
|
-
].join('\n')
|
|
70
|
-
*/
|
|
71
|
-
].join(' '));
|
|
61
|
+
(0, utils_js_1.assertUsage)(false, `No ${hookName}() hook found, see https://vike.dev/${hookName}`);
|
|
72
62
|
}
|
|
73
63
|
return hookFound;
|
|
74
64
|
}
|
|
@@ -1,45 +1,41 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.loadPageConfigsLazyServerSide = loadPageConfigsLazyServerSide;
|
|
4
4
|
const getPageFiles_js_1 = require("../../../shared/getPageFiles.js");
|
|
5
5
|
const resolveVikeConfigPublic_js_1 = require("../../../shared/page-configs/resolveVikeConfigPublic.js");
|
|
6
6
|
const analyzePageClientSide_js_1 = require("../../../shared/getPageFiles/analyzePageClientSide.js");
|
|
7
7
|
const utils_js_1 = require("../utils.js");
|
|
8
8
|
const getPageAssets_js_1 = require("./getPageAssets.js");
|
|
9
|
-
const debugPageFiles_js_1 = require("./debugPageFiles.js");
|
|
10
9
|
const findPageConfig_js_1 = require("../../../shared/page-configs/findPageConfig.js");
|
|
11
10
|
const analyzePage_js_1 = require("./analyzePage.js");
|
|
12
|
-
const
|
|
11
|
+
const loadAndParseVirtualFilePageEntry_js_1 = require("../../../shared/page-configs/loadAndParseVirtualFilePageEntry.js");
|
|
13
12
|
const execHookServer_js_1 = require("./execHookServer.js");
|
|
14
13
|
const getCacheControl_js_1 = require("./getCacheControl.js");
|
|
15
|
-
async function
|
|
16
|
-
|
|
17
|
-
|
|
14
|
+
async function loadPageConfigsLazyServerSide(pageContext) {
|
|
15
|
+
(0, utils_js_1.objectAssign)(pageContext, {
|
|
16
|
+
_pageConfig: (0, findPageConfig_js_1.findPageConfig)(pageContext._globalContext._pageConfigs, pageContext.pageId),
|
|
17
|
+
});
|
|
18
|
+
// Load the page's + files
|
|
19
|
+
(0, utils_js_1.updateType)(pageContext, await loadPageUserFiles(pageContext));
|
|
20
|
+
// Resolve new computed pageContext properties
|
|
21
|
+
(0, utils_js_1.updateType)(pageContext, await resolvePageContext(pageContext));
|
|
22
|
+
// Execute +onCreatePageContext
|
|
18
23
|
await (0, execHookServer_js_1.execHookServer)('onCreatePageContext', pageContext);
|
|
19
24
|
return pageContext;
|
|
20
25
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
const pageConfig = (0, findPageConfig_js_1.findPageConfig)(pageContext._globalContext._pageConfigs, pageContext.pageId); // Make pageConfig globally available as pageContext._pageConfig ?
|
|
24
|
-
const globalContext = pageContext._globalContext;
|
|
25
|
-
const [{ pageFilesLoaded, configPublicPageLazy }] = await Promise.all([
|
|
26
|
-
loadPageConfigFiles(pageContext._globalContext._pageFilesAll, pageConfig, globalContext._pageConfigGlobal, pageContext.pageId, !globalContext._isProduction),
|
|
27
|
-
(0, analyzePageClientSide_js_1.analyzePageClientSideInit)(pageContext._globalContext._pageFilesAll, pageContext.pageId, {
|
|
28
|
-
sharedPageFilesAlreadyLoaded: true,
|
|
29
|
-
}),
|
|
30
|
-
]);
|
|
31
|
-
const { isHtmlOnly, isClientRouting, clientEntries, clientDependencies, pageFilesClientSide, pageFilesServerSide } = await (0, analyzePage_js_1.analyzePage)(pageContext._globalContext._pageFilesAll, pageConfig, pageContext.pageId, globalContext);
|
|
32
|
-
const isV1Design = !!pageConfig;
|
|
26
|
+
async function resolvePageContext(pageContext) {
|
|
27
|
+
const { isHtmlOnly, clientEntries, clientDependencies } = (0, analyzePage_js_1.analyzePage)(pageContext);
|
|
33
28
|
const passToClient = [];
|
|
34
29
|
const errMsgSuffix = ' should be an array of strings.';
|
|
30
|
+
const isV1Design = !!pageContext._pageConfig;
|
|
35
31
|
if (!isV1Design) {
|
|
36
|
-
|
|
32
|
+
pageContext.exportsAll.passToClient?.forEach((e) => {
|
|
37
33
|
(0, utils_js_1.assertUsage)((0, utils_js_1.hasProp)(e, 'exportValue', 'string[]'), `${e.exportSource}${errMsgSuffix}`);
|
|
38
34
|
passToClient.push(...e.exportValue);
|
|
39
35
|
});
|
|
40
36
|
}
|
|
41
37
|
else {
|
|
42
|
-
|
|
38
|
+
pageContext.from.configsCumulative.passToClient?.values.forEach((v) => {
|
|
43
39
|
const { value, definedAt } = v;
|
|
44
40
|
const errMsg = `+passToClient value defined at ${definedAt}${errMsgSuffix}`;
|
|
45
41
|
//*/ TO-DO/next-major-release: remove the passToClient once setting from the public API
|
|
@@ -59,16 +55,13 @@ async function loadPageConfigsLazyServerSide(pageContext) {
|
|
|
59
55
|
passToClient.push(...valS);
|
|
60
56
|
});
|
|
61
57
|
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
(0, utils_js_1.objectAssign)(pageContextAddendum, {
|
|
65
|
-
Page: configPublicPageLazy.exports.Page,
|
|
58
|
+
(0, utils_js_1.objectAssign)(pageContext, {
|
|
59
|
+
Page: pageContext.exports.Page,
|
|
66
60
|
_isHtmlOnly: isHtmlOnly,
|
|
67
61
|
_passToClient: passToClient,
|
|
68
|
-
|
|
69
|
-
headersResponse: resolveHeadersResponse(pageContext, pageContextAddendum),
|
|
62
|
+
headersResponse: resolveHeadersResponse(pageContext),
|
|
70
63
|
});
|
|
71
|
-
(0, utils_js_1.objectAssign)(
|
|
64
|
+
(0, utils_js_1.objectAssign)(pageContext, {
|
|
72
65
|
__getPageAssets: async () => {
|
|
73
66
|
if ('_pageAssets' in pageContext) {
|
|
74
67
|
return pageContext._pageAssets;
|
|
@@ -81,14 +74,14 @@ async function loadPageConfigsLazyServerSide(pageContext) {
|
|
|
81
74
|
},
|
|
82
75
|
});
|
|
83
76
|
// TO-DO/next-major-release: remove
|
|
84
|
-
Object.assign(
|
|
77
|
+
Object.assign(pageContext, {
|
|
85
78
|
_getPageAssets: async () => {
|
|
86
79
|
(0, utils_js_1.assertWarning)(false, 'pageContext._getPageAssets() deprecated, see https://vike.dev/preloading', {
|
|
87
80
|
onlyOnce: true,
|
|
88
81
|
showStackTrace: true,
|
|
89
82
|
});
|
|
90
83
|
const pageAssetsOldFormat = [];
|
|
91
|
-
(await
|
|
84
|
+
(await pageContext.__getPageAssets()).forEach((p) => {
|
|
92
85
|
if (p.assetType === 'script' && p.isEntry) {
|
|
93
86
|
pageAssetsOldFormat.push({
|
|
94
87
|
src: p.src,
|
|
@@ -107,30 +100,33 @@ async function loadPageConfigsLazyServerSide(pageContext) {
|
|
|
107
100
|
return pageAssetsOldFormat;
|
|
108
101
|
},
|
|
109
102
|
});
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
return
|
|
103
|
+
return pageContext;
|
|
104
|
+
}
|
|
105
|
+
async function loadPageUserFiles(pageContext) {
|
|
106
|
+
const [{ configPublicPageLazy }] = await Promise.all([
|
|
107
|
+
loadPageUserFiles_v1Design(pageContext),
|
|
108
|
+
(0, analyzePageClientSide_js_1.analyzePageClientSideInit)(pageContext._globalContext._pageFilesAll, pageContext.pageId, {
|
|
109
|
+
sharedPageFilesAlreadyLoaded: true,
|
|
110
|
+
}),
|
|
111
|
+
]);
|
|
112
|
+
(0, utils_js_1.objectAssign)(pageContext, configPublicPageLazy);
|
|
113
|
+
return pageContext;
|
|
121
114
|
}
|
|
122
|
-
async function
|
|
123
|
-
const pageFilesServerSide = (0, getPageFiles_js_1.getPageFilesServerSide)(
|
|
124
|
-
const
|
|
115
|
+
async function loadPageUserFiles_v1Design(pageContext) {
|
|
116
|
+
const pageFilesServerSide = (0, getPageFiles_js_1.getPageFilesServerSide)(pageContext._pageFilesAll, pageContext.pageId);
|
|
117
|
+
const isDev = !pageContext._globalContext._isProduction;
|
|
118
|
+
const pageConfigLoaded = !pageContext._pageConfig
|
|
119
|
+
? null
|
|
120
|
+
: await (0, loadAndParseVirtualFilePageEntry_js_1.loadAndParseVirtualFilePageEntry)(pageContext._pageConfig, isDev);
|
|
125
121
|
await Promise.all(pageFilesServerSide.map((p) => p.loadFile?.()));
|
|
126
|
-
const configPublicPageLazy = (0, resolveVikeConfigPublic_js_1.resolveVikeConfigPublicPageLazyLoaded)(pageFilesServerSide, pageConfigLoaded,
|
|
122
|
+
const configPublicPageLazy = (0, resolveVikeConfigPublic_js_1.resolveVikeConfigPublicPageLazyLoaded)(pageFilesServerSide, pageConfigLoaded, pageContext._globalContext._pageConfigGlobal);
|
|
127
123
|
return {
|
|
128
124
|
configPublicPageLazy,
|
|
129
125
|
pageFilesLoaded: pageFilesServerSide,
|
|
130
126
|
};
|
|
131
127
|
}
|
|
132
|
-
function resolveHeadersResponse(pageContext
|
|
133
|
-
const headersResponse = mergeHeaders(
|
|
128
|
+
function resolveHeadersResponse(pageContext) {
|
|
129
|
+
const headersResponse = mergeHeaders(pageContext.config.headersResponse);
|
|
134
130
|
if (!headersResponse.get('Cache-Control')) {
|
|
135
131
|
const cacheControl = (0, getCacheControl_js_1.getCacheControl)(pageContext.pageId, pageContext._globalContext._pageConfigs);
|
|
136
132
|
if (cacheControl)
|
package/dist/cjs/node/runtime/renderPage/{renderPageAlreadyRouted.js → renderPageAfterRoute.js}
RENAMED
|
@@ -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.
|
|
6
|
+
exports.renderPageAfterRoute = renderPageAfterRoute;
|
|
7
7
|
exports.prerenderPage = prerenderPage;
|
|
8
8
|
const error_page_js_1 = require("../../../shared/error-page.js");
|
|
9
9
|
const renderHtml_js_1 = require("../html/renderHtml.js");
|
|
@@ -19,8 +19,7 @@ const preparePageContextForPublicUsageServer_js_1 = require("./preparePageContex
|
|
|
19
19
|
const execHookGuard_js_1 = require("../../../shared/route/execHookGuard.js");
|
|
20
20
|
const picocolors_1 = __importDefault(require("@brillout/picocolors"));
|
|
21
21
|
const isServerSideError_js_1 = require("../../../shared/misc/isServerSideError.js");
|
|
22
|
-
|
|
23
|
-
async function renderPageAlreadyRouted(pageContext) {
|
|
22
|
+
async function renderPageAfterRoute(pageContext) {
|
|
24
23
|
// pageContext.pageId can either be the:
|
|
25
24
|
// - ID of the page matching the routing, or the
|
|
26
25
|
// - ID of the error page `_error.page.js`.
|
|
@@ -29,7 +28,7 @@ async function renderPageAlreadyRouted(pageContext) {
|
|
|
29
28
|
(0, utils_js_1.assert)(isError ===
|
|
30
29
|
(pageContext.pageId ===
|
|
31
30
|
(0, error_page_js_1.getErrorPageId)(pageContext._globalContext._pageFilesAll, pageContext._globalContext._pageConfigs)));
|
|
32
|
-
(0, utils_js_1.
|
|
31
|
+
(0, utils_js_1.updateType)(pageContext, await (0, loadPageConfigsLazyServerSide_js_1.loadPageConfigsLazyServerSide)(pageContext));
|
|
33
32
|
if (!isError) {
|
|
34
33
|
await (0, execHookGuard_js_1.execHookGuard)(pageContext, (pageContext) => (0, preparePageContextForPublicUsageServer_js_1.preparePageContextForPublicUsageServer)(pageContext));
|
|
35
34
|
}
|
|
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.renderPage = renderPage;
|
|
7
7
|
exports.renderPage_addAsyncHookwrapper = renderPage_addAsyncHookwrapper;
|
|
8
|
-
const
|
|
8
|
+
const renderPageAfterRoute_js_1 = require("./renderPage/renderPageAfterRoute.js");
|
|
9
9
|
const createPageContextServerSide_js_1 = require("./renderPage/createPageContextServerSide.js");
|
|
10
10
|
const index_js_1 = require("../../shared/route/index.js");
|
|
11
11
|
const utils_js_1 = require("./utils.js");
|
|
@@ -158,7 +158,7 @@ async function renderPageAlreadyPrepared(pageContextBegin, globalContext, httpRe
|
|
|
158
158
|
async function renderPageOnError(errNominalPage, pageContextBegin, pageContextNominalPageBegin, globalContext, httpRequestId, pageContextsFromRewrite) {
|
|
159
159
|
(0, utils_js_1.assert)(pageContextNominalPageBegin);
|
|
160
160
|
(0, utils_js_1.assert)((0, utils_js_1.hasProp)(pageContextNominalPageBegin, 'urlOriginal', 'string'));
|
|
161
|
-
const pageContextErrorPageInit = await getPageContextErrorPageInit(pageContextBegin, errNominalPage
|
|
161
|
+
const pageContextErrorPageInit = await getPageContextErrorPageInit(pageContextBegin, errNominalPage);
|
|
162
162
|
// Handle `throw redirect()` and `throw render()` while rendering nominal page
|
|
163
163
|
if ((0, abort_js_1.isAbortError)(errNominalPage)) {
|
|
164
164
|
const handled = await handleAbortError(errNominalPage, pageContextsFromRewrite, pageContextBegin, pageContextNominalPageBegin, httpRequestId, pageContextErrorPageInit, globalContext);
|
|
@@ -183,7 +183,7 @@ async function renderPageOnError(errNominalPage, pageContextBegin, pageContextNo
|
|
|
183
183
|
}
|
|
184
184
|
let pageContextErrorPage;
|
|
185
185
|
try {
|
|
186
|
-
pageContextErrorPage = await (0,
|
|
186
|
+
pageContextErrorPage = await (0, renderPageAfterRoute_js_1.renderPageAfterRoute)(pageContextErrorPageInit);
|
|
187
187
|
}
|
|
188
188
|
catch (errErrorPage) {
|
|
189
189
|
// Handle `throw redirect()` and `throw render()` while rendering error page
|
|
@@ -298,11 +298,11 @@ async function renderPageNominal(pageContext) {
|
|
|
298
298
|
(0, utils_js_1.assert)((0, utils_js_1.hasProp)(pageContext, 'pageId', 'string'));
|
|
299
299
|
(0, utils_js_1.assert)(pageContext.errorWhileRendering === null);
|
|
300
300
|
// Render
|
|
301
|
-
const pageContextAfterRender = await (0,
|
|
301
|
+
const pageContextAfterRender = await (0, renderPageAfterRoute_js_1.renderPageAfterRoute)(pageContext);
|
|
302
302
|
(0, utils_js_1.assert)(pageContext === pageContextAfterRender);
|
|
303
303
|
return pageContextAfterRender;
|
|
304
304
|
}
|
|
305
|
-
async function getPageContextErrorPageInit(pageContextBegin, errNominalPage
|
|
305
|
+
async function getPageContextErrorPageInit(pageContextBegin, errNominalPage) {
|
|
306
306
|
const pageContext = forkPageContext(pageContextBegin);
|
|
307
307
|
(0, utils_js_1.assert)(errNominalPage);
|
|
308
308
|
(0, utils_js_1.objectAssign)(pageContext, {
|
|
@@ -310,9 +310,6 @@ async function getPageContextErrorPageInit(pageContextBegin, errNominalPage, pag
|
|
|
310
310
|
errorWhileRendering: errNominalPage,
|
|
311
311
|
routeParams: {},
|
|
312
312
|
});
|
|
313
|
-
(0, utils_js_1.objectAssign)(pageContext, {
|
|
314
|
-
_debugRouteMatches: pageContextNominalPagePartial._debugRouteMatches || 'ROUTING_ERROR',
|
|
315
|
-
});
|
|
316
313
|
(0, utils_js_1.assert)(pageContext.errorWhileRendering);
|
|
317
314
|
return pageContext;
|
|
318
315
|
}
|
|
@@ -428,7 +425,7 @@ pageContextNominalPageBegin, httpRequestId, pageContextErrorPageInit, globalCont
|
|
|
428
425
|
(0, utils_js_1.objectAssign)(pageContext, { pageId: errorPageId });
|
|
429
426
|
(0, utils_js_1.objectAssign)(pageContext, pageContextAbort);
|
|
430
427
|
(0, utils_js_1.objectAssign)(pageContext, pageContextErrorPageInit, true);
|
|
431
|
-
(0, utils_js_1.
|
|
428
|
+
(0, utils_js_1.updateType)(pageContext, await (0, loadPageConfigsLazyServerSide_js_1.loadPageConfigsLazyServerSide)(pageContext));
|
|
432
429
|
// We include pageContextInit: we don't only serialize pageContextAbort because the error page may need to access pageContextInit
|
|
433
430
|
pageContextSerialized = (0, serializeContext_js_1.getPageContextClientSerialized)(pageContext, false);
|
|
434
431
|
}
|
|
@@ -75,7 +75,7 @@ __exportStar(require("../../utils/isVikeReactApp.js"), exports);
|
|
|
75
75
|
__exportStar(require("../../utils/getPropAccessNotation.js"), exports);
|
|
76
76
|
__exportStar(require("../../utils/PROJECT_VERSION.js"), exports);
|
|
77
77
|
__exportStar(require("../../utils/genPromise.js"), exports);
|
|
78
|
-
__exportStar(require("../../utils/
|
|
78
|
+
__exportStar(require("../../utils/updateType.js"), exports);
|
|
79
79
|
__exportStar(require("../../utils/changeEnumerable.js"), exports);
|
|
80
80
|
__exportStar(require("../../utils/getViteRPC.js"), exports);
|
|
81
81
|
__exportStar(require("../../utils/isRunnableDevEnvironment.js"), exports);
|
|
@@ -285,7 +285,6 @@ async function writeManifestFile(manifest, manifestFilePath) {
|
|
|
285
285
|
await promises_1.default.writeFile(manifestFilePath, manifestFileContent, 'utf-8');
|
|
286
286
|
}
|
|
287
287
|
async function handleAssetsManifest_getBuildConfig(config) {
|
|
288
|
-
const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
|
|
289
288
|
const isFixEnabled = handleAssetsManifest_isFixEnabled(config);
|
|
290
289
|
return {
|
|
291
290
|
// https://github.com/vikejs/vike/issues/1339
|
|
@@ -293,10 +292,9 @@ async function handleAssetsManifest_getBuildConfig(config) {
|
|
|
293
292
|
// Required if `ssrEmitAssets: true`, see https://github.com/vitejs/vite/pull/11430#issuecomment-1454800934
|
|
294
293
|
cssMinify: isFixEnabled ? 'esbuild' : undefined,
|
|
295
294
|
manifest: true,
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
: !(0, isViteServerSide_js_1.isViteServerSide_withoutEnv)(config),
|
|
295
|
+
/* Already set by vike:build:pluginBuildApp
|
|
296
|
+
copyPublicDir: !isViteServerSide_withoutEnv(config),
|
|
297
|
+
*/
|
|
300
298
|
};
|
|
301
299
|
}
|
|
302
300
|
async function handleAssetsManifest(config, viteEnv, options, bundle) {
|
|
@@ -5,7 +5,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.pluginAutoFullBuild = pluginAutoFullBuild;
|
|
7
7
|
exports.isPrerenderForceExit = isPrerenderForceExit;
|
|
8
|
-
const vite_1 = require("vite");
|
|
9
8
|
const utils_js_1 = require("../../utils.js");
|
|
10
9
|
const context_js_1 = require("../../../prerender/context.js");
|
|
11
10
|
const isViteCliCall_js_1 = require("../../shared/isViteCliCall.js");
|
|
@@ -59,16 +58,12 @@ function pluginAutoFullBuild() {
|
|
|
59
58
|
closeBundle: {
|
|
60
59
|
sequential: true,
|
|
61
60
|
order: 'post',
|
|
62
|
-
|
|
61
|
+
handler() {
|
|
63
62
|
(0, utils_js_1.onSetupBuild)();
|
|
64
63
|
(0, handleAssetsManifest_js_1.handleAssetsManifest_assertUsageCssTarget)(config, this.environment);
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
!vikeConfig.config.vite6BuilderApp) {
|
|
69
|
-
(0, runPrerenderEntry_js_1.runPrerender_forceExit)();
|
|
70
|
-
(0, utils_js_1.assert)(false);
|
|
71
|
-
}
|
|
64
|
+
/* Let vike:build:pluginBuildApp force exit
|
|
65
|
+
runPrerender_forceExit()
|
|
66
|
+
*/
|
|
72
67
|
},
|
|
73
68
|
},
|
|
74
69
|
},
|
|
@@ -77,10 +72,9 @@ function pluginAutoFullBuild() {
|
|
|
77
72
|
async function triggerFullBuild(config, viteEnv, bundle) {
|
|
78
73
|
const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
|
|
79
74
|
// Whether builder.buildApp() is being used, see plugin:build:pluginBuildApp
|
|
80
|
-
const isBuilderApp = vikeConfig.config.vite6BuilderApp;
|
|
81
75
|
// If builder.buildApp() => trigger at end of `this.environment.name === 'ssr'`.
|
|
82
76
|
// Else => trigger at end of client-side build.
|
|
83
|
-
if (
|
|
77
|
+
if (!(0, isViteServerSide_js_1.isViteServerSide_onlySsrEnv)(config, viteEnv))
|
|
84
78
|
return;
|
|
85
79
|
if (isEntirelyDisabled(vikeConfig))
|
|
86
80
|
return;
|
|
@@ -91,27 +85,15 @@ async function triggerFullBuild(config, viteEnv, bundle) {
|
|
|
91
85
|
if (!bundle[(0, getManifestFilePathRelative_js_1.getManifestFilePathRelative)(config.build.manifest)])
|
|
92
86
|
return;
|
|
93
87
|
const configInline = getFullBuildInlineConfig(config);
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
else {
|
|
98
|
-
// The server build is already called by builder.buildApp()
|
|
99
|
-
}
|
|
88
|
+
/* Already triggered by vike:build:pluginBuildApp
|
|
89
|
+
await build(setSSR(configInline))
|
|
90
|
+
*/
|
|
100
91
|
if ((0, context_js_1.isPrerenderAutoRunEnabled)(vikeConfig)) {
|
|
101
92
|
const res = await (0, runPrerenderEntry_js_1.runPrerenderFromAutoRun)(configInline);
|
|
102
93
|
globalObject.forceExit = res.forceExit;
|
|
103
94
|
(0, utils_js_1.assert)((0, context_js_1.wasPrerenderRun)());
|
|
104
95
|
}
|
|
105
96
|
}
|
|
106
|
-
function setSSR(configInline) {
|
|
107
|
-
return {
|
|
108
|
-
...configInline,
|
|
109
|
-
build: {
|
|
110
|
-
...configInline.build,
|
|
111
|
-
ssr: true,
|
|
112
|
-
},
|
|
113
|
-
};
|
|
114
|
-
}
|
|
115
97
|
async function abortViteBuildSsr() {
|
|
116
98
|
const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
|
|
117
99
|
if (vikeConfig.config.disableAutoFullBuild !== true && (0, isViteCliCall_js_1.isViteCliCall)() && (0, isViteCliCall_js_1.getViteConfigFromCli)()?.build.ssr) {
|
|
@@ -5,7 +5,6 @@ const runPrerenderEntry_js_1 = require("../../../prerender/runPrerenderEntry.js"
|
|
|
5
5
|
const getOutDirs_js_1 = require("../../shared/getOutDirs.js");
|
|
6
6
|
const utils_js_1 = require("../../utils.js");
|
|
7
7
|
const pluginAutoFullBuild_js_1 = require("./pluginAutoFullBuild.js");
|
|
8
|
-
const resolveVikeConfigInternal_js_1 = require("../../shared/resolveVikeConfigInternal.js");
|
|
9
8
|
function pluginBuildApp() {
|
|
10
9
|
return [
|
|
11
10
|
{
|
|
@@ -14,10 +13,7 @@ function pluginBuildApp() {
|
|
|
14
13
|
enforce: 'pre',
|
|
15
14
|
config: {
|
|
16
15
|
order: 'pre',
|
|
17
|
-
|
|
18
|
-
const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
|
|
19
|
-
if (!vikeConfig.config.vite6BuilderApp)
|
|
20
|
-
return;
|
|
16
|
+
handler(_config) {
|
|
21
17
|
return {
|
|
22
18
|
builder: {
|
|
23
19
|
// Can be overridden by another plugin e.g vike-vercel https://github.com/vikejs/vike/pull/2184#issuecomment-2659425195
|
|
@@ -39,10 +35,7 @@ function pluginBuildApp() {
|
|
|
39
35
|
{
|
|
40
36
|
name: 'vike:build:pluginBuildApp',
|
|
41
37
|
apply: 'build',
|
|
42
|
-
|
|
43
|
-
const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
|
|
44
|
-
if (!vikeConfig.config.vite6BuilderApp)
|
|
45
|
-
return;
|
|
38
|
+
config(config) {
|
|
46
39
|
return {
|
|
47
40
|
environments: {
|
|
48
41
|
ssr: {
|
|
@@ -15,8 +15,9 @@ async function determineOptimizeDeps(config) {
|
|
|
15
15
|
const { entriesClient, entriesServer, includeClient, includeServer } = await getPageDeps(config, pageConfigs);
|
|
16
16
|
config.optimizeDeps.include = add(config.optimizeDeps.include, includeClient);
|
|
17
17
|
config.optimizeDeps.entries = add(config.optimizeDeps.entries, entriesClient);
|
|
18
|
-
// Workaround
|
|
19
|
-
// -
|
|
18
|
+
// Workaround for https://github.com/vitejs/vite-plugin-react/issues/650
|
|
19
|
+
// - The issue was closed as completed with https://github.com/vitejs/vite/pull/20495 but it doesn't fix the issue and the workaround is still needed.
|
|
20
|
+
// - TO-DO/eventually: try removing the workaround and see if the CI fails (at test/@cloudflare_vite-plugin/) — maybe the issue will get fixed at some point.
|
|
20
21
|
includeServer.push('react/jsx-dev-runtime');
|
|
21
22
|
for (const envName in config.environments) {
|
|
22
23
|
const env = config.environments[envName];
|
|
@@ -12,6 +12,7 @@ const getFilePath_js_1 = require("../shared/getFilePath.js");
|
|
|
12
12
|
const parseEsModule_js_1 = require("../shared/parseEsModule.js");
|
|
13
13
|
const normalizeId_js_1 = require("../shared/normalizeId.js");
|
|
14
14
|
const resolveVikeConfigInternal_js_1 = require("../shared/resolveVikeConfigInternal.js");
|
|
15
|
+
const isViteServerSide_js_1 = require("../shared/isViteServerSide.js");
|
|
15
16
|
function pluginFileEnv() {
|
|
16
17
|
let config;
|
|
17
18
|
let viteDevServer;
|
|
@@ -33,7 +34,7 @@ function pluginFileEnv() {
|
|
|
33
34
|
const importers = Array.from(moduleInfo.importers)
|
|
34
35
|
.map((m) => m.id)
|
|
35
36
|
.filter((id) => id !== null);
|
|
36
|
-
assertFileEnv(id,
|
|
37
|
+
assertFileEnv(id, (0, isViteServerSide_js_1.isViteServerSide_extraSafe)(config, options, this.environment), importers,
|
|
37
38
|
// In dev, we only show a warning because we don't want to disrupt when the user plays with settings such as [ssr](https://vike.dev/ssr).
|
|
38
39
|
true);
|
|
39
40
|
},
|
|
@@ -45,7 +46,7 @@ function pluginFileEnv() {
|
|
|
45
46
|
return;
|
|
46
47
|
if (skip(id))
|
|
47
48
|
return;
|
|
48
|
-
const isServerSide =
|
|
49
|
+
const isServerSide = (0, isViteServerSide_js_1.isViteServerSide_extraSafe)(config, options, this.environment);
|
|
49
50
|
if (!isWrongEnv(id, isServerSide))
|
|
50
51
|
return;
|
|
51
52
|
const { importers } = this.getModuleInfo(id);
|
|
@@ -71,7 +72,7 @@ function pluginFileEnv() {
|
|
|
71
72
|
*/
|
|
72
73
|
return;
|
|
73
74
|
}
|
|
74
|
-
assertFileEnv(moduleId,
|
|
75
|
+
assertFileEnv(moduleId, (0, isViteServerSide_js_1.isViteServerSide)(config, this.environment), importers, false);
|
|
75
76
|
});
|
|
76
77
|
},
|
|
77
78
|
configResolved(config_) {
|
|
@@ -12,7 +12,7 @@ const isViteServerSide_js_1 = require("./isViteServerSide.js");
|
|
|
12
12
|
const debug = (0, utils_js_1.createDebugger)('vike:outDir');
|
|
13
13
|
function getOutDirs(configGlobal, viteEnv) {
|
|
14
14
|
debug('getOutDirs()', new Error().stack);
|
|
15
|
-
const outDir = getOutDirFromResolvedConfig(configGlobal);
|
|
15
|
+
const outDir = getOutDirFromResolvedConfig(configGlobal, viteEnv);
|
|
16
16
|
assertOutDirResolved(outDir, configGlobal, viteEnv);
|
|
17
17
|
const outDirs = getOutDirsAll(outDir, configGlobal.root);
|
|
18
18
|
assertNormalization(outDirs.outDirRoot);
|
|
@@ -119,7 +119,8 @@ function assertOutDirResolved(outDir, configGlobal, viteEnv) {
|
|
|
119
119
|
(0, utils_js_1.assert)('/client'.length === '/server'.length);
|
|
120
120
|
const outDirCorrected = outDir.slice(0, -1 * '/client'.length);
|
|
121
121
|
const wrongUsage = `You've set Vite's config.build.outDir to ${picocolors_1.default.cyan(outDir)} but you should set it to ${picocolors_1.default.cyan(outDirCorrected)} instead.`;
|
|
122
|
-
|
|
122
|
+
const isServerSide = (0, isViteServerSide_js_1.isViteServerSide_withoutEnv)(configGlobal, viteEnv);
|
|
123
|
+
if (isServerSide) {
|
|
123
124
|
(0, utils_js_1.assertUsage)(outDir.endsWith('/server'), wrongUsage);
|
|
124
125
|
}
|
|
125
126
|
else {
|
|
@@ -133,8 +134,8 @@ function getOutDirFromViteUserConfig(config) {
|
|
|
133
134
|
outDir = normalizeOutDir(outDir);
|
|
134
135
|
return outDir;
|
|
135
136
|
}
|
|
136
|
-
function getOutDirFromResolvedConfig(config) {
|
|
137
|
-
let outDir = config.build.outDir;
|
|
137
|
+
function getOutDirFromResolvedConfig(config, viteEnv) {
|
|
138
|
+
let outDir = viteEnv?.config.build?.outDir ?? config.build.outDir;
|
|
138
139
|
(0, utils_js_1.assert)(outDir);
|
|
139
140
|
outDir = normalizeOutDir(outDir);
|
|
140
141
|
return outDir;
|